Well, this is most peculiar.
I've fixed the problem, but it was nothing to do with sounds or channels.
I have a custom type with a timer in it. There is only one instance of this type at any given time. Its possibly worth notice that, if any of you have a timer within a type, then simply calling "myType = Null" may well cause GCCollect to get rid of the instance, but it does NOT get rid of the timer within (even though you no longer have any access to it).
Why this was preventing sounds from working I'm not entirely sure, but its fixed now.
I've fixed the problem, but it was nothing to do with sounds or channels.
I have a custom type with a timer in it. There is only one instance of this type at any given time. Its possibly worth notice that, if any of you have a timer within a type, then simply calling "myType = Null" may well cause GCCollect to get rid of the instance, but it does NOT get rid of the timer within (even though you no longer have any access to it).
Why this was preventing sounds from working I'm not entirely sure, but its fixed now.