Why are the Java Sound classes not serializable?
There has been some discussion about making classes like AudioFormat serializable. But defining and implementing a serializable form for the data, keeping in mind that there may be subclasses, would be a lot of work and introduce implementation restrictions. Compared to that, the use cases for serializable Java Sound classes was considered too weak. For other types of classes like SourceDataLine, TargetDataLine and AudioInputStream, serialization doesn’t make sense at all: since a Line does not represent static data, but rather data is “flowing” through it, it’s impossible to restore a useful state.