OSDN Git Service

完成したはずです
authoryamat0jp <yamat0jp@yahoo.co.jp>
Sat, 12 May 2018 23:14:54 +0000 (08:14 +0900)
committeryamat0jp <yamat0jp@yahoo.co.jp>
Sat, 12 May 2018 23:14:54 +0000 (08:14 +0900)
ヘッドホンがステレオ対応していなかったのか両方から聞こえます
けれどもうまく動いています

spWav.pas
wav.pas
wav_proj.dpr
wav_proj.dproj.local
wav_proj.identcache

index aad89bf..688af66 100644 (file)
--- a/spWav.pas
+++ b/spWav.pas
@@ -2,31 +2,31 @@
 type
   SWaveFileHeader = record
     hdrRiff: array [0 .. 3] of AnsiChar;
-    sizeOfFile: LongInt;
+    sizeOfFile: LongWord;
     hdrWave: array [0 .. 3] of AnsiChar;
   end;
 
   tChank = record
     hdrFmtData: array [0 .. 3] of AnsiChar;
-    sizeOfFmtData: LongInt;
+    sizeOfFmtData: LongWord;
   end;
 
   tWaveFormatPcm = record
-    formatTag: Byte;
-    channels: Byte;
+    formatTag: SmallInt;
+    channels: SmallInt;
     sampleParSec: LongWord;
     bytesPerSec: LongWord;
-    blockAlign: Byte;
-    bitsPerSample: Byte;
+    blockAlign: SmallInt;
+    bitsPerSample: SmallInt;
   end;
 
   WrSWaveFileHeader = record
     hdrRiff: array [0..3] of AnsiChar;
     sizeOfFile: LongWord;
-    stWaveFormat: tWaveFormatPCM;
     hdrWave: array [0..3] of AnsiChar;
     hdrFmt: array [0..3] of AnsiChar;
     sizeOfFmt: LongWord;
+    stWaveFormat: tWaveFormatPCM;
     hdrData: array [0..3] of AnsiChar;
     sizeOfData: LongWord;
   end;
diff --git a/wav.pas b/wav.pas
index 6bd78dd..e4827d3 100644 (file)
--- a/wav.pas
+++ b/wav.pas
@@ -89,7 +89,7 @@ begin
     Exit;
   end;
   fPos := 0;
-  len := 0;
+  len := waveFileHeader.sizeOfFile;
   while True do
   begin
     try
@@ -130,7 +130,7 @@ begin
       len := chank.sizeOfFmtData;
       Writeln(chank.hdrFmtData, '\82Ì\92·\82³[bytes]', len);
       fPos := fp.Position;
-      fp.Seek(len, soFromCurrent);
+      fp.Seek(len,soFromCurrent);
     end;
   end;
   fp.Free;
index 93f971d..9caf049 100644 (file)
@@ -79,7 +79,7 @@ begin
     fpOut := TFileStream.Create(outFile, fmCreate);
     bytesPerSingleCh := sampBits div 8;
     if waveHeaderWrite(fpOut, sizeOfData, bytesPerSingleCh, sampRate,
-      sampBits) = -1 then
+      sampBits) <> 44 then
       raise EWriteError.Create('\83w\83b\83_\82ð\8f\91\82«\8d\9e\82ß\82Ü\82¹\82ñ');
     if wavDataWrite(fpIn, fpOut, posOfData, sizeOfData, bytesPerSingleCh) = -1
     then
index 6b8a0be..74aa953 100644 (file)
@@ -11,8 +11,8 @@
     <Transaction>2017/10/19 20:49:15.000.988,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
     <Transaction>2017/10/19 20:49:16.000.125,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/10/19 20:49:16.000.218,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas</Transaction>
-    <Transaction>2017/10/19 20:49:45.000.816,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/10/19 20:49:45.000.913,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas</Transaction>
+    <Transaction>2017/10/19 20:49:45.000.816,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/10/19 20:50:18.000.999,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/10/19 20:50:19.000.049,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas</Transaction>
     <Transaction>2017/10/19 21:37:00.000.271,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
     <Transaction>2017/10/28 22:58:31.000.296,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
     <Transaction>2017/10/29 14:44:00.000.024,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
     <Transaction>2017/10/29 16:13:37.000.037,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
-    <Transaction>2017/10/29 16:13:37.000.174,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/10/29 16:13:37.000.809,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas</Transaction>
-    <Transaction>2017/10/29 16:55:16.000.109,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
-    <Transaction>2017/10/29 16:55:16.000.343,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas</Transaction>
+    <Transaction>2017/10/29 16:13:37.000.174,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/10/29 16:55:16.000.244,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
+    <Transaction>2017/10/29 16:55:16.000.343,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas</Transaction>
+    <Transaction>2017/10/29 16:55:16.000.109,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
     <Transaction>2017/10/30 15:04:38.000.106,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas</Transaction>
     <Transaction>2017/11/01 16:00:52.000.956,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/11/01 16:00:53.000.058,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas</Transaction>
@@ -35,8 +35,8 @@
     <Transaction>2017/11/01 18:21:25.000.947,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/11/01 18:21:26.000.254,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas</Transaction>
     <Transaction>2017/11/01 18:23:22.000.440,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas</Transaction>
-    <Transaction>2017/11/01 18:23:22.000.344,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/11/01 18:23:22.000.193,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\FormUnit1.pas</Transaction>
+    <Transaction>2017/11/01 18:23:22.000.344,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/11/01 18:33:21.000.133,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerContainerUnit1.pas</Transaction>
     <Transaction>2017/11/01 18:33:21.000.032,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\ServerMethodsUnit1.pas</Transaction>
     <Transaction>2017/11/01 18:33:39.000.795,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\WebModuleUnit1.pas</Transaction>
     <Transaction>2018/01/01 12:40:34.000.125,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
     <Transaction>2018/01/01 12:40:55.000.044,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
     <Transaction>2018/05/07 18:00:45.000.726,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
-    <Transaction>2018/05/07 18:01:10.000.795,C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\wav.pas=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
-    <Transaction>2018/05/07 18:01:39.000.274,C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\wav_proj.dproj=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\Project1.dproj</Transaction>
+    <Transaction>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</Transaction>
+    <Transaction>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</Transaction>
     <Transaction>2018/05/07 21:20:21.000.796,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\Unit1.pas</Transaction>
-    <Transaction>2018/05/07 21:20:27.000.646,C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\Unit1.pas=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\spWave.pas</Transaction>
+    <Transaction>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</Transaction>
     <Transaction>2018/05/09 21:56:39.000.226,=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\Unit1.pas</Transaction>
-    <Transaction>2018/05/09 21:56:54.000.027,C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\Unit1.pas=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\WriteHeader.pas</Transaction>
+    <Transaction>2018/05/09 21:56:54.000.027,C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\WriteHeader.pas=C:\Users\yamat\Documents\Embarcadero\Studio\Projects\myapp\wav\Unit1.pas</Transaction>
   </Transactions>
 </BorlandProject>
index 1545e8d..6e88059 100644 (file)
Binary files a/wav_proj.identcache and b/wav_proj.identcache differ