git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@68 8e941d3f-bd1b-0410-a28a-d453659cc2b4

This commit is contained in:
christian_u
2007-02-20 18:17:47 +00:00
parent 7feab987a9
commit 1c584a0262
48 changed files with 7343 additions and 0 deletions

View File

@ -0,0 +1,361 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<PathDelim Value="\"/>
<Version Value="5"/>
<General>
<MainUnit Value="0"/>
<IconPath Value="./"/>
<TargetFileExt Value=".exe"/>
<ActiveEditorIndexAtStart Value="0"/>
</General>
<LazDoc Paths=""/>
<Units Count="39">
<Unit0>
<CursorPos X="33" Y="9"/>
<Filename Value="mixer.lpr"/>
<IsPartOfProject Value="True"/>
<TopLine Value="1"/>
<UnitName Value="Mixer"/>
<UsageCount Value="88"/>
</Unit0>
<Unit1>
<CursorPos X="14" Y="96"/>
<EditorIndex Value="0"/>
<Filename Value="umixer.pas"/>
<ComponentName Value="fMixer"/>
<IsPartOfProject Value="True"/>
<Loaded Value="True"/>
<ResourceFilename Value="umixer.lrs"/>
<TopLine Value="78"/>
<UnitName Value="uMixer"/>
<UsageCount Value="88"/>
</Unit1>
<Unit2>
<CursorPos X="1" Y="168"/>
<Filename Value="D:\LKomponenten\acs\Src\Common\ACS_Mixer.pas"/>
<TopLine Value="138"/>
<UnitName Value="ACS_Mixer"/>
<UsageCount Value="20"/>
</Unit2>
<Unit3>
<CursorPos X="21" Y="889"/>
<Filename Value="D:\lazarus\lcl\ExtCtrls.pp"/>
<TopLine Value="875"/>
<UnitName Value="ExtCtrls"/>
<UsageCount Value="6"/>
</Unit3>
<Unit4>
<CursorPos X="29" Y="126"/>
<Filename Value="D:\lazarus\lcl\Controls.pp"/>
<TopLine Value="109"/>
<UnitName Value="Controls"/>
<UsageCount Value="6"/>
</Unit4>
<Unit5>
<CursorPos X="3" Y="41"/>
<Filename Value="D:\lazarus\lcl\GraphType.pp"/>
<TopLine Value="24"/>
<UnitName Value="GraphType"/>
<UsageCount Value="6"/>
</Unit5>
<Unit6>
<CursorPos X="15" Y="575"/>
<Filename Value="D:\lazarus\lcl\LCLProc.pas"/>
<TopLine Value="569"/>
<UnitName Value="LCLProc"/>
<UsageCount Value="12"/>
</Unit6>
<Unit7>
<CursorPos X="1" Y="249"/>
<Filename Value="D:\LKomponenten\acs\Src\Common\include\windows\ACS_Mixer.inc"/>
<TopLine Value="232"/>
<UsageCount Value="12"/>
</Unit7>
<Unit8>
<CursorPos X="1" Y="3139"/>
<Filename Value="D:\lazarus\lcl\include\wincontrol.inc"/>
<TopLine Value="3122"/>
<UsageCount Value="6"/>
</Unit8>
<Unit9>
<CursorPos X="1" Y="3122"/>
<Filename Value="D:\lazarus\lcl\include\control.inc"/>
<TopLine Value="3105"/>
<UsageCount Value="6"/>
</Unit9>
<Unit10>
<CursorPos X="1" Y="422"/>
<Filename Value="F:\mixer\cmpMidiMixer.pas"/>
<TopLine Value="415"/>
<UnitName Value="cmpMidiMixer"/>
<UsageCount Value="6"/>
</Unit10>
<Unit11>
<CursorPos X="1" Y="171"/>
<Filename Value="D:\lazarus\lcl\include\trackbar.inc"/>
<TopLine Value="154"/>
<UsageCount Value="6"/>
</Unit11>
<Unit12>
<CursorPos X="47" Y="64"/>
<Filename Value="F:\mixer\mixer.txt"/>
<SyntaxHighlighter Value="None"/>
<TopLine Value="40"/>
<UsageCount Value="11"/>
</Unit12>
<Unit13>
<CursorPos X="21" Y="705"/>
<Filename Value="F:\mixer\AMixer.pas"/>
<TopLine Value="671"/>
<UnitName Value="AMixer"/>
<UsageCount Value="11"/>
</Unit13>
<Unit14>
<CursorPos X="7" Y="95"/>
<Filename Value="D:\fpc\packages\extra\winunits\mmsystem.pp"/>
<TopLine Value="78"/>
<UnitName Value="mmsystem"/>
<UsageCount Value="7"/>
</Unit14>
<Unit15>
<CursorPos X="1" Y="158"/>
<Filename Value="windows\D\src\LKomponenten\acs\Src\Common\include\linux\ACS_Mixer.inc"/>
<TopLine Value="1"/>
<UsageCount Value="7"/>
</Unit15>
<Unit16>
<CursorPos X="1" Y="171"/>
<Filename Value="windows\D\src\lazarus\lcl\include\trackbar.inc"/>
<TopLine Value="147"/>
<UsageCount Value="7"/>
</Unit16>
<Unit17>
<CursorPos X="31" Y="1714"/>
<Filename Value="D:\MixAbstrmain.pas"/>
<TopLine Value="1"/>
<UnitName Value="MixAbstrmain"/>
<UsageCount Value="10"/>
</Unit17>
<Unit18>
<CursorPos X="31" Y="80"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\Common\ACS_Mixer.pas"/>
<TopLine Value="43"/>
<UnitName Value="ACS_Mixer"/>
<UsageCount Value="9"/>
</Unit18>
<Unit19>
<CursorPos X="51" Y="146"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\Common\include\windows\ACS_Mixer.inc"/>
<TopLine Value="1"/>
<UsageCount Value="10"/>
</Unit19>
<Unit20>
<CursorPos X="57" Y="300"/>
<Filename Value="D:\mixer\AMixer.pas"/>
<TopLine Value="1011"/>
<UnitName Value="AMixer"/>
<UsageCount Value="7"/>
</Unit20>
<Unit21>
<CursorPos X="157" Y="164"/>
<Filename Value="D:\test\unit1.pas"/>
<ComponentName Value="Form1"/>
<HasResources Value="True"/>
<TopLine Value="144"/>
<UnitName Value="Unit1"/>
<UsageCount Value="10"/>
</Unit21>
<Unit22>
<CursorPos X="23" Y="566"/>
<Filename Value="D:\SRC\lazarus\lcl\LCLProc.pas"/>
<TopLine Value="73"/>
<UnitName Value="LCLProc"/>
<UsageCount Value="9"/>
</Unit22>
<Unit23>
<CursorPos X="5" Y="294"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\Common\ACS_Classes.pas"/>
<TopLine Value="271"/>
<UnitName Value="ACS_Classes"/>
<UsageCount Value="7"/>
</Unit23>
<Unit24>
<CursorPos X="1" Y="220"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\Common\include\linux\ACS_Mixer.inc"/>
<TopLine Value="180"/>
<UsageCount Value="7"/>
</Unit24>
<Unit25>
<CursorPos X="1" Y="1"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\Common\include\linux\Soundcard.pas"/>
<TopLine Value="459"/>
<UnitName Value="Soundcard"/>
<UsageCount Value="7"/>
</Unit25>
<Unit26>
<CursorPos X="34" Y="278"/>
<Filename Value="D:\SRC\fpc\packages\extra\winunits\mmsystem.pp"/>
<TopLine Value="270"/>
<UnitName Value="mmsystem"/>
<UsageCount Value="9"/>
</Unit26>
<Unit27>
<CursorPos X="35" Y="460"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\Common\ACS_Converters.pas"/>
<TopLine Value="460"/>
<UnitName Value="ACS_Converters"/>
<UsageCount Value="8"/>
</Unit27>
<Unit28>
<CursorPos X="1" Y="3131"/>
<Filename Value="D:\SRC\lazarus\lcl\include\control.inc"/>
<TopLine Value="2676"/>
<UsageCount Value="7"/>
</Unit28>
<Unit29>
<CursorPos X="1" Y="70"/>
<Filename Value="D:\LKomponenten\acs\Src\Common\ACS_Classes.pas"/>
<TopLine Value="36"/>
<UnitName Value="ACS_Classes"/>
<UsageCount Value="7"/>
</Unit29>
<Unit30>
<CursorPos X="40" Y="44"/>
<Filename Value="D:\LKomponenten\acs\Src\Common\ACS_MultiMix.pas"/>
<TopLine Value="19"/>
<UnitName Value="ACS_MultiMix"/>
<UsageCount Value="7"/>
</Unit30>
<Unit31>
<CursorPos X="1" Y="1"/>
<Filename Value="D:\LKomponenten\acs\Src\Win32\laz_acs.pas"/>
<TopLine Value="1"/>
<UnitName Value="LAZ_ACS"/>
<UsageCount Value="7"/>
</Unit31>
<Unit32>
<CursorPos X="17" Y="122"/>
<Filename Value="D:\LKomponenten\acs\Src\Common\ACS_CDROM.pas"/>
<TopLine Value="121"/>
<UnitName Value="ACS_CDROM"/>
<UsageCount Value="26"/>
</Unit32>
<Unit33>
<CursorPos X="6" Y="236"/>
<Filename Value="D:\LKomponenten\acs\Src\Common\include\windows\ACS_CDROM.inc"/>
<TopLine Value="225"/>
<UsageCount Value="26"/>
</Unit33>
<Unit34>
<CursorPos X="3" Y="292"/>
<Filename Value="D:\LKomponenten\acs\Src\Common\include\windows\akrip32.pas"/>
<TopLine Value="275"/>
<UnitName Value="akrip32"/>
<UsageCount Value="26"/>
</Unit34>
<Unit35>
<CursorPos X="1" Y="18"/>
<Filename Value="D:\LKomponenten\acs\Src\Common\include\windows\CDRip.pas"/>
<TopLine Value="18"/>
<UnitName Value="CDRip"/>
<UsageCount Value="24"/>
</Unit35>
<Unit36>
<CursorPos X="62" Y="133"/>
<Filename Value="D:\SOMETHING\akrip\CDRip.pas"/>
<TopLine Value="99"/>
<UnitName Value="CDRip"/>
<UsageCount Value="12"/>
</Unit36>
<Unit37>
<CursorPos X="1" Y="226"/>
<Filename Value="windows\D\src\LKomponenten\acs\Src\Common\ACS_Mixer.pas"/>
<TopLine Value="198"/>
<UnitName Value="ACS_Mixer"/>
<UsageCount Value="10"/>
</Unit37>
<Unit38>
<CursorPos X="50" Y="361"/>
<Filename Value="windows\D\src\LKomponenten\acs\Src\Common\ACS_Classes.pas"/>
<TopLine Value="1"/>
<UnitName Value="ACS_Classes"/>
<UsageCount Value="10"/>
</Unit38>
</Units>
<PublishOptions>
<Version Value="2"/>
<DestinationDirectory Value="$(TestDir)\publishedproject\"/>
<IgnoreBinaries Value="False"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
<LaunchingApplication PathPlusParams="\usr\X11R6\bin\xterm -T 'Lazarus Run Output' -e $(LazarusDir)\tools\runwait.sh $(TargetCmdLine)"/>
</local>
</RunParams>
<RequiredPackages Count="2">
<Item1>
<PackageName Value="LCL"/>
</Item1>
<Item2>
<PackageName Value="LAZ_ACS"/>
<MinVersion Major="2" Minor="3" Valid="True"/>
</Item2>
</RequiredPackages>
<JumpHistory Count="0" HistoryIndex="-1"/>
</ProjectOptions>
<CompilerOptions>
<Version Value="5"/>
<PathDelim Value="\"/>
<SearchPaths>
<SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
</SearchPaths>
<CodeGeneration>
<Generate Value="Faster"/>
</CodeGeneration>
<Linking>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
<Other>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
<Debugging>
<BreakPoints Count="2">
<Item1>
<Source Value="D:\SRC\LKomponenten\Virtualtrees\Neuer Ordner\windows\D\src\LKomponenten\Virtualtrees\example\minimal\main.pas"/>
<Line Value="58"/>
</Item1>
<Item2>
<Source Value="D:\SRC\LKomponenten\Virtualtrees\Neuer Ordner\windows\D\src\LKomponenten\Virtualtrees\VirtualTrees.pas"/>
<Line Value="7054"/>
</Item2>
</BreakPoints>
<Watches Count="3">
<Item1>
<Expression Value="Input.TotalTime"/>
</Item1>
<Item2>
<Expression Value="Input.FPosition"/>
</Item2>
<Item3>
<Expression Value="tmp"/>
</Item3>
</Watches>
<Exceptions Count="2">
<Item1>
<Name Value="ECodetoolError"/>
</Item1>
<Item2>
<Name Value="EFOpenError"/>
</Item2>
</Exceptions>
</Debugging>
</CONFIG>

View File

@ -0,0 +1,68 @@
object fMixer: TfMixer
ActiveControl = cbDevice
Caption = 'Mixer'
ClientHeight = 212
ClientWidth = 400
OnCreate = FormCreate
OnHide = FormHide
OnShow = FormShow
PixelsPerInch = 75
HorzScrollBar.Page = 399
VertScrollBar.Page = 211
Left = 379
Height = 212
Top = 347
Width = 400
object TopPanel: TPanel
Align = alTop
BevelOuter = bvNone
ClientHeight = 32
ClientWidth = 400
FullRepaint = False
TabOrder = 0
Height = 32
Width = 400
object lDevice: TLabel
Alignment = taCenter
Caption = 'Ger�t'
Color = clNone
ParentColor = False
Height = 13
Top = 8
Width = 21
end
object Label3: TLabel
Align = alRight
Alignment = taCenter
Caption = 'Mixer'
Color = clBtnFace
Font.Color = clInactiveCaption
Font.Height = -25
Font.Style = [fsBold]
ParentColor = False
Left = 331
Height = 32
Width = 69
end
object cbDevice: TComboBox
MaxLength = 0
OnChange = cbDeviceChange
Style = csDropDownList
TabOrder = 0
Left = 48
Height = 21
Top = 4
Width = 136
end
end
object Mixer: TACSMixer
MixerName = 'ESS Technology ESS1988'
top = 368
end
object Timer: TTimer
Enabled = False
Interval = 200
OnTimer = TimerTimer
top = 336
end
end

View File

@ -0,0 +1,22 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TfMixer','FORMDATA',[
'TPF0'#7'TfMixer'#6'fMixer'#13'ActiveControl'#7#8'cbDevice'#7'Caption'#6#5'Mi'
+'xer'#12'ClientHeight'#3#212#0#11'ClientWidth'#3#144#1#8'OnCreate'#7#10'Form'
+'Create'#6'OnHide'#7#8'FormHide'#6'OnShow'#7#8'FormShow'#13'PixelsPerInch'#2
+'K'#18'HorzScrollBar.Page'#3#143#1#18'VertScrollBar.Page'#3#211#0#4'Left'#3
+'{'#1#6'Height'#3#212#0#3'Top'#3'['#1#5'Width'#3#144#1#0#6'TPanel'#8'TopPane'
+'l'#5'Align'#7#5'alTop'#10'BevelOuter'#7#6'bvNone'#12'ClientHeight'#2' '#11
+'ClientWidth'#3#144#1#11'FullRepaint'#8#8'TabOrder'#2#0#6'Height'#2' '#5'Wid'
+'th'#3#144#1#0#6'TLabel'#7'lDevice'#9'Alignment'#7#8'taCenter'#7'Caption'#6#5
+'Ger'#228't'#5'Color'#7#6'clNone'#11'ParentColor'#8#6'Height'#2#13#3'Top'#2#8
+#5'Width'#2#21#0#0#6'TLabel'#6'Label3'#5'Align'#7#7'alRight'#9'Alignment'#7#8
+'taCenter'#7'Caption'#6#5'Mixer'#5'Color'#7#9'clBtnFace'#10'Font.Color'#7#17
+'clInactiveCaption'#11'Font.Height'#2#231#10'Font.Style'#11#6'fsBold'#0#11'P'
+'arentColor'#8#4'Left'#3'K'#1#6'Height'#2' '#5'Width'#2'E'#0#0#9'TComboBox'#8
+'cbDevice'#9'MaxLength'#2#0#8'OnChange'#7#14'cbDeviceChange'#5'Style'#7#14'c'
+'sDropDownList'#8'TabOrder'#2#0#4'Left'#2'0'#6'Height'#2#21#3'Top'#2#4#5'Wid'
+'th'#3#136#0#0#0#0#9'TACSMixer'#5'Mixer'#9'MixerName'#6#22'ESS Technology ES'
+'S1988'#3'top'#3'p'#1#0#0#6'TTimer'#5'Timer'#7'Enabled'#8#8'Interval'#3#200#0
+#7'OnTimer'#7#10'TimerTimer'#3'top'#3'P'#1#0#0#0
]);

View File

@ -0,0 +1,216 @@
unit uMixer;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ComCtrls,
ExtCtrls, StdCtrls,GraphType, ACS_Mixer, ACS_Converters;
type
{ TfMixer }
TfMixer = class(TForm)
cbDevice: TComboBox;
lDevice: TLabel;
Label3: TLabel;
Mixer: TACSMixer;
Timer: TTimer;
TopPanel: TPanel;
procedure MuteChange(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormHide(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TimerTimer(Sender: TObject);
procedure ChannelChange(Sender: TObject);
procedure BalanceChange(Sender: TObject);
procedure cbDeviceChange(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
Channels : array of TTrackBar;
Balance : array of TTrackBar;
Muting : array of TCheckBox;
end;
var
fMixer: TfMixer;
implementation
{ TfMixer }
procedure TfMixer.FormCreate(Sender: TObject);
var
i : Integer;
begin
cbDevice.Items.Clear;
for i := 0 to Mixer.DevCount-1 do
begin
Mixer.DevNum := i;
cbDevice.Items.Add(Mixer.MixerName);
end;
cbDevice.ItemIndex := 0;
end;
procedure TfMixer.MuteChange(Sender: TObject);
var
i : Integer;
begin
for i := 0 to length(Muting)-1 do
if Sender = Muting[i] then
begin
Mixer.Mute[i] := TCheckBox(Sender).Checked;
end;
end;
procedure TfMixer.FormHide(Sender: TObject);
begin
Timer.Enabled := False;
end;
procedure TfMixer.FormShow(Sender: TObject);
begin
cbDeviceChange(nil);
end;
procedure TfMixer.TimerTimer(Sender: TObject);
var
i : Integer;
begin
{ for i := 0 to length(Channels)-1 do
begin
if Mixer.IsStereo(i) then
Channels[i].Position := 255-Mixer.Level[i].Left
else
Channels[i].Position := 255-Mixer.Level[i].Main;
end;}
end;
procedure TfMixer.ChannelChange(Sender: TObject);
var
i,tmp : Integer;
outp : TACSMixerLevel;
begin
for i := 0 to length(Channels)-1 do
if Sender = Channels[i] then
begin
if Mixer.IsStereo(i) then
begin
tmp := -Balance[i].Position;
if tmp < 0 then tmp := 0;
tmp := round(((tmp*255)/255)+(255-Channels[i].Position));
if tmp > 255 then
tmp := 255;
Outp.Left := tmp;
tmp := Balance[i].Position;
if tmp < 0 then tmp := 0;
tmp := round(((tmp*255)/255)+(255-Channels[i].Position));
if tmp > 255 then
tmp := 255;
Outp.Right := tmp;
end
else
Outp.Main := Channels[i].Position-255;
Mixer.Level[i] := Outp;
end;
end;
procedure TfMixer.BalanceChange(Sender: TObject);
var
i : Integer;
begin
for i := 0 to length(Channels)-1 do
begin
if Mixer.IsStereo(i) then
Channels[i].Position := 255-Mixer.Level[i].Left
else
Channels[i].Position := 255-Mixer.Level[i].Main;
end;
end;
procedure TfMixer.cbDeviceChange(Sender: TObject);
var
i : Integer;
aComp : TControl;
newPanel : TPanel;
newTrackbar : TTrackbar;
newBevel : TBevel;
newCheckbox : TCheckbox;
newLabel : TLabel;
begin
setlength(Channels,0);
setlength(Balance,0);
setlength(Muting,0);
while fMixer.ControlCount > 1 do
begin
aComp := fMixer.Controls[1];
fMixer.RemoveControl(aComp);
aComp.Free;
end;
for i := 0 to Mixer.ChannelCount-1 do
begin
newPanel := TPanel.Create(nil);
newPanel.Parent := fMixer;
newPanel.Align := alLeft;
newPanel.Width := 80;
newPanel.BevelOuter := bvNone;
newLabel := TLabel.Create(nil);
newLabel.Parent := newPanel;
newLabel.Align := alTop;
newLabel.Alignment := taCenter;
newLabel.Caption := Mixer.ChannelName[i];
newLabel.Height := 30;
newBevel := TBevel.Create(nil);
newBevel.Parent := newPanel;
newBevel.Shape := bsLeftLine;
newBevel.Width := 1;
newBevel.Align := alRight;
newTrackbar := TTrackbar.Create(nil);
newTrackbar.Parent := NewPanel;
newTrackbar.Align := alClient;
newTrackBar.Orientation := trVertical;
newTrackbar.Max := 255;
newTrackbar.Min := 0;
setlength(Channels,i+1);
Channels[i] := newTrackBar;
newTrackBar.OnChange := @ChannelChange;
setlength(Balance,i+1);
Balance[i] := nil;
if Mixer.IsStereo(i) then
begin
newTrackbar := TTrackbar.Create(nil);
newTrackbar.Parent := NewPanel;
newTrackbar.Align := alTop;
newTrackBar.Orientation := trHorizontal;
newTrackBar.Height := 15;
newTrackbar.Max := 100;
newTrackbar.Min := -100;
newTrackBar.Position := 0;
Balance[i] := newTrackBar;
Balance[i].Max := 40;
Channels[i].Position := 255-Mixer.Level[i].Left;
end
else
Channels[i].Position := 255-Mixer.Level[i].Main;
newCheckBox := TCheckBox.Create(nil);
newCheckBox.Parent := newPanel;
newCheckBox.Caption := 'Mute';
newCheckBox.Align := alBottom;
newCheckBox.Checked := Mixer.Mute[i];
newCheckBox.OnChange := @MuteChange;
setlength(Muting,i+1);
Muting[i] := newCheckBox;
end;
Timer.Enabled := True;
Width := Mixer.ChannelCount*80;
end;
initialization
{$I umixer.lrs}
end.

View File

@ -0,0 +1,197 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<PathDelim Value="\"/>
<Version Value="5"/>
<General>
<MainUnit Value="0"/>
<IconPath Value="./"/>
<TargetFileExt Value=".exe"/>
<ActiveEditorIndexAtStart Value="0"/>
</General>
<LazDoc Paths=""/>
<Units Count="17">
<Unit0>
<Filename Value="cdripper.lpr"/>
<IsPartOfProject Value="True"/>
<UnitName Value="cdripper"/>
<UsageCount Value="22"/>
</Unit0>
<Unit1>
<CursorPos X="12" Y="9"/>
<EditorIndex Value="0"/>
<Filename Value="umain.pas"/>
<ComponentName Value="fMain"/>
<IsPartOfProject Value="True"/>
<Loaded Value="True"/>
<ResourceFilename Value="umain.lrs"/>
<TopLine Value="1"/>
<UnitName Value="uMain"/>
<UsageCount Value="22"/>
</Unit1>
<Unit2>
<CursorPos X="10" Y="190"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_CDROM.pas"/>
<TopLine Value="176"/>
<UnitName Value="ACS_CDROM"/>
<UsageCount Value="10"/>
</Unit2>
<Unit3>
<CursorPos X="1" Y="688"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Classes.pas"/>
<TopLine Value="671"/>
<UnitName Value="ACS_Classes"/>
<UsageCount Value="10"/>
</Unit3>
<Unit4>
<CursorPos X="1" Y="2193"/>
<Filename Value="D:\lazarus\lcl\include\control.inc"/>
<TopLine Value="2176"/>
<UsageCount Value="10"/>
</Unit4>
<Unit5>
<CursorPos X="1" Y="55"/>
<Filename Value="D:\lazarus\lcl\include\listitems.inc"/>
<TopLine Value="38"/>
<UsageCount Value="10"/>
</Unit5>
<Unit6>
<CursorPos X="1" Y="461"/>
<Filename Value="D:\lazarus\lcl\include\listitem.inc"/>
<TopLine Value="444"/>
<UsageCount Value="10"/>
</Unit6>
<Unit7>
<CursorPos X="1" Y="508"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_File.pas"/>
<TopLine Value="491"/>
<UnitName Value="ACS_File"/>
<UsageCount Value="10"/>
</Unit7>
<Unit8>
<CursorPos X="1" Y="257"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_Vorbis.pas"/>
<TopLine Value="242"/>
<UnitName Value="ACS_Vorbis"/>
<UsageCount Value="10"/>
</Unit8>
<Unit9>
<CursorPos X="29" Y="255"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\general\VorbisFile.pas"/>
<TopLine Value="226"/>
<UnitName Value="VorbisFile"/>
<UsageCount Value="10"/>
</Unit9>
<Unit10>
<CursorPos X="19" Y="176"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Audio.pas"/>
<TopLine Value="1"/>
<UnitName Value="ACS_Audio"/>
<UsageCount Value="10"/>
</Unit10>
<Unit11>
<CursorPos X="78" Y="27"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Strings.pas"/>
<TopLine Value="12"/>
<UnitName Value="ACS_Strings"/>
<UsageCount Value="10"/>
</Unit11>
<Unit12>
<CursorPos X="31" Y="200"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\windows\ACS_CDROM.inc"/>
<TopLine Value="181"/>
<UsageCount Value="10"/>
</Unit12>
<Unit13>
<CursorPos X="1" Y="1428"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_Wave.pas"/>
<TopLine Value="1411"/>
<UnitName Value="ACS_Wave"/>
<UsageCount Value="10"/>
</Unit13>
<Unit14>
<CursorPos X="14" Y="1995"/>
<Filename Value="D:\lazarus\lcl\lresources.pp"/>
<TopLine Value="1986"/>
<UnitName Value="LResources"/>
<UsageCount Value="10"/>
</Unit14>
<Unit15>
<CursorPos X="1" Y="1490"/>
<Filename Value="D:\lazarus\lcl\include\application.inc"/>
<TopLine Value="1487"/>
<UsageCount Value="10"/>
</Unit15>
<Unit16>
<CursorPos X="20" Y="118"/>
<Filename Value="umain.lfm"/>
<SyntaxHighlighter Value="LFM"/>
<TopLine Value="86"/>
<UsageCount Value="10"/>
</Unit16>
</Units>
<PublishOptions>
<Version Value="2"/>
<DestinationDirectory Value="$(TestDir)\publishedproject\"/>
<IgnoreBinaries Value="False"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
<LaunchingApplication PathPlusParams="\usr\X11R6\bin\xterm -T 'Lazarus Run Output' -e $(LazarusDir)\tools\runwait.sh $(TargetCmdLine)"/>
</local>
</RunParams>
<RequiredPackages Count="2">
<Item1>
<PackageName Value="LCL"/>
</Item1>
<Item2>
<PackageName Value="LAZ_ACS"/>
<MinVersion Major="2" Minor="4" Valid="True"/>
</Item2>
</RequiredPackages>
<JumpHistory Count="0" HistoryIndex="-1"/>
</ProjectOptions>
<CompilerOptions>
<Version Value="5"/>
<PathDelim Value="\"/>
<SearchPaths>
<SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
</SearchPaths>
<CodeGeneration>
<Generate Value="Faster"/>
</CodeGeneration>
<Linking>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
<Other>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
<Debugging>
<BreakPoints Count="2">
<Item1>
<Source Value="D:\LKomponenten\acs\Src\classes\ACS_File.pas"/>
<Line Value="378"/>
</Item1>
<Item2>
<Source Value="D:\LKomponenten\acs\Src\classes\ACS_Classes.pas"/>
<Line Value="607"/>
</Item2>
</BreakPoints>
<Watches Count="2">
<Item1>
<Expression Value="HandleMultiSelect"/>
</Item1>
<Item2>
<Expression Value="FDelayMax"/>
</Item2>
</Watches>
</Debugging>
</CONFIG>

View File

@ -0,0 +1,119 @@
object fMain: TfMain
ActiveControl = lvTracks
Caption = 'CD Ripper'
ClientHeight = 300
ClientWidth = 400
OnCreate = FormCreate
PixelsPerInch = 75
HorzScrollBar.Page = 399
VertScrollBar.Page = 299
Left = 271
Height = 300
Top = 150
Width = 400
object Label1: TLabel
Caption = 'Drive'
Color = clNone
ParentColor = False
Left = 8
Height = 13
Top = 7
Width = 31
end
object Label2: TLabel
Caption = 'Output Format'
Color = clNone
ParentColor = False
Left = 265
Height = 13
Top = 7
Width = 80
end
object lvTracks: TListView
Anchors = [akTop, akLeft, akRight, akBottom]
Columns = <
item
Caption = 'Track'
Width = 10
end
item
Caption = 'Tracktitle'
Width = 10
end
item
Caption = 'Length'
Width = 10
end>
MultiSelect = True
RowSelect = True
ViewStyle = vsReport
Height = 250
Top = 34
Width = 400
end
object cbDrives: TComboBox
MaxLength = 0
OnChange = cbDrivesChange
Style = csDropDownList
TabOrder = 1
Left = 40
Height = 21
Top = 4
Width = 132
end
object bRip: TButton
BorderSpacing.InnerBorder = 2
Caption = 'Rip selected'
OnClick = Button1Click
TabOrder = 2
Left = 184
Height = 21
Top = 4
Width = 75
end
object cbFormat: TComboBox
ItemIndex = 2
Items.Strings = (
'ogg'
'mp3'
'wav'
)
MaxLength = 0
Style = csDropDownList
TabOrder = 3
Text = 'wav'
Left = 340
Height = 21
Top = 4
Width = 61
end
object ProgressBar: TProgressBar
Align = alBottom
Max = 100
Height = 12
Top = 288
Width = 400
end
object Timer: TTimer
OnTimer = TimerTimer
left = 76
top = 4
end
object SelectDirectoryDialog: TSelectDirectoryDialog
Title = 'Select Directory'
FilterIndex = 0
Title = 'Select Directory'
left = 144
top = 4
end
object FileOut: TACSFileOut
Input = CDIn
OnDone = FileOutDone
left = 112
top = 4
end
object CDIn: TACSCDIn
left = 44
top = 4
end
end

View File

@ -0,0 +1,32 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TfMain','FORMDATA',[
'TPF0'#6'TfMain'#5'fMain'#13'ActiveControl'#7#8'lvTracks'#7'Caption'#6#9'CD R'
+'ipper'#12'ClientHeight'#3','#1#11'ClientWidth'#3#144#1#8'OnCreate'#7#10'For'
+'mCreate'#13'PixelsPerInch'#2'K'#18'HorzScrollBar.Page'#3#143#1#18'VertScrol'
+'lBar.Page'#3'+'#1#4'Left'#3#15#1#6'Height'#3','#1#3'Top'#3#150#0#5'Width'#3
+#144#1#0#6'TLabel'#6'Label1'#7'Caption'#6#5'Drive'#5'Color'#7#6'clNone'#11'P'
+'arentColor'#8#4'Left'#2#8#6'Height'#2#13#3'Top'#2#7#5'Width'#2#31#0#0#6'TLa'
+'bel'#6'Label2'#7'Caption'#6#13'Output Format'#5'Color'#7#6'clNone'#11'Paren'
+'tColor'#8#4'Left'#3#9#1#6'Height'#2#13#3'Top'#2#7#5'Width'#2'P'#0#0#9'TList'
+'View'#8'lvTracks'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0
+#7'Columns'#14#1#7'Caption'#6#5'Track'#5'Width'#2#10#0#1#7'Caption'#6#10'Tra'
+'cktitle'#5'Width'#2#10#0#1#7'Caption'#6#6'Length'#5'Width'#2#10#0#0#11'Mult'
+'iSelect'#9#9'RowSelect'#9#9'ViewStyle'#7#8'vsReport'#6'Height'#3#250#0#3'To'
+'p'#2'"'#5'Width'#3#144#1#0#0#9'TComboBox'#8'cbDrives'#9'MaxLength'#2#0#8'On'
+'Change'#7#14'cbDrivesChange'#5'Style'#7#14'csDropDownList'#8'TabOrder'#2#1#4
+'Left'#2'('#6'Height'#2#21#3'Top'#2#4#5'Width'#3#132#0#0#0#7'TButton'#4'bRip'
+#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#12'Rip selected'#7'OnClick'#7
+#12'Button1Click'#8'TabOrder'#2#2#4'Left'#3#184#0#6'Height'#2#21#3'Top'#2#4#5
+'Width'#2'K'#0#0#9'TComboBox'#8'cbFormat'#9'ItemIndex'#2#2#13'Items.Strings'
+#1#6#3'ogg'#6#3'mp3'#6#3'wav'#0#9'MaxLength'#2#0#5'Style'#7#14'csDropDownLis'
+'t'#8'TabOrder'#2#3#4'Text'#6#3'wav'#4'Left'#3'T'#1#6'Height'#2#21#3'Top'#2#4
+#5'Width'#2'='#0#0#12'TProgressBar'#11'ProgressBar'#5'Align'#7#8'alBottom'#3
+'Max'#2'd'#6'Height'#2#12#3'Top'#3' '#1#5'Width'#3#144#1#0#0#6'TTimer'#5'Tim'
+'er'#7'OnTimer'#7#10'TimerTimer'#4'left'#2'L'#3'top'#2#4#0#0#22'TSelectDirec'
+'toryDialog'#21'SelectDirectoryDialog'#5'Title'#6#16'Select Directory'#11'Fi'
+'lterIndex'#2#0#5'Title'#6#16'Select Directory'#4'left'#3#144#0#3'top'#2#4#0
+#0#11'TACSFileOut'#7'FileOut'#5'Input'#7#4'CDIn'#6'OnDone'#7#11'FileOutDone'
+#4'left'#2'p'#3'top'#2#4#0#0#8'TACSCDIn'#4'CDIn'#4'left'#2','#3'top'#2#4#0#0
+#0
]);

View File

@ -0,0 +1,126 @@
unit uMain;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ComCtrls, StdCtrls, ACS_CDROM, ExtCtrls, Buttons,
ACS_File;
type
{ TfMain }
TfMain = class(TForm)
bRip: TButton;
cbDrives: TComboBox;
cbFormat: TComboBox;
CDIn: TACSCDIn;
FileOut: TACSFileOut;
Label1: TLabel;
Label2: TLabel;
lvTracks: TListView;
ProgressBar: TProgressBar;
SelectDirectoryDialog: TSelectDirectoryDialog;
Timer: TTimer;
procedure Button1Click(Sender: TObject);
procedure FileOutDone(Sender: TComponent);
procedure FormCreate(Sender: TObject);
procedure TimerTimer(Sender: TObject);
procedure cbDrivesChange(Sender: TObject);
procedure RipNextTrack;
private
{ private declarations }
FDirectory : string;
FTracksCount : Integer;
public
{ public declarations }
end;
var
fMain: TfMain;
implementation
{ TfMain }
procedure TfMain.FormCreate(Sender: TObject);
var
i : Integer;
begin
lvTracks.Column[0].Width := 60;
lvTracks.Column[1].Width := 260;
lvTracks.Column[2].Width := 120;
for i := 0 to CDIn.DrivesCount-1 do
begin
CDIn.CurrentDrive := i;
cbDrives.Items.Add(CDIn.DriveName);
end;
cbDrives.ItemIndex := 0;
end;
procedure TfMain.Button1Click(Sender: TObject);
begin
if SelectDirectoryDialog.Execute then
begin
FDirectory := SelectDirectoryDialog.FileName;
RipNextTrack;
end;
end;
procedure TfMain.FileOutDone(Sender: TComponent);
begin
RipNextTrack;
end;
procedure TfMain.TimerTimer(Sender: TObject);
var
new : TListItem;
i : Integer;
begin
if not ((CDIn.Status = cdsReady) and (CDIn.TracksCount <> FTracksCount)) then
exit;
lvTracks.Items.Clear;
for i := 0 to CDIn.Trackscount-1 do
begin
new := lvTracks.Items.Add;
new.Caption := IntToStr(i);
if CDIn.Tracks[i].TrackType = ttAudio then
new.SubItems.Add(Format('Track %d',[i+1]))
else
new.SubItems.Add(Format('Datatrack %d',[i+1]));
new.SubItems.Add(Format('%.2d:%.2d',[CDIn.Tracks[i].TrackLength.Minute,CDIn.Tracks[i].TrackLength.Second]));
end;
FTracksCount := CDIn.TracksCount;
end;
procedure TfMain.cbDrivesChange(Sender: TObject);
begin
CDIn.CurrentDrive := cbDrives.ItemIndex;
end;
procedure TfMain.RipNextTrack;
var
i : Integer;
begin
ProgressBar.Position := 0;
bRip.Enabled := True;
for i := 0 to lvTracks.Items.Count-1 do
if lvTracks.Items[i].Focused and (CDIn.Tracks[i].TrackType = ttAudio) then
begin
bRip.Enabled := False;
CDIn.StartTrack := i;
CDIn.EndTrack := i+1;
FileOut.FileName := FDirectory+DirectorySeparator+lvTracks.Items[i].SubItems[0]+'.'+cbFormat.Text;
FileOut.Run;
lvTracks.Items[i].Focused := False;
exit;
end;
end;
initialization
{$I umain.lrs}
end.

View File

@ -0,0 +1,265 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<PathDelim Value="\"/>
<Version Value="5"/>
<General>
<MainUnit Value="0"/>
<IconPath Value="./"/>
<TargetFileExt Value=".exe"/>
<Title Value="project1"/>
<ActiveEditorIndexAtStart Value="0"/>
</General>
<LazDoc Paths=""/>
<Units Count="27">
<Unit0>
<CursorPos X="36" Y="15"/>
<Filename Value="cdplayer.lpr"/>
<IsPartOfProject Value="True"/>
<TopLine Value="1"/>
<UnitName Value="cdplayer"/>
<UsageCount Value="42"/>
</Unit0>
<Unit1>
<CursorPos X="22" Y="73"/>
<EditorIndex Value="0"/>
<Filename Value="umain.pas"/>
<ComponentName Value="Form1"/>
<IsPartOfProject Value="True"/>
<Loaded Value="True"/>
<ResourceFilename Value="umain.lrs"/>
<TopLine Value="57"/>
<UnitName Value="uMain"/>
<UsageCount Value="42"/>
</Unit1>
<Unit2>
<CursorPos X="1" Y="436"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Audio.pas"/>
<TopLine Value="409"/>
<UnitName Value="ACS_Audio"/>
<UsageCount Value="20"/>
</Unit2>
<Unit3>
<CursorPos X="1" Y="241"/>
<Filename Value="D:\LKomponenten\acs\Src\drivers\windows\ACS_Audio.inc"/>
<TopLine Value="208"/>
<UsageCount Value="17"/>
</Unit3>
<Unit4>
<CursorPos X="1" Y="1823"/>
<Filename Value="D:\lazarus\lcl\include\control.inc"/>
<TopLine Value="1808"/>
<UsageCount Value="10"/>
</Unit4>
<Unit5>
<CursorPos X="1" Y="58"/>
<Filename Value="D:\lazarus\lcl\include\buttoncontrol.inc"/>
<TopLine Value="43"/>
<UsageCount Value="10"/>
</Unit5>
<Unit6>
<CursorPos X="1" Y="242"/>
<Filename Value="D:\lazarus\lcl\include\buttons.inc"/>
<TopLine Value="227"/>
<UsageCount Value="10"/>
</Unit6>
<Unit7>
<CursorPos X="27" Y="74"/>
<Filename Value="D:\LKomponenten\acs\Src\drivers\ACS_StdAudio.pas"/>
<TopLine Value="70"/>
<UnitName Value="ACS_StdAudio"/>
<UsageCount Value="18"/>
</Unit7>
<Unit8>
<CursorPos X="1" Y="231"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_File.pas"/>
<TopLine Value="214"/>
<UnitName Value="ACS_File"/>
<UsageCount Value="19"/>
</Unit8>
<Unit9>
<CursorPos X="68" Y="8"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_Allformats.pas"/>
<TopLine Value="1"/>
<UnitName Value="ACS_AllFormats"/>
<UsageCount Value="16"/>
</Unit9>
<Unit10>
<CursorPos X="18" Y="31"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_DSAudio.pas"/>
<TopLine Value="31"/>
<UnitName Value="ACS_DSAudio"/>
<UsageCount Value="9"/>
</Unit10>
<Unit11>
<CursorPos X="20" Y="318"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_dsfiles.pas"/>
<TopLine Value="298"/>
<UnitName Value="ACS_DSFiles"/>
<UsageCount Value="12"/>
</Unit11>
<Unit12>
<CursorPos X="1" Y="474"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_Vorbis.pas"/>
<TopLine Value="459"/>
<UnitName Value="ACS_Vorbis"/>
<UsageCount Value="16"/>
</Unit12>
<Unit13>
<CursorPos X="14" Y="204"/>
<EditorIndex Value="1"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Classes.pas"/>
<Loaded Value="True"/>
<TopLine Value="190"/>
<UnitName Value="acs_classes"/>
<UsageCount Value="18"/>
</Unit13>
<Unit14>
<CursorPos X="54" Y="48"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Strings.pas"/>
<TopLine Value="22"/>
<UnitName Value="ACS_Strings"/>
<UsageCount Value="16"/>
</Unit14>
<Unit15>
<CursorPos X="1" Y="424"/>
<Filename Value="D:\LKomponenten\acs\Src\drivers\ACS_DXAudio.pas"/>
<TopLine Value="410"/>
<UnitName Value="ACS_DXAudio"/>
<UsageCount Value="16"/>
</Unit15>
<Unit16>
<CursorPos X="25" Y="152"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_Wave.pas"/>
<TopLine Value="138"/>
<UnitName Value="ACS_Wave"/>
<UsageCount Value="10"/>
</Unit16>
<Unit17>
<CursorPos X="23" Y="2003"/>
<Filename Value="D:\lazarus\lcl\lresources.pp"/>
<TopLine Value="1986"/>
<UnitName Value="LResources"/>
<UsageCount Value="10"/>
</Unit17>
<Unit18>
<CursorPos X="1" Y="351"/>
<Filename Value="D:\LKomponenten\acs\Demos\Lazarus\Mediaplayer\uplayer.pas"/>
<HasResources Value="True"/>
<TopLine Value="329"/>
<UnitName Value="uPlayer"/>
<UsageCount Value="10"/>
</Unit18>
<Unit19>
<CursorPos X="13" Y="121"/>
<Filename Value="D:\LKomponenten\acs\Demos\Win32\CDPlayer\Main.pas"/>
<TopLine Value="98"/>
<UnitName Value="Main"/>
<UsageCount Value="10"/>
</Unit19>
<Unit20>
<CursorPos X="6" Y="104"/>
<Filename Value="D:\LKomponenten\acs\Demos\Win32\OggPlayer\Main.pas"/>
<TopLine Value="77"/>
<UnitName Value="Main"/>
<UsageCount Value="10"/>
</Unit20>
<Unit21>
<CursorPos X="13" Y="28"/>
<Filename Value="D:\LKomponenten\acs\Demos\Win32\AudioPlayer\Main.pas"/>
<TopLine Value="28"/>
<UnitName Value="Main"/>
<UsageCount Value="10"/>
</Unit21>
<Unit22>
<CursorPos X="5" Y="2678"/>
<Filename Value="D:\fpc\packages\extra\winunits\activex.pp"/>
<TopLine Value="2661"/>
<UnitName Value="activex"/>
<UsageCount Value="10"/>
</Unit22>
<Unit23>
<CursorPos X="1" Y="201"/>
<EditorIndex Value="2"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\windows\acs_cdrom.inc"/>
<Loaded Value="True"/>
<TopLine Value="187"/>
<UsageCount Value="10"/>
</Unit23>
<Unit24>
<CursorPos X="9" Y="61"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_CDROM.pas"/>
<TopLine Value="44"/>
<UnitName Value="ACS_CDROM"/>
<UsageCount Value="10"/>
</Unit24>
<Unit25>
<CursorPos X="1" Y="238"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\linux\ACS_CDROM.inc"/>
<TopLine Value="226"/>
<UsageCount Value="10"/>
</Unit25>
<Unit26>
<CursorPos X="3" Y="32"/>
<Filename Value="D:\lazarus\lcl\LCLClasses.pp"/>
<TopLine Value="15"/>
<UnitName Value="LCLClasses"/>
<UsageCount Value="10"/>
</Unit26>
</Units>
<PublishOptions>
<Version Value="2"/>
<DestinationDirectory Value="$(TestDir)\publishedproject\"/>
<IgnoreBinaries Value="False"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
<LaunchingApplication PathPlusParams="\usr\X11R6\bin\xterm -T 'Lazarus Run Output' -e $(LazarusDir)\tools\runwait.sh $(TargetCmdLine)"/>
</local>
</RunParams>
<RequiredPackages Count="2">
<Item1>
<PackageName Value="LCL"/>
</Item1>
<Item2>
<PackageName Value="LAZ_ACS"/>
</Item2>
</RequiredPackages>
<JumpHistory Count="1" HistoryIndex="0">
<Position1>
<Filename Value="D:\LKomponenten\acs\Src\classes\windows\ACS_CDROM.inc"/>
<Caret Line="201" Column="1" TopLine="187"/>
</Position1>
</JumpHistory>
</ProjectOptions>
<CompilerOptions>
<Version Value="5"/>
<PathDelim Value="\"/>
<SearchPaths>
<SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
</SearchPaths>
<CodeGeneration>
<Generate Value="Faster"/>
</CodeGeneration>
<Linking>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
<Other>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
<Debugging>
<Watches Count="1">
<Item1>
<Expression Value="CDIn1.EndTrack"/>
</Item1>
</Watches>
</Debugging>
</CONFIG>

View File

@ -0,0 +1,466 @@
object Form1: TForm1
ActiveControl = btOpen
Caption = 'CD Player'
ClientHeight = 99
ClientWidth = 189
OnCreate = FormCreate
PixelsPerInch = 96
HorzScrollBar.Page = 188
VertScrollBar.Page = 98
Left = 298
Height = 99
Top = 268
Width = 189
object Panel1: TPanel
BevelOuter = bvLowered
ClientHeight = 64
ClientWidth = 182
FullRepaint = False
TabOrder = 0
Left = 4
Height = 64
Width = 182
object lTime: TLabel
AutoSize = False
Caption = '00:00:00'
Color = clNone
Font.Height = -25
ParentColor = False
Left = 68
Height = 29
Top = 24
Width = 108
end
object lTrack: TLabel
Caption = '01'
Color = clNone
Font.Height = -37
ParentColor = False
Left = 16
Height = 46
Top = 17
Width = 41
end
object Label1: TLabel
Caption = 'Track'
Color = clNone
Font.Height = -9
ParentColor = False
Left = 4
Height = 12
Top = 14
Width = 24
end
object Label2: TLabel
Caption = 'remain'
Color = clNone
Font.Height = -9
ParentColor = False
Left = 92
Height = 12
Top = 14
Width = 29
end
object Label3: TLabel
Caption = 'Tracks'
Color = clNone
Font.Height = -9
ParentColor = False
Left = 4
Height = 12
Top = 2
Width = 28
end
object lTracksCount: TLabel
Caption = '09'
Color = clNone
ParentColor = False
Left = 44
Height = 14
Top = 1
Width = 13
end
object Label5: TLabel
Caption = 'Time left'
Color = clNone
Font.Height = -9
ParentColor = False
Left = 60
Height = 12
Width = 38
end
object lLeft: TLabel
Alignment = taRightJustify
Caption = '00:00:00'
Color = clNone
Font.Height = -12
ParentColor = False
Left = 124
Height = 15
Top = 1
Width = 51
end
object Progress: TProgressBar
Align = alBottom
Max = 1000
Smooth = True
Left = 1
Height = 8
Top = 55
Width = 180
end
end
object btOpen: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
970300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A2231362031362031362032222C0D0A22303020632023
303830383130222C0D0A22303120632023313831383231222C0D0A2230322063
20677261793136222C0D0A22303320632023443644364345222C0D0A22303420
632067726179313030222C0D0A22303520632067726179313030222C0D0A2230
3620632067726179313030222C0D0A22303720632067726179313030222C0D0A
22303820632067726179313030222C0D0A22303920632067726179313030222C
0D0A22313020632067726179313030222C0D0A22313120632067726179313030
222C0D0A22313220632067726179313030222C0D0A2231332063206772617931
3030222C0D0A22313420632067726179313030222C0D0A223135206320677261
79313030222C0D0A223033303330333033303330333033303330333033303330
333033303330333033222C0D0A22303330333033303330333033303330333033
3033303330333033303330333033222C0D0A2230333033303330333033303330
33303330333033303330333033303330333033222C0D0A223033303330333033
303330333033303030333033303330333033303330333033222C0D0A22303330
3330333033303330333030303130303033303330333033303330333033222C0D
0A22303330333033303330333030303130313031303030333033303330333033
3033222C0D0A2230333033303330333030303130313031303130313030303330
33303330333033222C0D0A223033303330333030303130313031303130313031
303130303033303330333033222C0D0A22303330333032303230323032303230
3230323032303230323032303330333033222C0D0A2230333033303330333033
30333033303330333033303330333033303330333033222C0D0A223033303330
303030303030303030303030303030303030303030303330333033222C0D0A22
3033303330303031303130313031303130313031303130313032303330333033
222C0D0A22303330333032303230323032303230323032303230323032303230
3330333033222C0D0A2230333033303330333033303330333033303330333033
30333033303330333033222C0D0A223033303330333033303330333033303330
333033303330333033303330333033222C0D0A22303330333033303330333033
3033303330333033303330333033303330333033220D0A7D3B0D0A
}
Layout = blGlyphTop
NumGlyphs = 0
OnClick = OpenClick
TabOrder = 1
Left = 4
Height = 26
Top = 67
Width = 28
end
object btRew: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
970300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A2231362031362031362032222C0D0A22303020632023
303830383130222C0D0A22303120632023313831383231222C0D0A2230322063
20677261793136222C0D0A22303320632023443644364345222C0D0A22303420
632067726179313030222C0D0A22303520632067726179313030222C0D0A2230
3620632067726179313030222C0D0A22303720632067726179313030222C0D0A
22303820632067726179313030222C0D0A22303920632067726179313030222C
0D0A22313020632067726179313030222C0D0A22313120632067726179313030
222C0D0A22313220632067726179313030222C0D0A2231332063206772617931
3030222C0D0A22313420632067726179313030222C0D0A223135206320677261
79313030222C0D0A223033303330333033303330333033303330333033303330
333033303330333033222C0D0A22303330333033303330333033303330333033
3033303330333033303330333033222C0D0A2230333033303330333033303330
33303330333033303330333033303330333033222C0D0A223033303330333030
303030303033303330333033303330303030303330333033222C0D0A22303330
3330333030303130323033303330333033303030313032303330333033222C0D
0A22303330333033303030313032303330333033303030313031303230333033
3033222C0D0A2230333033303330303031303230333033303030313031303130
32303330333033222C0D0A223033303330333030303130323033303030313031
303130313032303330333033222C0D0A22303330333033303030313032303330
3230313031303130313032303330333033222C0D0A2230333033303330303031
30323033303330323031303130313032303330333033222C0D0A223033303330
333030303130323033303330333032303130313032303330333033222C0D0A22
3033303330333030303130323033303330333033303230313032303330333033
222C0D0A22303330333033303230323032303330333033303330333032303230
3330333033222C0D0A2230333033303330333033303330333033303330333033
30333033303330333033222C0D0A223033303330333033303330333033303330
333033303330333033303330333033222C0D0A22303330333033303330333033
3033303330333033303330333033303330333033220D0A7D3B0D0A
}
NumGlyphs = 0
OnClick = btRewClick
TabOrder = 2
Left = 32
Height = 26
Top = 67
Width = 28
end
object btFfw: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
970300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A2231362031362031362032222C0D0A22303020632023
303830383130222C0D0A22303120632023313831383231222C0D0A2230322063
20677261793136222C0D0A22303320632023443644364345222C0D0A22303420
632067726179313030222C0D0A22303520632067726179313030222C0D0A2230
3620632067726179313030222C0D0A22303720632067726179313030222C0D0A
22303820632067726179313030222C0D0A22303920632067726179313030222C
0D0A22313020632067726179313030222C0D0A22313120632067726179313030
222C0D0A22313220632067726179313030222C0D0A2231332063206772617931
3030222C0D0A22313420632067726179313030222C0D0A223135206320677261
79313030222C0D0A223033303330333033303330333033303330333033303330
333033303330333033222C0D0A22303330333033303330333033303330333033
3033303330333033303330333033222C0D0A2230333033303330333033303330
33303330333033303330333033303330333033222C0D0A223033303330333030
303030333033303330333033303030303030303330333033222C0D0A22303330
3330333032303130303033303330333033303230313030303330333033222C0D
0A22303330333033303230313031303030333033303330323031303030333033
3033222C0D0A2230333033303330323031303130313030303330333032303130
30303330333033222C0D0A223033303330333032303130313031303130303033
303230313030303330333033222C0D0A22303330333033303230313031303130
3130323033303230313030303330333033222C0D0A2230333033303330323031
30313031303230333033303230313030303330333033222C0D0A223033303330
333032303130313032303330333033303230313030303330333033222C0D0A22
3033303330333032303130323033303330333033303230313030303330333033
222C0D0A22303330333033303230323033303330333033303330323032303230
3330333033222C0D0A2230333033303330333033303330333033303330333033
30333033303330333033222C0D0A223033303330333033303330333033303330
333033303330333033303330333033222C0D0A22303330333033303330333033
3033303330333033303330333033303330333033220D0A7D3B0D0A
}
Layout = blGlyphRight
NumGlyphs = 0
OnClick = btFfwClick
TabOrder = 3
Left = 60
Height = 26
Top = 67
Width = 28
end
object btPlay: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
911300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A223136203136203235362033222C0D0A223030302063
2023304330463132222C0D0A2230303120632023314231443230222C0D0A2230
303220632023324132443244222C0D0A2230303320632023443444304338222C
0D0A22303034206320626C61636B222C0D0A22303035206320626C61636B222C
0D0A22303036206320626C61636B222C0D0A22303037206320626C61636B222C
0D0A22303038206320626C61636B222C0D0A22303039206320626C61636B222C
0D0A22303130206320626C61636B222C0D0A22303131206320626C61636B222C
0D0A22303132206320626C61636B222C0D0A22303133206320626C61636B222C
0D0A22303134206320626C61636B222C0D0A22303135206320626C61636B222C
0D0A22303136206320626C61636B222C0D0A22303137206320626C61636B222C
0D0A22303138206320626C61636B222C0D0A22303139206320626C61636B222C
0D0A22303230206320626C61636B222C0D0A22303231206320626C61636B222C
0D0A22303232206320626C61636B222C0D0A22303233206320626C61636B222C
0D0A22303234206320626C61636B222C0D0A22303235206320626C61636B222C
0D0A22303236206320626C61636B222C0D0A22303237206320626C61636B222C
0D0A22303238206320626C61636B222C0D0A22303239206320626C61636B222C
0D0A22303330206320626C61636B222C0D0A22303331206320626C61636B222C
0D0A22303332206320626C61636B222C0D0A22303333206320626C61636B222C
0D0A22303334206320626C61636B222C0D0A22303335206320626C61636B222C
0D0A22303336206320626C61636B222C0D0A22303337206320626C61636B222C
0D0A22303338206320626C61636B222C0D0A22303339206320626C61636B222C
0D0A22303430206320626C61636B222C0D0A22303431206320626C61636B222C
0D0A22303432206320626C61636B222C0D0A22303433206320626C61636B222C
0D0A22303434206320626C61636B222C0D0A22303435206320626C61636B222C
0D0A22303436206320626C61636B222C0D0A22303437206320626C61636B222C
0D0A22303438206320626C61636B222C0D0A22303439206320626C61636B222C
0D0A22303530206320626C61636B222C0D0A22303531206320626C61636B222C
0D0A22303532206320626C61636B222C0D0A22303533206320626C61636B222C
0D0A22303534206320626C61636B222C0D0A22303535206320626C61636B222C
0D0A22303536206320626C61636B222C0D0A22303537206320626C61636B222C
0D0A22303538206320626C61636B222C0D0A22303539206320626C61636B222C
0D0A22303630206320626C61636B222C0D0A22303631206320626C61636B222C
0D0A22303632206320626C61636B222C0D0A22303633206320626C61636B222C
0D0A22303634206320626C61636B222C0D0A22303635206320626C61636B222C
0D0A22303636206320626C61636B222C0D0A22303637206320626C61636B222C
0D0A22303638206320626C61636B222C0D0A22303639206320626C61636B222C
0D0A22303730206320626C61636B222C0D0A22303731206320626C61636B222C
0D0A22303732206320626C61636B222C0D0A22303733206320626C61636B222C
0D0A22303734206320626C61636B222C0D0A22303735206320626C61636B222C
0D0A22303736206320626C61636B222C0D0A22303737206320626C61636B222C
0D0A22303738206320626C61636B222C0D0A22303739206320626C61636B222C
0D0A22303830206320626C61636B222C0D0A22303831206320626C61636B222C
0D0A22303832206320626C61636B222C0D0A22303833206320626C61636B222C
0D0A22303834206320626C61636B222C0D0A22303835206320626C61636B222C
0D0A22303836206320626C61636B222C0D0A22303837206320626C61636B222C
0D0A22303838206320626C61636B222C0D0A22303839206320626C61636B222C
0D0A22303930206320626C61636B222C0D0A22303931206320626C61636B222C
0D0A22303932206320626C61636B222C0D0A22303933206320626C61636B222C
0D0A22303934206320626C61636B222C0D0A22303935206320626C61636B222C
0D0A22303936206320626C61636B222C0D0A22303937206320626C61636B222C
0D0A22303938206320626C61636B222C0D0A22303939206320626C61636B222C
0D0A22313030206320626C61636B222C0D0A22313031206320626C61636B222C
0D0A22313032206320626C61636B222C0D0A22313033206320626C61636B222C
0D0A22313034206320626C61636B222C0D0A22313035206320626C61636B222C
0D0A22313036206320626C61636B222C0D0A22313037206320626C61636B222C
0D0A22313038206320626C61636B222C0D0A22313039206320626C61636B222C
0D0A22313130206320626C61636B222C0D0A22313131206320626C61636B222C
0D0A22313132206320626C61636B222C0D0A22313133206320626C61636B222C
0D0A22313134206320626C61636B222C0D0A22313135206320626C61636B222C
0D0A22313136206320626C61636B222C0D0A22313137206320626C61636B222C
0D0A22313138206320626C61636B222C0D0A22313139206320626C61636B222C
0D0A22313230206320626C61636B222C0D0A22313231206320626C61636B222C
0D0A22313232206320626C61636B222C0D0A22313233206320626C61636B222C
0D0A22313234206320626C61636B222C0D0A22313235206320626C61636B222C
0D0A22313236206320626C61636B222C0D0A22313237206320626C61636B222C
0D0A22313238206320626C61636B222C0D0A22313239206320626C61636B222C
0D0A22313330206320626C61636B222C0D0A22313331206320626C61636B222C
0D0A22313332206320626C61636B222C0D0A22313333206320626C61636B222C
0D0A22313334206320626C61636B222C0D0A22313335206320626C61636B222C
0D0A22313336206320626C61636B222C0D0A22313337206320626C61636B222C
0D0A22313338206320626C61636B222C0D0A22313339206320626C61636B222C
0D0A22313430206320626C61636B222C0D0A22313431206320626C61636B222C
0D0A22313432206320626C61636B222C0D0A22313433206320626C61636B222C
0D0A22313434206320626C61636B222C0D0A22313435206320626C61636B222C
0D0A22313436206320626C61636B222C0D0A22313437206320626C61636B222C
0D0A22313438206320626C61636B222C0D0A22313439206320626C61636B222C
0D0A22313530206320626C61636B222C0D0A22313531206320626C61636B222C
0D0A22313532206320626C61636B222C0D0A22313533206320626C61636B222C
0D0A22313534206320626C61636B222C0D0A22313535206320626C61636B222C
0D0A22313536206320626C61636B222C0D0A22313537206320626C61636B222C
0D0A22313538206320626C61636B222C0D0A22313539206320626C61636B222C
0D0A22313630206320626C61636B222C0D0A22313631206320626C61636B222C
0D0A22313632206320626C61636B222C0D0A22313633206320626C61636B222C
0D0A22313634206320626C61636B222C0D0A22313635206320626C61636B222C
0D0A22313636206320626C61636B222C0D0A22313637206320626C61636B222C
0D0A22313638206320626C61636B222C0D0A22313639206320626C61636B222C
0D0A22313730206320626C61636B222C0D0A22313731206320626C61636B222C
0D0A22313732206320626C61636B222C0D0A22313733206320626C61636B222C
0D0A22313734206320626C61636B222C0D0A22313735206320626C61636B222C
0D0A22313736206320626C61636B222C0D0A22313737206320626C61636B222C
0D0A22313738206320626C61636B222C0D0A22313739206320626C61636B222C
0D0A22313830206320626C61636B222C0D0A22313831206320626C61636B222C
0D0A22313832206320626C61636B222C0D0A22313833206320626C61636B222C
0D0A22313834206320626C61636B222C0D0A22313835206320626C61636B222C
0D0A22313836206320626C61636B222C0D0A22313837206320626C61636B222C
0D0A22313838206320626C61636B222C0D0A22313839206320626C61636B222C
0D0A22313930206320626C61636B222C0D0A22313931206320626C61636B222C
0D0A22313932206320626C61636B222C0D0A22313933206320626C61636B222C
0D0A22313934206320626C61636B222C0D0A22313935206320626C61636B222C
0D0A22313936206320626C61636B222C0D0A22313937206320626C61636B222C
0D0A22313938206320626C61636B222C0D0A22313939206320626C61636B222C
0D0A22323030206320626C61636B222C0D0A22323031206320626C61636B222C
0D0A22323032206320626C61636B222C0D0A22323033206320626C61636B222C
0D0A22323034206320626C61636B222C0D0A22323035206320626C61636B222C
0D0A22323036206320626C61636B222C0D0A22323037206320626C61636B222C
0D0A22323038206320626C61636B222C0D0A22323039206320626C61636B222C
0D0A22323130206320626C61636B222C0D0A22323131206320626C61636B222C
0D0A22323132206320626C61636B222C0D0A22323133206320626C61636B222C
0D0A22323134206320626C61636B222C0D0A22323135206320626C61636B222C
0D0A22323136206320626C61636B222C0D0A22323137206320626C61636B222C
0D0A22323138206320626C61636B222C0D0A22323139206320626C61636B222C
0D0A22323230206320626C61636B222C0D0A22323231206320626C61636B222C
0D0A22323232206320626C61636B222C0D0A22323233206320626C61636B222C
0D0A22323234206320626C61636B222C0D0A22323235206320626C61636B222C
0D0A22323236206320626C61636B222C0D0A22323237206320626C61636B222C
0D0A22323238206320626C61636B222C0D0A22323239206320626C61636B222C
0D0A22323330206320626C61636B222C0D0A22323331206320626C61636B222C
0D0A22323332206320626C61636B222C0D0A22323333206320626C61636B222C
0D0A22323334206320626C61636B222C0D0A22323335206320626C61636B222C
0D0A22323336206320626C61636B222C0D0A22323337206320626C61636B222C
0D0A22323338206320626C61636B222C0D0A22323339206320626C61636B222C
0D0A22323430206320626C61636B222C0D0A22323431206320626C61636B222C
0D0A22323432206320626C61636B222C0D0A22323433206320626C61636B222C
0D0A22323434206320626C61636B222C0D0A22323435206320626C61636B222C
0D0A22323436206320626C61636B222C0D0A22323437206320626C61636B222C
0D0A22323438206320626C61636B222C0D0A22323439206320626C61636B222C
0D0A22323530206320626C61636B222C0D0A22323531206320626C61636B222C
0D0A22323532206320626C61636B222C0D0A22323533206320626C61636B222C
0D0A22323534206320626C61636B222C0D0A22323535206320626C61636B222C
0D0A223030333030333030333030333030333030333030333030333030333030
33303033303033303033303033303033303033222C0D0A223030333030333030
3330303330303330303330303330303330303330303330303330303330303330
3033303033303033222C0D0A2230303330303330303330303330303330303330
3033303033303033303033303033303033303033303033303033303033222C0D
0A22303033303033303033303030303030303033303033303033303033303033
303033303033303033303033303033303033222C0D0A22303033303033303033
3030303030313030303030303030333030333030333030333030333030333030
33303033303033222C0D0A223030333030333030333030303030313030313030
31303030303030303033303033303033303033303033303033303033222C0D0A
2230303330303330303330303030303130303130303130303130303130303030
3030303033303033303033303033303033222C0D0A2230303330303330303330
3030303031303031303031303031303031303031303031303030303030303033
303033303033222C0D0A22303033303033303033303030303031303031303031
303031303031303031303031303032303032303033303033303033222C0D0A22
3030333030333030333030303030313030313030313030313030313030323030
32303033303033303033303033303033222C0D0A223030333030333030333030
3030303130303130303130303230303230303330303330303330303330303330
3033303033222C0D0A2230303330303330303330303030303130303230303230
3033303033303033303033303033303033303033303033303033222C0D0A2230
3033303033303033303032303032303033303033303033303033303033303033
303033303033303033303033303033222C0D0A22303033303033303033303033
3030333030333030333030333030333030333030333030333030333030333030
33303033222C0D0A223030333030333030333030333030333030333030333030
33303033303033303033303033303033303033303033303033222C0D0A223030
3330303330303330303330303330303330303330303330303330303330303330
3033303033303033303033303033220D0A7D3B0D0A
}
NumGlyphs = 0
OnClick = PlayClick
TabOrder = 4
Left = 88
Height = 26
Top = 67
Width = 28
end
object btStop: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
970300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A2231362031362031362032222C0D0A22303020632023
303830383130222C0D0A22303120632023313831383231222C0D0A2230322063
20677261793136222C0D0A22303320632023443644364345222C0D0A22303420
632067726179313030222C0D0A22303520632067726179313030222C0D0A2230
3620632067726179313030222C0D0A22303720632067726179313030222C0D0A
22303820632067726179313030222C0D0A22303920632067726179313030222C
0D0A22313020632067726179313030222C0D0A22313120632067726179313030
222C0D0A22313220632067726179313030222C0D0A2231332063206772617931
3030222C0D0A22313420632067726179313030222C0D0A223135206320677261
79313030222C0D0A223033303330333033303330333033303330333033303330
333033303330333033222C0D0A22303330333033303330333033303330333033
3033303330333033303330333033222C0D0A2230333033303330333033303330
33303330333033303330333033303330333033222C0D0A223033303330333030
303030303030303030303030303030303030303330333033222C0D0A22303330
3330333030303130313031303130313031303130313032303330333033222C0D
0A22303330333033303030313031303130313031303130313031303230333033
3033222C0D0A2230333033303330303031303130313031303130313031303130
32303330333033222C0D0A223033303330333030303130313031303130313031
303130313032303330333033222C0D0A22303330333033303030313031303130
3130313031303130313032303330333033222C0D0A2230333033303330303031
30313031303130313031303130313032303330333033222C0D0A223033303330
333030303130313031303130313031303130313032303330333033222C0D0A22
3033303330333030303130313031303130313031303130313032303330333033
222C0D0A22303330333033303230323032303230323032303230323032303230
3330333033222C0D0A2230333033303330333033303330333033303330333033
30333033303330333033222C0D0A223033303330333033303330333033303330
333033303330333033303330333033222C0D0A22303330333033303330333033
3033303330333033303330333033303330333033220D0A7D3B0D0A
}
NumGlyphs = 0
OnClick = StopClick
TabOrder = 5
Left = 116
Height = 26
Top = 67
Width = 28
end
object PlayTimer: TTimer
Enabled = False
Interval = 150
OnTimer = Timer1Timer
top = 152
end
object CDIn1: TACSCDIn
top = 8
end
object AudioOut1: TACSAudioOut
Driver = 'Wavemapper'
Input = CDIn1
Delay = 6
SuspendWhenIdle = True
OnDone = AudioOut1Done
OnProgress = AudioOut1Progress
top = 40
end
end

View File

@ -0,0 +1,198 @@
{ Dies ist eine automatisch erzeugte Lazarus-Ressourcendatei }
LazarusResources.Add('TForm1','FORMDATA',[
'TPF0'#6'TForm1'#5'Form1'#13'ActiveControl'#7#6'btOpen'#7'Caption'#6#9'CD Pla'
+'yer'#12'ClientHeight'#2'c'#11'ClientWidth'#3#189#0#8'OnCreate'#7#10'FormCre'
+'ate'#13'PixelsPerInch'#2'`'#18'HorzScrollBar.Page'#3#188#0#18'VertScrollBar'
+'.Page'#2'b'#4'Left'#3'*'#1#6'Height'#2'c'#3'Top'#3#12#1#5'Width'#3#189#0#0#6
+'TPanel'#6'Panel1'#10'BevelOuter'#7#9'bvLowered'#12'ClientHeight'#2'@'#11'Cl'
+'ientWidth'#3#182#0#11'FullRepaint'#8#8'TabOrder'#2#0#4'Left'#2#4#6'Height'#2
+'@'#5'Width'#3#182#0#0#6'TLabel'#5'lTime'#8'AutoSize'#8#7'Caption'#6#8'00:00'
+':00'#5'Color'#7#6'clNone'#11'Font.Height'#2#231#11'ParentColor'#8#4'Left'#2
+'D'#6'Height'#2#29#3'Top'#2#24#5'Width'#2'l'#0#0#6'TLabel'#6'lTrack'#7'Capti'
+'on'#6#2'01'#5'Color'#7#6'clNone'#11'Font.Height'#2#219#11'ParentColor'#8#4
+'Left'#2#16#6'Height'#2'.'#3'Top'#2#17#5'Width'#2')'#0#0#6'TLabel'#6'Label1'
+#7'Caption'#6#5'Track'#5'Color'#7#6'clNone'#11'Font.Height'#2#247#11'ParentC'
+'olor'#8#4'Left'#2#4#6'Height'#2#12#3'Top'#2#14#5'Width'#2#24#0#0#6'TLabel'#6
+'Label2'#7'Caption'#6#6'remain'#5'Color'#7#6'clNone'#11'Font.Height'#2#247#11
+'ParentColor'#8#4'Left'#2'\'#6'Height'#2#12#3'Top'#2#14#5'Width'#2#29#0#0#6
+'TLabel'#6'Label3'#7'Caption'#6#6'Tracks'#5'Color'#7#6'clNone'#11'Font.Heigh'
+'t'#2#247#11'ParentColor'#8#4'Left'#2#4#6'Height'#2#12#3'Top'#2#2#5'Width'#2
+#28#0#0#6'TLabel'#12'lTracksCount'#7'Caption'#6#2'09'#5'Color'#7#6'clNone'#11
+'ParentColor'#8#4'Left'#2','#6'Height'#2#14#3'Top'#2#1#5'Width'#2#13#0#0#6'T'
+'Label'#6'Label5'#7'Caption'#6#9'Time left'#5'Color'#7#6'clNone'#11'Font.Hei'
+'ght'#2#247#11'ParentColor'#8#4'Left'#2'<'#6'Height'#2#12#5'Width'#2'&'#0#0#6
+'TLabel'#5'lLeft'#9'Alignment'#7#14'taRightJustify'#7'Caption'#6#8'00:00:00'
+#5'Color'#7#6'clNone'#11'Font.Height'#2#244#11'ParentColor'#8#4'Left'#2'|'#6
+'Height'#2#15#3'Top'#2#1#5'Width'#2'3'#0#0#12'TProgressBar'#8'Progress'#5'Al'
+'ign'#7#8'alBottom'#3'Max'#3#232#3#6'Smooth'#9#4'Left'#2#1#6'Height'#2#8#3'T'
+'op'#2'7'#5'Width'#3#180#0#0#0#0#7'TBitBtn'#6'btOpen'#25'BorderSpacing.Inner'
+'Border'#2#2#10'Glyph.Data'#10#155#3#0#0#151#3#0#0'/* XPM */'#13#10'static c'
+'har *Pixmap[] = {'#13#10'"16 16 16 2",'#13#10'"00 c #080810",'#13#10'"01 c '
+'#181821",'#13#10'"02 c gray16",'#13#10'"03 c #D6D6CE",'#13#10'"04 c gray100'
+'",'#13#10'"05 c gray100",'#13#10'"06 c gray100",'#13#10'"07 c gray100",'#13
+#10'"08 c gray100",'#13#10'"09 c gray100",'#13#10'"10 c gray100",'#13#10'"11'
+' c gray100",'#13#10'"12 c gray100",'#13#10'"13 c gray100",'#13#10'"14 c gra'
+'y100",'#13#10'"15 c gray100",'#13#10'"03030303030303030303030303030303",'#13
+#10'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030303'
+'0303",'#13#10'"03030303030303000303030303030303",'#13#10'"03030303030300010'
+'003030303030303",'#13#10'"03030303030001010100030303030303",'#13#10'"030303'
+'03000101010101000303030303",'#13#10'"03030300010101010101010003030303",'#13
+#10'"03030202020202020202020202030303",'#13#10'"0303030303030303030303030303'
+'0303",'#13#10'"03030000000000000000000000030303",'#13#10'"03030001010101010'
+'101010102030303",'#13#10'"03030202020202020202020202030303",'#13#10'"030303'
+'03030303030303030303030303",'#13#10'"03030303030303030303030303030303",'#13
+#10'"03030303030303030303030303030303"'#13#10'};'#13#10#6'Layout'#7#10'blGly'
+'phTop'#9'NumGlyphs'#2#0#7'OnClick'#7#9'OpenClick'#8'TabOrder'#2#1#4'Left'#2
+#4#6'Height'#2#26#3'Top'#2'C'#5'Width'#2#28#0#0#7'TBitBtn'#5'btRew'#25'Borde'
+'rSpacing.InnerBorder'#2#2#10'Glyph.Data'#10#155#3#0#0#151#3#0#0'/* XPM */'
+#13#10'static char *Pixmap[] = {'#13#10'"16 16 16 2",'#13#10'"00 c #080810",'
+#13#10'"01 c #181821",'#13#10'"02 c gray16",'#13#10'"03 c #D6D6CE",'#13#10'"'
+'04 c gray100",'#13#10'"05 c gray100",'#13#10'"06 c gray100",'#13#10'"07 c g'
+'ray100",'#13#10'"08 c gray100",'#13#10'"09 c gray100",'#13#10'"10 c gray100'
+'",'#13#10'"11 c gray100",'#13#10'"12 c gray100",'#13#10'"13 c gray100",'#13
+#10'"14 c gray100",'#13#10'"15 c gray100",'#13#10'"0303030303030303030303030'
+'3030303",'#13#10'"03030303030303030303030303030303",'#13#10'"03030303030303'
+'030303030303030303",'#13#10'"03030300000003030303030000030303",'#13#10'"030'
+'30300010203030303000102030303",'#13#10'"03030300010203030300010102030303",'
+#13#10'"03030300010203030001010102030303",'#13#10'"0303030001020300010101010'
+'2030303",'#13#10'"03030300010203020101010102030303",'#13#10'"03030300010203'
+'030201010102030303",'#13#10'"03030300010203030302010102030303",'#13#10'"030'
+'30300010203030303020102030303",'#13#10'"03030302020203030303030202030303",'
+#13#10'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030'
+'3030303",'#13#10'"03030303030303030303030303030303"'#13#10'};'#13#10#9'NumG'
+'lyphs'#2#0#7'OnClick'#7#10'btRewClick'#8'TabOrder'#2#2#4'Left'#2' '#6'Heigh'
+'t'#2#26#3'Top'#2'C'#5'Width'#2#28#0#0#7'TBitBtn'#5'btFfw'#25'BorderSpacing.'
+'InnerBorder'#2#2#10'Glyph.Data'#10#155#3#0#0#151#3#0#0'/* XPM */'#13#10'sta'
+'tic char *Pixmap[] = {'#13#10'"16 16 16 2",'#13#10'"00 c #080810",'#13#10'"'
,'01 c #181821",'#13#10'"02 c gray16",'#13#10'"03 c #D6D6CE",'#13#10'"04 c gr'
+'ay100",'#13#10'"05 c gray100",'#13#10'"06 c gray100",'#13#10'"07 c gray100"'
+','#13#10'"08 c gray100",'#13#10'"09 c gray100",'#13#10'"10 c gray100",'#13
+#10'"11 c gray100",'#13#10'"12 c gray100",'#13#10'"13 c gray100",'#13#10'"14'
+' c gray100",'#13#10'"15 c gray100",'#13#10'"0303030303030303030303030303030'
+'3",'#13#10'"03030303030303030303030303030303",'#13#10'"03030303030303030303'
+'030303030303",'#13#10'"03030300000303030303000000030303",'#13#10'"030303020'
+'10003030303020100030303",'#13#10'"03030302010100030303020100030303",'#13#10
+'"03030302010101000303020100030303",'#13#10'"0303030201010101000302010003030'
+'3",'#13#10'"03030302010101010203020100030303",'#13#10'"03030302010101020303'
+'020100030303",'#13#10'"03030302010102030303020100030303",'#13#10'"030303020'
+'10203030303020100030303",'#13#10'"03030302020303030303020202030303",'#13#10
+'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030303030'
+'3",'#13#10'"03030303030303030303030303030303"'#13#10'};'#13#10#6'Layout'#7
+#12'blGlyphRight'#9'NumGlyphs'#2#0#7'OnClick'#7#10'btFfwClick'#8'TabOrder'#2
+#3#4'Left'#2'<'#6'Height'#2#26#3'Top'#2'C'#5'Width'#2#28#0#0#7'TBitBtn'#6'bt'
+'Play'#25'BorderSpacing.InnerBorder'#2#2#10'Glyph.Data'#10#149#19#0#0#145#19
+#0#0'/* XPM */'#13#10'static char *Pixmap[] = {'#13#10'"16 16 256 3",'#13#10
+'"000 c #0C0F12",'#13#10'"001 c #1B1D20",'#13#10'"002 c #2A2D2D",'#13#10'"00'
+'3 c #D4D0C8",'#13#10'"004 c black",'#13#10'"005 c black",'#13#10'"006 c bla'
+'ck",'#13#10'"007 c black",'#13#10'"008 c black",'#13#10'"009 c black",'#13
+#10'"010 c black",'#13#10'"011 c black",'#13#10'"012 c black",'#13#10'"013 c'
+' black",'#13#10'"014 c black",'#13#10'"015 c black",'#13#10'"016 c black",'
+#13#10'"017 c black",'#13#10'"018 c black",'#13#10'"019 c black",'#13#10'"02'
+'0 c black",'#13#10'"021 c black",'#13#10'"022 c black",'#13#10'"023 c black'
+'",'#13#10'"024 c black",'#13#10'"025 c black",'#13#10'"026 c black",'#13#10
+'"027 c black",'#13#10'"028 c black",'#13#10'"029 c black",'#13#10'"030 c bl'
+'ack",'#13#10'"031 c black",'#13#10'"032 c black",'#13#10'"033 c black",'#13
+#10'"034 c black",'#13#10'"035 c black",'#13#10'"036 c black",'#13#10'"037 c'
+' black",'#13#10'"038 c black",'#13#10'"039 c black",'#13#10'"040 c black",'
+#13#10'"041 c black",'#13#10'"042 c black",'#13#10'"043 c black",'#13#10'"04'
+'4 c black",'#13#10'"045 c black",'#13#10'"046 c black",'#13#10'"047 c black'
+'",'#13#10'"048 c black",'#13#10'"049 c black",'#13#10'"050 c black",'#13#10
+'"051 c black",'#13#10'"052 c black",'#13#10'"053 c black",'#13#10'"054 c bl'
+'ack",'#13#10'"055 c black",'#13#10'"056 c black",'#13#10'"057 c black",'#13
+#10'"058 c black",'#13#10'"059 c black",'#13#10'"060 c black",'#13#10'"061 c'
+' black",'#13#10'"062 c black",'#13#10'"063 c black",'#13#10'"064 c black",'
+#13#10'"065 c black",'#13#10'"066 c black",'#13#10'"067 c black",'#13#10'"06'
+'8 c black",'#13#10'"069 c black",'#13#10'"070 c black",'#13#10'"071 c black'
+'",'#13#10'"072 c black",'#13#10'"073 c black",'#13#10'"074 c black",'#13#10
+'"075 c black",'#13#10'"076 c black",'#13#10'"077 c black",'#13#10'"078 c bl'
+'ack",'#13#10'"079 c black",'#13#10'"080 c black",'#13#10'"081 c black",'#13
+#10'"082 c black",'#13#10'"083 c black",'#13#10'"084 c black",'#13#10'"085 c'
+' black",'#13#10'"086 c black",'#13#10'"087 c black",'#13#10'"088 c black",'
+#13#10'"089 c black",'#13#10'"090 c black",'#13#10'"091 c black",'#13#10'"09'
+'2 c black",'#13#10'"093 c black",'#13#10'"094 c black",'#13#10'"095 c black'
+'",'#13#10'"096 c black",'#13#10'"097 c black",'#13#10'"098 c black",'#13#10
+'"099 c black",'#13#10'"100 c black",'#13#10'"101 c black",'#13#10'"102 c bl'
+'ack",'#13#10'"103 c black",'#13#10'"104 c black",'#13#10'"105 c black",'#13
+#10'"106 c black",'#13#10'"107 c black",'#13#10'"108 c black",'#13#10'"109 c'
+' black",'#13#10'"110 c black",'#13#10'"111 c black",'#13#10'"112 c black",'
+#13#10'"113 c black",'#13#10'"114 c black",'#13#10'"115 c black",'#13#10'"11'
+'6 c black",'#13#10'"117 c black",'#13#10'"118 c black",'#13#10'"119 c black'
+'",'#13#10'"120 c black",'#13#10'"121 c black",'#13#10'"122 c black",'#13#10
+'"123 c black",'#13#10'"124 c black",'#13#10'"125 c black",'#13#10'"126 c bl'
+'ack",'#13#10'"127 c black",'#13#10'"128 c black",'#13#10'"129 c black",'#13
+#10'"130 c black",'#13#10'"131 c black",'#13#10'"132 c black",'#13#10'"133 c'
+' black",'#13#10'"134 c black",'#13#10'"135 c black",'#13#10'"136 c black",'
+#13#10'"137 c black",'#13#10'"138 c black",'#13#10'"139 c black",'#13#10'"14'
+'0 c black",'#13#10'"141 c black",'#13#10'"142 c black",'#13#10'"143 c black'
+'",'#13#10'"144 c black",'#13#10'"145 c black",'#13#10'"146 c black",'#13#10
+'"147 c black",'#13#10'"148 c black",'#13#10'"149 c black",'#13#10'"150 c bl'
+'ack",'#13#10'"151 c black",'#13#10'"152 c black",'#13#10'"153 c black",'#13
+#10'"154 c black",'#13#10'"155 c black",'#13#10'"156 c black",'#13#10'"157 c'
,' black",'#13#10'"158 c black",'#13#10'"159 c black",'#13#10'"160 c black",'
+#13#10'"161 c black",'#13#10'"162 c black",'#13#10'"163 c black",'#13#10'"16'
+'4 c black",'#13#10'"165 c black",'#13#10'"166 c black",'#13#10'"167 c black'
+'",'#13#10'"168 c black",'#13#10'"169 c black",'#13#10'"170 c black",'#13#10
+'"171 c black",'#13#10'"172 c black",'#13#10'"173 c black",'#13#10'"174 c bl'
+'ack",'#13#10'"175 c black",'#13#10'"176 c black",'#13#10'"177 c black",'#13
+#10'"178 c black",'#13#10'"179 c black",'#13#10'"180 c black",'#13#10'"181 c'
+' black",'#13#10'"182 c black",'#13#10'"183 c black",'#13#10'"184 c black",'
+#13#10'"185 c black",'#13#10'"186 c black",'#13#10'"187 c black",'#13#10'"18'
+'8 c black",'#13#10'"189 c black",'#13#10'"190 c black",'#13#10'"191 c black'
+'",'#13#10'"192 c black",'#13#10'"193 c black",'#13#10'"194 c black",'#13#10
+'"195 c black",'#13#10'"196 c black",'#13#10'"197 c black",'#13#10'"198 c bl'
+'ack",'#13#10'"199 c black",'#13#10'"200 c black",'#13#10'"201 c black",'#13
+#10'"202 c black",'#13#10'"203 c black",'#13#10'"204 c black",'#13#10'"205 c'
+' black",'#13#10'"206 c black",'#13#10'"207 c black",'#13#10'"208 c black",'
+#13#10'"209 c black",'#13#10'"210 c black",'#13#10'"211 c black",'#13#10'"21'
+'2 c black",'#13#10'"213 c black",'#13#10'"214 c black",'#13#10'"215 c black'
+'",'#13#10'"216 c black",'#13#10'"217 c black",'#13#10'"218 c black",'#13#10
+'"219 c black",'#13#10'"220 c black",'#13#10'"221 c black",'#13#10'"222 c bl'
+'ack",'#13#10'"223 c black",'#13#10'"224 c black",'#13#10'"225 c black",'#13
+#10'"226 c black",'#13#10'"227 c black",'#13#10'"228 c black",'#13#10'"229 c'
+' black",'#13#10'"230 c black",'#13#10'"231 c black",'#13#10'"232 c black",'
+#13#10'"233 c black",'#13#10'"234 c black",'#13#10'"235 c black",'#13#10'"23'
+'6 c black",'#13#10'"237 c black",'#13#10'"238 c black",'#13#10'"239 c black'
+'",'#13#10'"240 c black",'#13#10'"241 c black",'#13#10'"242 c black",'#13#10
+'"243 c black",'#13#10'"244 c black",'#13#10'"245 c black",'#13#10'"246 c bl'
+'ack",'#13#10'"247 c black",'#13#10'"248 c black",'#13#10'"249 c black",'#13
+#10'"250 c black",'#13#10'"251 c black",'#13#10'"252 c black",'#13#10'"253 c'
+' black",'#13#10'"254 c black",'#13#10'"255 c black",'#13#10'"00300300300300'
+'3003003003003003003003003003003003",'#13#10'"003003003003003003003003003003'
+'003003003003003003",'#13#10'"0030030030030030030030030030030030030030030030'
+'03",'#13#10'"003003003000000003003003003003003003003003003003",'#13#10'"003'
+'003003000001000000003003003003003003003003003",'#13#10'"0030030030000010010'
+'01000000003003003003003003003",'#13#10'"00300300300000100100100100100000000'
+'3003003003003",'#13#10'"003003003000001001001001001001001000000003003003",'
+#13#10'"003003003000001001001001001001001002002003003003",'#13#10'"003003003'
+'000001001001001001002002003003003003003",'#13#10'"0030030030000010010010020'
+'02003003003003003003003",'#13#10'"00300300300000100200200300300300300300300'
+'3003003",'#13#10'"003003003002002003003003003003003003003003003003",'#13#10
+'"003003003003003003003003003003003003003003003003",'#13#10'"003003003003003'
+'003003003003003003003003003003003",'#13#10'"0030030030030030030030030030030'
+'03003003003003003"'#13#10'};'#13#10#9'NumGlyphs'#2#0#7'OnClick'#7#9'PlayCli'
+'ck'#8'TabOrder'#2#4#4'Left'#2'X'#6'Height'#2#26#3'Top'#2'C'#5'Width'#2#28#0
+#0#7'TBitBtn'#6'btStop'#25'BorderSpacing.InnerBorder'#2#2#10'Glyph.Data'#10
+#155#3#0#0#151#3#0#0'/* XPM */'#13#10'static char *Pixmap[] = {'#13#10'"16 1'
+'6 16 2",'#13#10'"00 c #080810",'#13#10'"01 c #181821",'#13#10'"02 c gray16"'
+','#13#10'"03 c #D6D6CE",'#13#10'"04 c gray100",'#13#10'"05 c gray100",'#13
+#10'"06 c gray100",'#13#10'"07 c gray100",'#13#10'"08 c gray100",'#13#10'"09'
+' c gray100",'#13#10'"10 c gray100",'#13#10'"11 c gray100",'#13#10'"12 c gra'
+'y100",'#13#10'"13 c gray100",'#13#10'"14 c gray100",'#13#10'"15 c gray100",'
+#13#10'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030'
+'3030303",'#13#10'"03030303030303030303030303030303",'#13#10'"03030300000000'
+'000000000000030303",'#13#10'"03030300010101010101010102030303",'#13#10'"030'
+'30300010101010101010102030303",'#13#10'"03030300010101010101010102030303",'
+#13#10'"03030300010101010101010102030303",'#13#10'"0303030001010101010101010'
+'2030303",'#13#10'"03030300010101010101010102030303",'#13#10'"03030300010101'
+'010101010102030303",'#13#10'"03030300010101010101010102030303",'#13#10'"030'
+'30302020202020202020202030303",'#13#10'"03030303030303030303030303030303",'
+#13#10'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030'
+'3030303"'#13#10'};'#13#10#9'NumGlyphs'#2#0#7'OnClick'#7#9'StopClick'#8'TabO'
+'rder'#2#5#4'Left'#2't'#6'Height'#2#26#3'Top'#2'C'#5'Width'#2#28#0#0#6'TTime'
+'r'#9'PlayTimer'#7'Enabled'#8#8'Interval'#3#150#0#7'OnTimer'#7#11'Timer1Time'
+'r'#3'top'#3#152#0#0#0#8'TACSCDIn'#5'CDIn1'#3'top'#2#8#0#0#12'TACSAudioOut'#9
+'AudioOut1'#6'Driver'#6#10'Wavemapper'#5'Input'#7#5'CDIn1'#5'Delay'#2#6#15'S'
,'uspendWhenIdle'#9#6'OnDone'#7#13'AudioOut1Done'#10'OnProgress'#7#17'AudioOu'
+'t1Progress'#3'top'#2'('#0#0#0
]);

View File

@ -0,0 +1,143 @@
unit uMain;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, Buttons,
ACS_Audio,ACS_File,ACS_Classes,ACS_Allformats, ExtCtrls, StdCtrls, ComCtrls, ACS_CDROM;
type
{ TForm1 }
TForm1 = class(TForm)
AudioOut1: TACSAudioOut;
CDIn1: TACSCDIn;
btRew: TBitBtn;
btFfw: TBitBtn;
btPlay: TBitBtn;
btStop: TBitBtn;
btOpen: TBitBtn;
lTrack: TLabel;
lTime: TLabel;
Panel1: TPanel;
Progress: TProgressBar;
PlayTimer: TTimer;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
lTracksCount: TLabel;
Label5: TLabel;
lLeft: TLabel;
procedure AudioOut1Done(Sender: TComponent);
procedure AudioOut1Progress(Sender: TComponent);
procedure AudioOut1ThreadException(Sender: TComponent; E: Exception);
procedure PlayClick(Sender: TObject);
procedure StopClick(Sender: TObject);
procedure OpenClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure btFfwClick(Sender: TObject);
procedure btRewClick(Sender: TObject);
procedure FormCreate(Sender : TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
{ TForm1 }
procedure TForm1.PlayClick(Sender: TObject);
begin
AudioOut1.Run;
btPlay.Enabled := False;
btStop.Enabled := True;
btOpen.Enabled := False;
btRew.Enabled := False;
btFfw.Enabled := False;
end;
procedure TForm1.AudioOut1Done(Sender: TComponent);
begin
btPlay.Enabled := True;
btStop.Enabled := False;
btOpen.Enabled := True;
btRew.Enabled := True;
btFfw.Enabled := True;
PlayTimer.Enabled := false;
end;
procedure TForm1.AudioOut1Progress(Sender: TComponent);
begin
PlayTimer.Enabled := True;
end;
procedure TForm1.AudioOut1ThreadException(Sender: TComponent; E: Exception);
begin
ShowMessage(E.Message);
end;
procedure TForm1.StopClick(Sender: TObject);
begin
AudioOut1.Stop;
end;
procedure TForm1.OpenClick(Sender: TObject);
begin
lTracksCount.Caption := Format('%.2d',[CDIn1.Trackscount]);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var
tmp : real;
begin
tmp := ((CDIn1.Position * CDIn1.TotalTime) / CDIn1.Size);
lTime.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
tmp := CDIn1.TotalTime-((CDIn1.Position * CDIn1.TotalTime) / CDIn1.Size);
lLeft.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
Progress.Position := round((CDIn1.Position * 100) / CDIn1.Size);
end;
procedure TForm1.btFfwClick(Sender: TObject);
begin
CDIn1.StartTrack := CDIn1.StartTrack+1;
CDIn1.EndTrack := CDIn1.StartTrack+1;
if CDIn1.StartTrack = CDIn1.TracksCount-1 then
btFfw.Enabled := False;
if CDIn1.StartTrack > 0 then
btRew.Enabled := True;
lTrack.Caption := Format('%.2d',[CDIn1.EndTrack]);
lLeft.Caption := '';
lTime.Caption := '00:00:00';
end;
procedure TForm1.btRewClick(Sender: TObject);
begin
CDIn1.StartTrack := CDIn1.StartTrack-1;
CDIn1.EndTrack := CDIn1.StartTrack+1;
if CDIn1.StartTrack < CDIn1.TracksCount-1 then
btFfw.Enabled := True;
if CDIn1.StartTrack <= 0 then
btRew.Enabled := False;
lTrack.Caption := Format('%.2d',[CDIn1.EndTrack]);
lLeft.Caption := '';
lTime.Caption := '00:00:00';
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
lTracksCount.Caption := Format('%.2d',[CDIn1.Trackscount]);
end;
initialization
{$I umain.lrs}
end.

View File

@ -0,0 +1,302 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<PathDelim Value="\"/>
<Version Value="5"/>
<General>
<MainUnit Value="0"/>
<IconPath Value="./"/>
<TargetFileExt Value=".exe"/>
<ActiveEditorIndexAtStart Value="0"/>
</General>
<LazDoc Paths=""/>
<Units Count="12">
<Unit0>
<CursorPos X="1" Y="14"/>
<EditorIndex Value="6"/>
<Filename Value="fileconverter.lpr"/>
<IsPartOfProject Value="True"/>
<Loaded Value="True"/>
<TopLine Value="1"/>
<UnitName Value="fileconverter"/>
<UsageCount Value="22"/>
</Unit0>
<Unit1>
<CursorPos X="20" Y="71"/>
<EditorIndex Value="0"/>
<Filename Value="umain.pas"/>
<ComponentName Value="Form1"/>
<IsPartOfProject Value="True"/>
<Loaded Value="True"/>
<ResourceFilename Value="umain.lrs"/>
<TopLine Value="54"/>
<UnitName Value="uMain"/>
<UsageCount Value="22"/>
</Unit1>
<Unit2>
<CursorPos X="1" Y="337"/>
<EditorIndex Value="1"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\acs_file.pas"/>
<Loaded Value="True"/>
<TopLine Value="321"/>
<UnitName Value="acs_file"/>
<UsageCount Value="10"/>
</Unit2>
<Unit3>
<CursorPos X="2" Y="724"/>
<EditorIndex Value="2"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\acs_classes.pas"/>
<Loaded Value="True"/>
<TopLine Value="712"/>
<UnitName Value="acs_classes"/>
<UsageCount Value="10"/>
</Unit3>
<Unit4>
<CursorPos X="1" Y="2235"/>
<Filename Value="D:\lazarus\lcl\include\control.inc"/>
<TopLine Value="2219"/>
<UsageCount Value="10"/>
</Unit4>
<Unit5>
<CursorPos X="1" Y="814"/>
<Filename Value="D:\lazarus\lcl\EditBtn.pas"/>
<TopLine Value="798"/>
<UnitName Value="EditBtn"/>
<UsageCount Value="10"/>
</Unit5>
<Unit6>
<CursorPos X="18" Y="82"/>
<EditorIndex Value="3"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Loaded Value="True"/>
<TopLine Value="66"/>
<UnitName Value="acs_vorbis"/>
<UsageCount Value="10"/>
</Unit6>
<Unit7>
<CursorPos X="22" Y="317"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_dsfiles.pas"/>
<TopLine Value="313"/>
<UnitName Value="acs_dsfiles"/>
<UsageCount Value="10"/>
</Unit7>
<Unit8>
<CursorPos X="8" Y="12"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_Allformats.pas"/>
<TopLine Value="1"/>
<UnitName Value="acs_allformats"/>
<UsageCount Value="10"/>
</Unit8>
<Unit9>
<CursorPos X="1" Y="227"/>
<EditorIndex Value="5"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_lame.pas"/>
<Loaded Value="True"/>
<TopLine Value="195"/>
<UnitName Value="acs_lame"/>
<UsageCount Value="10"/>
</Unit9>
<Unit10>
<CursorPos X="1" Y="1038"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\general\lame.pas"/>
<TopLine Value="1022"/>
<UnitName Value="lame"/>
<UsageCount Value="10"/>
</Unit10>
<Unit11>
<CursorPos X="3" Y="96"/>
<EditorIndex Value="4"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\general\vorbiscodec.pas"/>
<Loaded Value="True"/>
<TopLine Value="80"/>
<UnitName Value="vorbiscodec"/>
<UsageCount Value="10"/>
</Unit11>
</Units>
<PublishOptions>
<Version Value="2"/>
<DestinationDirectory Value="$(TestDir)\publishedproject\"/>
<IgnoreBinaries Value="False"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
<LaunchingApplication PathPlusParams="\usr\X11R6\bin\xterm -T 'Lazarus Run Output' -e $(LazarusDir)\tools\runwait.sh $(TargetCmdLine)"/>
</local>
</RunParams>
<RequiredPackages Count="2">
<Item1>
<PackageName Value="LCL"/>
</Item1>
<Item2>
<PackageName Value="LAZ_ACS"/>
<MinVersion Major="2" Minor="4" Valid="True"/>
</Item2>
</RequiredPackages>
<JumpHistory Count="30" HistoryIndex="29">
<Position1>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="348" Column="1" TopLine="332"/>
</Position1>
<Position2>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="346" Column="28" TopLine="328"/>
</Position2>
<Position3>
<Filename Value="umain.pas"/>
<Caret Line="66" Column="1" TopLine="50"/>
</Position3>
<Position4>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="335" Column="1" TopLine="319"/>
</Position4>
<Position5>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="351" Column="17" TopLine="335"/>
</Position5>
<Position6>
<Filename Value="umain.pas"/>
<Caret Line="66" Column="1" TopLine="50"/>
</Position6>
<Position7>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="335" Column="1" TopLine="319"/>
</Position7>
<Position8>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="336" Column="1" TopLine="320"/>
</Position8>
<Position9>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="337" Column="1" TopLine="321"/>
</Position9>
<Position10>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="344" Column="1" TopLine="328"/>
</Position10>
<Position11>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="345" Column="1" TopLine="329"/>
</Position11>
<Position12>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="346" Column="1" TopLine="330"/>
</Position12>
<Position13>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="347" Column="1" TopLine="331"/>
</Position13>
<Position14>
<Filename Value="umain.pas"/>
<Caret Line="66" Column="1" TopLine="50"/>
</Position14>
<Position15>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="335" Column="1" TopLine="319"/>
</Position15>
<Position16>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="336" Column="1" TopLine="320"/>
</Position16>
<Position17>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="337" Column="1" TopLine="321"/>
</Position17>
<Position18>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="344" Column="1" TopLine="328"/>
</Position18>
<Position19>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="345" Column="1" TopLine="329"/>
</Position19>
<Position20>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="346" Column="1" TopLine="330"/>
</Position20>
<Position21>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="347" Column="1" TopLine="331"/>
</Position21>
<Position22>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="348" Column="1" TopLine="332"/>
</Position22>
<Position23>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="349" Column="1" TopLine="333"/>
</Position23>
<Position24>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="351" Column="1" TopLine="335"/>
</Position24>
<Position25>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="353" Column="1" TopLine="337"/>
</Position25>
<Position26>
<Filename Value="D:\LKomponenten\acs\Src\classes\acs_file.pas"/>
<Caret Line="334" Column="15" TopLine="321"/>
</Position26>
<Position27>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="353" Column="45" TopLine="347"/>
</Position27>
<Position28>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Caret Line="82" Column="18" TopLine="66"/>
</Position28>
<Position29>
<Filename Value="D:\LKomponenten\acs\Src\classes\acs_classes.pas"/>
<Caret Line="724" Column="2" TopLine="712"/>
</Position29>
<Position30>
<Filename Value="umain.pas"/>
<Caret Line="66" Column="1" TopLine="50"/>
</Position30>
</JumpHistory>
</ProjectOptions>
<CompilerOptions>
<Version Value="5"/>
<PathDelim Value="\"/>
<SearchPaths>
<SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
</SearchPaths>
<CodeGeneration>
<Generate Value="Faster"/>
</CodeGeneration>
<Linking>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
<Other>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
<Debugging>
<BreakPoints Count="3">
<Item1>
<Source Value="D:\LKomponenten\acs\Demos\Ripper\umain.pas"/>
<Line Value="68"/>
</Item1>
<Item2>
<Source Value="D:\LKomponenten\acs\Src\fileformats\acs_lame.pas"/>
<Line Value="297"/>
</Item2>
<Item3>
<Source Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<Line Value="335"/>
</Item3>
</BreakPoints>
<Watches Count="1">
<Item1>
<Expression Value="newfilename"/>
</Item1>
</Watches>
</Debugging>
</CONFIG>

View File

@ -0,0 +1,165 @@
object Form1: TForm1
ActiveControl = BitBtn1
BorderStyle = bsToolWindow
Caption = 'Fileconverter'
ClientHeight = 62
ClientWidth = 401
OnCreate = FormCreate
PixelsPerInch = 96
HorzScrollBar.Page = 400
VertScrollBar.Page = 61
Left = 440
Height = 62
Top = 309
Width = 401
object Label1: TLabel
Caption = 'Output Dir'
Color = clNone
ParentColor = False
Left = 96
Height = 14
Top = 16
Width = 51
end
object pbProgress: TProgressBar
Max = 100
Left = 8
Height = 16
Top = 40
Width = 384
end
object BitBtn1: TBitBtn
BorderSpacing.InnerBorder = 2
Caption = 'Open'
Glyph.Data = {
910900002F2A2058504D202A2F0D0A7374617469632063686172202A2062746E
5F6F70656E66696C655F78706D5B5D203D207B0D0A2231382031382039372032
222C0D0A2220200963204E6F6E65222C0D0A222E200963202330303030303022
2C0D0A222B2009632023344533333142222C0D0A224020096320234535413536
36222C0D0A22232009632023464544333941222C0D0A22242009632023464543
353835222C0D0A22252009632023464443353837222C0D0A2226200963202346
4543323832222C0D0A222A2009632023463841433632222C0D0A223D20096320
23464543383841222C0D0A222D2009632023353335303444222C0D0A223B2009
632023353535323446222C0D0A223E2009632023354335413537222C0D0A222C
2009632023353435313445222C0D0A22272009632023353635333530222C0D0A
22292009632023433438363445222C0D0A22212009632023353234463443222C
0D0A227E2009632023463546354635222C0D0A227B2009632023454345434543
222C0D0A225D2009632023453445344534222C0D0A225E200963202344434443
4443222C0D0A222F2009632023443444344434222C0D0A222820096320234342
43424342222C0D0A225F2009632023433443344334222C0D0A223A2009632023
424342434243222C0D0A223C2009632023423542354235222C0D0A225B200963
2023423342334233222C0D0A227D2009632023333033303330222C0D0A227C20
09632023344133313139222C0D0A22312009632023444244424442222C0D0A22
322009632023444644464445222C0D0A22332009632023453845384537222C0D
0A22342009632023453645364534222C0D0A2235200963202344324432443122
2C0D0A22362009632023433743374336222C0D0A223720096320234241424142
39222C0D0A22382009632023414441444143222C0D0A22392009632023413041
303946222C0D0A22302009632023393439343933222C0D0A2261200963202334
3934393438222C0D0A22622009632023423737443434222C0D0A226320096320
23353335313445222C0D0A22642009632023444144414441222C0D0A22652009
632023444244424441222C0D0A22662009632023453145314530222C0D0A2267
2009632023444444444443222C0D0A22682009632023443644364435222C0D0A
22692009632023434243424341222C0D0A226A2009632023433143314330222C
0D0A226B2009632023423642364235222C0D0A226C2009632023413941394138
222C0D0A226D2009632023363836383637222C0D0A226E200963202332323232
3231222C0D0A226F2009632023343933303138222C0D0A227020096320234344
43444344222C0D0A22712009632023434143414339222C0D0A22722009632023
443544354434222C0D0A22732009632023443244324430222C0D0A2274200963
2023434343434342222C0D0A22752009632023433243324331222C0D0A227620
09632023423942394238222C0D0A22772009632023414641464145222C0D0A22
782009632023413241324131222C0D0A22792009632023393539353934222C0D
0A227A2009632023434543454345222C0D0A2241200963202342454245424322
2C0D0A22422009632023433443344332222C0D0A224320096320234336433643
35222C0D0A22442009632023433343334332222C0D0A22452009632023424642
464245222C0D0A22462009632023414541454144222C0D0A2247200963202341
3541354134222C0D0A22482009632023394539453944222C0D0A224920096320
23364636463645222C0D0A224A2009632023313231323132222C0D0A224B2009
632023424442444244222C0D0A224C2009632023413641364135222C0D0A224D
2009632023414141414138222C0D0A224E2009632023414441444142222C0D0A
224F2009632023414541454143222C0D0A22502009632023414241424141222C
0D0A22512009632023413741374136222C0D0A22522009632023413141314130
222C0D0A22532009632023394139413939222C0D0A2254200963202339343934
3932222C0D0A22552009632023384438443842222C0D0A225620096320233233
32333233222C0D0A22572009632023344134413441222C0D0A22582009632023
344134413439222C0D0A22592009632023344334433442222C0D0A225A200963
2023344334433443222C0D0A22602009632023344234423441222C0D0A22202E
09632023343634363436222C0D0A222E2E09632023343334333433222C0D0A22
2B2E09632023343134313430222C0D0A22402E09632023333433343333222C0D
0A22232E09632023314631463145222C0D0A222020202020202020202020202E
202E202E202E2020202020202020202020202020202020222C0D0A2220202020
2020202020202E202E2020202E202E202E202E2020202E202020202020202020
222C0D0A2220202020202020202E20202020202020202020202E202E202E202E
202020202020202020222C0D0A22202020202020202020202020202020202020
202020202E202E202E202020202020202020222C0D0A22202020202020202020
20202020202020202020202E202E202E202E202020202020202020222C0D0A22
20202B202B202B202B2020202020202020202020202020202020202020202020
20202020222C0D0A222B2040202320242040202B202B202B202B202B202B202B
20202020202020202020202020222C0D0A222B202320252026202A202A202A20
2A202A202A202A202A202E2020202020202020202020222C0D0A222B203D2026
202B202D202D203B203E202C202C20272027202C202E202E202E202020202022
2C0D0A222B202620292021207E207E207B205D205E202F2028205F203A203C20
5B207D2020202020222C0D0A222B2026207C2031203220332034203220352036
2037203820392030206120202020202020222C0D0A222B206220632064206520
66206720682069206A206B206C2039206D206E20202020202020222C0D0A222B
206F207020712072207220732074207520762077207820792061202020202020
202020222C0D0A222B2027207A20412042204320442045206B20462047204820
49204A202020202020202020222C0D0A222B204B204C204D204E204F20502051
205220532054205520612020202020202020202020222C0D0A22562057205820
59205A20592060206120202E2E2E2B2E402E232E20202020202020202020222C
0D0A222020202020202020202020202020202020202020202020202020202020
20202020202020222C0D0A222020202020202020202020202020202020202020
20202020202020202020202020202020227D3B0D0A
}
NumGlyphs = 0
OnClick = BitBtn1Click
TabOrder = 0
Left = 8
Height = 24
Top = 11
Width = 72
end
object DirectoryEdit: TDirectoryEdit
ButtonWidth = 23
NumGlyphs = 1
ParentColor = False
TabOrder = 1
TabOrder = 1
Left = 152
Height = 23
Top = 11
Width = 112
end
object btStart: TBitBtn
BorderSpacing.InnerBorder = 2
Caption = 'Start'
NumGlyphs = 0
OnClick = BitBtn2Click
TabOrder = 2
Left = 352
Height = 22
Top = 11
Width = 43
end
object cbOutput: TComboBox
MaxLength = 0
Style = csDropDownList
TabOrder = 3
Left = 295
Height = 21
Top = 11
Width = 49
end
object FileIn: TACSFileIn
EndSample = -1
EndSample = -1
left = 32
top = 8
end
object FileOut: TACSFileOut
Input = FileIn
OnDone = FileOutDone
OnProgress = FileOutProgress
left = 32
top = 368
end
end

View File

@ -0,0 +1,71 @@
{ Dies ist eine automatisch erzeugte Lazarus-Ressourcendatei }
LazarusResources.Add('TForm1','FORMDATA',[
'TPF0'#6'TForm1'#5'Form1'#13'ActiveControl'#7#7'BitBtn1'#11'BorderStyle'#7#12
+'bsToolWindow'#7'Caption'#6#13'Fileconverter'#12'ClientHeight'#2'>'#11'Clien'
+'tWidth'#3#145#1#8'OnCreate'#7#10'FormCreate'#13'PixelsPerInch'#2'`'#18'Horz'
+'ScrollBar.Page'#3#144#1#18'VertScrollBar.Page'#2'='#4'Left'#3#184#1#6'Heigh'
+'t'#2'>'#3'Top'#3'5'#1#5'Width'#3#145#1#0#6'TLabel'#6'Label1'#7'Caption'#6#10
+'Output Dir'#5'Color'#7#6'clNone'#11'ParentColor'#8#4'Left'#2'`'#6'Height'#2
+#14#3'Top'#2#16#5'Width'#2'3'#0#0#12'TProgressBar'#10'pbProgress'#3'Max'#2'd'
+#4'Left'#2#8#6'Height'#2#16#3'Top'#2'('#5'Width'#3#128#1#0#0#7'TBitBtn'#7'Bi'
+'tBtn1'#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#4'Open'#10'Glyph.Data'
+#10#149#9#0#0#145#9#0#0'/* XPM */'#13#10'static char * btn_openfile_xpm[] = '
+'{'#13#10'"18 18 97 2",'#13#10'" '#9'c None",'#13#10'". '#9'c #000000",'#13
+#10'"+ '#9'c #4E331B",'#13#10'"@ '#9'c #E5A566",'#13#10'"# '#9'c #FED39A",'
+#13#10'"$ '#9'c #FEC585",'#13#10'"% '#9'c #FDC587",'#13#10'"& '#9'c #FEC282"'
+','#13#10'"* '#9'c #F8AC62",'#13#10'"= '#9'c #FEC88A",'#13#10'"- '#9'c #5350'
+'4D",'#13#10'"; '#9'c #55524F",'#13#10'"> '#9'c #5C5A57",'#13#10'", '#9'c #5'
+'4514E",'#13#10'"'' '#9'c #565350",'#13#10'") '#9'c #C4864E",'#13#10'"! '#9
+'c #524F4C",'#13#10'"~ '#9'c #F5F5F5",'#13#10'"{ '#9'c #ECECEC",'#13#10'"] '
+#9'c #E4E4E4",'#13#10'"^ '#9'c #DCDCDC",'#13#10'"/ '#9'c #D4D4D4",'#13#10'"('
+' '#9'c #CBCBCB",'#13#10'"_ '#9'c #C4C4C4",'#13#10'": '#9'c #BCBCBC",'#13#10
+'"< '#9'c #B5B5B5",'#13#10'"[ '#9'c #B3B3B3",'#13#10'"} '#9'c #303030",'#13
+#10'"| '#9'c #4A3119",'#13#10'"1 '#9'c #DBDBDB",'#13#10'"2 '#9'c #DFDFDE",'
+#13#10'"3 '#9'c #E8E8E7",'#13#10'"4 '#9'c #E6E6E4",'#13#10'"5 '#9'c #D2D2D1"'
+','#13#10'"6 '#9'c #C7C7C6",'#13#10'"7 '#9'c #BABAB9",'#13#10'"8 '#9'c #ADAD'
+'AC",'#13#10'"9 '#9'c #A0A09F",'#13#10'"0 '#9'c #949493",'#13#10'"a '#9'c #4'
+'94948",'#13#10'"b '#9'c #B77D44",'#13#10'"c '#9'c #53514E",'#13#10'"d '#9'c'
+' #DADADA",'#13#10'"e '#9'c #DBDBDA",'#13#10'"f '#9'c #E1E1E0",'#13#10'"g '#9
+'c #DDDDDC",'#13#10'"h '#9'c #D6D6D5",'#13#10'"i '#9'c #CBCBCA",'#13#10'"j '
+#9'c #C1C1C0",'#13#10'"k '#9'c #B6B6B5",'#13#10'"l '#9'c #A9A9A8",'#13#10'"m'
+' '#9'c #686867",'#13#10'"n '#9'c #222221",'#13#10'"o '#9'c #493018",'#13#10
+'"p '#9'c #CDCDCD",'#13#10'"q '#9'c #CACAC9",'#13#10'"r '#9'c #D5D5D4",'#13
+#10'"s '#9'c #D2D2D0",'#13#10'"t '#9'c #CCCCCB",'#13#10'"u '#9'c #C2C2C1",'
+#13#10'"v '#9'c #B9B9B8",'#13#10'"w '#9'c #AFAFAE",'#13#10'"x '#9'c #A2A2A1"'
+','#13#10'"y '#9'c #959594",'#13#10'"z '#9'c #CECECE",'#13#10'"A '#9'c #BEBE'
+'BC",'#13#10'"B '#9'c #C4C4C2",'#13#10'"C '#9'c #C6C6C5",'#13#10'"D '#9'c #C'
+'3C3C2",'#13#10'"E '#9'c #BFBFBE",'#13#10'"F '#9'c #AEAEAD",'#13#10'"G '#9'c'
+' #A5A5A4",'#13#10'"H '#9'c #9E9E9D",'#13#10'"I '#9'c #6F6F6E",'#13#10'"J '#9
+'c #121212",'#13#10'"K '#9'c #BDBDBD",'#13#10'"L '#9'c #A6A6A5",'#13#10'"M '
+#9'c #AAAAA8",'#13#10'"N '#9'c #ADADAB",'#13#10'"O '#9'c #AEAEAC",'#13#10'"P'
+' '#9'c #ABABAA",'#13#10'"Q '#9'c #A7A7A6",'#13#10'"R '#9'c #A1A1A0",'#13#10
+'"S '#9'c #9A9A99",'#13#10'"T '#9'c #949492",'#13#10'"U '#9'c #8D8D8B",'#13
+#10'"V '#9'c #232323",'#13#10'"W '#9'c #4A4A4A",'#13#10'"X '#9'c #4A4A49",'
+#13#10'"Y '#9'c #4C4C4B",'#13#10'"Z '#9'c #4C4C4C",'#13#10'"` '#9'c #4B4B4A"'
+','#13#10'" .'#9'c #464646",'#13#10'"..'#9'c #434343",'#13#10'"+.'#9'c #4141'
+'40",'#13#10'"@.'#9'c #343433",'#13#10'"#.'#9'c #1F1F1E",'#13#10'" '
+' . . . . ",'#13#10'" . . . . . . . ",'
+#13#10'" . . . . . ",'#13#10'" '
+' . . . ",'#13#10'" . . . . ",'#13#10'" '
+'+ + + + ",'#13#10'"+ @ # $ @ + + + + + + + '
+' ",'#13#10'"+ # % & * * * * * * * * . ",'#13#10'"+ = & + - -'
+' ; > , , '' '' , . . . ",'#13#10'"+ & ) ! ~ ~ { ] ^ / ( _ : < [ } "'
+','#13#10'"+ & | 1 2 3 4 2 5 6 7 8 9 0 a ",'#13#10'"+ b c d e f g h i '
+'j k l 9 m n ",'#13#10'"+ o p q r r s t u v w x y a ",'#13#10
+'"+ '' z A B C D E k F G H I J ",'#13#10'"+ K L M N O P Q R S T U a '
+' ",'#13#10'"V W X Y Z Y ` a ...+.@.#. ",'#13#10'" '
+' ",'#13#10'" '
+' "};'#13#10#9'NumGlyphs'#2#0#7'OnClick'#7#12'BitBtn1Click'#8'TabOrder'#2#0#4
+'Left'#2#8#6'Height'#2#24#3'Top'#2#11#5'Width'#2'H'#0#0#14'TDirectoryEdit'#13
+'DirectoryEdit'#11'ButtonWidth'#2#23#9'NumGlyphs'#2#1#11'ParentColor'#8#8'Ta'
+'bOrder'#2#1#8'TabOrder'#2#1#4'Left'#3#152#0#6'Height'#2#23#3'Top'#2#11#5'Wi'
+'dth'#2'p'#0#0#7'TBitBtn'#7'btStart'#25'BorderSpacing.InnerBorder'#2#2#7'Cap'
+'tion'#6#5'Start'#9'NumGlyphs'#2#0#7'OnClick'#7#12'BitBtn2Click'#8'TabOrder'
+#2#2#4'Left'#3'`'#1#6'Height'#2#22#3'Top'#2#11#5'Width'#2'+'#0#0#9'TComboBox'
+#8'cbOutput'#9'MaxLength'#2#0#5'Style'#7#14'csDropDownList'#8'TabOrder'#2#3#4
+'Left'#3''''#1#6'Height'#2#21#3'Top'#2#11#5'Width'#2'1'#0#0#10'TACSFileIn'#6
,'FileIn'#9'EndSample'#2#255#9'EndSample'#2#255#4'left'#2' '#3'top'#2#8#0#0#11
+'TACSFileOut'#7'FileOut'#5'Input'#7#6'FileIn'#6'OnDone'#7#11'FileOutDone'#10
+'OnProgress'#7#15'FileOutProgress'#4'left'#2' '#3'top'#3'p'#1#0#0#0
]);

View File

@ -0,0 +1,95 @@
unit uMain;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ComCtrls, Buttons, EditBtn, ACS_File, StdCtrls
,ACS_AllFormats,ACS_Classes;
type
{ TForm1 }
TForm1 = class(TForm)
BitBtn1: TBitBtn;
btStart: TBitBtn;
cbOutput: TComboBox;
DirectoryEdit: TDirectoryEdit;
FileIn: TACSFileIn;
FileOut: TACSFileOut;
Label1: TLabel;
pbProgress: TProgressBar;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FileOutDone(Sender: TComponent);
procedure FileOutProgress(Sender: TComponent);
procedure FormCreate(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
{ TForm1 }
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
FileIn.Open;
DirectoryEdit.Text := ExtractFileDir(FileIn.FileName);
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
var
newfilename : string;
begin
newfilename := ExtractFileName(FileIn.FileName);
if newfilename = '' then
begin
ShowMessage('You must open an file first !');
exit;
end;
newfilename := copy(newfilename,0,length(newfilename)-length(ExtractFileExt(newfilename)));
if DirectoryEdit.Directory = '' then
begin
ShowMessage('You must select an directory first !');
exit;
end;
FileOut.FileName := DirectoryEdit.Directory+DirectorySeparator+newfilename+'.'+cbOutput.Text;
btStart.Enabled := False;
FileOut.Run;
end;
procedure TForm1.FileOutDone(Sender: TComponent);
begin
btStart.Enabled := True;
pbProgress.Position := 0;
end;
procedure TForm1.FileOutProgress(Sender: TComponent);
begin
pbProgress.Position := round(FileOut.Progress);
Update;
Application.Processmessages;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
i : Integer;
begin
for i := 0 to Fileformats.Count-1 do
if TACSFileFormat(Fileformats[i]).FileClass.InheritsFrom(TACSCustomFileOut) then
cbOutput.Items.Add(TACSFileFormat(Fileformats[i]).Extension);
end;
initialization
{$I umain.lrs}
end.

View File

@ -0,0 +1,278 @@
/* XPM */
static char *Pixmap[] = {
"18 18 256 3",
"000 c black",
"001 c #010101",
"002 c #020202",
"003 c #040404",
"004 c #070707",
"005 c #090909",
"006 c #0C0C0C",
"007 c #0E0E0E",
"008 c #111111",
"009 c #131312",
"010 c gray8",
"011 c #161616",
"012 c #191919",
"013 c #1B1B1B",
"014 c gray11",
"015 c gray13",
"016 c gray15",
"017 c #282827",
"018 c gray16",
"019 c gray18",
"020 c #323231",
"021 c #353534",
"022 c gray22",
"023 c #393939",
"024 c #40403F",
"025 c gray25",
"026 c gray26",
"027 c #484847",
"028 c #515150",
"029 c dimgray",
"030 c #5B5B5B",
"031 c #5C5C5B",
"032 c #5E5E5D",
"033 c #60605F",
"034 c #636362",
"035 c #646463",
"036 c #656564",
"037 c #666665",
"038 c #676766",
"039 c #686867",
"040 c #6C6C6B",
"041 c #70706F",
"042 c #757574",
"043 c #7E7E7D",
"044 c #DFDFDE",
"045 c black",
"046 c black",
"047 c black",
"048 c black",
"049 c black",
"050 c black",
"051 c black",
"052 c black",
"053 c black",
"054 c black",
"055 c black",
"056 c black",
"057 c black",
"058 c black",
"059 c black",
"060 c black",
"061 c black",
"062 c black",
"063 c black",
"064 c black",
"065 c black",
"066 c black",
"067 c black",
"068 c black",
"069 c black",
"070 c black",
"071 c black",
"072 c black",
"073 c black",
"074 c black",
"075 c black",
"076 c black",
"077 c black",
"078 c black",
"079 c black",
"080 c black",
"081 c black",
"082 c black",
"083 c black",
"084 c black",
"085 c black",
"086 c black",
"087 c black",
"088 c black",
"089 c black",
"090 c black",
"091 c black",
"092 c black",
"093 c black",
"094 c black",
"095 c black",
"096 c black",
"097 c black",
"098 c black",
"099 c black",
"100 c black",
"101 c black",
"102 c black",
"103 c black",
"104 c black",
"105 c black",
"106 c black",
"107 c black",
"108 c black",
"109 c black",
"110 c black",
"111 c black",
"112 c black",
"113 c black",
"114 c black",
"115 c black",
"116 c black",
"117 c black",
"118 c black",
"119 c black",
"120 c black",
"121 c black",
"122 c black",
"123 c black",
"124 c black",
"125 c black",
"126 c black",
"127 c black",
"128 c black",
"129 c black",
"130 c black",
"131 c black",
"132 c black",
"133 c black",
"134 c black",
"135 c black",
"136 c black",
"137 c black",
"138 c black",
"139 c black",
"140 c black",
"141 c black",
"142 c black",
"143 c black",
"144 c black",
"145 c black",
"146 c black",
"147 c black",
"148 c black",
"149 c black",
"150 c black",
"151 c black",
"152 c black",
"153 c black",
"154 c black",
"155 c black",
"156 c black",
"157 c black",
"158 c black",
"159 c black",
"160 c black",
"161 c black",
"162 c black",
"163 c black",
"164 c black",
"165 c black",
"166 c black",
"167 c black",
"168 c black",
"169 c black",
"170 c black",
"171 c black",
"172 c black",
"173 c black",
"174 c black",
"175 c black",
"176 c black",
"177 c black",
"178 c black",
"179 c black",
"180 c black",
"181 c black",
"182 c black",
"183 c black",
"184 c black",
"185 c black",
"186 c black",
"187 c black",
"188 c black",
"189 c black",
"190 c black",
"191 c black",
"192 c black",
"193 c black",
"194 c black",
"195 c black",
"196 c black",
"197 c black",
"198 c black",
"199 c black",
"200 c black",
"201 c black",
"202 c black",
"203 c black",
"204 c black",
"205 c black",
"206 c black",
"207 c black",
"208 c black",
"209 c black",
"210 c black",
"211 c black",
"212 c black",
"213 c black",
"214 c black",
"215 c black",
"216 c black",
"217 c black",
"218 c black",
"219 c black",
"220 c black",
"221 c black",
"222 c black",
"223 c black",
"224 c black",
"225 c black",
"226 c black",
"227 c black",
"228 c black",
"229 c black",
"230 c black",
"231 c black",
"232 c black",
"233 c black",
"234 c black",
"235 c black",
"236 c black",
"237 c black",
"238 c black",
"239 c black",
"240 c black",
"241 c black",
"242 c black",
"243 c black",
"244 c black",
"245 c black",
"246 c black",
"247 c black",
"248 c black",
"249 c black",
"250 c black",
"251 c black",
"252 c black",
"253 c black",
"254 c black",
"255 c black",
"000000000000000000000000000000000000000000000000000000",
"000000016039039039039032006000000000000000000000000000",
"000000016043044044041039037013000000000000000000000000",
"000000016043044044041024039039019000000000000000000000",
"000000016043044044041012011036039027002000000000000000",
"000000016043044044043012000005031039030005000000000000",
"000000016043044044043016000000002027039036011000000000",
"000000016043044044043016000000000000020039039018000000",
"000000016043044044043016000000000000000014038039026001",
"000000016043044044043016000000000000000009034039028003",
"000000016043044044043016000000000000015039039023000000",
"000000016043044044043016000000000022039039015000000000",
"000000016042044044040012000003028039034008000000000000",
"000000016043044044041012007033039029004000000000000000",
"000000016043044044041021038039025001000000000000000000",
"000000016043044044041039039017000000000000000000000000",
"000000016039039039039035010000000000000000000000000000",
"000000000000000000000000000000000000000000000000000000"
};

View File

@ -0,0 +1,36 @@
/* XPM */
static char *Pixmap[] = {
"16 16 16 2",
"00 c #080810",
"01 c #181821",
"02 c gray16",
"03 c #D6D6CE",
"04 c gray100",
"05 c gray100",
"06 c gray100",
"07 c gray100",
"08 c gray100",
"09 c gray100",
"10 c gray100",
"11 c gray100",
"12 c gray100",
"13 c gray100",
"14 c gray100",
"15 c gray100",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303000303030303030303",
"03030303030300010003030303030303",
"03030303030001010100030303030303",
"03030303000101010101000303030303",
"03030300010101010101010003030303",
"03030202020202020202020202030303",
"03030303030303030303030303030303",
"03030000000000000000000000030303",
"03030001010101010101010102030303",
"03030202020202020202020202030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303"
};

View File

@ -0,0 +1,36 @@
/* XPM */
static char *Pixmap[] = {
"16 16 16 2",
"00 c #080810",
"01 c #181821",
"02 c gray16",
"03 c #D6D6CE",
"04 c gray100",
"05 c gray100",
"06 c gray100",
"07 c gray100",
"08 c gray100",
"09 c gray100",
"10 c gray100",
"11 c gray100",
"12 c gray100",
"13 c gray100",
"14 c gray100",
"15 c gray100",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030000000003030300000000030303",
"03030001010203030300010102030303",
"03030001010203030300010102030303",
"03030001010203030300010102030303",
"03030001010203030300010102030303",
"03030001010203030300010102030303",
"03030001010203030300010102030303",
"03030001010203030300010102030303",
"03030001010203030300010102030303",
"03030202020203030302020202030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303"
};

View File

@ -0,0 +1,276 @@
/* XPM */
static char *Pixmap[] = {
"16 16 256 3",
"000 c #0C0F12",
"001 c #1B1D20",
"002 c #2A2D2D",
"003 c #D4D0C8",
"004 c black",
"005 c black",
"006 c black",
"007 c black",
"008 c black",
"009 c black",
"010 c black",
"011 c black",
"012 c black",
"013 c black",
"014 c black",
"015 c black",
"016 c black",
"017 c black",
"018 c black",
"019 c black",
"020 c black",
"021 c black",
"022 c black",
"023 c black",
"024 c black",
"025 c black",
"026 c black",
"027 c black",
"028 c black",
"029 c black",
"030 c black",
"031 c black",
"032 c black",
"033 c black",
"034 c black",
"035 c black",
"036 c black",
"037 c black",
"038 c black",
"039 c black",
"040 c black",
"041 c black",
"042 c black",
"043 c black",
"044 c black",
"045 c black",
"046 c black",
"047 c black",
"048 c black",
"049 c black",
"050 c black",
"051 c black",
"052 c black",
"053 c black",
"054 c black",
"055 c black",
"056 c black",
"057 c black",
"058 c black",
"059 c black",
"060 c black",
"061 c black",
"062 c black",
"063 c black",
"064 c black",
"065 c black",
"066 c black",
"067 c black",
"068 c black",
"069 c black",
"070 c black",
"071 c black",
"072 c black",
"073 c black",
"074 c black",
"075 c black",
"076 c black",
"077 c black",
"078 c black",
"079 c black",
"080 c black",
"081 c black",
"082 c black",
"083 c black",
"084 c black",
"085 c black",
"086 c black",
"087 c black",
"088 c black",
"089 c black",
"090 c black",
"091 c black",
"092 c black",
"093 c black",
"094 c black",
"095 c black",
"096 c black",
"097 c black",
"098 c black",
"099 c black",
"100 c black",
"101 c black",
"102 c black",
"103 c black",
"104 c black",
"105 c black",
"106 c black",
"107 c black",
"108 c black",
"109 c black",
"110 c black",
"111 c black",
"112 c black",
"113 c black",
"114 c black",
"115 c black",
"116 c black",
"117 c black",
"118 c black",
"119 c black",
"120 c black",
"121 c black",
"122 c black",
"123 c black",
"124 c black",
"125 c black",
"126 c black",
"127 c black",
"128 c black",
"129 c black",
"130 c black",
"131 c black",
"132 c black",
"133 c black",
"134 c black",
"135 c black",
"136 c black",
"137 c black",
"138 c black",
"139 c black",
"140 c black",
"141 c black",
"142 c black",
"143 c black",
"144 c black",
"145 c black",
"146 c black",
"147 c black",
"148 c black",
"149 c black",
"150 c black",
"151 c black",
"152 c black",
"153 c black",
"154 c black",
"155 c black",
"156 c black",
"157 c black",
"158 c black",
"159 c black",
"160 c black",
"161 c black",
"162 c black",
"163 c black",
"164 c black",
"165 c black",
"166 c black",
"167 c black",
"168 c black",
"169 c black",
"170 c black",
"171 c black",
"172 c black",
"173 c black",
"174 c black",
"175 c black",
"176 c black",
"177 c black",
"178 c black",
"179 c black",
"180 c black",
"181 c black",
"182 c black",
"183 c black",
"184 c black",
"185 c black",
"186 c black",
"187 c black",
"188 c black",
"189 c black",
"190 c black",
"191 c black",
"192 c black",
"193 c black",
"194 c black",
"195 c black",
"196 c black",
"197 c black",
"198 c black",
"199 c black",
"200 c black",
"201 c black",
"202 c black",
"203 c black",
"204 c black",
"205 c black",
"206 c black",
"207 c black",
"208 c black",
"209 c black",
"210 c black",
"211 c black",
"212 c black",
"213 c black",
"214 c black",
"215 c black",
"216 c black",
"217 c black",
"218 c black",
"219 c black",
"220 c black",
"221 c black",
"222 c black",
"223 c black",
"224 c black",
"225 c black",
"226 c black",
"227 c black",
"228 c black",
"229 c black",
"230 c black",
"231 c black",
"232 c black",
"233 c black",
"234 c black",
"235 c black",
"236 c black",
"237 c black",
"238 c black",
"239 c black",
"240 c black",
"241 c black",
"242 c black",
"243 c black",
"244 c black",
"245 c black",
"246 c black",
"247 c black",
"248 c black",
"249 c black",
"250 c black",
"251 c black",
"252 c black",
"253 c black",
"254 c black",
"255 c black",
"003003003003003003003003003003003003003003003003",
"003003003003003003003003003003003003003003003003",
"003003003003003003003003003003003003003003003003",
"003003003000000003003003003003003003003003003003",
"003003003000001000000003003003003003003003003003",
"003003003000001001001000000003003003003003003003",
"003003003000001001001001001000000003003003003003",
"003003003000001001001001001001001000000003003003",
"003003003000001001001001001001001002002003003003",
"003003003000001001001001001002002003003003003003",
"003003003000001001001002002003003003003003003003",
"003003003000001002002003003003003003003003003003",
"003003003002002003003003003003003003003003003003",
"003003003003003003003003003003003003003003003003",
"003003003003003003003003003003003003003003003003",
"003003003003003003003003003003003003003003003003"
};

View File

@ -0,0 +1,36 @@
/* XPM */
static char *Pixmap[] = {
"16 16 16 2",
"00 c #080810",
"01 c #181821",
"02 c gray16",
"03 c #D6D6CE",
"04 c gray100",
"05 c gray100",
"06 c gray100",
"07 c gray100",
"08 c gray100",
"09 c gray100",
"10 c gray100",
"11 c gray100",
"12 c gray100",
"13 c gray100",
"14 c gray100",
"15 c gray100",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030300000000000000000000030303",
"03030300010101010101010102030303",
"03030300010101010101010102030303",
"03030300010101010101010102030303",
"03030300010101010101010102030303",
"03030300010101010101010102030303",
"03030300010101010101010102030303",
"03030300010101010101010102030303",
"03030300010101010101010102030303",
"03030302020202020202020202030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303"
};

View File

@ -0,0 +1,36 @@
/* XPM */
static char *Pixmap[] = {
"16 16 16 2",
"00 c #080810",
"01 c #181821",
"02 c gray16",
"03 c #D6D6CE",
"04 c gray100",
"05 c gray100",
"06 c gray100",
"07 c gray100",
"08 c gray100",
"09 c gray100",
"10 c gray100",
"11 c gray100",
"12 c gray100",
"13 c gray100",
"14 c gray100",
"15 c gray100",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030300000003030303030000030303",
"03030300010203030303000102030303",
"03030300010203030300010102030303",
"03030300010203030001010102030303",
"03030300010203000101010102030303",
"03030300010203020101010102030303",
"03030300010203030201010102030303",
"03030300010203030302010102030303",
"03030300010203030303020102030303",
"03030302020203030303030202030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303"
};

View File

@ -0,0 +1,36 @@
/* XPM */
static char *Pixmap[] = {
"16 16 16 2",
"00 c #080810",
"01 c #181821",
"02 c gray16",
"03 c #D6D6CE",
"04 c gray100",
"05 c gray100",
"06 c gray100",
"07 c gray100",
"08 c gray100",
"09 c gray100",
"10 c gray100",
"11 c gray100",
"12 c gray100",
"13 c gray100",
"14 c gray100",
"15 c gray100",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030300000303030303000000030303",
"03030302010003030303020100030303",
"03030302010100030303020100030303",
"03030302010101000303020100030303",
"03030302010101010003020100030303",
"03030302010101010203020100030303",
"03030302010101020303020100030303",
"03030302010102030303020100030303",
"03030302010203030303020100030303",
"03030302020303030303020202030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303",
"03030303030303030303030303030303"
};

View File

@ -0,0 +1,250 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<PathDelim Value="/"/>
<Version Value="5"/>
<General>
<MainUnit Value="0"/>
<IconPath Value="./"/>
<TargetFileExt Value=".exe"/>
<ActiveEditorIndexAtStart Value="0"/>
</General>
<LazDoc Paths=""/>
<Units Count="17">
<Unit0>
<Filename Value="linerecord.lpr"/>
<IsPartOfProject Value="True"/>
<UnitName Value="linerecord"/>
<UsageCount Value="21"/>
</Unit0>
<Unit1>
<CursorPos X="24" Y="71"/>
<EditorIndex Value="0"/>
<Filename Value="umain.pas"/>
<ComponentName Value="Form1"/>
<IsPartOfProject Value="True"/>
<Loaded Value="True"/>
<ResourceFilename Value="umain.lrs"/>
<TopLine Value="24"/>
<UnitName Value="umain"/>
<UsageCount Value="21"/>
</Unit1>
<Unit2>
<CursorPos X="15" Y="129"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/acs_file.pas"/>
<TopLine Value="129"/>
<UnitName Value="acs_file"/>
<UsageCount Value="10"/>
</Unit2>
<Unit3>
<CursorPos X="3" Y="153"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/acs_classes.pas"/>
<TopLine Value="134"/>
<UnitName Value="acs_classes"/>
<UsageCount Value="10"/>
</Unit3>
<Unit4>
<CursorPos X="15" Y="169"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/acs_mixer.pas"/>
<TopLine Value="153"/>
<UnitName Value="acs_mixer"/>
<UsageCount Value="10"/>
</Unit4>
<Unit5>
<CursorPos X="3" Y="389"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/windows/acs_mixer.inc"/>
<TopLine Value="372"/>
<UsageCount Value="10"/>
</Unit5>
<Unit6>
<CursorPos X="1" Y="2235"/>
<Filename Value="D:/lazarus/lcl/include/control.inc"/>
<TopLine Value="2219"/>
<UsageCount Value="10"/>
</Unit6>
<Unit7>
<CursorPos X="1" Y="645"/>
<Filename Value="D:/lazarus/lcl/EditBtn.pas"/>
<TopLine Value="629"/>
<UnitName Value="EditBtn"/>
<UsageCount Value="10"/>
</Unit7>
<Unit8>
<CursorPos X="1" Y="1379"/>
<Filename Value="D:/LKomponenten/acs/Src/fileformats/acs_wave.pas"/>
<TopLine Value="1363"/>
<UnitName Value="acs_wave"/>
<UsageCount Value="10"/>
</Unit8>
<Unit9>
<CursorPos X="27" Y="1335"/>
<Filename Value="D:/acs tmp/Src/Common/ACS_Wave.pas"/>
<TopLine Value="1326"/>
<UnitName Value="ACS_Wave"/>
<UsageCount Value="10"/>
</Unit9>
<Unit10>
<CursorPos X="1" Y="681"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/acs_audio.pas"/>
<TopLine Value="665"/>
<UnitName Value="acs_audio"/>
<UsageCount Value="10"/>
</Unit10>
<Unit11>
<CursorPos X="28" Y="377"/>
<Filename Value="D:/LKomponenten/acs/Src/drivers/windows/ACS_Audio.inc"/>
<TopLine Value="361"/>
<UsageCount Value="10"/>
</Unit11>
<Unit12>
<CursorPos X="14" Y="125"/>
<Filename Value="D:/LKomponenten/acs/Src/drivers/ACS_StdAudio.pas"/>
<TopLine Value="109"/>
<UnitName Value="acs_stdaudio"/>
<UsageCount Value="10"/>
</Unit12>
<Unit13>
<CursorPos X="1" Y="391"/>
<Filename Value="D:/LKomponenten/acs/Src/drivers/ACS_DXAudio.pas"/>
<TopLine Value="375"/>
<UnitName Value="acs_dxaudio"/>
<UsageCount Value="10"/>
</Unit13>
<Unit14>
<CursorPos X="1" Y="2456"/>
<Filename Value="D:/fpc/packages/extra/winunits/mmsystem.pp"/>
<TopLine Value="2440"/>
<UnitName Value="mmsystem"/>
<UsageCount Value="10"/>
</Unit14>
<Unit15>
<CursorPos X="18" Y="205"/>
<EditorIndex Value="2"/>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/acs_mixer.pas"/>
<Loaded Value="True"/>
<TopLine Value="197"/>
<UnitName Value="acs_mixer"/>
<UsageCount Value="10"/>
</Unit15>
<Unit16>
<CursorPos X="18" Y="99"/>
<EditorIndex Value="1"/>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Loaded Value="True"/>
<TopLine Value="152"/>
<UsageCount Value="10"/>
</Unit16>
</Units>
<PublishOptions>
<Version Value="2"/>
<IgnoreBinaries Value="False"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
<Display Use="True" Value=":1"/>
</local>
</RunParams>
<RequiredPackages Count="2">
<Item1>
<PackageName Value="LCL"/>
</Item1>
<Item2>
<PackageName Value="laz_acs"/>
</Item2>
</RequiredPackages>
<JumpHistory Count="12" HistoryIndex="11">
<Position1>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="163" Column="1" TopLine="136"/>
</Position1>
<Position2>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="164" Column="1" TopLine="137"/>
</Position2>
<Position3>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="163" Column="1" TopLine="136"/>
</Position3>
<Position4>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="164" Column="1" TopLine="137"/>
</Position4>
<Position5>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="163" Column="1" TopLine="136"/>
</Position5>
<Position6>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="164" Column="1" TopLine="137"/>
</Position6>
<Position7>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="163" Column="1" TopLine="136"/>
</Position7>
<Position8>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="164" Column="1" TopLine="137"/>
</Position8>
<Position9>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="163" Column="1" TopLine="136"/>
</Position9>
<Position10>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/linux/acs_mixer.inc"/>
<Caret Line="166" Column="1" TopLine="139"/>
</Position10>
<Position11>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/acs_mixer.pas"/>
<Caret Line="250" Column="3" TopLine="200"/>
</Position11>
<Position12>
<Filename Value="/windows/C/src/LKomponenten/acs/Src/classes/acs_mixer.pas"/>
<Caret Line="249" Column="40" TopLine="201"/>
</Position12>
</JumpHistory>
</ProjectOptions>
<CompilerOptions>
<Version Value="5"/>
<SearchPaths>
<SrcPath Value="$(LazarusDir)/lcl/;$(LazarusDir)/lcl/interfaces/$(LCLWidgetType)/"/>
</SearchPaths>
<CodeGeneration>
<Generate Value="Faster"/>
</CodeGeneration>
<Linking>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
<Other>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
<Debugging>
<BreakPoints Count="3">
<Item1>
<Source Value="D:/LKomponenten/acs/Demos/Ripper/umain.pas"/>
<Line Value="68"/>
</Item1>
<Item2>
<Source Value="D:/LKomponenten/acs/Src/fileformats/acs_wave.pas"/>
<Line Value="1379"/>
</Item2>
<Item3>
<Source Value="D:/LKomponenten/acs/Src/drivers/windows/ACS_Audio.inc"/>
<Line Value="341"/>
</Item3>
</BreakPoints>
<Watches Count="1">
<Item1>
<Expression Value="newfilename"/>
</Item1>
</Watches>
</Debugging>
</CONFIG>

View File

@ -0,0 +1,83 @@
object Form1: TForm1
ActiveControl = bRecord
BorderStyle = bsToolWindow
Caption = 'Audio Record'
ClientHeight = 43
ClientWidth = 308
OnCreate = FormCreate
PixelsPerInch = 90
HorzScrollBar.Page = 307
VertScrollBar.Page = 42
Left = 347
Height = 43
Top = 208
Width = 308
object Label1: TLabel
Caption = 'Source'
Color = clNone
ParentColor = False
Left = 60
Height = 13
Width = 41
end
object bRecord: TBitBtn
BorderSpacing.InnerBorder = 2
Caption = 'Record'
NumGlyphs = 0
OnClick = bRecordClick
TabOrder = 0
Left = 184
Height = 26
Top = 12
Width = 60
end
object cbRecordSource: TComboBox
MaxLength = 0
OnChange = cbRecordSourceChange
TabOrder = 1
Left = 60
Height = 21
Top = 16
Width = 116
end
object bStop: TBitBtn
BorderSpacing.InnerBorder = 2
Caption = 'Stop'
NumGlyphs = 0
OnClick = bStopClick
TabOrder = 2
Left = 248
Height = 26
Top = 12
Width = 56
end
object bOpen: TBitBtn
BorderSpacing.InnerBorder = 2
Caption = 'Open'
NumGlyphs = 0
OnClick = bOpenClick
TabOrder = 3
Left = 4
Height = 26
Top = 12
Width = 51
end
object FileOut1: TACSFileOut
Input = AudioIn1
left = 4
top = 268
end
object AudioIn1: TACSAudioIn
Driver = 'Wavemapper'
InBitsPerSample = 8
InChannels = 1
InSampleRate = 8000
left = 4
top = 236
end
object Mixer1: TACSMixer
MixerName = 'Realtek ALC655 rev 0'
left = 4
top = 204
end
end

View File

@ -0,0 +1,25 @@
{ Dies ist eine automatisch erzeugte Lazarus-Ressourcendatei }
LazarusResources.Add('TForm1','FORMDATA',[
'TPF0'#6'TForm1'#5'Form1'#13'ActiveControl'#7#7'bRecord'#11'BorderStyle'#7#12
+'bsToolWindow'#7'Caption'#6#12'Audio Record'#12'ClientHeight'#2'+'#11'Client'
+'Width'#3'4'#1#8'OnCreate'#7#10'FormCreate'#13'PixelsPerInch'#2'Z'#18'HorzSc'
+'rollBar.Page'#3'3'#1#18'VertScrollBar.Page'#2'*'#4'Left'#3'['#1#6'Height'#2
+'+'#3'Top'#3#208#0#5'Width'#3'4'#1#0#6'TLabel'#6'Label1'#7'Caption'#6#6'Sour'
+'ce'#5'Color'#7#6'clNone'#11'ParentColor'#8#4'Left'#2'<'#6'Height'#2#13#5'Wi'
+'dth'#2')'#0#0#7'TBitBtn'#7'bRecord'#25'BorderSpacing.InnerBorder'#2#2#7'Cap'
+'tion'#6#6'Record'#9'NumGlyphs'#2#0#7'OnClick'#7#12'bRecordClick'#8'TabOrder'
+#2#0#4'Left'#3#184#0#6'Height'#2#26#3'Top'#2#12#5'Width'#2'<'#0#0#9'TComboBo'
+'x'#14'cbRecordSource'#9'MaxLength'#2#0#8'OnChange'#7#20'cbRecordSourceChang'
+'e'#8'TabOrder'#2#1#4'Left'#2'<'#6'Height'#2#21#3'Top'#2#16#5'Width'#2't'#0#0
+#7'TBitBtn'#5'bStop'#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#4'Stop'#9
+'NumGlyphs'#2#0#7'OnClick'#7#10'bStopClick'#8'TabOrder'#2#2#4'Left'#3#248#0#6
+'Height'#2#26#3'Top'#2#12#5'Width'#2'8'#0#0#7'TBitBtn'#5'bOpen'#25'BorderSpa'
+'cing.InnerBorder'#2#2#7'Caption'#6#4'Open'#9'NumGlyphs'#2#0#7'OnClick'#7#10
+'bOpenClick'#8'TabOrder'#2#3#4'Left'#2#4#6'Height'#2#26#3'Top'#2#12#5'Width'
+#2'3'#0#0#11'TACSFileOut'#8'FileOut1'#5'Input'#7#8'AudioIn1'#4'left'#2#4#3't'
+'op'#3#12#1#0#0#11'TACSAudioIn'#8'AudioIn1'#6'Driver'#6#10'Wavemapper'#15'In'
+'BitsPerSample'#2#8#10'InChannels'#2#1#12'InSampleRate'#3'@'#31#4'left'#2#4#3
+'top'#3#236#0#0#0#9'TACSMixer'#6'Mixer1'#9'MixerName'#6#20'Realtek ALC655 re'
+'v 0'#4'left'#2#4#3'top'#3#204#0#0#0#0
]);

View File

@ -0,0 +1,82 @@
unit umain;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, Buttons,
StdCtrls, acs_file, acs_audio, EditBtn,acs_classes,acs_mixer;
type
{ TForm1 }
TForm1 = class(TForm)
bOpen: TBitBtn;
Mixer1: TACSMixer;
AudioIn1: TACSAudioIn;
FileOut1: TACSFileOut;
bRecord: TBitBtn;
bStop: TBitBtn;
cbRecordSource: TComboBox;
Label1: TLabel;
procedure FormCreate(Sender: TObject);
procedure bOpenClick(Sender: TObject);
procedure bRecordClick(Sender: TObject);
procedure bStopClick(Sender: TObject);
procedure cbRecordSourceChange(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
{ TForm1 }
procedure TForm1.FormCreate(Sender: TObject);
var
i : Integer;
begin
for i := 0 to Mixer1.Channelcount-1 do
if Mixer1.IsRecordable(i) then
cbRecordSource.Items.Add(Mixer1.ChannelName[i]);
cbRecordSource.Text := Mixer1.ChannelName[Mixer1.RecordSource];
end;
procedure TForm1.bOpenClick(Sender: TObject);
begin
FileOut1.Open;
if FileExists(FileOut1.FileName) then
FileOut1.FileMode := foAppend;
end;
procedure TForm1.bRecordClick(Sender: TObject);
begin
FileOut1.Run;
end;
procedure TForm1.bStopClick(Sender: TObject);
begin
FileOut1.Stop;
end;
procedure TForm1.cbRecordSourceChange(Sender: TObject);
var
i : Integer;
begin
for i := 0 to Mixer1.Channelcount-1 do
if Mixer1.ChannelName[i] = cbRecordSource.Text then
Mixer1.RecordSource := i;
end;
initialization
{$I umain.lrs}
end.

View File

@ -0,0 +1,35 @@
-$A8
-$B-
-$C+
-$D+
-$E-
-$F-
-$G+
-$H+
-$I+
-$J-
-$K-
-$L+
-$M-
-$N+
-$O+
-$P+
-$Q-
-$R-
-$S-
-$T-
-$U-
-$V+
-$W-
-$X+
-$YD
-$Z1
-cg
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-H+
-W+
-M
-$M16384,1048576
-K$00400000
-LE"c:\programme\borland\delphi6\Projects\Bpl"
-LN"c:\programme\borland\delphi6\Projects\Bpl"

View File

@ -0,0 +1,87 @@
[FileVersion]
Version=6.0
[Compiler]
A=8
B=0
C=1
D=1
E=0
F=0
G=1
H=1
I=1
J=0
K=0
L=1
M=0
N=1
O=1
P=1
Q=0
R=0
S=0
T=0
U=0
V=1
W=0
X=1
Y=1
Z=1
ShowHints=1
ShowWarnings=1
UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
[Linker]
MapFile=0
OutputObjs=0
ConsoleApp=1
DebugInfo=0
RemoteSymbols=0
MinStackSize=16384
MaxStackSize=1048576
ImageBase=4194304
ExeDescription=
[Directories]
OutputDir=
UnitOutputDir=
PackageDLLOutputDir=
PackageDCPOutputDir=
SearchPath=
Packages=vcl;rtl;dbrtl;adortl;vcldb;vclx;bdertl;vcldbx;ibxpress;dsnap;cds;bdecds;qrpt;teeui;teedb;tee;dss;teeqr;dsnapcrba;dsnapcon;VclSmp;vclshlctrls;dbexpress;dbxcds;indy;dclaxserver;visualclx;visualdbclx;ACS
Conditionals=
DebugSourceDirs=
UsePackages=0
[Parameters]
RunParams=
HostApplication=
Launcher=
UseLauncher=0
DebugCWD=
[Language]
ActiveLang=
ProjectLang=
RootDir=
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1031
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=

View File

@ -0,0 +1,17 @@
program player;
uses
Forms,
uMain in 'umain.pas' {fMain},
uPlaylist in 'uplaylist.pas' {fPlaylist},
uvis in 'uvis.pas' {fVizu};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TfMain, fMain);
Application.CreateForm(TfPlaylist, fPlaylist);
Application.CreateForm(TfVizu, fVizu);
Application.Run;
end.

View File

@ -0,0 +1,259 @@
[Closed Files]
File_0=SourceModule,'d:\lkomponenten\acs\src\fileformats\ACS_DSFiles.pas',0,1,1,1,1,0,0
File_1=SourceModule,'D:\LKomponenten\acs\Src\classes\acs_classes.pas',0,1,1,1,1,0,0
File_2=SourceModule,'d:\lkomponenten\acs\src\fileformats\ACS_Vorbis.pas',0,1,1,1,1,0,0
File_3=SourceModule,'D:\LKomponenten\acs\Demos\player\uplaylist.pas',0,1,46,1,65,0,0
File_4=SourceModule,'d:\lkomponenten\acs\src\classes\ACS_Audio.pas',0,1,1,1,1,0,0
File_5=SourceModule,'C:\Programme\Borland\Delphi6\Projects\Unit1.pas',0,1,26,1,28,0,0
File_6=SourceModule,'D:\LKomponenten\acs\Demos\player\uvis.lrs',0,1,1,17,3,0,0
File_7=SourceModule,'D:\lkomponenten\acs\src\classes\ACS_Types.pas',0,1,20,1,33,0,0
[Modules]
Module0=D:\LKomponenten\acs\Demos\player\uvis.pas
Module1=D:\LKomponenten\acs\Demos\player\umain.pas
Module2=D:\LKomponenten\acs\Demos\player\player.dpr
Module3=d:\lkomponenten\acs\src\drivers\windows\acs_audio.inc
Count=4
EditWindowCount=1
[D:\LKomponenten\acs\Demos\player\uvis.pas]
ModuleType=SourceModule
FormState=1
FormOnTop=0
[D:\LKomponenten\acs\Demos\player\umain.pas]
ModuleType=SourceModule
FormState=1
FormOnTop=0
[D:\LKomponenten\acs\Demos\player\player.dpr]
ModuleType=SourceModule
FormState=0
FormOnTop=0
[d:\lkomponenten\acs\src\drivers\windows\acs_audio.inc]
ModuleType=SourceModule
FormState=0
FormOnTop=0
[C:\Programme\Borland\Delphi6\Projects\ProjectGroup1.bpg]
FormState=0
FormOnTop=0
[EditWindow0]
ViewCount=4
CurrentView=0
View0=0
View1=1
View2=2
View3=3
CodeExplorer=CodeExplorer@EditWindow0
MessageView=MessageView@EditWindow0
Create=1
Visible=1
State=0
Left=203
Top=102
Width=821
Height=632
MaxLeft=-1
MaxTop=-1
ClientWidth=813
ClientHeight=605
LeftPanelSize=140
LeftPanelClients=CodeExplorer@EditWindow0
LeftPanelData=000004000000000000000000000000000000000000000000000100000000000000000C000000436F64654578706C6F726572FFFFFFFF
RightPanelSize=0
BottomPanelSize=0
BottomPanelClients=MessageView@EditWindow0
BottomPanelData=00000400010000000B0000004D65737361676556696577000000000000000000000000000000000001000000000000000000000000FFFFFFFF
[View0]
Module=D:\LKomponenten\acs\Demos\player\uvis.pas
CursorX=1
CursorY=27
TopLine=1
LeftCol=1
[View1]
Module=D:\LKomponenten\acs\Demos\player\umain.pas
CursorX=1
CursorY=174
TopLine=174
LeftCol=1
[View2]
Module=d:\lkomponenten\acs\src\drivers\windows\acs_audio.inc
CursorX=1
CursorY=146
TopLine=131
LeftCol=1
[View3]
Module=D:\LKomponenten\acs\Demos\player\player.dpr
CursorX=1
CursorY=11
TopLine=1
LeftCol=1
[Watches]
Count=0
[Breakpoints]
Count=0
[AddressBreakpoints]
Count=0
[Main Window]
Create=1
Visible=1
State=2
Left=0
Top=0
Width=1024
Height=105
MaxLeft=-1
MaxTop=-1
MaxWidth=1024
MaxHeight=105
ClientWidth=1016
ClientHeight=78
[ProjectManager]
Create=1
Visible=1
State=0
Left=0
Top=372
Width=353
Height=170
MaxLeft=-1
MaxTop=-1
ClientWidth=353
ClientHeight=170
TBDockHeight=303
LRDockWidth=353
Dockable=1
[CPUWindow]
Create=1
Visible=0
State=0
Left=245
Top=207
Width=533
Height=353
MaxLeft=-1
MaxTop=-1
ClientWidth=525
ClientHeight=326
DumpPane=79
DisassemblyPane=187
RegisterPane=231
FlagPane=64
[AlignmentPalette]
Create=1
Visible=0
State=0
Left=200
Top=107
Width=156
Height=82
MaxLeft=-1
MaxTop=-1
ClientWidth=150
ClientHeight=60
[PropertyInspector]
Create=1
Visible=1
State=0
Left=0
Top=359
Width=190
Height=381
MaxLeft=-1
MaxTop=-1
ClientWidth=182
ClientHeight=357
TBDockHeight=381
LRDockWidth=190
Dockable=1
SplitPos=85
ArrangeBy=Name
SelectedItem=Caption
ExpandedItems=
HiddenCategories=
[ObjectTree]
Create=1
Visible=1
State=0
Left=0
Top=12
Width=353
Height=344
MaxLeft=-1
MaxTop=-1
ClientWidth=353
ClientHeight=344
TBDockHeight=252
LRDockWidth=353
Dockable=1
[CodeExplorer@EditWindow0]
Create=1
Visible=1
State=0
Left=0
Top=12
Width=140
Height=593
MaxLeft=-1
MaxTop=-1
ClientWidth=140
ClientHeight=593
TBDockHeight=305
LRDockWidth=140
Dockable=1
[MessageView@EditWindow0]
Create=1
Visible=0
State=0
Left=12
Top=0
Width=801
Height=52
MaxLeft=-1
MaxTop=-1
ClientWidth=801
ClientHeight=52
TBDockHeight=52
LRDockWidth=443
Dockable=1
[DockHosts]
DockHostCount=1
[DockSite0]
DockSiteType=0
Create=1
Visible=1
State=0
Left=0
Top=106
Width=361
Height=566
MaxLeft=-1
MaxTop=-1
ClientWidth=353
ClientHeight=542
TBDockHeight=430
LRDockWidth=336
Dockable=1
DockClients=ObjectTree,ProjectManager
DockSiteData=00000400000000001E020000000000000161010000000000000100000000680100000E0000004F626A656374547265655669657701000000001E0200001200000050726F6A6563744D616E61676572466F726DFFFFFFFF

View File

@ -0,0 +1,781 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<PathDelim Value="\"/>
<Version Value="5"/>
<General>
<MainUnit Value="0"/>
<IconPath Value="./"/>
<TargetFileExt Value=".exe"/>
<Title Value="Lazarus Player Example"/>
<ActiveEditorIndexAtStart Value="0"/>
</General>
<LazDoc Paths=""/>
<Units Count="100">
<Unit0>
<CursorPos X="28" Y="18"/>
<Filename Value="player.lpr"/>
<IsPartOfProject Value="True"/>
<TopLine Value="1"/>
<UnitName Value="player"/>
<UsageCount Value="62"/>
</Unit0>
<Unit1>
<CursorPos X="13" Y="145"/>
<EditorIndex Value="0"/>
<Filename Value="umain.pas"/>
<ComponentName Value="fMain"/>
<IsPartOfProject Value="True"/>
<Loaded Value="True"/>
<ResourceFilename Value="umain.lrs"/>
<TopLine Value="134"/>
<UnitName Value="uMain"/>
<UsageCount Value="62"/>
</Unit1>
<Unit2>
<CursorPos X="1" Y="50"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Audio.pas"/>
<TopLine Value="33"/>
<UnitName Value="ACS_Audio"/>
<UsageCount Value="22"/>
</Unit2>
<Unit3>
<CursorPos X="19" Y="244"/>
<Filename Value="D:\LKomponenten\acs\Src\drivers\windows\acs_audio.inc"/>
<TopLine Value="228"/>
<UsageCount Value="20"/>
</Unit3>
<Unit4>
<CursorPos X="1" Y="1823"/>
<Filename Value="D:\lazarus\lcl\include\control.inc"/>
<TopLine Value="1808"/>
<UsageCount Value="10"/>
</Unit4>
<Unit5>
<CursorPos X="1" Y="58"/>
<Filename Value="D:\lazarus\lcl\include\buttoncontrol.inc"/>
<TopLine Value="43"/>
<UsageCount Value="10"/>
</Unit5>
<Unit6>
<CursorPos X="1" Y="242"/>
<Filename Value="D:\lazarus\lcl\include\buttons.inc"/>
<TopLine Value="227"/>
<UsageCount Value="10"/>
</Unit6>
<Unit7>
<CursorPos X="10" Y="115"/>
<Filename Value="D:\LKomponenten\acs\Src\drivers\ACS_StdAudio.pas"/>
<TopLine Value="83"/>
<UnitName Value="acs_stdaudio"/>
<UsageCount Value="20"/>
</Unit7>
<Unit8>
<CursorPos X="2" Y="133"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\acs_file.pas"/>
<TopLine Value="114"/>
<UnitName Value="acs_file"/>
<UsageCount Value="22"/>
</Unit8>
<Unit9>
<CursorPos X="8" Y="8"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_allformats.pas"/>
<TopLine Value="1"/>
<UnitName Value="acs_allformats"/>
<UsageCount Value="17"/>
</Unit9>
<Unit10>
<CursorPos X="13" Y="1"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_dsaudio.pas"/>
<TopLine Value="1"/>
<UnitName Value="acs_dsaudio"/>
<UsageCount Value="10"/>
</Unit10>
<Unit11>
<CursorPos X="1" Y="326"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_dsfiles.pas"/>
<TopLine Value="305"/>
<UnitName Value="acs_dsfiles"/>
<UsageCount Value="14"/>
</Unit11>
<Unit12>
<CursorPos X="1" Y="462"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<TopLine Value="446"/>
<UnitName Value="acs_vorbis"/>
<UsageCount Value="17"/>
</Unit12>
<Unit13>
<CursorPos X="15" Y="809"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Classes.pas"/>
<TopLine Value="777"/>
<UnitName Value="acs_classes"/>
<UsageCount Value="22"/>
</Unit13>
<Unit14>
<CursorPos X="54" Y="48"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Strings.pas"/>
<TopLine Value="22"/>
<UnitName Value="ACS_Strings"/>
<UsageCount Value="16"/>
</Unit14>
<Unit15>
<CursorPos X="26" Y="464"/>
<Filename Value="D:\LKomponenten\acs\Src\drivers\acs_dxaudio.pas"/>
<TopLine Value="440"/>
<UnitName Value="acs_dxaudio"/>
<UsageCount Value="17"/>
</Unit15>
<Unit16>
<CursorPos X="16" Y="108"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_Wave.pas"/>
<TopLine Value="76"/>
<UnitName Value="acs_wave"/>
<UsageCount Value="10"/>
</Unit16>
<Unit17>
<CursorPos X="26" Y="2101"/>
<Filename Value="D:\lazarus\lcl\LResources.pp"/>
<TopLine Value="2082"/>
<UnitName Value="LResources"/>
<UsageCount Value="10"/>
</Unit17>
<Unit18>
<CursorPos X="1" Y="351"/>
<Filename Value="D:\LKomponenten\acs\Demos\Lazarus\Mediaplayer\uplayer.pas"/>
<HasResources Value="True"/>
<TopLine Value="329"/>
<UnitName Value="uPlayer"/>
<UsageCount Value="10"/>
</Unit18>
<Unit19>
<CursorPos X="13" Y="121"/>
<Filename Value="D:\LKomponenten\acs\Demos\Win32\CDPlayer\Main.pas"/>
<TopLine Value="98"/>
<UnitName Value="Main"/>
<UsageCount Value="10"/>
</Unit19>
<Unit20>
<CursorPos X="1" Y="129"/>
<Filename Value="D:\LKomponenten\acs\Demos\Win32\OggPlayer\Main.pas"/>
<TopLine Value="105"/>
<UnitName Value="Main"/>
<UsageCount Value="10"/>
</Unit20>
<Unit21>
<CursorPos X="13" Y="28"/>
<Filename Value="D:\LKomponenten\acs\Demos\Win32\AudioPlayer\Main.pas"/>
<TopLine Value="28"/>
<UnitName Value="Main"/>
<UsageCount Value="10"/>
</Unit21>
<Unit22>
<CursorPos X="5" Y="2678"/>
<Filename Value="D:\fpc\packages\extra\winunits\activex.pp"/>
<TopLine Value="2661"/>
<UnitName Value="activex"/>
<UsageCount Value="10"/>
</Unit22>
<Unit23>
<CursorPos X="8" Y="32"/>
<Filename Value="uplaylist.pas"/>
<ComponentName Value="fPlaylist"/>
<IsPartOfProject Value="True"/>
<ResourceFilename Value="uplaylist.lrs"/>
<TopLine Value="17"/>
<UnitName Value="uPlaylist"/>
<UsageCount Value="42"/>
</Unit23>
<Unit24>
<CursorPos X="1" Y="304"/>
<Filename Value="D:\lazarus\lcl\interfaces\win32\win32object.inc"/>
<TopLine Value="287"/>
<UsageCount Value="10"/>
</Unit24>
<Unit25>
<CursorPos X="1" Y="191"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_CDROM.pas"/>
<TopLine Value="171"/>
<UnitName Value="ACS_CDROM"/>
<UsageCount Value="10"/>
</Unit25>
<Unit26>
<CursorPos X="34" Y="9"/>
<Filename Value="uvis.pas"/>
<ComponentName Value="fVizu"/>
<IsPartOfProject Value="True"/>
<ResourceFilename Value="uvis.lrs"/>
<TopLine Value="58"/>
<UnitName Value="uvis"/>
<UsageCount Value="39"/>
</Unit26>
<Unit27>
<CursorPos X="52" Y="186"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Indicator.pas"/>
<TopLine Value="157"/>
<UnitName Value="ACS_Indicator"/>
<UsageCount Value="11"/>
</Unit27>
<Unit28>
<CursorPos X="5" Y="268"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\ACS_Procs.pas"/>
<TopLine Value="235"/>
<UnitName Value="ACS_Procs"/>
<UsageCount Value="11"/>
</Unit28>
<Unit29>
<CursorPos X="15" Y="927"/>
<Filename Value="D:\lazarus\lcl\Graphics.pp"/>
<TopLine Value="911"/>
<UnitName Value="Graphics"/>
<UsageCount Value="11"/>
</Unit29>
<Unit30>
<CursorPos X="12" Y="2"/>
<Filename Value="D:\lazarus\lcl\graphtype.pp"/>
<TopLine Value="1"/>
<UnitName Value="GraphType"/>
<UsageCount Value="11"/>
</Unit30>
<Unit31>
<CursorPos X="15" Y="32"/>
<Filename Value="D:\fpc\fcl\image\fpimage.pp"/>
<TopLine Value="14"/>
<UnitName Value="FPimage"/>
<UsageCount Value="10"/>
</Unit31>
<Unit32>
<CursorPos X="1" Y="1"/>
<Filename Value="D:\lazarus\ide\lazarus.pp"/>
<TopLine Value="1"/>
<UnitName Value="Lazarus"/>
<UsageCount Value="10"/>
</Unit32>
<Unit33>
<CursorPos X="1" Y="50"/>
<Filename Value="D:\lazarus\lcl\include\filedialog.inc"/>
<TopLine Value="33"/>
<UsageCount Value="10"/>
</Unit33>
<Unit34>
<CursorPos X="37" Y="284"/>
<Filename Value="windows\C\src\LKomponenten\acs\Src\fileformats\ACS_Vorbis.pas"/>
<TopLine Value="255"/>
<UnitName Value="ACS_Vorbis"/>
<UsageCount Value="10"/>
</Unit34>
<Unit35>
<CursorPos X="1" Y="1"/>
<Filename Value="windows\C\src\LKomponenten\acs\Src\fileformats\ACS_Allformats.pas"/>
<TopLine Value="1"/>
<UnitName Value="acs_allformats"/>
<UsageCount Value="10"/>
</Unit35>
<Unit36>
<CursorPos X="14" Y="231"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_File.pas"/>
<TopLine Value="195"/>
<UnitName Value="ACS_File"/>
<UsageCount Value="11"/>
</Unit36>
<Unit37>
<CursorPos X="19" Y="231"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Classes.pas"/>
<TopLine Value="213"/>
<UnitName Value="ACS_Classes"/>
<UsageCount Value="11"/>
</Unit37>
<Unit38>
<CursorPos X="19" Y="308"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Audio.pas"/>
<TopLine Value="290"/>
<UnitName Value="ACS_Audio"/>
<UsageCount Value="11"/>
</Unit38>
<Unit39>
<CursorPos X="42" Y="80"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_AudioMix.pas"/>
<TopLine Value="62"/>
<UnitName Value="ACS_AudioMix"/>
<UsageCount Value="10"/>
</Unit39>
<Unit40>
<CursorPos X="19" Y="127"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_CDROM.pas"/>
<TopLine Value="109"/>
<UnitName Value="ACS_CDROM"/>
<UsageCount Value="10"/>
</Unit40>
<Unit41>
<CursorPos X="18" Y="356"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\linux\ACS_CDROM.inc"/>
<TopLine Value="320"/>
<UsageCount Value="10"/>
</Unit41>
<Unit42>
<CursorPos X="12" Y="823"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Converters.pas"/>
<TopLine Value="803"/>
<UnitName Value="ACS_Converters"/>
<UsageCount Value="10"/>
</Unit42>
<Unit43>
<CursorPos X="41" Y="75"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Types.pas"/>
<TopLine Value="34"/>
<UnitName Value="ACS_Types"/>
<UsageCount Value="10"/>
</Unit43>
<Unit44>
<CursorPos X="38" Y="276"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Procs.pas"/>
<TopLine Value="258"/>
<UnitName Value="ACS_Procs"/>
<UsageCount Value="10"/>
</Unit44>
<Unit45>
<CursorPos X="23" Y="673"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Filters.pas"/>
<TopLine Value="654"/>
<UnitName Value="ACS_Filters"/>
<UsageCount Value="10"/>
</Unit45>
<Unit46>
<CursorPos X="21" Y="115"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Indicator.pas"/>
<TopLine Value="93"/>
<UnitName Value="ACS_Indicator"/>
<UsageCount Value="10"/>
</Unit46>
<Unit47>
<CursorPos X="12" Y="496"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Misc.pas"/>
<TopLine Value="478"/>
<UnitName Value="ACS_Misc"/>
<UsageCount Value="10"/>
</Unit47>
<Unit48>
<CursorPos X="28" Y="235"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_MultiMix.pas"/>
<TopLine Value="217"/>
<UnitName Value="ACS_MultiMix"/>
<UsageCount Value="10"/>
</Unit48>
<Unit49>
<CursorPos X="42" Y="164"/>
<Filename Value="windows\D\LKomponenten\acs\Src\drivers\ACS_StdAudio.pas"/>
<TopLine Value="146"/>
<UnitName Value="ACS_StdAudio"/>
<UsageCount Value="10"/>
</Unit49>
<Unit50>
<CursorPos X="12" Y="69"/>
<Filename Value="windows\D\LKomponenten\acs\Src\drivers\linux\ACS_Audio.inc"/>
<TopLine Value="50"/>
<UsageCount Value="10"/>
</Unit50>
<Unit51>
<CursorPos X="27" Y="166"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_VolumeQuery.pas"/>
<TopLine Value="147"/>
<UnitName Value="ACS_VolumeQuery"/>
<UsageCount Value="10"/>
</Unit51>
<Unit52>
<CursorPos X="67" Y="35"/>
<Filename Value="windows\D\LKomponenten\acs\Src\Linux\acs_reg.pas"/>
<TopLine Value="11"/>
<UnitName Value="acs_reg"/>
<UsageCount Value="10"/>
</Unit52>
<Unit53>
<CursorPos X="16" Y="241"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Mixer.pas"/>
<TopLine Value="212"/>
<UnitName Value="ACS_Mixer"/>
<UsageCount Value="10"/>
</Unit53>
<Unit54>
<CursorPos X="19" Y="119"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\linux\ACS_Mixer.inc"/>
<TopLine Value="101"/>
<UsageCount Value="10"/>
</Unit54>
<Unit55>
<CursorPos X="14" Y="202"/>
<Filename Value="windows\D\LKomponenten\acs\Src\classes\ACS_Streams.pas"/>
<TopLine Value="172"/>
<UnitName Value="ACS_Streams"/>
<UsageCount Value="10"/>
</Unit55>
<Unit56>
<CursorPos X="14" Y="63"/>
<Filename Value="windows\D\LKomponenten\acs\Src\fileformats\ACS_Vorbis.pas"/>
<TopLine Value="55"/>
<UnitName Value="ACS_Vorbis"/>
<UsageCount Value="10"/>
</Unit56>
<Unit57>
<CursorPos X="1" Y="60"/>
<Filename Value="windows\D\LKomponenten\acs\Src\fileformats\acs_flac.pas"/>
<TopLine Value="32"/>
<UnitName Value="ACS_FLAC"/>
<UsageCount Value="10"/>
</Unit57>
<Unit58>
<CursorPos X="29" Y="89"/>
<Filename Value="windows\D\LKomponenten\acs\Src\fileformats\acs_lame.pas"/>
<TopLine Value="64"/>
<UnitName Value="ACS_LAME"/>
<UsageCount Value="10"/>
</Unit58>
<Unit59>
<CursorPos X="16" Y="62"/>
<Filename Value="windows\D\LKomponenten\acs\Src\fileformats\acs_mad.pas"/>
<TopLine Value="46"/>
<UnitName Value="ACS_MAD"/>
<UsageCount Value="10"/>
</Unit59>
<Unit60>
<CursorPos X="16" Y="1361"/>
<Filename Value="windows\D\LKomponenten\acs\Src\fileformats\ACS_Wave.pas"/>
<TopLine Value="1359"/>
<UnitName Value="ACS_Wave"/>
<UsageCount Value="10"/>
</Unit60>
<Unit61>
<CursorPos X="30" Y="559"/>
<Filename Value="umain.lfm"/>
<SyntaxHighlighter Value="LFM"/>
<TopLine Value="527"/>
<UsageCount Value="10"/>
</Unit61>
<Unit62>
<CursorPos X="17" Y="193"/>
<Filename Value="D:\fpc\rtl\objpas\classes\classesh.inc"/>
<TopLine Value="175"/>
<UsageCount Value="10"/>
</Unit62>
<Unit63>
<CursorPos X="1" Y="370"/>
<Filename Value="D:\fpc\rtl\objpas\classes\lists.inc"/>
<TopLine Value="368"/>
<UsageCount Value="10"/>
</Unit63>
<Unit64>
<CursorPos X="1" Y="65"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_FLAC.pas"/>
<TopLine Value="65"/>
<UnitName Value="ACS_FLAC"/>
<UsageCount Value="10"/>
</Unit64>
<Unit65>
<CursorPos X="1" Y="49"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_MAC.pas"/>
<TopLine Value="49"/>
<UnitName Value="ACS_MAC"/>
<UsageCount Value="10"/>
</Unit65>
<Unit66>
<CursorPos X="30" Y="209"/>
<Filename Value="D:\lazarus\lcl\interfaces\win32\Win32WSControls.pp"/>
<TopLine Value="191"/>
<UnitName Value="Win32WSControls"/>
<UsageCount Value="10"/>
</Unit66>
<Unit67>
<CursorPos X="14" Y="61"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_LAME.pas"/>
<TopLine Value="49"/>
<UnitName Value="ACS_LAME"/>
<UsageCount Value="10"/>
</Unit67>
<Unit68>
<CursorPos X="14" Y="239"/>
<Filename Value="D:\LKomponenten\acs\Src\fileformats\ACS_MAD.pas"/>
<TopLine Value="207"/>
<UnitName Value="ACS_MAD"/>
<UsageCount Value="10"/>
</Unit68>
<Unit69>
<CursorPos X="11" Y="370"/>
<Filename Value="D:\fpc\rtl\inc\systemh.inc"/>
<TopLine Value="354"/>
<UsageCount Value="10"/>
</Unit69>
<Unit70>
<CursorPos X="1" Y="1"/>
<Filename Value="D:\LKomponenten\lazreport\source\lr_desgn.pas"/>
<ComponentName Value="frDesignerForm"/>
<HasResources Value="True"/>
<TopLine Value="1"/>
<UnitName Value="LR_Desgn"/>
<UsageCount Value="10"/>
</Unit70>
<Unit71>
<CursorPos X="1" Y="2098"/>
<Filename Value="windows\D\lazarus\lcl\lresources.pp"/>
<TopLine Value="2077"/>
<UnitName Value="LResources"/>
<UsageCount Value="10"/>
</Unit71>
<Unit72>
<CursorPos X="11" Y="370"/>
<Filename Value="windows\D\fpc\rtl\inc\systemh.inc"/>
<TopLine Value="352"/>
<UsageCount Value="10"/>
</Unit72>
<Unit73>
<CursorPos X="1" Y="126"/>
<Filename Value="D:\acs tmp\Src\Common\ACS_Wave.pas"/>
<TopLine Value="123"/>
<UnitName Value="ACS_Wave"/>
<UsageCount Value="10"/>
</Unit73>
<Unit74>
<CursorPos X="72" Y="1"/>
<Filename Value="windows\D\fpc\rtl\i386\i386.inc"/>
<TopLine Value="1"/>
<UsageCount Value="10"/>
</Unit74>
<Unit75>
<CursorPos X="20" Y="899"/>
<Filename Value="windows\D\acs tmp\Src\Common\ACS_Wave.pas"/>
<TopLine Value="869"/>
<UnitName Value="ACS_Wave"/>
<UsageCount Value="10"/>
</Unit75>
<Unit76>
<CursorPos X="16" Y="266"/>
<Filename Value="D:\LKomponenten\acs\Src\classes\windows\acs_cdrom.inc"/>
<TopLine Value="244"/>
<UsageCount Value="10"/>
</Unit76>
<Unit77>
<CursorPos X="10" Y="1476"/>
<Filename Value="D:\lazarus\lcl\include\canvas.inc"/>
<TopLine Value="1469"/>
<UsageCount Value="10"/>
</Unit77>
<Unit78>
<CursorPos X="13" Y="225"/>
<Filename Value="D:\fpc\fcl\image\fpcanvas.pp"/>
<TopLine Value="193"/>
<UnitName Value="FPCanvas"/>
<UsageCount Value="10"/>
</Unit78>
<Unit79>
<CursorPos X="1" Y="267"/>
<Filename Value="D:\fpc\fcl\image\FPCanvas.inc"/>
<TopLine Value="265"/>
<UsageCount Value="10"/>
</Unit79>
<Unit80>
<CursorPos X="27" Y="20"/>
<Filename Value="D:\SRC\lazarus\ide\lazarus.pp"/>
<TopLine Value="1"/>
<UnitName Value="Lazarus"/>
<UsageCount Value="10"/>
</Unit80>
<Unit81>
<CursorPos X="8" Y="13"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\fileformats\acs_allformats.pas"/>
<TopLine Value="1"/>
<UnitName Value="acs_allformats"/>
<UsageCount Value="10"/>
</Unit81>
<Unit82>
<CursorPos X="3" Y="1485"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\fileformats\acs_wave.pas"/>
<TopLine Value="1462"/>
<UnitName Value="acs_wave"/>
<UsageCount Value="10"/>
</Unit82>
<Unit83>
<CursorPos X="12" Y="446"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\fileformats\acs_vorbis.pas"/>
<TopLine Value="416"/>
<UnitName Value="acs_vorbis"/>
<UsageCount Value="10"/>
</Unit83>
<Unit84>
<CursorPos X="16" Y="1"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\fileformats\general\Codec.pas"/>
<TopLine Value="1"/>
<UnitName Value="codec"/>
<UsageCount Value="10"/>
</Unit84>
<Unit85>
<CursorPos X="21" Y="224"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\fileformats\general\vorbisfile.pas"/>
<TopLine Value="191"/>
<UnitName Value="vorbisfile"/>
<UsageCount Value="10"/>
</Unit85>
<Unit86>
<CursorPos X="1" Y="1"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\fileformats\general\ogg.pas"/>
<TopLine Value="1"/>
<UnitName Value="ogg"/>
<UsageCount Value="10"/>
</Unit86>
<Unit87>
<CursorPos X="12" Y="34"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\fileformats\general\vorbis_codec.pas"/>
<TopLine Value="1"/>
<UnitName Value="codec"/>
<UsageCount Value="10"/>
</Unit87>
<Unit88>
<CursorPos X="1" Y="1"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\fileformats\general\vorbiscodec.pas"/>
<TopLine Value="427"/>
<UnitName Value="vorbiscodec"/>
<UsageCount Value="10"/>
</Unit88>
<Unit89>
<CursorPos X="1" Y="1"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\fileformats\general\VorbisEnc.pas"/>
<TopLine Value="1"/>
<UnitName Value="vorbisenc"/>
<UsageCount Value="10"/>
</Unit89>
<Unit90>
<CursorPos X="1" Y="23"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\classes\acs_strings.pas"/>
<TopLine Value="1"/>
<UnitName Value="acs_strings"/>
<UsageCount Value="10"/>
</Unit90>
<Unit91>
<CursorPos X="10" Y="70"/>
<Filename Value="D:\SRC\fpc\rtl\win32\wininc\ascdef.inc"/>
<TopLine Value="47"/>
<UsageCount Value="10"/>
</Unit91>
<Unit92>
<CursorPos X="1" Y="175"/>
<Filename Value="D:\SRC\LKomponenten\acs\Src\classes\acs_classes.pas"/>
<TopLine Value="164"/>
<UnitName Value="acs_classes"/>
<UsageCount Value="10"/>
</Unit92>
<Unit93>
<CursorPos X="22" Y="51"/>
<Filename Value="\windows\D\LKomponenten\acs\Src\drivers\linux\acs_audio.inc"/>
<TopLine Value="28"/>
<UsageCount Value="10"/>
</Unit93>
<Unit94>
<CursorPos X="1" Y="356"/>
<Filename Value="\windows\D\LKomponenten\acs\Src\drivers\acs_alsaaudio.pas"/>
<TopLine Value="347"/>
<UnitName Value="acs_alsaaudio"/>
<UsageCount Value="11"/>
</Unit94>
<Unit95>
<CursorPos X="1" Y="702"/>
<Filename Value="\windows\D\LKomponenten\acs\Src\classes\acs_classes.pas"/>
<TopLine Value="681"/>
<UnitName Value="acs_classes"/>
<UsageCount Value="11"/>
</Unit95>
<Unit96>
<CursorPos X="1" Y="75"/>
<Filename Value="\windows\D\LKomponenten\acs\Src\drivers\acs_stdaudio.pas"/>
<TopLine Value="55"/>
<UnitName Value="acs_stdaudio"/>
<UsageCount Value="11"/>
</Unit96>
<Unit97>
<CursorPos X="1" Y="491"/>
<Filename Value="\windows\D\LKomponenten\acs\Src\classes\acs_audio.pas"/>
<TopLine Value="473"/>
<UnitName Value="acs_audio"/>
<UsageCount Value="10"/>
</Unit97>
<Unit98>
<CursorPos X="1" Y="205"/>
<Filename Value="\windows\D\LKomponenten\acs\Src\drivers\acs_aolive.pas"/>
<TopLine Value="177"/>
<UnitName Value="acs_aolive"/>
<UsageCount Value="10"/>
</Unit98>
<Unit99>
<CursorPos X="22" Y="47"/>
<Filename Value="\windows\D\LKomponenten\acs\Src\drivers\linux\libao.pas"/>
<TopLine Value="37"/>
<UnitName Value="libao"/>
<UsageCount Value="10"/>
</Unit99>
</Units>
<PublishOptions>
<Version Value="2"/>
<DestinationDirectory Value="$(TestDir)\publishedproject\"/>
<IgnoreBinaries Value="False"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
<LaunchingApplication PathPlusParams="\usr\X11R6\bin\xterm -T 'Lazarus Run Output' -e $(LazarusDir)\tools\runwait.sh $(TargetCmdLine)"/>
</local>
</RunParams>
<RequiredPackages Count="2">
<Item1>
<PackageName Value="LCL"/>
</Item1>
<Item2>
<PackageName Value="LAZ_ACS"/>
</Item2>
</RequiredPackages>
<JumpHistory Count="1" HistoryIndex="0">
<Position1>
<Filename Value="umain.pas"/>
<Caret Line="151" Column="3" TopLine="150"/>
</Position1>
</JumpHistory>
</ProjectOptions>
<CompilerOptions>
<Version Value="5"/>
<PathDelim Value="\"/>
<SearchPaths>
<SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
</SearchPaths>
<Parsing>
<SyntaxOptions>
<DelphiCompat Value="True"/>
</SyntaxOptions>
</Parsing>
<CodeGeneration>
<Generate Value="Faster"/>
</CodeGeneration>
<Linking>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
<Other>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
<Debugging>
<BreakPoints Count="1">
<Item1>
<Source Value="D:\LKomponenten\acs\Src\fileformats\ACS_FLAC.pas"/>
<Line Value="576"/>
</Item1>
</BreakPoints>
<Watches Count="2">
<Item1>
<Expression Value="newcolor"/>
</Item1>
<Item2>
<Expression Value="DrvName"/>
</Item2>
</Watches>
</Debugging>
</CONFIG>

View File

@ -0,0 +1,217 @@
object fMain: TfMain
Left = 271
Top = 150
BorderStyle = bsToolWindow
Caption = 'Audioplayer'
ClientHeight = 99
ClientWidth = 204
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = True
OnClose = FormClose
PixelsPerInch = 96
TextHeight = 13
object Panel1: TPanel
Left = 4
Top = 0
Width = 192
Height = 64
BevelOuter = bvLowered
FullRepaint = False
TabOrder = 0
object lTime: TLabel
Left = 1
Top = 24
Width = 108
Height = 29
AutoSize = False
Caption = '00:00:00'
Color = clNone
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -25
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentColor = False
ParentFont = False
Transparent = True
end
object lFilename: TLabel
Left = 1
Top = 1
Width = 190
Height = 13
Align = alTop
Caption = 'File:'
Color = clNone
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -9
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentColor = False
ParentFont = False
Transparent = True
WordWrap = True
end
object lTime1: TLabel
Left = 1
Top = 21
Width = 57
Height = 13
Caption = 'Time remain'
Color = clNone
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -9
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentColor = False
ParentFont = False
Transparent = True
end
object lTime2: TLabel
Left = 116
Top = 21
Width = 14
Height = 13
Caption = 'left'
Color = clNone
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -9
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentColor = False
ParentFont = False
Transparent = True
end
object lLeft: TLabel
Left = 116
Top = 32
Width = 42
Height = 13
Caption = '00:00:00'
Color = clNone
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentColor = False
ParentFont = False
Transparent = True
end
object Progress: TProgressBar
Left = 1
Top = 55
Width = 190
Height = 8
Align = alBottom
Min = 0
Max = 1000
Smooth = True
TabOrder = 0
end
end
object btOpen: TBitBtn
Left = 4
Top = 67
Width = 28
Height = 26
TabOrder = 1
OnClick = OpenClick
Layout = blGlyphTop
end
object btRew: TBitBtn
Left = 32
Top = 67
Width = 28
Height = 26
TabOrder = 2
OnClick = btRewClick
end
object btFfw: TBitBtn
Left = 60
Top = 67
Width = 28
Height = 26
TabOrder = 3
OnClick = btFfwClick
Layout = blGlyphRight
end
object btPlay: TBitBtn
Left = 88
Top = 67
Width = 28
Height = 30
TabOrder = 4
OnClick = PlayClick
end
object btStop: TBitBtn
Left = 144
Top = 67
Width = 28
Height = 30
TabOrder = 5
OnClick = StopClick
end
object btPause: TBitBtn
Left = 116
Top = 67
Width = 28
Height = 30
TabOrder = 6
OnClick = Pauseclick
end
object btPlaylist: TBitBtn
Left = 174
Top = 67
Width = 22
Height = 17
TabOrder = 7
OnClick = btPlaylistClick
end
object btVizu: TBitBtn
Left = 174
Top = 84
Width = 22
Height = 13
Caption = 'Vis'
TabOrder = 8
OnClick = btVizuClick
end
object FileIn1: TACSFileIn
EndSample = -1
Loop = False
StartSample = 0
Left = 72
end
object PlayTimer: TTimer
Enabled = False
Interval = 100
OnTimer = Timer1Timer
Left = 72
Top = 32
end
object AudioOut1: TACSAudioOut
Driver = 'Wavemapper'
Device = 0
Volume = 0
Input = SoundIndicator
Delay = 6
SuspendWhenIdle = True
OnDone = AudioOut1Done
OnThreadException = AudioOut1ThreadException
Left = 40
Top = 32
end
object SoundIndicator: TACSSoundIndicator
Input = FileIn1
Left = 40
end
end

View File

@ -0,0 +1,576 @@
object fMain: TfMain
ActiveControl = btOpen
BorderStyle = bsToolWindow
Caption = 'Audioplayer'
ClientHeight = 99
ClientWidth = 204
OnClose = FormClose
OnCreate = FormCreate
PixelsPerInch = 96
HorzScrollBar.Page = 203
VertScrollBar.Page = 98
Left = 271
Height = 99
Top = 150
Width = 204
object Panel1: TPanel
BevelOuter = bvLowered
ClientHeight = 64
ClientWidth = 192
FullRepaint = False
TabOrder = 0
Left = 4
Height = 64
Width = 192
object lTime: TLabel
AutoSize = False
Caption = '00:00:00'
Color = clNone
Font.Height = -25
ParentColor = False
Left = 1
Height = 29
Top = 24
Width = 108
end
object lFilename: TLabel
Align = alTop
Caption = 'File:'
Color = clNone
Font.Height = -9
ParentColor = False
WordWrap = True
Left = 1
Height = 12
Top = 1
Width = 190
end
object lTime1: TLabel
Caption = 'Time remain'
Color = clNone
Font.Height = -9
ParentColor = False
OnClick = lTime1Click
Left = 1
Height = 12
Top = 20
Width = 53
end
object lTime2: TLabel
Caption = 'left'
Color = clNone
Font.Height = -9
ParentColor = False
Left = 116
Height = 12
Top = 20
Width = 14
end
object lLeft: TLabel
Caption = '00:00:00'
Color = clNone
Font.Height = -12
ParentColor = False
Left = 116
Height = 15
Top = 28
Width = 51
end
object Progress: TProgressBar
Align = alBottom
Max = 1000
Smooth = True
Left = 1
Height = 8
Top = 55
Width = 190
end
end
object btOpen: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
910900002F2A2058504D202A2F0D0A7374617469632063686172202A2062746E
5F6F70656E66696C655F78706D5B5D203D207B0D0A2231382031382039372032
222C0D0A2220200963204E6F6E65222C0D0A222E200963202330303030303022
2C0D0A222B2009632023344533333142222C0D0A224020096320234535413536
36222C0D0A22232009632023464544333941222C0D0A22242009632023464543
353835222C0D0A22252009632023464443353837222C0D0A2226200963202346
4543323832222C0D0A222A2009632023463841433632222C0D0A223D20096320
23464543383841222C0D0A222D2009632023353335303444222C0D0A223B2009
632023353535323446222C0D0A223E2009632023354335413537222C0D0A222C
2009632023353435313445222C0D0A22272009632023353635333530222C0D0A
22292009632023433438363445222C0D0A22212009632023353234463443222C
0D0A227E2009632023463546354635222C0D0A227B2009632023454345434543
222C0D0A225D2009632023453445344534222C0D0A225E200963202344434443
4443222C0D0A222F2009632023443444344434222C0D0A222820096320234342
43424342222C0D0A225F2009632023433443344334222C0D0A223A2009632023
424342434243222C0D0A223C2009632023423542354235222C0D0A225B200963
2023423342334233222C0D0A227D2009632023333033303330222C0D0A227C20
09632023344133313139222C0D0A22312009632023444244424442222C0D0A22
322009632023444644464445222C0D0A22332009632023453845384537222C0D
0A22342009632023453645364534222C0D0A2235200963202344324432443122
2C0D0A22362009632023433743374336222C0D0A223720096320234241424142
39222C0D0A22382009632023414441444143222C0D0A22392009632023413041
303946222C0D0A22302009632023393439343933222C0D0A2261200963202334
3934393438222C0D0A22622009632023423737443434222C0D0A226320096320
23353335313445222C0D0A22642009632023444144414441222C0D0A22652009
632023444244424441222C0D0A22662009632023453145314530222C0D0A2267
2009632023444444444443222C0D0A22682009632023443644364435222C0D0A
22692009632023434243424341222C0D0A226A2009632023433143314330222C
0D0A226B2009632023423642364235222C0D0A226C2009632023413941394138
222C0D0A226D2009632023363836383637222C0D0A226E200963202332323232
3231222C0D0A226F2009632023343933303138222C0D0A227020096320234344
43444344222C0D0A22712009632023434143414339222C0D0A22722009632023
443544354434222C0D0A22732009632023443244324430222C0D0A2274200963
2023434343434342222C0D0A22752009632023433243324331222C0D0A227620
09632023423942394238222C0D0A22772009632023414641464145222C0D0A22
782009632023413241324131222C0D0A22792009632023393539353934222C0D
0A227A2009632023434543454345222C0D0A2241200963202342454245424322
2C0D0A22422009632023433443344332222C0D0A224320096320234336433643
35222C0D0A22442009632023433343334332222C0D0A22452009632023424642
464245222C0D0A22462009632023414541454144222C0D0A2247200963202341
3541354134222C0D0A22482009632023394539453944222C0D0A224920096320
23364636463645222C0D0A224A2009632023313231323132222C0D0A224B2009
632023424442444244222C0D0A224C2009632023413641364135222C0D0A224D
2009632023414141414138222C0D0A224E2009632023414441444142222C0D0A
224F2009632023414541454143222C0D0A22502009632023414241424141222C
0D0A22512009632023413741374136222C0D0A22522009632023413141314130
222C0D0A22532009632023394139413939222C0D0A2254200963202339343934
3932222C0D0A22552009632023384438443842222C0D0A225620096320233233
32333233222C0D0A22572009632023344134413441222C0D0A22582009632023
344134413439222C0D0A22592009632023344334433442222C0D0A225A200963
2023344334433443222C0D0A22602009632023344234423441222C0D0A22202E
09632023343634363436222C0D0A222E2E09632023343334333433222C0D0A22
2B2E09632023343134313430222C0D0A22402E09632023333433343333222C0D
0A22232E09632023314631463145222C0D0A222020202020202020202020202E
202E202E202E2020202020202020202020202020202020222C0D0A2220202020
2020202020202E202E2020202E202E202E202E2020202E202020202020202020
222C0D0A2220202020202020202E20202020202020202020202E202E202E202E
202020202020202020222C0D0A22202020202020202020202020202020202020
202020202E202E202E202020202020202020222C0D0A22202020202020202020
20202020202020202020202E202E202E202E202020202020202020222C0D0A22
20202B202B202B202B2020202020202020202020202020202020202020202020
20202020222C0D0A222B2040202320242040202B202B202B202B202B202B202B
20202020202020202020202020222C0D0A222B202320252026202A202A202A20
2A202A202A202A202A202E2020202020202020202020222C0D0A222B203D2026
202B202D202D203B203E202C202C20272027202C202E202E202E202020202022
2C0D0A222B202620292021207E207E207B205D205E202F2028205F203A203C20
5B207D2020202020222C0D0A222B2026207C2031203220332034203220352036
2037203820392030206120202020202020222C0D0A222B206220632064206520
66206720682069206A206B206C2039206D206E20202020202020222C0D0A222B
206F207020712072207220732074207520762077207820792061202020202020
202020222C0D0A222B2027207A20412042204320442045206B20462047204820
49204A202020202020202020222C0D0A222B204B204C204D204E204F20502051
205220532054205520612020202020202020202020222C0D0A22562057205820
59205A20592060206120202E2E2E2B2E402E232E20202020202020202020222C
0D0A222020202020202020202020202020202020202020202020202020202020
20202020202020222C0D0A222020202020202020202020202020202020202020
20202020202020202020202020202020227D3B0D0A
}
Layout = blGlyphTop
NumGlyphs = 0
OnClick = OpenClick
TabOrder = 1
Left = 4
Height = 26
Top = 67
Width = 28
end
object btRew: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
970300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A2231362031362031362032222C0D0A22303020632023
303830383130222C0D0A22303120632023313831383231222C0D0A2230322063
20677261793136222C0D0A22303320632023443644364345222C0D0A22303420
632067726179313030222C0D0A22303520632067726179313030222C0D0A2230
3620632067726179313030222C0D0A22303720632067726179313030222C0D0A
22303820632067726179313030222C0D0A22303920632067726179313030222C
0D0A22313020632067726179313030222C0D0A22313120632067726179313030
222C0D0A22313220632067726179313030222C0D0A2231332063206772617931
3030222C0D0A22313420632067726179313030222C0D0A223135206320677261
79313030222C0D0A223033303330333033303330333033303330333033303330
333033303330333033222C0D0A22303330333033303330333033303330333033
3033303330333033303330333033222C0D0A2230333033303330333033303330
33303330333033303330333033303330333033222C0D0A223033303330333030
303030303033303330333033303330303030303330333033222C0D0A22303330
3330333030303130323033303330333033303030313032303330333033222C0D
0A22303330333033303030313032303330333033303030313031303230333033
3033222C0D0A2230333033303330303031303230333033303030313031303130
32303330333033222C0D0A223033303330333030303130323033303030313031
303130313032303330333033222C0D0A22303330333033303030313032303330
3230313031303130313032303330333033222C0D0A2230333033303330303031
30323033303330323031303130313032303330333033222C0D0A223033303330
333030303130323033303330333032303130313032303330333033222C0D0A22
3033303330333030303130323033303330333033303230313032303330333033
222C0D0A22303330333033303230323032303330333033303330333032303230
3330333033222C0D0A2230333033303330333033303330333033303330333033
30333033303330333033222C0D0A223033303330333033303330333033303330
333033303330333033303330333033222C0D0A22303330333033303330333033
3033303330333033303330333033303330333033220D0A7D3B0D0A
}
NumGlyphs = 0
OnClick = btRewClick
TabOrder = 2
Left = 32
Height = 26
Top = 67
Width = 28
end
object btFfw: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
970300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A2231362031362031362032222C0D0A22303020632023
303830383130222C0D0A22303120632023313831383231222C0D0A2230322063
20677261793136222C0D0A22303320632023443644364345222C0D0A22303420
632067726179313030222C0D0A22303520632067726179313030222C0D0A2230
3620632067726179313030222C0D0A22303720632067726179313030222C0D0A
22303820632067726179313030222C0D0A22303920632067726179313030222C
0D0A22313020632067726179313030222C0D0A22313120632067726179313030
222C0D0A22313220632067726179313030222C0D0A2231332063206772617931
3030222C0D0A22313420632067726179313030222C0D0A223135206320677261
79313030222C0D0A223033303330333033303330333033303330333033303330
333033303330333033222C0D0A22303330333033303330333033303330333033
3033303330333033303330333033222C0D0A2230333033303330333033303330
33303330333033303330333033303330333033222C0D0A223033303330333030
303030333033303330333033303030303030303330333033222C0D0A22303330
3330333032303130303033303330333033303230313030303330333033222C0D
0A22303330333033303230313031303030333033303330323031303030333033
3033222C0D0A2230333033303330323031303130313030303330333032303130
30303330333033222C0D0A223033303330333032303130313031303130303033
303230313030303330333033222C0D0A22303330333033303230313031303130
3130323033303230313030303330333033222C0D0A2230333033303330323031
30313031303230333033303230313030303330333033222C0D0A223033303330
333032303130313032303330333033303230313030303330333033222C0D0A22
3033303330333032303130323033303330333033303230313030303330333033
222C0D0A22303330333033303230323033303330333033303330323032303230
3330333033222C0D0A2230333033303330333033303330333033303330333033
30333033303330333033222C0D0A223033303330333033303330333033303330
333033303330333033303330333033222C0D0A22303330333033303330333033
3033303330333033303330333033303330333033220D0A7D3B0D0A
}
Layout = blGlyphRight
NumGlyphs = 0
OnClick = btFfwClick
TabOrder = 3
Left = 60
Height = 26
Top = 67
Width = 28
end
object btPlay: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
911300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A223136203136203235362033222C0D0A223030302063
2023304330463132222C0D0A2230303120632023314231443230222C0D0A2230
303220632023324132443244222C0D0A2230303320632023443444304338222C
0D0A22303034206320626C61636B222C0D0A22303035206320626C61636B222C
0D0A22303036206320626C61636B222C0D0A22303037206320626C61636B222C
0D0A22303038206320626C61636B222C0D0A22303039206320626C61636B222C
0D0A22303130206320626C61636B222C0D0A22303131206320626C61636B222C
0D0A22303132206320626C61636B222C0D0A22303133206320626C61636B222C
0D0A22303134206320626C61636B222C0D0A22303135206320626C61636B222C
0D0A22303136206320626C61636B222C0D0A22303137206320626C61636B222C
0D0A22303138206320626C61636B222C0D0A22303139206320626C61636B222C
0D0A22303230206320626C61636B222C0D0A22303231206320626C61636B222C
0D0A22303232206320626C61636B222C0D0A22303233206320626C61636B222C
0D0A22303234206320626C61636B222C0D0A22303235206320626C61636B222C
0D0A22303236206320626C61636B222C0D0A22303237206320626C61636B222C
0D0A22303238206320626C61636B222C0D0A22303239206320626C61636B222C
0D0A22303330206320626C61636B222C0D0A22303331206320626C61636B222C
0D0A22303332206320626C61636B222C0D0A22303333206320626C61636B222C
0D0A22303334206320626C61636B222C0D0A22303335206320626C61636B222C
0D0A22303336206320626C61636B222C0D0A22303337206320626C61636B222C
0D0A22303338206320626C61636B222C0D0A22303339206320626C61636B222C
0D0A22303430206320626C61636B222C0D0A22303431206320626C61636B222C
0D0A22303432206320626C61636B222C0D0A22303433206320626C61636B222C
0D0A22303434206320626C61636B222C0D0A22303435206320626C61636B222C
0D0A22303436206320626C61636B222C0D0A22303437206320626C61636B222C
0D0A22303438206320626C61636B222C0D0A22303439206320626C61636B222C
0D0A22303530206320626C61636B222C0D0A22303531206320626C61636B222C
0D0A22303532206320626C61636B222C0D0A22303533206320626C61636B222C
0D0A22303534206320626C61636B222C0D0A22303535206320626C61636B222C
0D0A22303536206320626C61636B222C0D0A22303537206320626C61636B222C
0D0A22303538206320626C61636B222C0D0A22303539206320626C61636B222C
0D0A22303630206320626C61636B222C0D0A22303631206320626C61636B222C
0D0A22303632206320626C61636B222C0D0A22303633206320626C61636B222C
0D0A22303634206320626C61636B222C0D0A22303635206320626C61636B222C
0D0A22303636206320626C61636B222C0D0A22303637206320626C61636B222C
0D0A22303638206320626C61636B222C0D0A22303639206320626C61636B222C
0D0A22303730206320626C61636B222C0D0A22303731206320626C61636B222C
0D0A22303732206320626C61636B222C0D0A22303733206320626C61636B222C
0D0A22303734206320626C61636B222C0D0A22303735206320626C61636B222C
0D0A22303736206320626C61636B222C0D0A22303737206320626C61636B222C
0D0A22303738206320626C61636B222C0D0A22303739206320626C61636B222C
0D0A22303830206320626C61636B222C0D0A22303831206320626C61636B222C
0D0A22303832206320626C61636B222C0D0A22303833206320626C61636B222C
0D0A22303834206320626C61636B222C0D0A22303835206320626C61636B222C
0D0A22303836206320626C61636B222C0D0A22303837206320626C61636B222C
0D0A22303838206320626C61636B222C0D0A22303839206320626C61636B222C
0D0A22303930206320626C61636B222C0D0A22303931206320626C61636B222C
0D0A22303932206320626C61636B222C0D0A22303933206320626C61636B222C
0D0A22303934206320626C61636B222C0D0A22303935206320626C61636B222C
0D0A22303936206320626C61636B222C0D0A22303937206320626C61636B222C
0D0A22303938206320626C61636B222C0D0A22303939206320626C61636B222C
0D0A22313030206320626C61636B222C0D0A22313031206320626C61636B222C
0D0A22313032206320626C61636B222C0D0A22313033206320626C61636B222C
0D0A22313034206320626C61636B222C0D0A22313035206320626C61636B222C
0D0A22313036206320626C61636B222C0D0A22313037206320626C61636B222C
0D0A22313038206320626C61636B222C0D0A22313039206320626C61636B222C
0D0A22313130206320626C61636B222C0D0A22313131206320626C61636B222C
0D0A22313132206320626C61636B222C0D0A22313133206320626C61636B222C
0D0A22313134206320626C61636B222C0D0A22313135206320626C61636B222C
0D0A22313136206320626C61636B222C0D0A22313137206320626C61636B222C
0D0A22313138206320626C61636B222C0D0A22313139206320626C61636B222C
0D0A22313230206320626C61636B222C0D0A22313231206320626C61636B222C
0D0A22313232206320626C61636B222C0D0A22313233206320626C61636B222C
0D0A22313234206320626C61636B222C0D0A22313235206320626C61636B222C
0D0A22313236206320626C61636B222C0D0A22313237206320626C61636B222C
0D0A22313238206320626C61636B222C0D0A22313239206320626C61636B222C
0D0A22313330206320626C61636B222C0D0A22313331206320626C61636B222C
0D0A22313332206320626C61636B222C0D0A22313333206320626C61636B222C
0D0A22313334206320626C61636B222C0D0A22313335206320626C61636B222C
0D0A22313336206320626C61636B222C0D0A22313337206320626C61636B222C
0D0A22313338206320626C61636B222C0D0A22313339206320626C61636B222C
0D0A22313430206320626C61636B222C0D0A22313431206320626C61636B222C
0D0A22313432206320626C61636B222C0D0A22313433206320626C61636B222C
0D0A22313434206320626C61636B222C0D0A22313435206320626C61636B222C
0D0A22313436206320626C61636B222C0D0A22313437206320626C61636B222C
0D0A22313438206320626C61636B222C0D0A22313439206320626C61636B222C
0D0A22313530206320626C61636B222C0D0A22313531206320626C61636B222C
0D0A22313532206320626C61636B222C0D0A22313533206320626C61636B222C
0D0A22313534206320626C61636B222C0D0A22313535206320626C61636B222C
0D0A22313536206320626C61636B222C0D0A22313537206320626C61636B222C
0D0A22313538206320626C61636B222C0D0A22313539206320626C61636B222C
0D0A22313630206320626C61636B222C0D0A22313631206320626C61636B222C
0D0A22313632206320626C61636B222C0D0A22313633206320626C61636B222C
0D0A22313634206320626C61636B222C0D0A22313635206320626C61636B222C
0D0A22313636206320626C61636B222C0D0A22313637206320626C61636B222C
0D0A22313638206320626C61636B222C0D0A22313639206320626C61636B222C
0D0A22313730206320626C61636B222C0D0A22313731206320626C61636B222C
0D0A22313732206320626C61636B222C0D0A22313733206320626C61636B222C
0D0A22313734206320626C61636B222C0D0A22313735206320626C61636B222C
0D0A22313736206320626C61636B222C0D0A22313737206320626C61636B222C
0D0A22313738206320626C61636B222C0D0A22313739206320626C61636B222C
0D0A22313830206320626C61636B222C0D0A22313831206320626C61636B222C
0D0A22313832206320626C61636B222C0D0A22313833206320626C61636B222C
0D0A22313834206320626C61636B222C0D0A22313835206320626C61636B222C
0D0A22313836206320626C61636B222C0D0A22313837206320626C61636B222C
0D0A22313838206320626C61636B222C0D0A22313839206320626C61636B222C
0D0A22313930206320626C61636B222C0D0A22313931206320626C61636B222C
0D0A22313932206320626C61636B222C0D0A22313933206320626C61636B222C
0D0A22313934206320626C61636B222C0D0A22313935206320626C61636B222C
0D0A22313936206320626C61636B222C0D0A22313937206320626C61636B222C
0D0A22313938206320626C61636B222C0D0A22313939206320626C61636B222C
0D0A22323030206320626C61636B222C0D0A22323031206320626C61636B222C
0D0A22323032206320626C61636B222C0D0A22323033206320626C61636B222C
0D0A22323034206320626C61636B222C0D0A22323035206320626C61636B222C
0D0A22323036206320626C61636B222C0D0A22323037206320626C61636B222C
0D0A22323038206320626C61636B222C0D0A22323039206320626C61636B222C
0D0A22323130206320626C61636B222C0D0A22323131206320626C61636B222C
0D0A22323132206320626C61636B222C0D0A22323133206320626C61636B222C
0D0A22323134206320626C61636B222C0D0A22323135206320626C61636B222C
0D0A22323136206320626C61636B222C0D0A22323137206320626C61636B222C
0D0A22323138206320626C61636B222C0D0A22323139206320626C61636B222C
0D0A22323230206320626C61636B222C0D0A22323231206320626C61636B222C
0D0A22323232206320626C61636B222C0D0A22323233206320626C61636B222C
0D0A22323234206320626C61636B222C0D0A22323235206320626C61636B222C
0D0A22323236206320626C61636B222C0D0A22323237206320626C61636B222C
0D0A22323238206320626C61636B222C0D0A22323239206320626C61636B222C
0D0A22323330206320626C61636B222C0D0A22323331206320626C61636B222C
0D0A22323332206320626C61636B222C0D0A22323333206320626C61636B222C
0D0A22323334206320626C61636B222C0D0A22323335206320626C61636B222C
0D0A22323336206320626C61636B222C0D0A22323337206320626C61636B222C
0D0A22323338206320626C61636B222C0D0A22323339206320626C61636B222C
0D0A22323430206320626C61636B222C0D0A22323431206320626C61636B222C
0D0A22323432206320626C61636B222C0D0A22323433206320626C61636B222C
0D0A22323434206320626C61636B222C0D0A22323435206320626C61636B222C
0D0A22323436206320626C61636B222C0D0A22323437206320626C61636B222C
0D0A22323438206320626C61636B222C0D0A22323439206320626C61636B222C
0D0A22323530206320626C61636B222C0D0A22323531206320626C61636B222C
0D0A22323532206320626C61636B222C0D0A22323533206320626C61636B222C
0D0A22323534206320626C61636B222C0D0A22323535206320626C61636B222C
0D0A223030333030333030333030333030333030333030333030333030333030
33303033303033303033303033303033303033222C0D0A223030333030333030
3330303330303330303330303330303330303330303330303330303330303330
3033303033303033222C0D0A2230303330303330303330303330303330303330
3033303033303033303033303033303033303033303033303033303033222C0D
0A22303033303033303033303030303030303033303033303033303033303033
303033303033303033303033303033303033222C0D0A22303033303033303033
3030303030313030303030303030333030333030333030333030333030333030
33303033303033222C0D0A223030333030333030333030303030313030313030
31303030303030303033303033303033303033303033303033303033222C0D0A
2230303330303330303330303030303130303130303130303130303130303030
3030303033303033303033303033303033222C0D0A2230303330303330303330
3030303031303031303031303031303031303031303031303030303030303033
303033303033222C0D0A22303033303033303033303030303031303031303031
303031303031303031303031303032303032303033303033303033222C0D0A22
3030333030333030333030303030313030313030313030313030313030323030
32303033303033303033303033303033222C0D0A223030333030333030333030
3030303130303130303130303230303230303330303330303330303330303330
3033303033222C0D0A2230303330303330303330303030303130303230303230
3033303033303033303033303033303033303033303033303033222C0D0A2230
3033303033303033303032303032303033303033303033303033303033303033
303033303033303033303033303033222C0D0A22303033303033303033303033
3030333030333030333030333030333030333030333030333030333030333030
33303033222C0D0A223030333030333030333030333030333030333030333030
33303033303033303033303033303033303033303033303033222C0D0A223030
3330303330303330303330303330303330303330303330303330303330303330
3033303033303033303033303033220D0A7D3B0D0A
}
NumGlyphs = 0
OnClick = PlayClick
TabOrder = 4
Left = 88
Height = 30
Top = 67
Width = 28
end
object btStop: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
970300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A2231362031362031362032222C0D0A22303020632023
303830383130222C0D0A22303120632023313831383231222C0D0A2230322063
20677261793136222C0D0A22303320632023443644364345222C0D0A22303420
632067726179313030222C0D0A22303520632067726179313030222C0D0A2230
3620632067726179313030222C0D0A22303720632067726179313030222C0D0A
22303820632067726179313030222C0D0A22303920632067726179313030222C
0D0A22313020632067726179313030222C0D0A22313120632067726179313030
222C0D0A22313220632067726179313030222C0D0A2231332063206772617931
3030222C0D0A22313420632067726179313030222C0D0A223135206320677261
79313030222C0D0A223033303330333033303330333033303330333033303330
333033303330333033222C0D0A22303330333033303330333033303330333033
3033303330333033303330333033222C0D0A2230333033303330333033303330
33303330333033303330333033303330333033222C0D0A223033303330333030
303030303030303030303030303030303030303330333033222C0D0A22303330
3330333030303130313031303130313031303130313032303330333033222C0D
0A22303330333033303030313031303130313031303130313031303230333033
3033222C0D0A2230333033303330303031303130313031303130313031303130
32303330333033222C0D0A223033303330333030303130313031303130313031
303130313032303330333033222C0D0A22303330333033303030313031303130
3130313031303130313032303330333033222C0D0A2230333033303330303031
30313031303130313031303130313032303330333033222C0D0A223033303330
333030303130313031303130313031303130313032303330333033222C0D0A22
3033303330333030303130313031303130313031303130313032303330333033
222C0D0A22303330333033303230323032303230323032303230323032303230
3330333033222C0D0A2230333033303330333033303330333033303330333033
30333033303330333033222C0D0A223033303330333033303330333033303330
333033303330333033303330333033222C0D0A22303330333033303330333033
3033303330333033303330333033303330333033220D0A7D3B0D0A
}
NumGlyphs = 0
OnClick = StopClick
TabOrder = 5
Left = 144
Height = 30
Top = 67
Width = 28
end
object btPause: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
970300002F2A2058504D202A2F0D0A7374617469632063686172202A5069786D
61705B5D203D207B0D0A2231362031362031362032222C0D0A22303020632023
303830383130222C0D0A22303120632023313831383231222C0D0A2230322063
20677261793136222C0D0A22303320632023443644364345222C0D0A22303420
632067726179313030222C0D0A22303520632067726179313030222C0D0A2230
3620632067726179313030222C0D0A22303720632067726179313030222C0D0A
22303820632067726179313030222C0D0A22303920632067726179313030222C
0D0A22313020632067726179313030222C0D0A22313120632067726179313030
222C0D0A22313220632067726179313030222C0D0A2231332063206772617931
3030222C0D0A22313420632067726179313030222C0D0A223135206320677261
79313030222C0D0A223033303330333033303330333033303330333033303330
333033303330333033222C0D0A22303330333033303330333033303330333033
3033303330333033303330333033222C0D0A2230333033303330333033303330
33303330333033303330333033303330333033222C0D0A223033303330303030
303030303033303330333030303030303030303330333033222C0D0A22303330
3330303031303130323033303330333030303130313032303330333033222C0D
0A22303330333030303130313032303330333033303030313031303230333033
3033222C0D0A2230333033303030313031303230333033303330303031303130
32303330333033222C0D0A223033303330303031303130323033303330333030
303130313032303330333033222C0D0A22303330333030303130313032303330
3330333030303130313032303330333033222C0D0A2230333033303030313031
30323033303330333030303130313032303330333033222C0D0A223033303330
303031303130323033303330333030303130313032303330333033222C0D0A22
3033303330303031303130323033303330333030303130313032303330333033
222C0D0A22303330333032303230323032303330333033303230323032303230
3330333033222C0D0A2230333033303330333033303330333033303330333033
30333033303330333033222C0D0A223033303330333033303330333033303330
333033303330333033303330333033222C0D0A22303330333033303330333033
3033303330333033303330333033303330333033220D0A7D3B0D0A
}
NumGlyphs = 0
OnClick = Pauseclick
TabOrder = 6
Left = 116
Height = 30
Top = 67
Width = 28
end
object btPlaylist: TBitBtn
BorderSpacing.InnerBorder = 2
Glyph.Data = {
4E0100002F2A2058504D202A2F0D0A7374617469632063686172202A2062746E
5F76696577756E6974735F78706D5B5D203D207B0D0A22313120313420332031
222C0D0A22200963204E6F6E65222C0D0A222E09632023303030303030222C0D
0A222B09632023464646464646222C0D0A2220202020202E2E2E2E2020222C0D
0A22202020202E2B2B2B2B2E2E222C0D0A22202020202E2B2B2B2B2B2E222C0D
0A222020202E2E2E2E2B2B2B2E222C0D0A2220202E2B2B2B2B2E2E2B2E222C0D
0A2220202E2B2B2B2B2B2E2B2E222C0D0A22202E2E2E2E2B2B2B2E2B2E222C0D
0A222E2B2B2B2B2E2E2B2E2E2E222C0D0A222E2B2B2B2B2B2E2B2E2020222C0D
0A222E2B2B2B2B2B2E2B2E2020222C0D0A222E2B2B2B2B2B2E2E2E2020222C0D
0A222E2B2B2B2B2B2E20202020222C0D0A222E2B2B2B2B2B2E20202020222C0D
0A222E2E2E2E2E2E2E20202020227D3B0D0A
}
NumGlyphs = 0
OnClick = btPlaylistClick
TabOrder = 7
Left = 174
Height = 17
Top = 67
Width = 22
end
object btVizu: TBitBtn
BorderSpacing.InnerBorder = 2
Caption = 'Vis'
NumGlyphs = 0
OnClick = btVizuClick
TabOrder = 8
Left = 174
Height = 13
Top = 84
Width = 22
end
object FileIn1: TACSFileIn
EndSample = -1
EndSample = -1
left = 12
top = 100
end
object PlayTimer: TTimer
Enabled = False
Interval = 50
OnTimer = Timer1Timer
left = 44
top = 68
end
object AudioOut1: TACSAudioOut
Buffersize = 100000
Driver = 'Wavemapper'
Input = SoundIndicator
Delay = 6
SuspendWhenIdle = True
OnDone = AudioOut1Done
OnThreadException = AudioOut1ThreadException
left = 44
top = 100
end
object SoundIndicator: TACSSoundIndicator
Input = FileIn1
left = 12
top = 69
end
end

View File

@ -0,0 +1,256 @@
{ Dies ist eine automatisch erzeugte Lazarus-Ressourcendatei }
LazarusResources.Add('TfMain','FORMDATA',[
'TPF0'#6'TfMain'#5'fMain'#13'ActiveControl'#7#6'btOpen'#11'BorderStyle'#7#12
+'bsToolWindow'#7'Caption'#6#11'Audioplayer'#12'ClientHeight'#2'c'#11'ClientW'
+'idth'#3#204#0#7'OnClose'#7#9'FormClose'#8'OnCreate'#7#10'FormCreate'#13'Pix'
+'elsPerInch'#2'`'#18'HorzScrollBar.Page'#3#203#0#18'VertScrollBar.Page'#2'b'
+#4'Left'#3#15#1#6'Height'#2'c'#3'Top'#3#150#0#5'Width'#3#204#0#0#6'TPanel'#6
+'Panel1'#10'BevelOuter'#7#9'bvLowered'#12'ClientHeight'#2'@'#11'ClientWidth'
+#3#192#0#11'FullRepaint'#8#8'TabOrder'#2#0#4'Left'#2#4#6'Height'#2'@'#5'Widt'
+'h'#3#192#0#0#6'TLabel'#5'lTime'#8'AutoSize'#8#7'Caption'#6#8'00:00:00'#5'Co'
+'lor'#7#6'clNone'#11'Font.Height'#2#231#11'ParentColor'#8#4'Left'#2#1#6'Heig'
+'ht'#2#29#3'Top'#2#24#5'Width'#2'l'#0#0#6'TLabel'#9'lFilename'#5'Align'#7#5
+'alTop'#7'Caption'#6#5'File:'#5'Color'#7#6'clNone'#11'Font.Height'#2#247#11
+'ParentColor'#8#8'WordWrap'#9#4'Left'#2#1#6'Height'#2#12#3'Top'#2#1#5'Width'
+#3#190#0#0#0#6'TLabel'#6'lTime1'#7'Caption'#6#11'Time remain'#5'Color'#7#6'c'
+'lNone'#11'Font.Height'#2#247#11'ParentColor'#8#7'OnClick'#7#11'lTime1Click'
+#4'Left'#2#1#6'Height'#2#12#3'Top'#2#20#5'Width'#2'5'#0#0#6'TLabel'#6'lTime2'
+#7'Caption'#6#4'left'#5'Color'#7#6'clNone'#11'Font.Height'#2#247#11'ParentCo'
+'lor'#8#4'Left'#2't'#6'Height'#2#12#3'Top'#2#20#5'Width'#2#14#0#0#6'TLabel'#5
+'lLeft'#7'Caption'#6#8'00:00:00'#5'Color'#7#6'clNone'#11'Font.Height'#2#244
+#11'ParentColor'#8#4'Left'#2't'#6'Height'#2#15#3'Top'#2#28#5'Width'#2'3'#0#0
+#12'TProgressBar'#8'Progress'#5'Align'#7#8'alBottom'#3'Max'#3#232#3#6'Smooth'
+#9#4'Left'#2#1#6'Height'#2#8#3'Top'#2'7'#5'Width'#3#190#0#0#0#0#7'TBitBtn'#6
+'btOpen'#25'BorderSpacing.InnerBorder'#2#2#10'Glyph.Data'#10#149#9#0#0#145#9
+#0#0'/* XPM */'#13#10'static char * btn_openfile_xpm[] = {'#13#10'"18 18 97 '
+'2",'#13#10'" '#9'c None",'#13#10'". '#9'c #000000",'#13#10'"+ '#9'c #4E331'
+'B",'#13#10'"@ '#9'c #E5A566",'#13#10'"# '#9'c #FED39A",'#13#10'"$ '#9'c #FE'
+'C585",'#13#10'"% '#9'c #FDC587",'#13#10'"& '#9'c #FEC282",'#13#10'"* '#9'c '
+'#F8AC62",'#13#10'"= '#9'c #FEC88A",'#13#10'"- '#9'c #53504D",'#13#10'"; '#9
+'c #55524F",'#13#10'"> '#9'c #5C5A57",'#13#10'", '#9'c #54514E",'#13#10'"'' '
+#9'c #565350",'#13#10'") '#9'c #C4864E",'#13#10'"! '#9'c #524F4C",'#13#10'"~'
+' '#9'c #F5F5F5",'#13#10'"{ '#9'c #ECECEC",'#13#10'"] '#9'c #E4E4E4",'#13#10
+'"^ '#9'c #DCDCDC",'#13#10'"/ '#9'c #D4D4D4",'#13#10'"( '#9'c #CBCBCB",'#13
+#10'"_ '#9'c #C4C4C4",'#13#10'": '#9'c #BCBCBC",'#13#10'"< '#9'c #B5B5B5",'
+#13#10'"[ '#9'c #B3B3B3",'#13#10'"} '#9'c #303030",'#13#10'"| '#9'c #4A3119"'
+','#13#10'"1 '#9'c #DBDBDB",'#13#10'"2 '#9'c #DFDFDE",'#13#10'"3 '#9'c #E8E8'
+'E7",'#13#10'"4 '#9'c #E6E6E4",'#13#10'"5 '#9'c #D2D2D1",'#13#10'"6 '#9'c #C'
+'7C7C6",'#13#10'"7 '#9'c #BABAB9",'#13#10'"8 '#9'c #ADADAC",'#13#10'"9 '#9'c'
+' #A0A09F",'#13#10'"0 '#9'c #949493",'#13#10'"a '#9'c #494948",'#13#10'"b '#9
+'c #B77D44",'#13#10'"c '#9'c #53514E",'#13#10'"d '#9'c #DADADA",'#13#10'"e '
+#9'c #DBDBDA",'#13#10'"f '#9'c #E1E1E0",'#13#10'"g '#9'c #DDDDDC",'#13#10'"h'
+' '#9'c #D6D6D5",'#13#10'"i '#9'c #CBCBCA",'#13#10'"j '#9'c #C1C1C0",'#13#10
+'"k '#9'c #B6B6B5",'#13#10'"l '#9'c #A9A9A8",'#13#10'"m '#9'c #686867",'#13
+#10'"n '#9'c #222221",'#13#10'"o '#9'c #493018",'#13#10'"p '#9'c #CDCDCD",'
+#13#10'"q '#9'c #CACAC9",'#13#10'"r '#9'c #D5D5D4",'#13#10'"s '#9'c #D2D2D0"'
+','#13#10'"t '#9'c #CCCCCB",'#13#10'"u '#9'c #C2C2C1",'#13#10'"v '#9'c #B9B9'
+'B8",'#13#10'"w '#9'c #AFAFAE",'#13#10'"x '#9'c #A2A2A1",'#13#10'"y '#9'c #9'
+'59594",'#13#10'"z '#9'c #CECECE",'#13#10'"A '#9'c #BEBEBC",'#13#10'"B '#9'c'
+' #C4C4C2",'#13#10'"C '#9'c #C6C6C5",'#13#10'"D '#9'c #C3C3C2",'#13#10'"E '#9
+'c #BFBFBE",'#13#10'"F '#9'c #AEAEAD",'#13#10'"G '#9'c #A5A5A4",'#13#10'"H '
+#9'c #9E9E9D",'#13#10'"I '#9'c #6F6F6E",'#13#10'"J '#9'c #121212",'#13#10'"K'
+' '#9'c #BDBDBD",'#13#10'"L '#9'c #A6A6A5",'#13#10'"M '#9'c #AAAAA8",'#13#10
+'"N '#9'c #ADADAB",'#13#10'"O '#9'c #AEAEAC",'#13#10'"P '#9'c #ABABAA",'#13
+#10'"Q '#9'c #A7A7A6",'#13#10'"R '#9'c #A1A1A0",'#13#10'"S '#9'c #9A9A99",'
+#13#10'"T '#9'c #949492",'#13#10'"U '#9'c #8D8D8B",'#13#10'"V '#9'c #232323"'
+','#13#10'"W '#9'c #4A4A4A",'#13#10'"X '#9'c #4A4A49",'#13#10'"Y '#9'c #4C4C'
+'4B",'#13#10'"Z '#9'c #4C4C4C",'#13#10'"` '#9'c #4B4B4A",'#13#10'" .'#9'c #4'
+'64646",'#13#10'"..'#9'c #434343",'#13#10'"+.'#9'c #414140",'#13#10'"@.'#9'c'
+' #343433",'#13#10'"#.'#9'c #1F1F1E",'#13#10'" . . . . '
+' ",'#13#10'" . . . . . . . ",'#13#10'" . '
+' . . . . ",'#13#10'" . . . ",'
+#13#10'" . . . . ",'#13#10'" + + + + '
+' ",'#13#10'"+ @ # $ @ + + + + + + + ",'#13#10'"+ '
+'# % & * * * * * * * * . ",'#13#10'"+ = & + - - ; > , , '' '' , . '
+'. . ",'#13#10'"+ & ) ! ~ ~ { ] ^ / ( _ : < [ } ",'#13#10'"+ & | 1 2'
+' 3 4 2 5 6 7 8 9 0 a ",'#13#10'"+ b c d e f g h i j k l 9 m n "'
,','#13#10'"+ o p q r r s t u v w x y a ",'#13#10'"+ '' z A B C D E k'
+' F G H I J ",'#13#10'"+ K L M N O P Q R S T U a ",'#13#10
+'"V W X Y Z Y ` a ...+.@.#. ",'#13#10'" '
+' ",'#13#10'" "};'#13#10#6'Layout'
+#7#10'blGlyphTop'#9'NumGlyphs'#2#0#7'OnClick'#7#9'OpenClick'#8'TabOrder'#2#1
+#4'Left'#2#4#6'Height'#2#26#3'Top'#2'C'#5'Width'#2#28#0#0#7'TBitBtn'#5'btRew'
+#25'BorderSpacing.InnerBorder'#2#2#10'Glyph.Data'#10#155#3#0#0#151#3#0#0'/* '
+'XPM */'#13#10'static char *Pixmap[] = {'#13#10'"16 16 16 2",'#13#10'"00 c #'
+'080810",'#13#10'"01 c #181821",'#13#10'"02 c gray16",'#13#10'"03 c #D6D6CE"'
+','#13#10'"04 c gray100",'#13#10'"05 c gray100",'#13#10'"06 c gray100",'#13
+#10'"07 c gray100",'#13#10'"08 c gray100",'#13#10'"09 c gray100",'#13#10'"10'
+' c gray100",'#13#10'"11 c gray100",'#13#10'"12 c gray100",'#13#10'"13 c gra'
+'y100",'#13#10'"14 c gray100",'#13#10'"15 c gray100",'#13#10'"03030303030303'
+'030303030303030303",'#13#10'"03030303030303030303030303030303",'#13#10'"030'
+'30303030303030303030303030303",'#13#10'"03030300000003030303030000030303",'
+#13#10'"03030300010203030303000102030303",'#13#10'"0303030001020303030001010'
+'2030303",'#13#10'"03030300010203030001010102030303",'#13#10'"03030300010203'
+'000101010102030303",'#13#10'"03030300010203020101010102030303",'#13#10'"030'
+'30300010203030201010102030303",'#13#10'"03030300010203030302010102030303",'
+#13#10'"03030300010203030303020102030303",'#13#10'"0303030202020303030303020'
+'2030303",'#13#10'"03030303030303030303030303030303",'#13#10'"03030303030303'
+'030303030303030303",'#13#10'"03030303030303030303030303030303"'#13#10'};'#13
+#10#9'NumGlyphs'#2#0#7'OnClick'#7#10'btRewClick'#8'TabOrder'#2#2#4'Left'#2' '
+#6'Height'#2#26#3'Top'#2'C'#5'Width'#2#28#0#0#7'TBitBtn'#5'btFfw'#25'BorderS'
+'pacing.InnerBorder'#2#2#10'Glyph.Data'#10#155#3#0#0#151#3#0#0'/* XPM */'#13
+#10'static char *Pixmap[] = {'#13#10'"16 16 16 2",'#13#10'"00 c #080810",'#13
+#10'"01 c #181821",'#13#10'"02 c gray16",'#13#10'"03 c #D6D6CE",'#13#10'"04 '
+'c gray100",'#13#10'"05 c gray100",'#13#10'"06 c gray100",'#13#10'"07 c gray'
+'100",'#13#10'"08 c gray100",'#13#10'"09 c gray100",'#13#10'"10 c gray100",'
+#13#10'"11 c gray100",'#13#10'"12 c gray100",'#13#10'"13 c gray100",'#13#10
+'"14 c gray100",'#13#10'"15 c gray100",'#13#10'"0303030303030303030303030303'
+'0303",'#13#10'"03030303030303030303030303030303",'#13#10'"03030303030303030'
+'303030303030303",'#13#10'"03030300000303030303000000030303",'#13#10'"030303'
+'02010003030303020100030303",'#13#10'"03030302010100030303020100030303",'#13
+#10'"03030302010101000303020100030303",'#13#10'"0303030201010101000302010003'
+'0303",'#13#10'"03030302010101010203020100030303",'#13#10'"03030302010101020'
+'303020100030303",'#13#10'"03030302010102030303020100030303",'#13#10'"030303'
+'02010203030303020100030303",'#13#10'"03030302020303030303020202030303",'#13
+#10'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030303'
+'0303",'#13#10'"03030303030303030303030303030303"'#13#10'};'#13#10#6'Layout'
+#7#12'blGlyphRight'#9'NumGlyphs'#2#0#7'OnClick'#7#10'btFfwClick'#8'TabOrder'
+#2#3#4'Left'#2'<'#6'Height'#2#26#3'Top'#2'C'#5'Width'#2#28#0#0#7'TBitBtn'#6
+'btPlay'#25'BorderSpacing.InnerBorder'#2#2#10'Glyph.Data'#10#149#19#0#0#145
+#19#0#0'/* XPM */'#13#10'static char *Pixmap[] = {'#13#10'"16 16 256 3",'#13
+#10'"000 c #0C0F12",'#13#10'"001 c #1B1D20",'#13#10'"002 c #2A2D2D",'#13#10
+'"003 c #D4D0C8",'#13#10'"004 c black",'#13#10'"005 c black",'#13#10'"006 c '
+'black",'#13#10'"007 c black",'#13#10'"008 c black",'#13#10'"009 c black",'
+#13#10'"010 c black",'#13#10'"011 c black",'#13#10'"012 c black",'#13#10'"01'
+'3 c black",'#13#10'"014 c black",'#13#10'"015 c black",'#13#10'"016 c black'
+'",'#13#10'"017 c black",'#13#10'"018 c black",'#13#10'"019 c black",'#13#10
+'"020 c black",'#13#10'"021 c black",'#13#10'"022 c black",'#13#10'"023 c bl'
+'ack",'#13#10'"024 c black",'#13#10'"025 c black",'#13#10'"026 c black",'#13
+#10'"027 c black",'#13#10'"028 c black",'#13#10'"029 c black",'#13#10'"030 c'
+' black",'#13#10'"031 c black",'#13#10'"032 c black",'#13#10'"033 c black",'
+#13#10'"034 c black",'#13#10'"035 c black",'#13#10'"036 c black",'#13#10'"03'
+'7 c black",'#13#10'"038 c black",'#13#10'"039 c black",'#13#10'"040 c black'
+'",'#13#10'"041 c black",'#13#10'"042 c black",'#13#10'"043 c black",'#13#10
+'"044 c black",'#13#10'"045 c black",'#13#10'"046 c black",'#13#10'"047 c bl'
+'ack",'#13#10'"048 c black",'#13#10'"049 c black",'#13#10'"050 c black",'#13
+#10'"051 c black",'#13#10'"052 c black",'#13#10'"053 c black",'#13#10'"054 c'
+' black",'#13#10'"055 c black",'#13#10'"056 c black",'#13#10'"057 c black",'
+#13#10'"058 c black",'#13#10'"059 c black",'#13#10'"060 c black",'#13#10'"06'
+'1 c black",'#13#10'"062 c black",'#13#10'"063 c black",'#13#10'"064 c black'
+'",'#13#10'"065 c black",'#13#10'"066 c black",'#13#10'"067 c black",'#13#10
,'"068 c black",'#13#10'"069 c black",'#13#10'"070 c black",'#13#10'"071 c bl'
+'ack",'#13#10'"072 c black",'#13#10'"073 c black",'#13#10'"074 c black",'#13
+#10'"075 c black",'#13#10'"076 c black",'#13#10'"077 c black",'#13#10'"078 c'
+' black",'#13#10'"079 c black",'#13#10'"080 c black",'#13#10'"081 c black",'
+#13#10'"082 c black",'#13#10'"083 c black",'#13#10'"084 c black",'#13#10'"08'
+'5 c black",'#13#10'"086 c black",'#13#10'"087 c black",'#13#10'"088 c black'
+'",'#13#10'"089 c black",'#13#10'"090 c black",'#13#10'"091 c black",'#13#10
+'"092 c black",'#13#10'"093 c black",'#13#10'"094 c black",'#13#10'"095 c bl'
+'ack",'#13#10'"096 c black",'#13#10'"097 c black",'#13#10'"098 c black",'#13
+#10'"099 c black",'#13#10'"100 c black",'#13#10'"101 c black",'#13#10'"102 c'
+' black",'#13#10'"103 c black",'#13#10'"104 c black",'#13#10'"105 c black",'
+#13#10'"106 c black",'#13#10'"107 c black",'#13#10'"108 c black",'#13#10'"10'
+'9 c black",'#13#10'"110 c black",'#13#10'"111 c black",'#13#10'"112 c black'
+'",'#13#10'"113 c black",'#13#10'"114 c black",'#13#10'"115 c black",'#13#10
+'"116 c black",'#13#10'"117 c black",'#13#10'"118 c black",'#13#10'"119 c bl'
+'ack",'#13#10'"120 c black",'#13#10'"121 c black",'#13#10'"122 c black",'#13
+#10'"123 c black",'#13#10'"124 c black",'#13#10'"125 c black",'#13#10'"126 c'
+' black",'#13#10'"127 c black",'#13#10'"128 c black",'#13#10'"129 c black",'
+#13#10'"130 c black",'#13#10'"131 c black",'#13#10'"132 c black",'#13#10'"13'
+'3 c black",'#13#10'"134 c black",'#13#10'"135 c black",'#13#10'"136 c black'
+'",'#13#10'"137 c black",'#13#10'"138 c black",'#13#10'"139 c black",'#13#10
+'"140 c black",'#13#10'"141 c black",'#13#10'"142 c black",'#13#10'"143 c bl'
+'ack",'#13#10'"144 c black",'#13#10'"145 c black",'#13#10'"146 c black",'#13
+#10'"147 c black",'#13#10'"148 c black",'#13#10'"149 c black",'#13#10'"150 c'
+' black",'#13#10'"151 c black",'#13#10'"152 c black",'#13#10'"153 c black",'
+#13#10'"154 c black",'#13#10'"155 c black",'#13#10'"156 c black",'#13#10'"15'
+'7 c black",'#13#10'"158 c black",'#13#10'"159 c black",'#13#10'"160 c black'
+'",'#13#10'"161 c black",'#13#10'"162 c black",'#13#10'"163 c black",'#13#10
+'"164 c black",'#13#10'"165 c black",'#13#10'"166 c black",'#13#10'"167 c bl'
+'ack",'#13#10'"168 c black",'#13#10'"169 c black",'#13#10'"170 c black",'#13
+#10'"171 c black",'#13#10'"172 c black",'#13#10'"173 c black",'#13#10'"174 c'
+' black",'#13#10'"175 c black",'#13#10'"176 c black",'#13#10'"177 c black",'
+#13#10'"178 c black",'#13#10'"179 c black",'#13#10'"180 c black",'#13#10'"18'
+'1 c black",'#13#10'"182 c black",'#13#10'"183 c black",'#13#10'"184 c black'
+'",'#13#10'"185 c black",'#13#10'"186 c black",'#13#10'"187 c black",'#13#10
+'"188 c black",'#13#10'"189 c black",'#13#10'"190 c black",'#13#10'"191 c bl'
+'ack",'#13#10'"192 c black",'#13#10'"193 c black",'#13#10'"194 c black",'#13
+#10'"195 c black",'#13#10'"196 c black",'#13#10'"197 c black",'#13#10'"198 c'
+' black",'#13#10'"199 c black",'#13#10'"200 c black",'#13#10'"201 c black",'
+#13#10'"202 c black",'#13#10'"203 c black",'#13#10'"204 c black",'#13#10'"20'
+'5 c black",'#13#10'"206 c black",'#13#10'"207 c black",'#13#10'"208 c black'
+'",'#13#10'"209 c black",'#13#10'"210 c black",'#13#10'"211 c black",'#13#10
+'"212 c black",'#13#10'"213 c black",'#13#10'"214 c black",'#13#10'"215 c bl'
+'ack",'#13#10'"216 c black",'#13#10'"217 c black",'#13#10'"218 c black",'#13
+#10'"219 c black",'#13#10'"220 c black",'#13#10'"221 c black",'#13#10'"222 c'
+' black",'#13#10'"223 c black",'#13#10'"224 c black",'#13#10'"225 c black",'
+#13#10'"226 c black",'#13#10'"227 c black",'#13#10'"228 c black",'#13#10'"22'
+'9 c black",'#13#10'"230 c black",'#13#10'"231 c black",'#13#10'"232 c black'
+'",'#13#10'"233 c black",'#13#10'"234 c black",'#13#10'"235 c black",'#13#10
+'"236 c black",'#13#10'"237 c black",'#13#10'"238 c black",'#13#10'"239 c bl'
+'ack",'#13#10'"240 c black",'#13#10'"241 c black",'#13#10'"242 c black",'#13
+#10'"243 c black",'#13#10'"244 c black",'#13#10'"245 c black",'#13#10'"246 c'
+' black",'#13#10'"247 c black",'#13#10'"248 c black",'#13#10'"249 c black",'
+#13#10'"250 c black",'#13#10'"251 c black",'#13#10'"252 c black",'#13#10'"25'
+'3 c black",'#13#10'"254 c black",'#13#10'"255 c black",'#13#10'"00300300300'
+'3003003003003003003003003003003003003",'#13#10'"003003003003003003003003003'
+'003003003003003003003",'#13#10'"0030030030030030030030030030030030030030030'
+'03003",'#13#10'"003003003000000003003003003003003003003003003003",'#13#10'"'
+'003003003000001000000003003003003003003003003003",'#13#10'"0030030030000010'
+'01001000000003003003003003003003",'#13#10'"00300300300000100100100100100000'
+'0003003003003003",'#13#10'"003003003000001001001001001001001000000003003003'
+'",'#13#10'"003003003000001001001001001001001002002003003003",'#13#10'"00300'
+'3003000001001001001001002002003003003003003",'#13#10'"003003003000001001001'
+'002002003003003003003003003",'#13#10'"0030030030000010020020030030030030030'
,'03003003003",'#13#10'"003003003002002003003003003003003003003003003003",'#13
+#10'"003003003003003003003003003003003003003003003003",'#13#10'"003003003003'
+'003003003003003003003003003003003003",'#13#10'"0030030030030030030030030030'
+'03003003003003003003"'#13#10'};'#13#10#9'NumGlyphs'#2#0#7'OnClick'#7#9'Play'
+'Click'#8'TabOrder'#2#4#4'Left'#2'X'#6'Height'#2#30#3'Top'#2'C'#5'Width'#2#28
+#0#0#7'TBitBtn'#6'btStop'#25'BorderSpacing.InnerBorder'#2#2#10'Glyph.Data'#10
+#155#3#0#0#151#3#0#0'/* XPM */'#13#10'static char *Pixmap[] = {'#13#10'"16 1'
+'6 16 2",'#13#10'"00 c #080810",'#13#10'"01 c #181821",'#13#10'"02 c gray16"'
+','#13#10'"03 c #D6D6CE",'#13#10'"04 c gray100",'#13#10'"05 c gray100",'#13
+#10'"06 c gray100",'#13#10'"07 c gray100",'#13#10'"08 c gray100",'#13#10'"09'
+' c gray100",'#13#10'"10 c gray100",'#13#10'"11 c gray100",'#13#10'"12 c gra'
+'y100",'#13#10'"13 c gray100",'#13#10'"14 c gray100",'#13#10'"15 c gray100",'
+#13#10'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030'
+'3030303",'#13#10'"03030303030303030303030303030303",'#13#10'"03030300000000'
+'000000000000030303",'#13#10'"03030300010101010101010102030303",'#13#10'"030'
+'30300010101010101010102030303",'#13#10'"03030300010101010101010102030303",'
+#13#10'"03030300010101010101010102030303",'#13#10'"0303030001010101010101010'
+'2030303",'#13#10'"03030300010101010101010102030303",'#13#10'"03030300010101'
+'010101010102030303",'#13#10'"03030300010101010101010102030303",'#13#10'"030'
+'30302020202020202020202030303",'#13#10'"03030303030303030303030303030303",'
+#13#10'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030'
+'3030303"'#13#10'};'#13#10#9'NumGlyphs'#2#0#7'OnClick'#7#9'StopClick'#8'TabO'
+'rder'#2#5#4'Left'#3#144#0#6'Height'#2#30#3'Top'#2'C'#5'Width'#2#28#0#0#7'TB'
+'itBtn'#7'btPause'#25'BorderSpacing.InnerBorder'#2#2#10'Glyph.Data'#10#155#3
+#0#0#151#3#0#0'/* XPM */'#13#10'static char *Pixmap[] = {'#13#10'"16 16 16 2'
+'",'#13#10'"00 c #080810",'#13#10'"01 c #181821",'#13#10'"02 c gray16",'#13
+#10'"03 c #D6D6CE",'#13#10'"04 c gray100",'#13#10'"05 c gray100",'#13#10'"06'
+' c gray100",'#13#10'"07 c gray100",'#13#10'"08 c gray100",'#13#10'"09 c gra'
+'y100",'#13#10'"10 c gray100",'#13#10'"11 c gray100",'#13#10'"12 c gray100",'
+#13#10'"13 c gray100",'#13#10'"14 c gray100",'#13#10'"15 c gray100",'#13#10
+'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030303030'
+'3",'#13#10'"03030303030303030303030303030303",'#13#10'"03030000000003030300'
+'000000030303",'#13#10'"03030001010203030300010102030303",'#13#10'"030300010'
+'10203030300010102030303",'#13#10'"03030001010203030300010102030303",'#13#10
+'"03030001010203030300010102030303",'#13#10'"0303000101020303030001010203030'
+'3",'#13#10'"03030001010203030300010102030303",'#13#10'"03030001010203030300'
+'010102030303",'#13#10'"03030001010203030300010102030303",'#13#10'"030302020'
+'20203030302020202030303",'#13#10'"03030303030303030303030303030303",'#13#10
+'"03030303030303030303030303030303",'#13#10'"0303030303030303030303030303030'
+'3"'#13#10'};'#13#10#9'NumGlyphs'#2#0#7'OnClick'#7#10'Pauseclick'#8'TabOrder'
+#2#6#4'Left'#2't'#6'Height'#2#30#3'Top'#2'C'#5'Width'#2#28#0#0#7'TBitBtn'#10
+'btPlaylist'#25'BorderSpacing.InnerBorder'#2#2#10'Glyph.Data'#10'R'#1#0#0'N'
+#1#0#0'/* XPM */'#13#10'static char * btn_viewunits_xpm[] = {'#13#10'"11 14 '
+'3 1",'#13#10'" '#9'c None",'#13#10'".'#9'c #000000",'#13#10'"+'#9'c #FFFFFF'
+'",'#13#10'" .... ",'#13#10'" .++++..",'#13#10'" .+++++.",'#13#10
+'" ....+++.",'#13#10'" .++++..+.",'#13#10'" .+++++.+.",'#13#10'" ....+++'
+'.+.",'#13#10'".++++..+...",'#13#10'".+++++.+. ",'#13#10'".+++++.+. ",'#13
+#10'".+++++... ",'#13#10'".+++++. ",'#13#10'".+++++. ",'#13#10'".....'
+'.. "};'#13#10#9'NumGlyphs'#2#0#7'OnClick'#7#15'btPlaylistClick'#8'TabOrd'
+'er'#2#7#4'Left'#3#174#0#6'Height'#2#17#3'Top'#2'C'#5'Width'#2#22#0#0#7'TBit'
+'Btn'#6'btVizu'#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#3'Vis'#9'NumG'
+'lyphs'#2#0#7'OnClick'#7#11'btVizuClick'#8'TabOrder'#2#8#4'Left'#3#174#0#6'H'
+'eight'#2#13#3'Top'#2'T'#5'Width'#2#22#0#0#10'TACSFileIn'#7'FileIn1'#9'EndSa'
+'mple'#2#255#9'EndSample'#2#255#4'left'#2#12#3'top'#2'd'#0#0#6'TTimer'#9'Pla'
+'yTimer'#7'Enabled'#8#8'Interval'#2'2'#7'OnTimer'#7#11'Timer1Timer'#4'left'#2
+','#3'top'#2'D'#0#0#12'TACSAudioOut'#9'AudioOut1'#10'Buffersize'#4#160#134#1
+#0#6'Driver'#6#10'Wavemapper'#5'Input'#7#14'SoundIndicator'#5'Delay'#2#6#15
+'SuspendWhenIdle'#9#6'OnDone'#7#13'AudioOut1Done'#17'OnThreadException'#7#24
+'AudioOut1ThreadException'#4'left'#2','#3'top'#2'd'#0#0#18'TACSSoundIndicato'
+'r'#14'SoundIndicator'#5'Input'#7#7'FileIn1'#4'left'#2#12#3'top'#2'E'#0#0#0
]);

View File

@ -0,0 +1,276 @@
unit uMain;
{$IFDEF FPC}
{$mode objfpc}{$H+}
{$ENDIF}
interface
uses
{$IFDEF FPC}
LResources,
{$ENDIF}
Classes, SysUtils, Forms, Controls, Graphics, Dialogs, Buttons,
ACS_Audio,ACS_File,ACS_Classes,ACS_Allformats, ExtCtrls, StdCtrls,
ComCtrls,uPlaylist, ACS_Indicator,uvis
//You must include Output drivers to not get an "No drier selected" exception
{$IFDEF MSWINDOWS}
,ACS_DXAudio //DirectSound Driver
{$ELSE}
,ACS_AlsaAudio //Alsa Driver
// ,ACS_AOLive //AO Live Driver
{$ENDIF}
,ACS_StdAudio //Wavemapper Driver
;
type
TTimeFormat = (tfElapsed,tfRemain);
{ TfMain }
TfMain = class(TForm)
AudioOut1: TACSAudioOut;
btVizu: TBitBtn;
btPlaylist: TBitBtn;
btPause: TBitBtn;
btRew: TBitBtn;
btFfw: TBitBtn;
btPlay: TBitBtn;
btStop: TBitBtn;
btOpen: TBitBtn;
FileIn1: TACSFileIn;
lLeft: TLabel;
lFilename: TLabel;
lTime: TLabel;
Panel1: TPanel;
Progress: TProgressBar;
PlayTimer: TTimer;
lTime1: TLabel;
lTime2: TLabel;
SoundIndicator: TACSSoundIndicator;
procedure AudioOut1Done(Sender: TComponent);
procedure AudioOut1ThreadException(Sender: TComponent; E: Exception);
procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure Pauseclick(Sender: TObject);
procedure PlayClick(Sender: TObject);
procedure StopClick(Sender: TObject);
procedure OpenClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure btFfwClick(Sender: TObject);
procedure btPlaylistClick(Sender: TObject);
procedure btRewClick(Sender: TObject);
procedure btVizuClick(Sender: TObject);
procedure lTime1Click(Sender: TObject);
procedure resetDisplay;
private
{ private declarations }
FPaused : Boolean;
FStopped : Boolean;
TimeFormat : TTimeFormat;
public
{ public declarations }
end;
var
fMain: TfMain;
implementation
{ TfMain }
procedure TfMain.PlayClick(Sender: TObject);
begin
if FPaused then
begin
AudioOut1.Resume;
FPaused := False;
end
else
begin
if FileIn1.FileName = '' then
begin
if fPlaylist.lbPlaylist.Items.Count = 0 then exit;
if fPlaylist.lbPlaylist.ItemIndex = -1 then
fPlayList.lbPlaylist.ItemIndex := 0;
FileIn1.FileName := fPlayList.lbPlaylist.Items[fPlayList.lbPlaylist.ItemIndex];
lFilename.Caption := Format('File:%s',[ExtractFileName(FileIn1.FileName)]);
end;
AudioOut1.Run;
end;
FStopped := False;
btPlay.Enabled := False;
btStop.Enabled := True;
btOpen.Enabled := False;
btRew.Enabled := False;
btFfw.Enabled := False;
btPause.Enabled := True;
PlayTimer.Enabled := True;
end;
procedure TfMain.AudioOut1Done(Sender: TComponent);
begin
btPlay.Enabled := True;
btStop.Enabled := False;
btOpen.Enabled := True;
btRew.Enabled := True;
btFfw.Enabled := True;
PlayTimer.Enabled := false;
ResetDisplay;
if FStopped then
exit;
if fPlaylist.lbPlaylist.Items.Count = 0 then exit;
if fPlaylist.lbPlaylist.ItemIndex = -1 then
fPlayList.lbPlaylist.ItemIndex := 0;
FileIn1.FileName := fPlayList.lbPlaylist.Items[fPlayList.lbPlaylist.ItemIndex];
if fPlayList.lbPlaylist.Items.Count-1 > fPlayList.lbPlaylist.ItemIndex then
begin
fPlayList.lbPlaylist.ItemIndex := fPlayList.lbPlaylist.ItemIndex+1;
FileIn1.FileName := fPlayList.lbPlaylist.Items[fPlayList.lbPlaylist.ItemIndex];
lFilename.Caption := Format('File:%s',[ExtractFileName(FileIn1.FileName)]);
PlayClick(nil);
end;
end;
procedure TfMain.AudioOut1ThreadException(Sender: TComponent; E: Exception);
begin
ShowMessage(E.Message);
end;
procedure TfMain.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
FStopped := True;
if (AudioOut1.Status <> tosIdle) then
AudioOut1.Stop;
while (AudioOut1.Status <> tosIdle) do
Application.Processmessages;
end;
procedure TfMain.FormCreate(Sender: TObject);
begin
// AudioOut1.Driver := 'Alsa';
end;
procedure TfMain.Pauseclick(Sender: TObject);
begin
if FPaused then
exit;
AudioOut1.Pause;
FPaused := True;
btPause.Enabled := False;
btPlay.Enabled := True;
PlayTimer.Enabled := False;
end;
procedure TfMain.StopClick(Sender: TObject);
begin
FStopped := True;
AudioOut1.Stop;
end;
procedure TfMain.OpenClick(Sender: TObject);
begin
FileIn1.Open;
btPlay.Enabled := True;
ResetDisplay;
end;
procedure TfMain.Timer1Timer(Sender: TObject);
var
tmp : real;
begin
case TimeFormat of
tfElapsed:
begin
tmp := ((FileIn1.Position * FileIn1.TotalTime) / FileIn1.Size);
lTime.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
tmp := FileIn1.TotalTime-((FileIn1.Position * FileIn1.TotalTime) / FileIn1.Size);
lLeft.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
lTime1.Caption := 'Time elapsed';
lTime2.Caption := 'left';
end;
tfRemain:
begin
tmp := ((FileIn1.Position * FileIn1.TotalTime) / FileIn1.Size);
lLeft.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
tmp := FileIn1.TotalTime-((FileIn1.Position * FileIn1.TotalTime) / FileIn1.Size);
lTime.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
lTime1.Caption := 'Time remain';
lTime2.Caption := 'elapsed';
end;
end;
Progress.Position := round((FileIn1.Position * 100) / FileIn1.Size);
end;
procedure TfMain.btFfwClick(Sender: TObject);
begin
if fPlayList.lbPlaylist.Items.Count-1 > fPlayList.lbPlaylist.ItemIndex then
fPlayList.lbPlaylist.ItemIndex := fPlayList.lbPlaylist.ItemIndex+1;
FileIn1.FileName := fPlayList.lbPlaylist.Items[fPlayList.lbPlaylist.ItemIndex];
ResetDisplay;
end;
procedure TfMain.btPlaylistClick(Sender: TObject);
begin
fPlaylist.Visible := True;
end;
procedure TfMain.btRewClick(Sender: TObject);
begin
if fPlayList.lbPlaylist.ItemIndex >= 1 then
fPlayList.lbPlaylist.ItemIndex := fPlayList.lbPlaylist.ItemIndex-1;
FileIn1.FileName := fPlayList.lbPlaylist.Items[fPlayList.lbPlaylist.ItemIndex];
ResetDisplay;
end;
procedure TfMain.btVizuClick(Sender: TObject);
begin
fVizu.Show;
end;
procedure TfMain.lTime1Click(Sender: TObject);
begin
case TimeFormat of
tfElapsed:TimeFormat := tfRemain;
tfRemain:TimeFormat := tfElapsed;
end;
ResetDisplay;
end;
procedure TfMain.resetDisplay;
var
tmp : real;
begin
lFilename.Caption := Format('File:%s',[ExtractFileName(FileIn1.FileName)]);
case TimeFormat of
tfElapsed:
begin
tmp := ((FileIn1.Position * FileIn1.TotalTime) / FileIn1.Size);
lTime.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
tmp := FileIn1.TotalTime-((FileIn1.Position * FileIn1.TotalTime) / FileIn1.Size);
lLeft.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
lTime1.Caption := 'Time elapsed';
lTime2.Caption := 'left';
end;
tfRemain:
begin
tmp := ((FileIn1.Position * FileIn1.TotalTime) / FileIn1.Size);
lLeft.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
tmp := FileIn1.TotalTime-((FileIn1.Position * FileIn1.TotalTime) / FileIn1.Size);
lTime.Caption := Format('%.2d:%.2d:%.2d',[round((tmp-30) / 60) mod 120,round(tmp) mod 60,round(tmp*100) mod 100]);
lTime1.Caption := 'Time remain';
lTime2.Caption := 'elapsed';
end;
end;
Progress.Position := round((FileIn1.Position * 100) / FileIn1.Size);
end;
initialization
{$IFDEF FPC}
{$I umain.lrs}
{$ELSE}
{$R *.dfm}
{$ENDIF}
end.

View File

@ -0,0 +1,55 @@
object fPlaylist: TfPlaylist
Left = 278
Top = 276
Width = 208
Height = 242
BorderStyle = bsSizeToolWin
Caption = 'Playlist'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = True
DesignSize = (
200
215)
PixelsPerInch = 96
TextHeight = 13
object lbPlaylist: TListBox
Left = 0
Top = 0
Width = 200
Height = 215
Align = alClient
BorderStyle = bsNone
ItemHeight = 13
TabOrder = 0
end
object btAdd: TBitBtn
Left = 0
Top = 193
Width = 27
Height = 22
Anchors = [akLeft, akBottom]
Caption = '+'
TabOrder = 1
OnClick = btAddClick
end
object Button1: TButton
Left = 32
Top = 193
Width = 27
Height = 22
Anchors = [akLeft, akBottom]
Caption = '-'
TabOrder = 2
OnClick = Button1Click
end
object OpenDialog: TOpenDialog
FilterIndex = 0
Options = [ofAllowMultiSelect, ofPathMustExist, ofFileMustExist, ofEnableSizing]
Title = 'Vorhandene Datei '#246'ffnen'
end
end

View File

@ -0,0 +1,48 @@
object fPlaylist: TfPlaylist
BorderStyle = bsSizeToolWin
Caption = 'Playlist'
ClientHeight = 215
ClientWidth = 200
PixelsPerInch = 96
HorzScrollBar.Page = 199
VertScrollBar.Page = 214
Left = 278
Height = 215
Top = 276
Width = 200
object lbPlaylist: TListBox
Align = alClient
BorderSpacing.OnChange = nil
BorderSpacing.Bottom = 25
BorderStyle = bsNone
TabOrder = 0
Height = 190
Width = 200
end
object btAdd: TBitBtn
Anchors = [akLeft, akBottom]
Caption = '+'
OnClick = btAddClick
TabOrder = 1
Height = 22
Top = 193
Width = 27
end
object Button1: TButton
Anchors = [akLeft, akBottom]
BorderSpacing.OnChange = nil
Caption = '-'
OnClick = Button1Click
TabOrder = 2
Left = 32
Height = 22
Top = 193
Width = 27
end
object OpenDialog: TOpenDialog
Options = [ofAllowMultiSelect, ofPathMustExist, ofFileMustExist, ofEnableSizing, ofViewDetail]
Title = 'Vorhandene Datei �ffnen'
FilterIndex = 0
Title = 'Vorhandene Datei �ffnen'
end
end

View File

@ -0,0 +1,19 @@
{ Dies ist eine automatisch erzeugte Lazarus-Ressourcendatei }
LazarusResources.Add('TfPlaylist','FORMDATA',[
'TPF0'#10'TfPlaylist'#9'fPlaylist'#11'BorderStyle'#7#13'bsSizeToolWin'#7'Capt'
+'ion'#6#8'Playlist'#12'ClientHeight'#3#215#0#11'ClientWidth'#3#200#0#13'Pixe'
+'lsPerInch'#2'`'#18'HorzScrollBar.Page'#3#199#0#18'VertScrollBar.Page'#3#214
+#0#4'Left'#3#22#1#6'Height'#3#215#0#3'Top'#3#20#1#5'Width'#3#200#0#0#8'TList'
+'Box'#10'lbPlaylist'#5'Align'#7#8'alClient'#22'BorderSpacing.OnChange'#13#20
+'BorderSpacing.Bottom'#2#25#11'BorderStyle'#7#6'bsNone'#8'TabOrder'#2#0#6'He'
+'ight'#3#190#0#5'Width'#3#200#0#0#0#7'TBitBtn'#5'btAdd'#7'Anchors'#11#6'akLe'
+'ft'#8'akBottom'#0#7'Caption'#6#1'+'#7'OnClick'#7#10'btAddClick'#8'TabOrder'
+#2#1#6'Height'#2#22#3'Top'#3#193#0#5'Width'#2#27#0#0#7'TButton'#7'Button1'#7
+'Anchors'#11#6'akLeft'#8'akBottom'#0#22'BorderSpacing.OnChange'#13#7'Caption'
+#6#1'-'#7'OnClick'#7#12'Button1Click'#8'TabOrder'#2#2#4'Left'#2' '#6'Height'
+#2#22#3'Top'#3#193#0#5'Width'#2#27#0#0#11'TOpenDialog'#10'OpenDialog'#7'Opti'
+'ons'#11#18'ofAllowMultiSelect'#15'ofPathMustExist'#15'ofFileMustExist'#14'o'
+'fEnableSizing'#12'ofViewDetail'#0#5'Title'#6#23'Vorhandene Datei '#246'ffne'
+'n'#11'FilterIndex'#2#0#5'Title'#6#23'Vorhandene Datei '#246'ffnen'#0#0#0
]);

View File

@ -0,0 +1,67 @@
unit uPlaylist;
{$IFDEF FPC}
{$mode objfpc}{$H+}
{$ENDIF}
interface
uses
{$IFDEF FPC}
LResources,
{$ENDIF}
Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, Buttons;
type
{ TfPlaylist }
TfPlaylist = class(TForm)
btAdd: TBitBtn;
Button1: TButton;
lbPlaylist: TListBox;
OpenDialog: TOpenDialog;
procedure Button1Click(Sender: TObject);
procedure btAddClick(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
fPlaylist: TfPlaylist;
implementation
uses ACS_File;
{ TfPlaylist }
procedure TfPlaylist.btAddClick(Sender: TObject);
var
desc : string;
begin
FileFormats.BuildFilterStrings(desc,[fcLoad]);
OpenDialog.Filter := desc;
if OpenDialog.Execute then
begin
lbPlayList.Items.AddStrings(OpenDialog.Files);
end;
end;
procedure TfPlaylist.Button1Click(Sender: TObject);
begin
if lbPlayList.ItemIndex > -1 then
lbPlayList.Items.Delete(lbPlayList.ItemIndex);
end;
initialization
{$IFDEF FPC}
{$I uplaylist.lrs}
{$else}
{$R *.dfm}
{$ENDIF}
end.

View File

@ -0,0 +1,53 @@
object fVizu: TfVizu
Left = 483
Top = 150
Width = 202
Height = 126
BorderStyle = bsSizeToolWin
Caption = 'Visualization'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
Menu = MainMenu1
OldCreateOrder = True
OnPaint = FormPaint
PixelsPerInch = 96
TextHeight = 13
object Image: TImage
Left = 0
Top = 0
Width = 194
Height = 80
Align = alClient
Transparent = True
end
object MainMenu1: TMainMenu
Left = 17
Top = 10
object miType: TMenuItem
Caption = 'Type'
object rFFT: TMenuItem
AutoCheck = True
Caption = 'FFT'
Checked = True
GroupIndex = 1
RadioItem = True
end
object MenuItem2: TMenuItem
AutoCheck = True
Caption = 'Wave'
GroupIndex = 1
RadioItem = True
end
end
end
object Timer1: TTimer
Interval = 100
OnTimer = Timer1Timer
Left = 48
Top = 8
end
end

View File

@ -0,0 +1,49 @@
object fVizu: TfVizu
BorderStyle = bsSizeToolWin
Caption = 'Visualization'
ClientHeight = 79
ClientWidth = 194
Menu = MainMenu1
OnPaint = FormPaint
PixelsPerInch = 96
HorzScrollBar.Page = 193
VertScrollBar.Page = 78
Left = 483
Height = 99
Top = 150
Width = 194
object Image: TImage
Align = alClient
Transparent = True
Height = 79
Width = 194
end
object MainMenu1: TMainMenu
left = 17
top = 10
object miType: TMenuItem
Caption = 'Type'
object rFFT: TMenuItem
AutoCheck = True
Caption = 'FFT'
Checked = True
GroupIndex = 1
RadioItem = True
ShowAlwaysCheckable = True
end
object MenuItem2: TMenuItem
AutoCheck = True
Caption = 'Wave'
GroupIndex = 1
RadioItem = True
ShowAlwaysCheckable = True
end
end
end
object Timer1: TTimer
Interval = 150
OnTimer = Timer1Timer
left = 17
top = 44
end
end

View File

@ -0,0 +1,16 @@
{ Dies ist eine automatisch erzeugte Lazarus-Ressourcendatei }
LazarusResources.Add('TfVizu','FORMDATA',[
'TPF0'#6'TfVizu'#5'fVizu'#11'BorderStyle'#7#13'bsSizeToolWin'#7'Caption'#6#13
+'Visualization'#12'ClientHeight'#2'O'#11'ClientWidth'#3#194#0#4'Menu'#7#9'Ma'
+'inMenu1'#7'OnPaint'#7#9'FormPaint'#13'PixelsPerInch'#2'`'#18'HorzScrollBar.'
+'Page'#3#193#0#18'VertScrollBar.Page'#2'N'#4'Left'#3#227#1#6'Height'#2'c'#3
+'Top'#3#150#0#5'Width'#3#194#0#0#6'TImage'#5'Image'#5'Align'#7#8'alClient'#11
+'Transparent'#9#6'Height'#2'O'#5'Width'#3#194#0#0#0#9'TMainMenu'#9'MainMenu1'
+#4'left'#2#17#3'top'#2#10#0#9'TMenuItem'#6'miType'#7'Caption'#6#4'Type'#0#9
+'TMenuItem'#4'rFFT'#9'AutoCheck'#9#7'Caption'#6#3'FFT'#7'Checked'#9#10'Group'
+'Index'#2#1#9'RadioItem'#9#19'ShowAlwaysCheckable'#9#0#0#9'TMenuItem'#9'Menu'
+'Item2'#9'AutoCheck'#9#7'Caption'#6#4'Wave'#10'GroupIndex'#2#1#9'RadioItem'#9
+#19'ShowAlwaysCheckable'#9#0#0#0#0#6'TTimer'#6'Timer1'#8'Interval'#3#150#0#7
+'OnTimer'#7#11'Timer1Timer'#4'left'#2#17#3'top'#2','#0#0#0
]);

View File

@ -0,0 +1,104 @@
unit uvis;
{$IFDEF FPC}
{$mode objfpc}{$H+}
{$ENDIF}
interface
uses
{$IFDEF FPC}
LResources,FPImage,
{$ENDIF}
Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, Menus, ExtCtrls;
type
TVals = array[0..31] of Double;
{ TfVizu }
TfVizu = class(TForm)
Image: TImage;
MainMenu1: TMainMenu;
rFFT: TMenuItem;
MenuItem2: TMenuItem;
miType: TMenuItem;
Timer1: TTimer;
procedure FormPaint(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
lVals : array of TVals;
Vals : TVals;
end;
var
fVizu: TfVizu;
implementation
uses uMain;
{ TfVizu }
procedure TfVizu.FormPaint(Sender: TObject);
var
i,x,y : Integer;
{$IFDEF FPC}
newcolor : TFPColor;
{$ENDIF}
begin
Canvas.Lock;
Canvas.Brush.Color := clBlack;
Canvas.Pen.Color := clBlack;
Canvas.Rectangle(0,0,Width,Height);
if rFFT.Checked then
begin
fMain.SoundIndicator.GetValues(Vals);
Setlength(lVals,0);
Canvas.Pen.Color := clAqua;
Canvas.Brush.Color := clAqua;
for i := 0 to 31 do
Canvas.Rectangle(((Width div 31)*i)+1,Height-Round(Vals[i]*Height),((Width div 31)*(i+1))-1,Height);
end
else
begin
{$IFDEF FPC}
Setlength(lVals,Height div 4);
for i := 0 to length(lVals)-2 do
lVals[i] := lVals[i+1];
fMain.SoundIndicator.GetValues(lVals[length(lVals)-1]);
for y := 0 to (Height div 4)-1 do
for x := 0 to 31 do
begin
newcolor := TColorToFPColor(clBlack);
newcolor.blue := round(65535*lVals[y][x]);
newcolor.green := round(65535*lVals[y][x]);
Canvas.Brush.Color := FPColorToTColor(newcolor);
newcolor.blue := round(32000*lVals[y][x]);
newcolor.green := round(32000*lVals[y][x]);
Canvas.Pen.Color := FPColorToTColor(newcolor);
Canvas.Rectangle(((Width div 31)*x),y*4,((Width div 31)*(x+1)),((y+1)*4));
end;
{$ENDIF}
end;
Canvas.Unlock;
end;
procedure TfVizu.Timer1Timer(Sender: TObject);
begin
if fVizu.Visible then
fVizu.Invalidate;
end;
initialization
{$IFDEF FPC}
{$I uvis.lrs}
{$else}
{$R *.dfm}
{$ENDIF}
end.

View File

@ -0,0 +1,259 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<PathDelim Value="/"/>
<Version Value="5"/>
<General>
<MainUnit Value="0"/>
<IconPath Value="./"/>
<TargetFileExt Value=".exe"/>
<ActiveEditorIndexAtStart Value="3"/>
</General>
<LazDoc Paths=""/>
<Units Count="22">
<Unit0>
<CursorPos X="5" Y="3"/>
<Filename Value="recorder.lpr"/>
<IsPartOfProject Value="True"/>
<TopLine Value="1"/>
<UnitName Value="recorder"/>
<UsageCount Value="26"/>
</Unit0>
<Unit1>
<CursorPos X="49" Y="22"/>
<EditorIndex Value="0"/>
<Filename Value="umain.pas"/>
<ComponentName Value="fMain"/>
<IsPartOfProject Value="True"/>
<Loaded Value="True"/>
<ResourceFilename Value="umain.lrs"/>
<TopLine Value="1"/>
<UnitName Value="uMain"/>
<UsageCount Value="26"/>
</Unit1>
<Unit2>
<CursorPos X="1" Y="41"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/ACS_Audio.pas"/>
<TopLine Value="9"/>
<UnitName Value="acs_audio"/>
<UsageCount Value="11"/>
</Unit2>
<Unit3>
<CursorPos X="3" Y="77"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/ACS_Classes.pas"/>
<TopLine Value="63"/>
<UnitName Value="ACS_Classes"/>
<UsageCount Value="11"/>
</Unit3>
<Unit4>
<CursorPos X="1" Y="171"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/ACS_VolumeQuery.pas"/>
<TopLine Value="157"/>
<UnitName Value="ACS_VolumeQuery"/>
<UsageCount Value="11"/>
</Unit4>
<Unit5>
<CursorPos X="69" Y="32"/>
<Filename Value="D:/LKomponenten/acs/Src/Win32/acs_reg.pas"/>
<TopLine Value="13"/>
<UnitName Value="acs_reg"/>
<UsageCount Value="10"/>
</Unit5>
<Unit6>
<CursorPos X="53" Y="17"/>
<Filename Value="D:/LKomponenten/acs/Src/Linux/acs_reg.pas"/>
<TopLine Value="1"/>
<UnitName Value="acs_reg"/>
<UsageCount Value="10"/>
</Unit6>
<Unit7>
<CursorPos X="9" Y="363"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/ACS_Misc.pas"/>
<TopLine Value="340"/>
<UnitName Value="ACS_Misc"/>
<UsageCount Value="11"/>
</Unit7>
<Unit8>
<CursorPos X="1" Y="298"/>
<Filename Value="D:/LKomponenten/acs/Src/drivers/windows/ACS_Audio.inc"/>
<TopLine Value="271"/>
<UsageCount Value="11"/>
</Unit8>
<Unit9>
<CursorPos X="20" Y="176"/>
<Filename Value="D:/LKomponenten/acs/Src/drivers/ACS_StdAudio.pas"/>
<TopLine Value="168"/>
<UnitName Value="ACS_StdAudio"/>
<UsageCount Value="11"/>
</Unit9>
<Unit10>
<CursorPos X="3" Y="26"/>
<Filename Value="D:/LKomponenten/acs/Src/classes/ACS_Strings.pas"/>
<TopLine Value="18"/>
<UnitName Value="ACS_Strings"/>
<UsageCount Value="10"/>
</Unit10>
<Unit11>
<CursorPos X="1" Y="114"/>
<Filename Value="D:/LKomponenten/acs/Src/drivers/linux/ACS_Audio.inc"/>
<TopLine Value="104"/>
<UsageCount Value="10"/>
</Unit11>
<Unit12>
<CursorPos X="27" Y="63"/>
<Filename Value="umain.lfm"/>
<SyntaxHighlighter Value="LFM"/>
<TopLine Value="38"/>
<UsageCount Value="10"/>
</Unit12>
<Unit13>
<CursorPos X="1" Y="989"/>
<Filename Value="D:/fpc/packages/extra/winunits/mmsystem.pp"/>
<TopLine Value="957"/>
<UnitName Value="mmsystem"/>
<UsageCount Value="11"/>
</Unit13>
<Unit14>
<CursorPos X="4" Y="203"/>
<Filename Value="D:/LKomponenten/acs/Src/drivers/acs_dxaudio.pas"/>
<TopLine Value="171"/>
<UnitName Value="acs_dxaudio"/>
<UsageCount Value="11"/>
</Unit14>
<Unit15>
<CursorPos X="22" Y="109"/>
<EditorIndex Value="4"/>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/acs_stdaudio.pas"/>
<Loaded Value="True"/>
<TopLine Value="103"/>
<UnitName Value="acs_stdaudio"/>
<UsageCount Value="10"/>
</Unit15>
<Unit16>
<CursorPos X="21" Y="96"/>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/windows/acs_audio.inc"/>
<TopLine Value="73"/>
<UsageCount Value="10"/>
</Unit16>
<Unit17>
<CursorPos X="16" Y="239"/>
<EditorIndex Value="5"/>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/linux/acs_audio.inc"/>
<Loaded Value="True"/>
<TopLine Value="203"/>
<UsageCount Value="10"/>
</Unit17>
<Unit18>
<CursorPos X="1" Y="339"/>
<EditorIndex Value="6"/>
<Filename Value="/windows/D/lazarus/lcl/include/screen.inc"/>
<Loaded Value="True"/>
<TopLine Value="321"/>
<UsageCount Value="10"/>
</Unit18>
<Unit19>
<CursorPos X="26" Y="320"/>
<EditorIndex Value="1"/>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/linux/alsa.pas"/>
<Loaded Value="True"/>
<TopLine Value="284"/>
<UnitName Value="alsa"/>
<UsageCount Value="10"/>
</Unit19>
<Unit20>
<CursorPos X="27" Y="247"/>
<EditorIndex Value="2"/>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/linux/libao.pas"/>
<Loaded Value="True"/>
<TopLine Value="211"/>
<UnitName Value="libao"/>
<UsageCount Value="10"/>
</Unit20>
<Unit21>
<CursorPos X="1" Y="67"/>
<EditorIndex Value="3"/>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/acs_alsaaudio.pas"/>
<Loaded Value="True"/>
<TopLine Value="56"/>
<UnitName Value="acs_alsaaudio"/>
<UsageCount Value="10"/>
</Unit21>
</Units>
<PublishOptions>
<Version Value="2"/>
<IgnoreBinaries Value="False"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
<Display Use="True" Value=":1"/>
</local>
</RunParams>
<RequiredPackages Count="2">
<Item1>
<PackageName Value="LCL"/>
</Item1>
<Item2>
<PackageName Value="LAZ_ACS"/>
<MinVersion Major="2" Minor="4" Valid="True"/>
</Item2>
</RequiredPackages>
<JumpHistory Count="5" HistoryIndex="4">
<Position1>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/acs_stdaudio.pas"/>
<Caret Line="1" Column="1" TopLine="1"/>
</Position1>
<Position2>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/acs_stdaudio.pas"/>
<Caret Line="151" Column="36" TopLine="123"/>
</Position2>
<Position3>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/acs_stdaudio.pas"/>
<Caret Line="170" Column="5" TopLine="152"/>
</Position3>
<Position4>
<Filename Value="/windows/D/LKomponenten/acs/Src/drivers/linux/acs_audio.inc"/>
<Caret Line="239" Column="16" TopLine="203"/>
</Position4>
<Position5>
<Filename Value="/windows/D/lazarus/lcl/include/screen.inc"/>
<Caret Line="339" Column="26" TopLine="318"/>
</Position5>
</JumpHistory>
</ProjectOptions>
<CompilerOptions>
<Version Value="5"/>
<SearchPaths>
<SrcPath Value="$(LazarusDir)/lcl/;$(LazarusDir)/lcl/interfaces/$(LCLWidgetType)/"/>
</SearchPaths>
<CodeGeneration>
<Generate Value="Faster"/>
</CodeGeneration>
<Linking>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
<Other>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
<Debugging>
<BreakPoints Count="1">
<Item1>
<Source Value="D:/Worldspace/Src/gstdintf/home/z0m3ie/lazarus/components/turbopower_ipro/iphtml.pas"/>
<Line Value="17239"/>
</Item1>
</BreakPoints>
<Watches Count="1">
<Item1>
<Expression Value="TControlPanel(FList^[i])"/>
</Item1>
</Watches>
</Debugging>
</CONFIG>

View File

@ -0,0 +1,74 @@
object fMain: TfMain
BorderStyle = bsToolWindow
Caption = 'Sound Indicator'
ClientHeight = 53
ClientWidth = 400
OnShow = FormShow
PixelsPerInch = 96
HorzScrollBar.Page = 399
VertScrollBar.Page = 52
Left = 276
Height = 53
Top = 155
Width = 400
object Label1: TLabel
Caption = 'Input Level'
Color = clNone
ParentColor = False
Left = 8
Height = 14
Top = 2
Width = 55
end
object Label2: TLabel
Caption = '-3 db'
Color = clNone
ParentColor = False
Left = 192
Height = 14
Top = 36
Width = 26
end
object Label3: TLabel
Caption = '-96 db'
Color = clNone
ParentColor = False
Left = 8
Height = 14
Top = 36
Width = 32
end
object ProgressBar: TProgressBar
Max = 200
Left = 8
Height = 16
Top = 16
Width = 376
end
object AudioIn1: TACSAudioIn
Driver = 'Wavemapper'
InBitsPerSample = 8
InChannels = 1
InSampleRate = 8000
RecTime = -1
left = 9
top = 296
end
object NULLOut1: TACSNULLOut
Input = VolumeQuery
SuspendWhenIdle = True
left = 9
top = 368
end
object VolumeQuery: TACSVolumeQuery
Input = AudioIn1
left = 9
top = 332
end
object Timer1: TTimer
Interval = 100
OnTimer = Timer1Timer
left = 9
top = 264
end
end

View File

@ -0,0 +1,22 @@
{ Dies ist eine automatisch erzeugte Lazarus-Ressourcendatei }
LazarusResources.Add('TfMain','FORMDATA',[
'TPF0'#6'TfMain'#5'fMain'#11'BorderStyle'#7#12'bsToolWindow'#7'Caption'#6#15
+'Sound Indicator'#12'ClientHeight'#2'5'#11'ClientWidth'#3#144#1#6'OnShow'#7#8
+'FormShow'#13'PixelsPerInch'#2'`'#18'HorzScrollBar.Page'#3#143#1#18'VertScro'
+'llBar.Page'#2'4'#4'Left'#3#20#1#6'Height'#2'5'#3'Top'#3#155#0#5'Width'#3#144
+#1#0#6'TLabel'#6'Label1'#7'Caption'#6#11'Input Level'#5'Color'#7#6'clNone'#11
+'ParentColor'#8#4'Left'#2#8#6'Height'#2#14#3'Top'#2#2#5'Width'#2'7'#0#0#6'TL'
+'abel'#6'Label2'#7'Caption'#6#5'-3 db'#5'Color'#7#6'clNone'#11'ParentColor'#8
+#4'Left'#3#192#0#6'Height'#2#14#3'Top'#2'$'#5'Width'#2#26#0#0#6'TLabel'#6'La'
+'bel3'#7'Caption'#6#6'-96 db'#5'Color'#7#6'clNone'#11'ParentColor'#8#4'Left'
+#2#8#6'Height'#2#14#3'Top'#2'$'#5'Width'#2' '#0#0#12'TProgressBar'#11'Progre'
+'ssBar'#3'Max'#3#200#0#4'Left'#2#8#6'Height'#2#16#3'Top'#2#16#5'Width'#3'x'#1
+#0#0#11'TACSAudioIn'#8'AudioIn1'#6'Driver'#6#10'Wavemapper'#15'InBitsPerSamp'
+'le'#2#8#10'InChannels'#2#1#12'InSampleRate'#3'@'#31#7'RecTime'#2#255#4'left'
+#2#9#3'top'#3'('#1#0#0#11'TACSNULLOut'#8'NULLOut1'#5'Input'#7#11'VolumeQuery'
+#15'SuspendWhenIdle'#9#4'left'#2#9#3'top'#3'p'#1#0#0#15'TACSVolumeQuery'#11
+'VolumeQuery'#5'Input'#7#8'AudioIn1'#4'left'#2#9#3'top'#3'L'#1#0#0#6'TTimer'
+#6'Timer1'#8'Interval'#2'd'#7'OnTimer'#7#11'Timer1Timer'#4'left'#2#9#3'top'#3
+#8#1#0#0#0
]);

View File

@ -0,0 +1,53 @@
unit uMain;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ACS_Audio, ComCtrls, StdCtrls, ACS_Misc,
ACS_VolumeQuery, ExtCtrls;
type
{ TfMain }
TfMain = class(TForm)
AudioIn1: TACSAudioIn;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
NULLOut1: TACSNULLOut;
ProgressBar: TProgressBar;
Timer1: TTimer;
VolumeQuery: TACSVolumeQuery;
procedure FormShow(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
fMain: TfMain;
implementation
{ TfMain }
procedure TfMain.FormShow(Sender: TObject);
begin
NULLOut1.Run;
end;
procedure TfMain.Timer1Timer(Sender: TObject);
begin
ProgressBar.Position := (round((VolumeQuery.dbLeft+VolumeQuery.dbRight)/2)+96);
end;
initialization
{$I umain.lrs}
end.