1. 17 Sep, 2021 3 commits
  2. 16 Sep, 2021 1 commit
    • moto's avatar
      Split extension into custom impl and Python wrapper libraries (#1752) · 0f822179
      moto authored
      * Split `libtorchaudio` and `_torchaudio`
      
      This change extract the core implementation from `_torchaudio` to `libtorchaudio`,
      so that `libtorchaudio` is reusable in TorchScript-based app.
      
      `_torchaudio` is a wrapper around `libtorchaudio` and only provides PyBind11-based
      features. (currently file-like object support in I/O)
      
      * Removed `BUILD_LIBTORCHAUDIO` option
      
      When invoking `cmake`, `libtorchaudio` is always built, so this option is removed.
      
      The new assumptions around the library discoverability
      
      - In regular OSS workflow (`pip`/`conda`-based binary installation), both `libtorchaudio` and `_torchaudio` are present.
          In this case,`libtorchaudio` has to be loaded manually with `torch.ops.load_library` and/or `torch.classes.load_library` otherwise importing `_torchaudio` would not be able to resolve the symbols defined in `libtorchaudio`.
      - When `torchaudio` is deployed with PEX format (single zip file)
        - We expect that`libtorchaudio.so` exists as a file in some search path configured by client code.
        - `_torchaudio` is still importable and because we do not know where `libtorchaudio` will exist, we will let the dynamic loader resolve the dependency from `_torchaudio` to `libtorchaudio`, which should work as long as `libtorchaudio` is in a library search path (search path is not modifiable from already-running Python process).
      0f822179
  3. 15 Sep, 2021 4 commits
  4. 13 Sep, 2021 1 commit
  5. 07 Sep, 2021 2 commits
    • moto's avatar
      Update the way to access libsox global config (#1755) · e11d27ce
      moto authored
      * Update the way to access libsox global config
      
      Preparation for splitting `libtorchaudio` and `_torchaudio`.
      
      When two libraries are compiled separately, and each code does
      `#include <sox.h>` independently, two copies of libsox's static global
      variables (`sox_globals_t`) are created.
      
      Our code should be referring to the same instance. To achieve this,
      `_torchaudio` should be accessing the global variable defined in
      `libtorchaudio` via the custom utility functions, and it should not
      directly use `sox_get_globals`.
      e11d27ce
    • moto's avatar
      Extract PyBind11 feature implementations (#1739) · 2a67fcc1
      moto authored
      This PR moves the code related to PyBind11 to the dedicated directory `torchaudio/csrc/pybind`.
      
      Before, features related to PyBind11 (I/O for file-like object) was implemented in `torchaudio/csrc/sox` and the binding was defined in `torchaudio/csrc/pybind.cpp`. We used macro definition `TORCH_API_INCLUDE_EXTENSION_H` to turn on/off the feature, in addition to including/excluding `torchaudio/csrc/pybind.cpp` in the list of compiled source.
      
      In the previous manner, in C++ example, one had to rebuild libtorchaudio separately, but by splitting them completely at compile time, it should conceptually possible to distribute libtorchaudio within torchaudio Python package and reuse it for C++ example.
      2a67fcc1
  6. 02 Sep, 2021 6 commits
  7. 01 Sep, 2021 1 commit
  8. 31 Aug, 2021 4 commits
  9. 30 Aug, 2021 3 commits
  10. 28 Aug, 2021 2 commits
  11. 27 Aug, 2021 2 commits
  12. 26 Aug, 2021 4 commits
    • moto's avatar
      Default to BUILD_SOX=1 in non-Windows systems (#1725) · 89ea6955
      moto authored
      * Default to BUILD_SOX=1 in non-Windows systems
      
      Since the adaptation of CMake and restricting to the static linking of libsox,
      the build process has become much robust with libsox integration enabled.
      
      This commit makes it default behavior to build libsox integration in non-Windows systems.
      The build process still checks BUILD_SOX env var so, setting `BUILD_SOX=0` disables it.
      89ea6955
    • moto's avatar
      [Fbsync] Lint fix (#1726) · 560c082e
      moto authored
      560c082e
    • nateanl's avatar
      Add MVDR module to example (#1708) · 4915524f
      nateanl authored
      - Support three solutions for MVDR beamforming ("ref_channel", "stv_evd", "stv_power").
      - Support single-channel and multi-channel time-frequency masks
      - Add unit tests
      4915524f
    • nateanl's avatar
      [Docs] Update sphinx to 3.5.4 (#1685) · 38528cf6
      nateanl authored
      38528cf6
  13. 23 Aug, 2021 2 commits
  14. 20 Aug, 2021 3 commits
  15. 19 Aug, 2021 2 commits