Doesn't sound right to me.  Your hard coding enet into only having the ability to create packets with voice data shoved onto them.  That's not very flexible.<br><br>You can put any data you want into the packet so nothing stops you from making all your packets in the desired format.<br>
<br>But the whole point of channels is to separate such data and treat them differently.<br><br>Normally for voice packets you would send them on their own channel using unreliable + sequenced.  This way late packets would be dropped which is desired for voice.<br>
<br>Also Enet is not going to send a physical udp packet until you flush the host.  So if you were to send a game packet and then send a voice packet and call flush they would both end up in the same udp packet on the wire.<br>
<br><br><br><div class="gmail_quote">On Thu, Apr 14, 2011 at 6:40 AM, Sergio Martin <span dir="ltr"><<a href="mailto:smartin@freedomfactorystudios.com">smartin@freedomfactorystudios.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi,<br>
<br>
In order to meet our client custom network requirement, I need to send each UDP packet data as following:<br>
<br>
[ size_of_game_data ] [ game_data ] [ voice_data ]<br>
<br>
<br>
How difficult would be to modify ENet behaviour to meet that pattern?<br>
I'm not sure how to deal with ENet's packet fragmentation.<br>
<br>
I'm thinking of adding to ENetPacket struct two new variables:<br>
enet_uint8 * voiceData;             /**< allocated voice data for packet */<br>
size_t           voiceDataLength;  /**< length of voice data */<br>
<br>
Change: enet_packet_create (const void * data, size_t dataLength, enet_uint32 flags)<br>
To this: enet_packet_create(const void * data, size_t dataLength, const void * voiceData, size_t voiceDataLength, enet_uint32 flags)<br>
<br>
And then modify the rest of ENet to support it.<br>
<br>
<br>
Is this the correct approach?<br>
<br>
<br>
Best Regards,<br>
Sergio Martin.<br>
<br>
_______________________________________________<br>
ENet-discuss mailing list<br>
<a href="mailto:ENet-discuss@cubik.org" target="_blank">ENet-discuss@cubik.org</a><br>
<a href="http://lists.cubik.org/mailman/listinfo/enet-discuss" target="_blank">http://lists.cubik.org/mailman/listinfo/enet-discuss</a><br>
</blockquote></div><br>