Encodes a given input file to a given output file using the specified encoder.
Namespace: Un4seen.Bass.Misc
Assembly: Bass.Net (in Bass.Net.dll) Version: 2.4.17.5
Syntax
public static bool EncodeFile( BaseEncoder encoder, BaseEncoderENCODEFILEPROC proc, bool overwriteOutput, bool deleteInput )
Parameters
- encoder
- Type: Un4seen.Bass.MiscBaseEncoder
The encoder to be used (make sure you set all the parameter members of the encoder before). - proc
- Type: Un4seen.Bass.MiscBaseEncoderENCODEFILEPROC
An optional callback procedure which should be called during the encoding process in order to inform you about the encoding progress ( = no notifcation). - overwriteOutput
- Type: SystemBoolean
Set to , if you want to force to overwrite any already existing output file (will delete the existing file). If set to and the output file already exists the method will fail, but the existing file will not be deleted. - deleteInput
- Type: SystemBoolean
Set to , if you want to delete the input file after the encoding has been successfully completed.
Return Value
Type: BooleanReturns , if the input file was successfully encoded. Returns if any error occured.
Exceptions
Exception | Condition |
---|---|
IOException | The output file already exists (only raised when the overwriteOutput is not used). |
Remarks
The method will use BASS_StreamCreateFile(String, Int64, Int64, BASSFlag) in order to open the input file for encoding. 16-bit will always be used here to read the inputFile. So any file format supported by BASS or the BASS plugin system might be used.
Examples
EncoderWMA wma = new EncoderWMA(0); wma.InputFile = "testin.ogg"; wma.OutputFile = "testout.wma"; wma.WMA_Bitrate = 128; wma.WMA_UsePro = true; BaseEncoder.EncodeFile(wma, new BaseEncoder.ENCODEFILEPROC(FileEncodingNotification), true, false); public void FileEncodingNotification(long bytesTotal, long bytesDone) { Console.Write("Encoding: {0:P}\r", Math.Round((double)bytesDone/(double)bytesTotal, 2)); }
See Also