Пытаюсь сохранить результат эмуляции AY8910 во FLAC формат для экономии места на диске, но столкнулся с такой проблемой, что libFLAC выдает ошибку инициализации файла 11 (FLAC__STREAM_ENCODER_INIT_STATUS_NOT_STREAMABLE), когда sampleRate=221725.
221725 - это 1773800 / 8
Причем если задаешь в два раза большую частоту sampleRate=443450, то flac пишется нормально.
C чем это может быть связано?
update: какжется нашел в исходниках причину:
Получается, если sampleRate >= 65536, то sampleRate должно делиться на 10 без остатка. Правда не понятно - откуда такое требование и почему?Код:FLAC_API FLAC__bool FLAC__format_sample_rate_is_subset(uint32_t sample_rate) { if( // sample rate is not subset if !FLAC__format_sample_rate_is_valid(sample_rate) || // sample rate is invalid or sample_rate >= ((1u << 16) * 10) || // sample rate is larger then or equal to 655360 or (sample_rate >= (1u << 16) && sample_rate % 10 != 0) //sample rate is >= 65536 and not divisible by 10 ) { return false; } else return true; }




Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 
