Io uso questa funzione per unire due file wavunire due file wav in NAudio prima della fine del primo wav
public static void Concatenate(string outputFile, ArrayList sourceFiles)
{
byte[] buffer = new byte[1024];
WaveFileWriter waveFileWriter = null;
try
{
foreach (string sourceFile in sourceFiles)
{
using (WaveFileReader reader = new WaveFileReader(sourceFile))
{
if (waveFileWriter == null)
{
// first time in create new Writer
waveFileWriter = new WaveFileWriter(outputFile, reader.WaveFormat);
}
else
{
if (!reader.WaveFormat.Equals(waveFileWriter.WaveFormat))
{
//throw new InvalidOperationException("Can't concatenate WAV Files that don't share the same format");
}
}
int read;
while ((read = reader.Read(buffer, 0, buffer.Length)) > 0)
{
waveFileWriter.WriteData(buffer, 0, read);
}
}
}
}
catch (Exception ex)
{
}
finally
{
if (waveFileWriter != null)
{
waveFileWriter.Dispose();
}
}
}
Ma questa funzione unisco il secondo file wav dopo la fine del primo wav.
Quello che voglio davvero è quello di unire il secondo file wav 2 millisecondi prima della fine del wav.
Esiste un modo per farlo utilizzando NAudio
, o utilizzando qualche altra libreria?
Come vuoi unirti ai binari? Stai cercando di mescolarli o tagliare 2ms dal secondo e incollarlo fino alla fine? – kidmosey
Voglio solo mixarlo @kidmosey! – zey