From bee71e3ec53c1478420a4d87551c2d1901215b2b Mon Sep 17 00:00:00 2001 From: yamat0jp Date: Wed, 9 May 2018 19:48:09 +0900 Subject: [PATCH] dumpWAV chapter1 --- .gitignore | 216 +++++++++++++++++++++ spWave.pas | 28 +++ wav.pas | 114 +++++++++++ wav_proj.dpr | 111 +++++++++++ wav_proj.dproj | 530 +++++++++++++++++++++++++++++++++++++++++++++++++++ wav_proj.dproj.local | 53 ++++++ wav_proj.identcache | Bin 0 -> 175 bytes wav_proj.res | Bin 0 -> 96 bytes 8 files changed, 1052 insertions(+) create mode 100644 .gitignore create mode 100644 spWave.pas create mode 100644 wav.pas create mode 100644 wav_proj.dpr create mode 100644 wav_proj.dproj create mode 100644 wav_proj.dproj.local create mode 100644 wav_proj.identcache create mode 100644 wav_proj.res diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f91ff2b --- /dev/null +++ b/.gitignore @@ -0,0 +1,216 @@ +################# +## Eclipse +################# + +*.pydevproject +.project +.metadata +bin/ +tmp/ +*.tmp +*.bak +*.swp +*~.nib +local.properties +.classpath +.settings/ +.loadpath + +# External tool builders +.externalToolBuilders/ + +# Locally stored "Eclipse launch configurations" +*.launch + +# CDT-specific +.cproject + +# PDT-specific +.buildpath + + +################# +## Visual Studio +################# + +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# User-specific files +*.suo +*.user +*.sln.docstates + +# Build results + +[Dd]ebug/ +[Rr]elease/ +x64/ +build/ +[Bb]in/ +[Oo]bj/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +*_i.c +*_p.c +*.ilk +*.meta +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.log +*.scc + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opensdf +*.sdf +*.cachefile + +# Visual Studio profiler +*.psess +*.vsp +*.vspx + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# NCrunch +*.ncrunch* +.*crunch*.local.xml + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.Publish.xml +*.pubxml +*.publishproj + +# NuGet Packages Directory +## TODO: If you have NuGet Package Restore enabled, uncomment the next line +#packages/ + +# Windows Azure Build Output +csx +*.build.csdef + +# Windows Store app package directory +AppPackages/ + +# Others +sql/ +*.Cache +ClientBin/ +[Ss]tyle[Cc]op.* +~$* +*~ +*.dbmdl +*.[Pp]ublish.xml +*.pfx +*.publishsettings + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file to a newer +# Visual Studio version. Backup files are not needed, because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +App_Data/*.mdf +App_Data/*.ldf + +############# +## Windows detritus +############# + +# Windows image file caches +Thumbs.db +ehthumbs.db + +# Folder config file +Desktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Mac crap +.DS_Store + + +############# +## Python +############# + +*.py[cod] + +# Packages +*.egg +*.egg-info +dist/ +build/ +eggs/ +parts/ +var/ +sdist/ +develop-eggs/ +.installed.cfg + +# Installer logs +pip-log.txt + +# Unit test / coverage reports +.coverage +.tox + +#Translations +*.mo + +#Mr Developer +.mr.developer.cfg diff --git a/spWave.pas b/spWave.pas new file mode 100644 index 0000000..52aa723 --- /dev/null +++ b/spWave.pas @@ -0,0 +1,28 @@ + +type + SWaveFileHeader = record + hdrRiff: array [0 .. 3] of AnsiChar; + sizeOfFile: Cardinal; + hdrWave: array [0 .. 3] of AnsiChar; + end; + + tChank = record + hdrFmtData: array [0 .. 3] of AnsiChar; + sizeOfFmtData: Cardinal; + end; + + tWaveFormatPcm = record + formatTag: Word; + channels: Word; + sampleParSec: Cardinal; + bytesPerSec: Cardinal; + blockAlign: Word; + bitsPerSample: Word; + end; + +const + STR_RIFF = 'RIFF'; + STR_WAVE = 'WAVE'; + STR_fmt = 'fmt '; + STR_DATA = 'data'; + _MAX_PATH = 255; \ No newline at end of file diff --git a/wav.pas b/wav.pas new file mode 100644 index 0000000..39e0ca0 --- /dev/null +++ b/wav.pas @@ -0,0 +1,114 @@ +unit wav; + +interface + +uses + System.Classes, System.SysUtils; + +{$INCLUDE spWave} +function readFmtChank(fp: TFileStream; waveFmtPcm: tWaveFormatPcm): integer; +function wavHdrRead(wavefile: PChar; var sampRate, sampBits: SmallInt; + var posOfData, sizeOfData: Cardinal): integer; + +implementation + +function readFmtChank(fp: TFileStream; waveFmtPcm: tWaveFormatPcm): integer; +begin + result := 0; + try + fp.ReadBuffer(waveFmtPcm, SizeOf(tWaveFormatPcm)); + Writeln('ƒf[ƒ^Œ`Ž®F', waveFmtPcm.formatTag); + Writeln('ƒ`ƒƒƒ“ƒlƒ‹”F', waveFmtPcm.channels); + Writeln('ƒTƒ“ƒvƒŠƒ“ƒOŽü”g”F', waveFmtPcm.sampleParSec); + Writeln('ƒoƒCƒg”@/@•bF', waveFmtPcm.bytesPerSec); + Writeln('ƒoƒCƒg” ‚wƒ`ƒƒƒ“ƒlƒ‹”F', waveFmtPcm.blockAlign); + Writeln('ƒrƒbƒg”@/@ƒTƒ“ƒvƒ‹F', waveFmtPcm.bitsPerSample); + except + on EReadError do + result := -1; + end; +end; + +function wavHdrRead(wavefile: PChar; var sampRate, sampBits: SmallInt; + var posOfData, sizeOfData: Cardinal): integer; +var + waveFileHeader: SWaveFileHeader; + waveFmtPcm: tWaveFormatPcm; + chank: tChank; + len: integer; + fp: TFileStream; +begin + try + fp := TFileStream.Create(wavefile, fmOpenRead); + fp.ReadBuffer(waveFileHeader, SizeOf(SWaveFileHeader)); + except + on EReadError do + begin + Writeln('“ǂݍž‚ÝŽ¸”s'); + fp.Free; + end; + else + Writeln('ŠJ‚¯‚Ü‚¹‚ñ'); + result := -1; + Exit; + end; + Writeln(wavefile); + if CompareStr(waveFileHeader.hdrRiff, STR_RIFF) <> 0 then + begin + Writeln('RIFFƒtƒH[ƒ}ƒbƒg‚Å‚È‚¢'); + result := -1; + fp.Free; + Exit; + end; + if CompareStr(waveFileHeader.hdrWave, STR_WAVE) <> 0 then + begin + Writeln('"WAVE"‚ª‚È‚¢'); + result := -1; + fp.Free; + Exit; + end; + while True do + begin + try + fp.ReadBuffer(chank, SizeOf(tChank)); + except + on EReadError do + begin + result := 0; + fp.Free; + break; + end; + end; + if CompareStr(chank.hdrFmtData, STR_fmt) = 0 then + begin + len := chank.sizeOfFmtData; + Writeln('fmt ‚Ì’·‚³', len, '[bytes]'); + if readFmtChank(fp, waveFmtPcm) <> 0 then + begin + result := -1; + fp.Free; + Exit; + end; + sampRate := waveFmtPcm.sampleParSec; + sampBits := waveFmtPcm.bytesPerSec; + end + else if CompareStr(chank.hdrFmtData, STR_data) = 0 then + begin + sizeOfData := chank.sizeOfFmtData; + Writeln('data‚Ì’·‚³:', sizeOfData, '[bytes]'); + posOfData := fp.Position; + fp.Seek(sizeOfData - 4, soFromCurrent); + break; + end + else + begin + len := chank.sizeOfFmtData; + Writeln(chank.hdrFmtData, '‚Ì’·‚³[bytes]', len); + fp.Seek(len, soFromCurrent); + end; + end; + fp.Free; + result := 0; +end; + +end. diff --git a/wav_proj.dpr b/wav_proj.dpr new file mode 100644 index 0000000..14b6d20 --- /dev/null +++ b/wav_proj.dpr @@ -0,0 +1,111 @@ +program wav_proj; + +{$APPTYPE CONSOLE} +{$R *.res} + +uses + System.SysUtils, System.Classes, + wav in 'wav.pas'; + +function dump8BitWav(fpIn: TFileStream; sizeOfData: SmallInt): integer; +var + i: integer; + s: Single; + c: array [0 .. 1] of ShortInt; +begin + result := 0; + i := 0; + s := sizeOfData / SizeOf(c); + while i < s do + begin + try + fpIn.ReadBuffer(c, SizeOf(c)); + except + result := -1; + break; + end; + Writeln(c[0],',',c[1]); + inc(i); + end; +end; + +function dump16BitWav(fpIn: TFileStream; sizeOfData: SmallInt): integer; +var + i: integer; + s: Single; + c: array [0 .. 1] of SmallInt; +begin + result := 0; + i := 0; + s := sizeOfData / SizeOf(c); + while i < s do + begin + try + fpIn.ReadBuffer(c, SizeOf(c)); + except + result := -1; + break; + end; + Writeln(c[0],',',c[1]); + inc(i); + end; +end; + +function dumpDataSub(fpIn: TFileStream; posOfData, sizeOfData: integer; + bytesPerSingleCh: SmallInt): SmallInt; +begin + fpIn.Seek(posOfData, soFromCurrent); + if bytesPerSingleCh = 1 then + result := dump8BitWav(fpIn, sizeOfData) + else + result := dump16BitWav(fpIn, sizeOfData); +end; + +function dumpData(inFile: PChar; sampBits, posOfData, sizeOfData: SmallInt) + : SmallInt; +var + bytesPerSingleCh: SmallInt; + fpIn: TFileStream; +begin + result := -1; + bytesPerSingleCh := sampBits div 8; + if FileExists(inFile) = false then + begin + Writeln('ƒI[ƒvƒ“‚Å‚«‚Ü‚¹‚ñ.'); + Exit; + end; + fpIn := TFileStream.Create(inFile, fmOpenRead); + try + if dumpDataSub(fpIn, posOfData, sizeOfData, bytesPerSingleCh) <> 0 then + begin + Writeln('ƒGƒ‰[”­¶.'); + Exit; + end; + finally + fpIn.Free; + end; + result := 0; +end; + +var + sampRate, sampBits: SmallInt; + posOfData, sizeOfData: Cardinal; + +begin + try + { TODO -oUser -cConsole ƒƒCƒ“ : ‚±‚±‚ɃR[ƒh‚ð‹Lq‚µ‚Ä‚­‚¾‚³‚¢ } + if ParamCount <> 1 then + begin + Writeln('wav ƒtƒ@ƒCƒ‹‚ðƒ_ƒ“ƒv‚µ‚Ü‚·.'#13#10, 'ˆø”‚É <“ü—̓tƒ@ƒCƒ‹–¼> ‚ðŽw’肵‚Ä‚­‚¾‚³‚¢.'#13#10#13#10, + '—á : dumpWav in.wav'); + Exit; + end; + wavHdrRead(PChar(ParamStr(1)), sampRate, sampBits, posOfData, sizeOfData); + dumpData(PChar(ParamStr(1)), sampBits, posOfData, sizeOfData); + Writeln('Š®—¹'); + except + on E: Exception do + Writeln(E.ClassName, ': ', E.Message); + end; + +end. diff --git a/wav_proj.dproj b/wav_proj.dproj new file mode 100644 index 0000000..0508dcc --- /dev/null +++ b/wav_proj.dproj @@ -0,0 +1,530 @@ + + + {EFC6C164-E03D-432F-9115-1F6A82A93E06} + 16.1 + None + wav_proj.dpr + True + Debug + Win32 + 3 + Console + + + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Cfg_1 + true + true + + + true + Cfg_1 + true + true + + + true + Base + true + + + true + Cfg_2 + true + true + + + System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace) + wav_proj + .\$(Platform)\$(Config) + .\$(Platform)\$(Config) + false + false + false + false + false + + + $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png + $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png + $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png + $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png + FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;fmx;IndySystem;tethering;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapProviderClient;DbxCommonDriver;dbxcds;fmxFireDAC;CustomIPTransport;dsnap;IndyIPServer;IndyCore;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;dsnapxml;bindcompfmx;RESTBackendComponents;emsclientfiredac;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;xmlrtl;DataSnapNativeClient;ibxpress;SOEngine;IndyProtocols;FireDACCommonDriver;bindengine;bindcompdbx;soaprtl;FMXTee;emsclient;FireDAC;inet;soapmidas;RESTComponents;dbexpress;IndyIPClient;$(DCC_UsePackage) + $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png + $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png + $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png + $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png + $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png + + + FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;fmx;IndySystem;tethering;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapProviderClient;DbxCommonDriver;dbxcds;fmxFireDAC;CustomIPTransport;dsnap;IndyIPServer;fmxase;IndyCore;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;dsnapxml;bindcompfmx;RESTBackendComponents;emsclientfiredac;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;xmlrtl;DataSnapNativeClient;ibxpress;IndyProtocols;FireDACCommonDriver;bindengine;bindcompdbx;soaprtl;FMXTee;emsclient;FireDAC;inet;soapmidas;RESTComponents;dbexpress;IndyIPClient;$(DCC_UsePackage) + + + FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;fmx;IndySystem;tethering;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapProviderClient;DbxCommonDriver;dbxcds;fmxFireDAC;CustomIPTransport;dsnap;IndyIPServer;fmxase;IndyCore;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;dsnapxml;bindcompfmx;RESTBackendComponents;emsclientfiredac;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;xmlrtl;DataSnapNativeClient;ibxpress;SOEngine;IndyProtocols;FireDACCommonDriver;bindengine;bindcompdbx;soaprtl;FMXTee;emsclient;FireDAC;inet;soapmidas;RESTComponents;dbexpress;IndyIPClient;$(DCC_UsePackage) + + + FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;FireDACPgDriver;fmx;IndySystem;tethering;DBXInterBaseDriver;DataSnapClient;DataSnapServer;DataSnapCommon;DataSnapProviderClient;DbxCommonDriver;dbxcds;fmxFireDAC;DBXOracleDriver;CustomIPTransport;dsnap;IndyIPServer;fmxase;IndyCore;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;inetdbxpress;dsnapxml;FireDACASADriver;bindcompfmx;FireDACODBCDriver;RESTBackendComponents;emsclientfiredac;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;inetdb;xmlrtl;DataSnapNativeClient;ibxpress;IndyProtocols;DBXMySQLDriver;FireDACCommonDriver;bindengine;bindcompdbx;soaprtl;FMXTee;emsclient;FireDACMSSQLDriver;FireDAC;DBXInformixDriver;DataSnapServerMidas;DBXFirebirdDriver;inet;fmxobj;FireDACMySQLDriver;soapmidas;DBXSybaseASADriver;FireDACOracleDriver;fmxdae;RESTComponents;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage) + true + + + Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace) + FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;FireDACPgDriver;fmx;IndySystem;frxe21;TeeDB;tethering;vclib;DBXInterBaseDriver;DataSnapClient;DataSnapServer;frx21;DataSnapCommon;DataSnapProviderClient;DBXSybaseASEDriver;DbxCommonDriver;vclimg;dbxcds;DatasnapConnectorsFreePascal;MetropolisUILiveTile;vcldb;vcldsnap;fmxFireDAC;DBXDb2Driver;DBXOracleDriver;CustomIPTransport;vclribbon;dsnap;IndyIPServer;fmxase;vcl;IndyCore;DBXMSSQLDriver;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;CodeSiteExpressPkg;DataSnapFireDAC;FireDACDBXDriver;soapserver;inetdbxpress;dsnapxml;FireDACInfxDriver;FireDACDb2Driver;adortl;FireDACASADriver;Intraweb_14_DXE7;bindcompfmx;FireDACODBCDriver;RESTBackendComponents;emsclientfiredac;rtl;dbrtl;DbxClientDriver;frxTee21;FireDACCommon;bindcomp;inetdb;Tee;DBXOdbcDriver;frxDB21;vclFireDAC;xmlrtl;DataSnapNativeClient;svnui;ibxpress;SOEngine;IndyProtocols;DBXMySQLDriver;FireDACCommonDriver;vclactnband;bindengine;bindcompdbx;soaprtl;FMXTee;TeeUI;bindcompvcl;vclie;FireDACADSDriver;vcltouch;emsclient;VCLRESTComponents;FireDACMSSQLDriver;FireDAC;VclSmp;DBXInformixDriver;DataSnapConnectors;Python_XE7;DataSnapServerMidas;dsnapcon;DBXFirebirdDriver;inet;fmxobj;FireDACMySQLDriver;soapmidas;vclx;svn;DBXSybaseASADriver;FireDACOracleDriver;fmxdae;RESTComponents;FireDACMSAccDriver;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage) + true + 1033 + CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= + + + Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace) + 1033 + CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= + FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;FireDACPgDriver;fmx;IndySystem;TeeDB;tethering;vclib;DBXInterBaseDriver;DataSnapClient;DataSnapServer;DataSnapCommon;DataSnapProviderClient;DBXSybaseASEDriver;DbxCommonDriver;vclimg;dbxcds;DatasnapConnectorsFreePascal;MetropolisUILiveTile;vcldb;vcldsnap;fmxFireDAC;DBXDb2Driver;DBXOracleDriver;CustomIPTransport;vclribbon;dsnap;IndyIPServer;fmxase;vcl;IndyCore;DBXMSSQLDriver;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;inetdbxpress;dsnapxml;FireDACInfxDriver;FireDACDb2Driver;adortl;FireDACASADriver;bindcompfmx;FireDACODBCDriver;RESTBackendComponents;emsclientfiredac;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;inetdb;Tee;DBXOdbcDriver;vclFireDAC;xmlrtl;DataSnapNativeClient;ibxpress;IndyProtocols;DBXMySQLDriver;FireDACCommonDriver;vclactnband;bindengine;bindcompdbx;soaprtl;FMXTee;TeeUI;bindcompvcl;vclie;FireDACADSDriver;vcltouch;emsclient;VCLRESTComponents;FireDACMSSQLDriver;FireDAC;VclSmp;DBXInformixDriver;DataSnapConnectors;Python_XE7;DataSnapServerMidas;dsnapcon;DBXFirebirdDriver;inet;fmxobj;FireDACMySQLDriver;soapmidas;vclx;DBXSybaseASADriver;FireDACOracleDriver;fmxdae;RESTComponents;FireDACMSAccDriver;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage) + true + + + DEBUG;$(DCC_Define) + true + false + true + true + true + + + false + + + temp.wav + + + false + RELEASE;$(DCC_Define) + 0 + 0 + + + temp.wav + + + + MainSource + + + + Cfg_2 + Base + + + Base + + + Cfg_1 + Base + + + + Delphi.Personality.12 + Application + + + + wav_proj.dpr + + + + + + true + + + true + + + + + wav_proj.exe + true + + + + + 1 + .dylib + + + 0 + .bpl + + + Contents\MacOS + 1 + .dylib + + + 1 + .dylib + + + + + 1 + .dylib + + + 0 + .dll;.bpl + + + Contents\MacOS + 1 + .dylib + + + 1 + .dylib + + + + + 1 + + + 1 + + + + + Contents + 1 + + + + + ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF + 1 + + + + + res\drawable-normal + 1 + + + + + library\lib\x86 + 1 + + + + + 1 + + + 1 + + + + + ../ + 1 + + + + + library\lib\armeabi-v7a + 1 + + + + + 1 + + + 1 + + + + + res\drawable-xlarge + 1 + + + + + res\drawable-xhdpi + 1 + + + + + 1 + + + 1 + + + + + res\drawable-xxhdpi + 1 + + + + + library\lib\mips + 1 + + + + + res\drawable + 1 + + + + + Contents\MacOS + 1 + + + 1 + + + 0 + + + + + Contents\MacOS + 1 + .framework + + + 0 + + + + + res\drawable-small + 1 + + + + + ../ + 1 + + + + + Contents\MacOS + 1 + + + 1 + + + Contents\MacOS + 0 + + + + + classes + 1 + + + + + 1 + + + 1 + + + + + 1 + + + 1 + + + + + res\drawable + 1 + + + + + Contents\Resources + 1 + + + + + 1 + + + + + 1 + + + 1 + + + + + 1 + + + library\lib\armeabi-v7a + 1 + + + 0 + + + Contents\MacOS + 1 + + + 1 + + + + + library\lib\armeabi + 1 + + + + + res\drawable-large + 1 + + + + + 0 + + + 0 + + + 0 + + + Contents\MacOS + 0 + + + 0 + + + + + 1 + + + 1 + + + + + res\drawable-ldpi + 1 + + + + + res\values + 1 + + + + + 1 + + + 1 + + + + + res\drawable-mdpi + 1 + + + + + res\drawable-hdpi + 1 + + + + + 1 + + + + + + + + + + + False + False + False + False + True + True + + + 12 + + + + + diff --git a/wav_proj.dproj.local b/wav_proj.dproj.local new file mode 100644 index 0000000..646bd3d --- /dev/null +++ b/wav_proj.dproj.local @@ -0,0 +1,53 @@ + + + + 2017/07/29 10:51:42.000.518,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2017/09/17 22:32:14.000.990,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas + 2017/10/14 15:27:41.000.965,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\FormUnit1.pas + 2017/10/14 15:27:42.000.078,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/10/14 15:27:42.000.160,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas + 2017/10/19 20:48:10.000.837,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/10/19 20:48:11.000.893,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas + 2017/10/19 20:49:15.000.988,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2017/10/19 20:49:16.000.125,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/10/19 20:49:16.000.218,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas + 2017/10/19 20:49:45.000.816,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/10/19 20:49:45.000.913,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas + 2017/10/19 20:50:18.000.999,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/10/19 20:50:19.000.049,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas + 2017/10/19 21:37:00.000.271,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2017/10/19 21:37:00.000.365,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/10/19 21:37:00.000.652,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas + 2017/10/28 22:58:31.000.296,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2017/10/29 14:44:00.000.024,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2017/10/29 16:13:37.000.174,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/10/29 16:13:37.000.037,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2017/10/29 16:13:37.000.809,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas + 2017/10/29 16:55:16.000.244,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/10/29 16:55:16.000.109,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2017/10/29 16:55:16.000.343,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas + 2017/10/30 15:04:38.000.106,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas + 2017/11/01 16:00:52.000.956,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/11/01 16:00:53.000.058,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas + 2017/11/01 16:29:36.000.361,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas + 2017/11/01 18:12:23.000.350,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/11/01 18:12:24.000.771,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas + 2017/11/01 18:21:25.000.947,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/11/01 18:21:26.000.254,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas + 2017/11/01 18:23:22.000.440,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas + 2017/11/01 18:23:22.000.344,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/11/01 18:23:22.000.193,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\FormUnit1.pas + 2017/11/01 18:33:21.000.032,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas + 2017/11/01 18:33:21.000.133,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas + 2017/11/01 18:33:39.000.795,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas + 2017/11/01 19:08:03.000.193,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas + 2017/11/30 19:11:41.000.772,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2018/01/01 12:40:34.000.125,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2018/01/01 12:40:55.000.044,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2018/05/07 18:00:45.000.726,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas + 2018/05/07 18:01:10.000.795,C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\wav.pas + 2018/05/07 18:01:39.000.274,C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Project1.dproj=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\wav_proj.dproj + 2018/05/07 21:20:21.000.796,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\Unit1.pas + 2018/05/07 21:20:27.000.646,C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\spWave.pas=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\Unit1.pas + + diff --git a/wav_proj.identcache b/wav_proj.identcache new file mode 100644 index 0000000000000000000000000000000000000000..4f3b88ad1fe8932539ad0fbfe2cc1d9883838c80 GIT binary patch literal 175 zcmZQ#U|{fewu%WYPAw{qsZ7jGEQxW+PcF?(%_}L6am`IiEJ{vHNiE8c2`(v3$;^)l tD9X=DO$N&4Rwfn{#FQtNfpB~QP*^Xepa^Ij9Jo<#u3kZ6G2A>L0|4>FI(h&A literal 0 HcmV?d00001 diff --git a/wav_proj.res b/wav_proj.res new file mode 100644 index 0000000000000000000000000000000000000000..93e7e944f20ed0f0e50532c1b7ef56bb8d255d33 GIT binary patch literal 96 zcmZQzU|>)H;{X347|28cOhBFu5dZ(r#Sp;Y!{Epe!r;c>&k)4m3uHM0X?F%!AS)QE O%YcEC1!e#