audio_waveform-ruby

所属分类:内容生成
开发工具:Ruby
文件大小:33KB
下载次数:0
上传日期:2021-01-11 19:24:28
上 传 者sh-1993
说明:  Ruby gem,提供对音频波形生成的音频波形数据文件的访问
(Ruby gem that provides access to audio waveform data files generated by audiowaveform)

文件列表:
.travis.yml (139, 2021-01-12)
COPYING (10851, 2021-01-12)
ChangeLog (859, 2021-01-12)
Gemfile (99, 2021-01-12)
Gemfile.lock (926, 2021-01-12)
Rakefile (471, 2021-01-12)
audio_waveform-ruby.gemspec (1054, 2021-01-12)
lib (0, 2021-01-12)
lib\audio_waveform.rb (199, 2021-01-12)
lib\audio_waveform (0, 2021-01-12)
lib\audio_waveform\error.rb (99, 2021-01-12)
lib\audio_waveform\version.rb (81, 2021-01-12)
lib\audio_waveform\waveform_data_file.rb (7063, 2021-01-12)
spec (0, 2021-01-12)
spec\audio_waveform (0, 2021-01-12)
spec\audio_waveform\version_spec.rb (202, 2021-01-12)
spec\audio_waveform\waveform_data_file_spec.rb (10875, 2021-01-12)
spec\data (0, 2021-01-12)
spec\data\invalid_header.dat (16, 2021-01-12)
spec\data\sample_rate_too_low.dat (3620, 2021-01-12)
spec\data\scale_too_low.dat (3620, 2021-01-12)
spec\data\test_file_stereo_16bit_64spp.dat (7220, 2021-01-12)
spec\data\test_file_stereo_8bit_64spp.dat (3620, 2021-01-12)
spec\data\version2.dat (3620, 2021-01-12)
spec\data\zero_length.dat (20, 2021-01-12)
spec\spec_helper.rb (364, 2021-01-12)

# audio_waveform-ruby [![Gem Version](https://badge.fury.io/rb/audio_waveform-ruby.svg)](http://rubygems.org/gems/audio_waveform-ruby) [![Build Status](https://travis-ci.org/bbc/audio_waveform-ruby.svg?branch=master)](https://travis-ci.org/bbc/audio_waveform-ruby) The audio_waveform-ruby gem provides a Ruby API for access to audio waveform data files generated by the [audiowaveform](https://github.com/bbc/audiowaveform) program. Refer to the [audiowaveform](https://github.com/bbc/audiowaveform) documentation for more information and [this page](https://github.com/bbc/audiowaveform/blob/master/doc/DataFormat.md) for file format details. ## Installation To install: $ gem install audio_waveform-ruby or, if using bundler, add this line to your application's Gemfile: ```ruby gem 'audio_waveform-ruby', :require => 'audio_waveform' ``` or, to use the latest code from the GitHub repository: ```ruby gem 'audio_waveform-ruby', :require => 'audio_waveform', :git => 'https://github.com/bbc/audio_waveform-ruby.git' ``` and run $ bundle install ## Usage To use this Gem in your program, add: ```ruby require 'audio_waveform' ``` Then, to load and use data from an existing waveform data file: ```ruby waveform = AudioWaveform::WaveformDataFile.new(filename: "test.dat") puts waveform.sample_rate # Returns audio sample rate, in Hz puts waveform.bits # Returns resolution of waveform data points puts waveform.samples_per_pixel # Returns waveform zoom level, in samples per pixel puts waveform.size # Returns number of waveform data points (0...waveform.size).each do |i| puts waveform.min_sample(i) # Returns waveform minimum at index i puts waveform.max_sample(i) # Returns waveform maximum at index i end ``` To generate a binary representation of a waveform data file: ```ruby waveform = AudioWaveform::WaveformDataFile.new(filename: "test.dat") data = waveform.to_binary ``` To save waveform data as a file in binary format: ```ruby waveform = AudioWaveform::WaveformDataFile.new(filename: "test.dat") waveform.save_as_binary("output.dat") ``` To generate a JSON representation of a waveform data file: ```ruby waveform = AudioWaveform::WaveformDataFile.new(filename: "test.dat") waveform.to_json ``` To save waveform data as a file in JSON format: ```ruby waveform = AudioWaveform::WaveformDataFile.new(filename: "test.dat") waveform.save_as_json("output.json") ``` To create a new waveform data file: ```ruby waveform = AudioWaveform::WaveformDataFile.new( sample_rate: 44100, samples_per_pixel: 512, bits: 8 ) waveform.append(-10, 10) .append(-11, 11) .append(-3, 3) # etc ``` ## License See COPYING for details. ## Contributing If you have a feature request or want to report a bug, we'd be happy to hear from you. Please either raise an [issue](https://github.com/bbcrd/audio_waveform-ruby/issues), or fork the project and send us a pull request. ## Authors This software was written by [Chris Needham](https://github.com/chrisn), chris.needham at bbc.co.uk. ## Copyright Copyright 2020 British Broadcasting Corporation

近期下载者

相关文件


收藏者