ASSET_PATHS = "assets/"+soubor+".mp3";
Здесь у вас есть путь как имеющий assets/
.
<asset name="asset" path=""/>
Здесь у вас есть name
как asset
.
Они не совпадают, и они должны соответствовать.
Кроме того, вам следует подумать о том, чтобы написать себе инструментальный тест, в котором вы пытаетесь прочитать этот контент у своего провайдера и убедиться, что вы получаете побайтное совпадение.
Вы никогда не можете получать ошибку или замечать для пакета UDP, который не достиг места назначения.
Протокол UDP реализован сверху IP. Вы отправляете пакеты UDP в хосты, определенные IP-адресами, не MAC-адресами.
И, как указано, сам UDP не отправит ответ, необходимо будет добавить код, чтобы сделать это сами. Затем необходимо будет добавить код, чтобы ожидать ответ и принять надлежащие меры, если ответ потерян (обычно снова посылают на таймере, пока Вы не решаете, что другой конец "мертв"), и так далее.
"UDP является более простым основанным на сообщении протоколом без установления соединения. В протоколах без установления соединения нет никакого усилия, приложенного для установки специализированного сквозного соединения. Коммуникация достигается путем передачи информации в одном направлении от источника до места назначения, не проверяя, чтобы видеть, все еще ли место назначения там, или если это готово получить информацию".
Если вам нужен надежный UDP, как при упорядочивании или проверке, так что TCP / IP даст вам взглянуть на RUDP или надежный UDP. Иногда вам действительно нужна проверка, но сочетание UDP и TCP может сдерживать надежность TCP, вызывая узкое место.
Для большинства крупномасштабных MMO для isntance UDP и надежности UDP являются средством связи и надежности. Все, что делает RUDP, - это добавляет меньшую часть TCP / IP для проверки и упорядочивания определенных сообщений, но не всех.
Распространенной сетевой библиотекой для разработки игр является Raknet, которая имеет это встроенное.
RUDP http://www.javvin.com/protocolRUDP.html
Пример RUDP с использованием Raknet и Python http://pyraknet.slowchop.com/