diff options
Diffstat (limited to 'python-kaldi-python-io.spec')
-rw-r--r-- | python-kaldi-python-io.spec | 228 |
1 files changed, 228 insertions, 0 deletions
diff --git a/python-kaldi-python-io.spec b/python-kaldi-python-io.spec new file mode 100644 index 0000000..88a5f44 --- /dev/null +++ b/python-kaldi-python-io.spec @@ -0,0 +1,228 @@ +%global _empty_manifest_terminate_build 0 +Name: python-kaldi-python-io +Version: 1.2.2 +Release: 1 +Summary: A pure python IO interface for data accessing in kaldi +License: Apache V2.0 +URL: https://github.com/funcwj/kaldi-python-io +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/80/45/e3e542ffa8970ebd782fcece35e2295de9c60e8c396c2c1a403410d1b24e/kaldi-python-io-1.2.2.tar.gz +BuildArch: noarch + + +%description +## Kaldi Python IO + +A python (3.6+) wrapper for Kaldi's data accessing. + +### Support Type + +* Kaldi's binary archives (*.ark) +* Kaldi's scripts (alignments & features, *.scp) +* Kaldi nnet3 data examples in binary (*.egs) + +### Install + +`python setup.py install` or `pip install kaldi-python-io` + +### Usage + +* ArchiveReader && AlignArchiveReader + ```python + # allow only sequential index + ark_reader = ArchiveReader("copy-feats ark:foo.ark ark:- |") + for key, _ in ark_reader: + print(key) + ali_reader = AlignArchiveReader("gunzip -c foo.ali.gz |") + for key, _ in ark_reader: + print(key) + ``` + +* Nnet3EgsReader + ```python + # allow only sequential index + egs_reader = Nnet3EgsReader("foo.egs") + for key, _ in egs_reader: + print(key) + ``` + +* ArchiveWriter + ```python + with ArchiveWriter("foo.ark", "foo.scp") as writer: + for i in range(10): + mat = np.random.rand(100, 20) + writer.write(f"mat-{i}", mat) + ``` + +* ScriptReader && AlignScriptReader + ```python + # allow sequential/random index + scp_reader = ScriptReader("shuf foo.scp | head -n 2") + for key, mat in scp_reader: + print(f"{key}: {mat.shape}") + ali_reader = AlignScriptReader("foo.ali.scp") + for key, ali in ali_reader: + print(f"{key}: {ali.shape}") + ``` + +%package -n python3-kaldi-python-io +Summary: A pure python IO interface for data accessing in kaldi +Provides: python-kaldi-python-io +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-kaldi-python-io +## Kaldi Python IO + +A python (3.6+) wrapper for Kaldi's data accessing. + +### Support Type + +* Kaldi's binary archives (*.ark) +* Kaldi's scripts (alignments & features, *.scp) +* Kaldi nnet3 data examples in binary (*.egs) + +### Install + +`python setup.py install` or `pip install kaldi-python-io` + +### Usage + +* ArchiveReader && AlignArchiveReader + ```python + # allow only sequential index + ark_reader = ArchiveReader("copy-feats ark:foo.ark ark:- |") + for key, _ in ark_reader: + print(key) + ali_reader = AlignArchiveReader("gunzip -c foo.ali.gz |") + for key, _ in ark_reader: + print(key) + ``` + +* Nnet3EgsReader + ```python + # allow only sequential index + egs_reader = Nnet3EgsReader("foo.egs") + for key, _ in egs_reader: + print(key) + ``` + +* ArchiveWriter + ```python + with ArchiveWriter("foo.ark", "foo.scp") as writer: + for i in range(10): + mat = np.random.rand(100, 20) + writer.write(f"mat-{i}", mat) + ``` + +* ScriptReader && AlignScriptReader + ```python + # allow sequential/random index + scp_reader = ScriptReader("shuf foo.scp | head -n 2") + for key, mat in scp_reader: + print(f"{key}: {mat.shape}") + ali_reader = AlignScriptReader("foo.ali.scp") + for key, ali in ali_reader: + print(f"{key}: {ali.shape}") + ``` + +%package help +Summary: Development documents and examples for kaldi-python-io +Provides: python3-kaldi-python-io-doc +%description help +## Kaldi Python IO + +A python (3.6+) wrapper for Kaldi's data accessing. + +### Support Type + +* Kaldi's binary archives (*.ark) +* Kaldi's scripts (alignments & features, *.scp) +* Kaldi nnet3 data examples in binary (*.egs) + +### Install + +`python setup.py install` or `pip install kaldi-python-io` + +### Usage + +* ArchiveReader && AlignArchiveReader + ```python + # allow only sequential index + ark_reader = ArchiveReader("copy-feats ark:foo.ark ark:- |") + for key, _ in ark_reader: + print(key) + ali_reader = AlignArchiveReader("gunzip -c foo.ali.gz |") + for key, _ in ark_reader: + print(key) + ``` + +* Nnet3EgsReader + ```python + # allow only sequential index + egs_reader = Nnet3EgsReader("foo.egs") + for key, _ in egs_reader: + print(key) + ``` + +* ArchiveWriter + ```python + with ArchiveWriter("foo.ark", "foo.scp") as writer: + for i in range(10): + mat = np.random.rand(100, 20) + writer.write(f"mat-{i}", mat) + ``` + +* ScriptReader && AlignScriptReader + ```python + # allow sequential/random index + scp_reader = ScriptReader("shuf foo.scp | head -n 2") + for key, mat in scp_reader: + print(f"{key}: {mat.shape}") + ali_reader = AlignScriptReader("foo.ali.scp") + for key, ali in ali_reader: + print(f"{key}: {ali.shape}") + ``` + +%prep +%autosetup -n kaldi-python-io-1.2.2 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-kaldi-python-io -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 1.2.2-1 +- Package Spec generated |