Bei Wav geht das bestimmt, aber ich weiss nicht wie. Ich würde mich mal über das Wav-Format bei
www.wotsit.org erkundigen.
Bei mp3 geht das bedingt, und da weiß ich wie. Ein mp3 File besteht aus vielen vielen Teilen, den 'Frames'. Jeder Frame hat einen MPEG-Header, in dem z.B. (indirekt) drin steht, wie groß dieser Frame ist. Da jeder Frame eine konstante Länge (in Zeit) hat, muss man von Dateianfang nur x Frames ignorieren, dann y Frames lesen, und diese an Stelle z in der anderen Datei einfügen.
Allerdings gibt es bei Layer 3 (=mp3) die Möglichkeit, dass sich 'Kodierungsintensive' Frames bei ihren Nachbarframes ein paar Byte 'leihen'. Dies würde bei meiner Methode verlorengehen. Inwieweit sich das genau auswirkt, weiss ich nicht. Auch weiss ich nicht, wie oft dieses 'leihen' vorkommt, oder wie man das feststellt.
Ich hab irgendwo ein Stück Code, was die Frames eines mp3-File in eine 'List of tMPEG-Frame' packt. Bei Bedarf poste ich das hier, wenn ich das wiederfinde.
We are, we were and will not be.