admin管理员组

文章数量:1026989

I'd like to use GNU Octave for signal processing; one channel would be the audio, the other would be a sync signal input.

This is the default recorder object in Octave:

    BitsPerSample = 8
    CurrentSample = 0
    DeviceID = -1
    NumberOfChannels = 1
    Running = off
    SampleRate = 8000
    TotalSamples = 0
    Tag = 
    Type = audiorecorder
    UserData = [](0x0)

The stream is mono, i.e. a one-dimensional vector.

Tried the below code:

recorder = audiorecorder();
set(recorder, 'SampleRate', 48000);
set(recorder, 'NumberOfChannels', 2);

Getting this message for the NumberOfChannels property:

error: @audiorecorder/set: no such property or the property specified is read-only

I'd like to use GNU Octave for signal processing; one channel would be the audio, the other would be a sync signal input.

This is the default recorder object in Octave:

    BitsPerSample = 8
    CurrentSample = 0
    DeviceID = -1
    NumberOfChannels = 1
    Running = off
    SampleRate = 8000
    TotalSamples = 0
    Tag = 
    Type = audiorecorder
    UserData = [](0x0)

The stream is mono, i.e. a one-dimensional vector.

Tried the below code:

recorder = audiorecorder();
set(recorder, 'SampleRate', 48000);
set(recorder, 'NumberOfChannels', 2);

Getting this message for the NumberOfChannels property:

error: @audiorecorder/set: no such property or the property specified is read-only
Share Improve this question edited 2 days ago Christoph Rackwitz 15.5k5 gold badges39 silver badges51 bronze badges asked 2 days ago szoftveresszoftveres 11 silver badge1 bronze badge New contributor szoftveres is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct. 1
  • Comment from staging, you probably don't see it anymore: According to docs.octave./latest/Recorder-Properties.html you could try a properties = set (recorder) to see the configurable properties. Also, docs.octave./latest/Audio-Recorder.html suggests that you could set these particular parameters in the constructor. – tevemadar Commented yesterday
Add a comment  | 

1 Answer 1

Reset to default 1

According to the source code, the set() function on audiorecorder objects does not support setting the number of channels.

According to docs, you can pass those in the constructor.

: recorder = audiorecorder ()
: recorder = audiorecorder (fs, nbits, nchannels)
: recorder = audiorecorder (fs, nbits, nchannels, id)

So...

recorder = audiorecorder(48000, 16, 2)

(assuming you'd want 16 bits per sample, not 8)

I'd like to use GNU Octave for signal processing; one channel would be the audio, the other would be a sync signal input.

This is the default recorder object in Octave:

    BitsPerSample = 8
    CurrentSample = 0
    DeviceID = -1
    NumberOfChannels = 1
    Running = off
    SampleRate = 8000
    TotalSamples = 0
    Tag = 
    Type = audiorecorder
    UserData = [](0x0)

The stream is mono, i.e. a one-dimensional vector.

Tried the below code:

recorder = audiorecorder();
set(recorder, 'SampleRate', 48000);
set(recorder, 'NumberOfChannels', 2);

Getting this message for the NumberOfChannels property:

error: @audiorecorder/set: no such property or the property specified is read-only

I'd like to use GNU Octave for signal processing; one channel would be the audio, the other would be a sync signal input.

This is the default recorder object in Octave:

    BitsPerSample = 8
    CurrentSample = 0
    DeviceID = -1
    NumberOfChannels = 1
    Running = off
    SampleRate = 8000
    TotalSamples = 0
    Tag = 
    Type = audiorecorder
    UserData = [](0x0)

The stream is mono, i.e. a one-dimensional vector.

Tried the below code:

recorder = audiorecorder();
set(recorder, 'SampleRate', 48000);
set(recorder, 'NumberOfChannels', 2);

Getting this message for the NumberOfChannels property:

error: @audiorecorder/set: no such property or the property specified is read-only
Share Improve this question edited 2 days ago Christoph Rackwitz 15.5k5 gold badges39 silver badges51 bronze badges asked 2 days ago szoftveresszoftveres 11 silver badge1 bronze badge New contributor szoftveres is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct. 1
  • Comment from staging, you probably don't see it anymore: According to docs.octave./latest/Recorder-Properties.html you could try a properties = set (recorder) to see the configurable properties. Also, docs.octave./latest/Audio-Recorder.html suggests that you could set these particular parameters in the constructor. – tevemadar Commented yesterday
Add a comment  | 

1 Answer 1

Reset to default 1

According to the source code, the set() function on audiorecorder objects does not support setting the number of channels.

According to docs, you can pass those in the constructor.

: recorder = audiorecorder ()
: recorder = audiorecorder (fs, nbits, nchannels)
: recorder = audiorecorder (fs, nbits, nchannels, id)

So...

recorder = audiorecorder(48000, 16, 2)

(assuming you'd want 16 bits per sample, not 8)

本文标签: audioGNU Octave stereo recordinghowStack Overflow