Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Learn more
Facebook AI Research's Automatic Speech Recognition Toolkit
Branch: master
Clone or download
jacobkahn and facebook-github-bot Make building w2l with FB dependencies configurable with Buck
Summary:
Create an extra Buck config: `w2.build_fb_dependencies`, a bool flag for building wav2letter with FB dependencies (e.g. Everstore reader and all related deps). We've established several reasons for wanting this:
- Reduce FB build times when rebasing or building from scratch
- Don't rely on folly/other components which sometimes break in fbcode/break our build as a result
- Still be able to build in gcc if we want even though a variety of other internal FB projects are no longer explicitly supporting it

By default, FB deps aren't included:
```
buck build mode/opt deeplearning/projects/wav2letter:train_cpp
```
is much faster after pulling from master. To include Everstore reader/FB deps, use:
```
buck build mode/opt deeplearning/projects/wav2letter:train_cpp -c w2l.build_fb_dependencies=true
# different truthy/falsy values are respected, e.g. true, True, false, False, 0, 1, etc
```

Also renames the preprocessor macro to `W2L_BUILD_FB_DEPENDENCIES` to be more explicit

Since `read_bool` is the only configuration option for Buck that reads and casts bools reasonably (and it's only usable in Bazel files), create a separate config for the function.

Reviewed By: vineelpratap

Differential Revision: D15732262

fbshipit-source-id: 9a6b4214deb24a6a545400e8902bfd47644c246c
Latest commit cf0ee9f Jun 10, 2019

README.md

wav2letter++

CircleCI

wav2letter++ is a fast open source speech processing toolkit from the Speech Team at Facebook AI Research. It is written entirely in C++ and uses the ArrayFire tensor library and the flashlight machine learning library for maximum efficiency. Our approach is detailed in this arXiv paper.

The goal of this software is to facilitate research in end-to-end models for speech recognition.

The previous version of wav2letter (written in Lua) can be found in the "wav2letter-lua" branch under the repository.

Building wav2letter++

See Building Instructions for details.

Full documentation

To get started with wav2letter++, checkout the tutorials section.

We also provide complete recipes for WSJ, Timit and Librispeech and they can be found in recipes folder.

Citation

If you use the code in your paper, then please cite it as:

@article{pratap2018w2l,
  author          = {Vineel Pratap, Awni Hannun, Qiantong Xu, Jeff Cai, Jacob Kahn, Gabriel Synnaeve, Vitaliy Liptchinsky, Ronan Collobert},
  title           = {wav2letter++: The Fastest Open-source Speech Recognition System},
  journal         = {CoRR},
  volume          = {abs/1812.07625},
  year            = {2018},
  url             = {https://arxiv.org/abs/1812.07625},
}

Join the wav2letter community

See the CONTRIBUTING file for how to help out.

License

wav2letter++ is BSD-licensed, as found in the LICENSE file.

You can’t perform that action at this time.