* revised mad package (libmad headers)

git-svn-id: trunk@12500 -
This commit is contained in:
ivost 2009-01-04 09:59:54 +00:00
parent cb8c685785
commit 907427f2e5

View File

@ -39,7 +39,7 @@ uses
{$DEFINE DYNLINK}
{$ENDIF}
{$DEFINE MAD_DISABLE_BUILTIN_DECODER}
{.$DEFINE MAD_DISABLE_BUILTIN_DECODER}
{$IFDEF DYNLINK}
const
@ -156,53 +156,54 @@ const
mad_timer_zero : mad_timer_t = (seconds:0; fraction:0);
type
mad_units = (
MAD_UNITS_HOURS = -2,
MAD_UNITS_MINUTES = -1,
MAD_UNITS_SECONDS = 0,
mad_units = cuint;
const
MAD_UNITS_HOURS = -2;
MAD_UNITS_MINUTES = -1;
MAD_UNITS_SECONDS = 0;
{ metric units }
MAD_UNITS_DECISECONDS = 10,
MAD_UNITS_CENTISECONDS = 100,
MAD_UNITS_MILLISECONDS = 1000,
MAD_UNITS_DECISECONDS = 10;
MAD_UNITS_CENTISECONDS = 100;
MAD_UNITS_MILLISECONDS = 1000;
{ audio sample units }
MAD_UNITS_8000_HZ = 8000,
MAD_UNITS_11025_HZ = 11025,
MAD_UNITS_12000_HZ = 12000,
MAD_UNITS_8000_HZ = 8000;
MAD_UNITS_11025_HZ = 11025;
MAD_UNITS_12000_HZ = 12000;
MAD_UNITS_16000_HZ = 16000,
MAD_UNITS_22050_HZ = 22050,
MAD_UNITS_24000_HZ = 24000,
MAD_UNITS_16000_HZ = 16000;
MAD_UNITS_22050_HZ = 22050;
MAD_UNITS_24000_HZ = 24000;
MAD_UNITS_32000_HZ = 32000,
MAD_UNITS_44100_HZ = 44100,
MAD_UNITS_48000_HZ = 48000,
MAD_UNITS_32000_HZ = 32000;
MAD_UNITS_44100_HZ = 44100;
MAD_UNITS_48000_HZ = 48000;
{ video frame/field units }
MAD_UNITS_24_FPS = 24,
MAD_UNITS_25_FPS = 25,
MAD_UNITS_30_FPS = 30,
MAD_UNITS_48_FPS = 48,
MAD_UNITS_50_FPS = 50,
MAD_UNITS_60_FPS = 60,
MAD_UNITS_24_FPS = 24;
MAD_UNITS_25_FPS = 25;
MAD_UNITS_30_FPS = 30;
MAD_UNITS_48_FPS = 48;
MAD_UNITS_50_FPS = 50;
MAD_UNITS_60_FPS = 60;
{ CD audio frames }
MAD_UNITS_75_FPS = 75,
MAD_UNITS_75_FPS = 75;
{ video drop-frame units }
MAD_UNITS_23_976_FPS = -24,
MAD_UNITS_24_975_FPS = -25,
MAD_UNITS_29_97_FPS = -30,
MAD_UNITS_47_952_FPS = -48,
MAD_UNITS_49_95_FPS = -50,
MAD_UNITS_59_94_FPS = -60
);
MAD_UNITS_23_976_FPS = -24;
MAD_UNITS_24_975_FPS = -25;
MAD_UNITS_29_97_FPS = -30;
MAD_UNITS_47_952_FPS = -48;
MAD_UNITS_49_95_FPS = -50;
MAD_UNITS_59_94_FPS = -60;
procedure mad_timer_reset(var timer: mad_timer_t);
@ -313,8 +314,8 @@ type
mad_emphasis = (
MAD_EMPHASIS_NONE = 0, { no emphasis }
MAD_EMPHASIS_50_15_US = 1, { 50/15 microseconds emphasis }
MAD_EMPHASIS_CCITT_J_17 = 3, { CCITT J.17 emphasis }
MAD_EMPHASIS_RESERVED = 2 { unknown emphasis }
MAD_EMPHASIS_RESERVED = 2, { unknown emphasis }
MAD_EMPHASIS_CCITT_J_17 = 3 { CCITT J.17 emphasis }
);
mad_header = record
@ -632,8 +633,8 @@ begin
begin
if Assigned(decoder^.stream.next_frame) then
begin
remaining := ptrint(decoder^.stream.bufend) - ptrint(decoder^.stream.next_frame);
inbuf_ptr := pointer(ptrint(@decoder^.inbuf) + remaining);
remaining := ptruint(decoder^.stream.bufend) - ptruint(decoder^.stream.next_frame);
inbuf_ptr := pointer(ptruint(@decoder^.inbuf) + remaining);
len := MAD_INPUT_BUFFER_SIZE - remaining;
Move(decoder^.stream.next_frame^, decoder^.inbuf, remaining);
end else begin
@ -700,8 +701,8 @@ begin
for i := 0 to len - 1 do
begin
pcint16(ptrint(buffer) + ofs + 0)^ := decoder^.synth.pcm.samples[0][decoder^.sampleofs];
pcint16(ptrint(buffer) + ofs + 2)^ := decoder^.synth.pcm.samples[1][decoder^.sampleofs];
pcint16(ptruint(buffer) + ofs + 0)^ := decoder^.synth.pcm.samples[0][decoder^.sampleofs];
pcint16(ptruint(buffer) + ofs + 2)^ := decoder^.synth.pcm.samples[1][decoder^.sampleofs];
Inc(decoder^.sampleofs);
Dec(decoder^.samplecnt);