| 130 | } |
| 131 | |
| 132 | [[gnu::pure]] |
| 133 | static SampleFormat |
| 134 | sndfile_sample_format(const SF_INFO &info) noexcept |
| 135 | { |
| 136 | switch (info.format & SF_FORMAT_SUBMASK) { |
| 137 | case SF_FORMAT_PCM_S8: |
| 138 | case SF_FORMAT_PCM_U8: |
| 139 | case SF_FORMAT_PCM_16: |
| 140 | return SampleFormat::S16; |
| 141 | |
| 142 | case SF_FORMAT_FLOAT: |
| 143 | case SF_FORMAT_DOUBLE: |
| 144 | return SampleFormat::FLOAT; |
| 145 | |
| 146 | default: |
| 147 | return SampleFormat::S32; |
| 148 | } |
| 149 | } |
| 150 | |
| 151 | static AudioFormat |
| 152 | CheckAudioFormat(const SF_INFO &info) |