init commit
This commit is contained in:
81
output/VideoReader/libfaad.cs
Normal file
81
output/VideoReader/libfaad.cs
Normal file
@@ -0,0 +1,81 @@
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace VideoReader;
|
||||
|
||||
public class libfaad
|
||||
{
|
||||
public struct NeAACDecConfiguration
|
||||
{
|
||||
public char defObjectType;
|
||||
|
||||
public int defSampleRate;
|
||||
|
||||
public char outputFormat;
|
||||
|
||||
public char downMatrix;
|
||||
|
||||
public char useOldADTSFormat;
|
||||
}
|
||||
|
||||
public struct NeAACDecFrameInfo
|
||||
{
|
||||
public int bytesconsumed;
|
||||
|
||||
public int samples;
|
||||
|
||||
public char channels;
|
||||
|
||||
public char error;
|
||||
|
||||
public int samplerate;
|
||||
|
||||
public char sbr;
|
||||
|
||||
public char object_type;
|
||||
|
||||
public char header_type;
|
||||
|
||||
public char num_front_channels;
|
||||
|
||||
public char num_side_channels;
|
||||
|
||||
public char num_back_channels;
|
||||
|
||||
public char num_lfe_channels;
|
||||
|
||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)]
|
||||
public char[] channel_position;
|
||||
|
||||
public char ps;
|
||||
}
|
||||
|
||||
private const string libPath = "libfaad2.dll";
|
||||
|
||||
[DllImport("libfaad2.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern IntPtr NeAACDecOpen();
|
||||
|
||||
[DllImport("libfaad2.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern IntPtr NeAACDecGetCurrentConfiguration(IntPtr hpDecoder);
|
||||
|
||||
[DllImport("libfaad2.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern char NeAACDecSetConfiguration(IntPtr hpDecoder, IntPtr config);
|
||||
|
||||
[DllImport("libfaad2.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
public unsafe static extern int NeAACDecInit(IntPtr hpDecoder, byte[] buffer, int buffer_size, ulong* samplerate, char* channels);
|
||||
|
||||
[DllImport("libfaad2.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
public unsafe static extern char NeAACDecInit2(IntPtr hpDecoder, byte[] buffer, int SizeOfDecoderSpecificInfo, ulong* samplerate, char* channels);
|
||||
|
||||
[DllImport("libfaad2.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern IntPtr NeAACDecDecode(IntPtr hpDecoder, out NeAACDecFrameInfo hInfo, byte[] buffer, int buffer_size);
|
||||
|
||||
[DllImport("libfaad2.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern void NeAACDecClose(IntPtr hpDecoder);
|
||||
|
||||
[DllImport("libfaad2.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
public unsafe static extern char* NeAACDecGetErrorMessage(char errcode);
|
||||
|
||||
[DllImport("libfaad2.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern char NeAACDecAudioSpecificConfig(IntPtr pBuffer, int buffer_size, IntPtr mp4ASC);
|
||||
}
|
||||
Reference in New Issue
Block a user