Skip to content

Can we pass an argument like transpose? #6

Open
@yuikns

Description

@yuikns

The origin API was

  static std::vector<std::vector<float>> melspectrogram(
      std::vector<float> &x, int sr, int n_fft, int n_hop,
      const std::string &win, bool center, const std::string &mode, float power,
      int n_mels, int fmin, int fmax) {
    Matrixf mel = internal::melspectrogram(); // do some stuff here
    std::vector<std::vector<float>> mel_vector();
    // 'cast' to vector of vector
    return mel_vector;
}

However, it is not easy to transpose a vector of vector in C++.

Is it possible to add a special args like transpose:

  static std::vector<std::vector<float>> melspectrogram(
      std::vector<float> &x, int sr, int n_fft, int n_hop,
      const std::string &win, bool center, const std::string &mode, float power,
      int n_mels, int fmin, int fmax, bool transpose = false) {
    Matrixf mel = internal::melspectrogram(); // do some stuff here
    if (transpose) {
      mel.transposeInPlace();
    }
    std::vector<std::vector<float>> mel_vector();
    // 'cast' to vector of vector
    return mel_vector; // return origin_mel_vector.T
}

It may make the result easier for me.

Have a nice day!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions