Example #1
0
def export(dataset, export_format="wav", savepath=None, start_idx=None, stop_idx=None):
    if not savepath:
        savepath = os.path.basename(dataset.name)
    if export_format == "wav":
        data = np.int16(dataset[start_idx:stop_idx] / max(abs(dataset[start_idx:stop_idx])) * (2 ** 15 - 1))
        wavfile.write(savepath + ".wav", dataset.attrs["sampling_rate"], data)
    if export_format == "text":
        np.savetxt(savepath + ".csv", dataset)
    if export_format == "lbl":
        lbl.write(savepath + ".lbl", dataset[start_idx:stop_idx])
Example #2
0
def test_writeread(tmpdir):
    fname = os.path.join(tmpdir.dirname, 'temp.lbl')
    times = np.reshape(np.arange(0,20), (-1,2))
    labels = [chr(i) for i in np.arange(10) + 65]
    dtype = [('name', np.unicode_, max([len(x) for x in labels])),
             ('start', float), ('stop', float)]
    rec_array = np.array([(l, sta, sto) for l, (sta, sto) in zip(labels, times)],
                    dtype=dtype)
    lbl.write(fname, rec_array)
    rec_array2 = lbl.read(fname)
    assert ''.join(rec_array['name']) == ''.join(rec_array2['name']), 'label names do not match'
    assert np.all(np.isclose(rec_array['start'], rec_array2['start'])), 'starts do not match'
    assert np.all(np.isclose(rec_array['stop'], rec_array2['stop'])), 'stops do not match'
Example #3
0
def export(dataset,
           export_format='wav',
           savepath=None,
           start_idx=None,
           stop_idx=None):
    if not savepath:
        savepath = os.path.basename(dataset.name)
    if export_format == 'wav':
        data = np.int16(dataset[start_idx:stop_idx] /
                        max(abs(dataset[start_idx:stop_idx])) * (2**15 - 1))
        wavfile.write(savepath + '.wav', dataset.attrs['sampling_rate'], data)
    if export_format == 'text':
        np.savetxt(savepath + '.csv', dataset)
    if export_format == 'lbl':
        lbl.write(savepath + '.lbl', dataset[start_idx:stop_idx])
Example #4
0
def export(dataset,
           export_format='wav',
           savepath=None,
           start_idx=None,
           stop_idx=None):
    if not savepath:
        savepath = os.path.basename(dataset.name)
    if export_format == 'wav':
        data = np.int16(dataset[start_idx:stop_idx] /
                        max(abs(dataset[start_idx:stop_idx])) * (2**15 - 1))
        wavfile.write(savepath + '.wav', dataset.attrs['sampling_rate'], data)
    if export_format == 'text':
        np.savetxt(savepath + '.csv', dataset)
    if export_format == 'lbl':
        lbl.write(savepath + '.lbl', dataset[start_idx:stop_idx])
Example #5
0
def test_writeread(tmpdir):
    fname = os.path.join(tmpdir.dirname, 'temp.lbl')
    times = np.reshape(np.arange(0, 20), (-1, 2))
    labels = [chr(i) for i in np.arange(10) + 65]
    dtype = [('name', np.unicode_, max([len(x) for x in labels])),
             ('start', float), ('stop', float)]
    rec_array = np.array([(l, sta, sto)
                          for l, (sta, sto) in zip(labels, times)],
                         dtype=dtype)
    lbl.write(fname, rec_array)
    rec_array2 = lbl.read(fname)
    assert ''.join(rec_array['name']) == ''.join(
        rec_array2['name']), 'label names do not match'
    assert np.all(np.isclose(rec_array['start'],
                             rec_array2['start'])), 'starts do not match'
    assert np.all(np.isclose(rec_array['stop'],
                             rec_array2['stop'])), 'stops do not match'