lmms
Cross-platform music production software
Toggle main menu visibility
Loading...
Searching...
No Matches
include
SampleDecoder.h
Go to the documentation of this file.
1
/*
2
* SampleDecoder.h - Decodes audio files in various formats
3
*
4
* Copyright (c) 2023 saker <sakertooth@gmail.com>
5
*
6
* This file is part of LMMS - https://lmms.io
7
*
8
* This program is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public
10
* License as published by the Free Software Foundation; either
11
* version 2 of the License, or (at your option) any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
* General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public
19
* License along with this program (see COPYING); if not, write to the
20
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21
* Boston, MA 02110-1301 USA.
22
*
23
*/
24
25
#ifndef LMMS_SAMPLE_DECODER_H
26
#define LMMS_SAMPLE_DECODER_H
27
28
#include <QString>
29
#include <optional>
30
#include <string>
31
#include <vector>
32
33
#include "
SampleFrame.h
"
34
35
namespace
lmms
{
36
class
SampleDecoder
37
{
38
public
:
39
struct
Result
40
{
41
std::vector<SampleFrame>
data
;
42
int
sampleRate
;
43
};
44
45
struct
AudioType
46
{
47
std::string
name
;
48
std::string
extension
;
49
};
50
51
static
auto
decode
(
const
QString& audioFile) -> std::optional<Result>;
52
static
auto
supportedAudioTypes
() ->
const
std::vector<AudioType>&;
53
};
54
}
// namespace lmms
55
56
#endif
// LMMS_SAMPLE_DECODER_H
SampleFrame.h
lmms::SampleDecoder
Definition
SampleDecoder.h:37
lmms::SampleDecoder::decode
static auto decode(const QString &audioFile) -> std::optional< Result >
Definition
SampleDecoder.cpp:223
lmms::SampleDecoder::supportedAudioTypes
static auto supportedAudioTypes() -> const std::vector< AudioType > &
Definition
SampleDecoder.cpp:188
lmms
Definition
RemotePluginBase.cpp:34
lmms::SampleDecoder::AudioType
Definition
SampleDecoder.h:46
lmms::SampleDecoder::AudioType::extension
std::string extension
Definition
SampleDecoder.h:48
lmms::SampleDecoder::AudioType::name
std::string name
Definition
SampleDecoder.h:47
lmms::SampleDecoder::Result
Definition
SampleDecoder.h:40
lmms::SampleDecoder::Result::data
std::vector< SampleFrame > data
Definition
SampleDecoder.h:41
lmms::SampleDecoder::Result::sampleRate
int sampleRate
Definition
SampleDecoder.h:42
Generated on
for lmms by
1.18.0