10к в одной папке может быть проблемой. Я бы раскидал по дереву папок, скажем, по сотням от 0 до 20, и числам:
1234 => /12/34/ => и там пять файлов
0001 => /00/01/
2000 => /20/00/
У себя в одном проекте я организовал примерно похожую структуру папок, но чуть усложнил – т.к. число папок не равномерно для разных корневых папок, я зеркалирую порядок битов в каждом номере, и бью на уровни по шестнадцатиричным буквам:
число двоичное наоборот hex папка
0001 0000 0000 0001 1000 0000 0000 800 /8/0/0
1234 0100 1101 0010 0100 1011 0010 4B2 /4/B/2
0173 0001 0111 0011 1100 1110 1000 CE8 /C/E/8
2000 0111 1101 0000 0000 1011 1110 0BE /0/B/E
Так в каждом уровне папок у вас будет не более 16 подпапок.
А ещё, может быть, вы не делаете
предзагрузку звуков? Стоит начинать скачивать звуковой файл сразу, как становится ясно, или вероятно, что он понадобится. Чтобы на момент начала воспроизведения файл уже был загружен.