prep for 1.5.0
diff --git a/features/org.eclipse.actf.examples.adesigner-feature/feature.xml b/features/org.eclipse.actf.examples.adesigner-feature/feature.xml
index 878ae2e..455b893 100644
--- a/features/org.eclipse.actf.examples.adesigner-feature/feature.xml
+++ b/features/org.eclipse.actf.examples.adesigner-feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.actf.examples.adesigner"
label="ACTF Example aDesigner feature"
- version="1.4.0.qualifier"
+ version="1.5.0.qualifier"
provider-name="Eclipse ACTF Project"
plugin="org.eclipse.actf.examples.adesigner"
os="win32"
diff --git a/features/org.eclipse.actf.examples.emine-feature/feature.xml b/features/org.eclipse.actf.examples.emine-feature/feature.xml
index 2147686..2171dff 100644
--- a/features/org.eclipse.actf.examples.emine-feature/feature.xml
+++ b/features/org.eclipse.actf.examples.emine-feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.actf.examples.emine"
label="ACTF Example eMINE feature"
- version="1.4.0.qualifier"
+ version="1.5.0.qualifier"
provider-name="Eclipse ACTF Project"
plugin="org.eclipse.actf.examples.emine"
os="win32"
diff --git a/features/org.eclipse.actf.examples.htmlchecker-feature/feature.xml b/features/org.eclipse.actf.examples.htmlchecker-feature/feature.xml
index 95140d6..00d59a4 100644
--- a/features/org.eclipse.actf.examples.htmlchecker-feature/feature.xml
+++ b/features/org.eclipse.actf.examples.htmlchecker-feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.actf.examples.htmlchecker"
label="ACTF Example HtmlChecker Feature"
- version="1.4.0.qualifier"
+ version="1.5.0.qualifier"
provider-name="Eclipse ACTF Project"
plugin="org.eclipse.actf.examples.htmlchecker"
os="win32"
diff --git a/features/org.eclipse.actf.examples.simplevisualizer-feature/feature.xml b/features/org.eclipse.actf.examples.simplevisualizer-feature/feature.xml
index 0e7e70d..a3268d7 100644
--- a/features/org.eclipse.actf.examples.simplevisualizer-feature/feature.xml
+++ b/features/org.eclipse.actf.examples.simplevisualizer-feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.actf.examples.simplevisualizer"
label="ACTF Example Simple Visualizer feature"
- version="1.4.0.qualifier"
+ version="1.5.0.qualifier"
provider-name="Eclipse ACTF Project"
plugin="org.eclipse.actf.examples.simplevisualizer"
os="win32"
diff --git a/features/org.eclipse.actf.examples.vicram-feature/feature.xml b/features/org.eclipse.actf.examples.vicram-feature/feature.xml
index ae90413..267cf45 100644
--- a/features/org.eclipse.actf.examples.vicram-feature/feature.xml
+++ b/features/org.eclipse.actf.examples.vicram-feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.actf.examples.vicram"
label="ACTF Example ViCRAM feature"
- version="1.4.0.qualifier"
+ version="1.5.0.qualifier"
provider-name="Eclipse ACTF Project"
plugin="org.eclipse.actf.examples.vicram"
os="win32"
diff --git a/plugins/org.eclipse.actf.examples.adesigner.doc.nl1/META-INF/MANIFEST.MF b/plugins/org.eclipse.actf.examples.adesigner.doc.nl1/META-INF/MANIFEST.MF
index e633d70..7e083a6 100644
--- a/plugins/org.eclipse.actf.examples.adesigner.doc.nl1/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.actf.examples.adesigner.doc.nl1/META-INF/MANIFEST.MF
@@ -2,6 +2,6 @@
Bundle-ManifestVersion: 2
Bundle-Name: ACTF Example aDesigner Help Nl1 Fragment
Bundle-SymbolicName: org.eclipse.actf.examples.adesigner.doc.nl1
-Bundle-Version: 1.4.0.qualifier
+Bundle-Version: 1.5.0.qualifier
Bundle-Vendor: Eclipse ACTF Project
Fragment-Host: org.eclipse.actf.examples.adesigner.doc;bundle-version="[0.0.1,2.0.0)"
diff --git a/plugins/org.eclipse.actf.examples.adesigner.doc/META-INF/MANIFEST.MF b/plugins/org.eclipse.actf.examples.adesigner.doc/META-INF/MANIFEST.MF
index e430ffa..f6b9ad3 100644
--- a/plugins/org.eclipse.actf.examples.adesigner.doc/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.actf.examples.adesigner.doc/META-INF/MANIFEST.MF
@@ -2,5 +2,5 @@
Bundle-ManifestVersion: 2
Bundle-Name: ACTF Example aDesigner Help Plug-in
Bundle-SymbolicName: org.eclipse.actf.examples.adesigner.doc;singleton:=true
-Bundle-Version: 1.4.0.qualifier
+Bundle-Version: 1.5.0.qualifier
Bundle-Vendor: Eclipse ACTF Project
diff --git a/plugins/org.eclipse.actf.examples.adesigner.eval.html/META-INF/MANIFEST.MF b/plugins/org.eclipse.actf.examples.adesigner.eval.html/META-INF/MANIFEST.MF
index 5dd8e53..227b6b3 100644
--- a/plugins/org.eclipse.actf.examples.adesigner.eval.html/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.actf.examples.adesigner.eval.html/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: ACTF HTML evaluation example Fragment
Bundle-SymbolicName: org.eclipse.actf.examples.adesigner.eval.html;singleton:=true
-Bundle-Version: 1.4.0.qualifier
+Bundle-Version: 1.5.0.qualifier
Bundle-Vendor: Eclipse ACTF Project
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.actf.core,
diff --git a/plugins/org.eclipse.actf.examples.adesigner.eval.odf/META-INF/MANIFEST.MF b/plugins/org.eclipse.actf.examples.adesigner.eval.odf/META-INF/MANIFEST.MF
index a1cd908..e7834b0 100644
--- a/plugins/org.eclipse.actf.examples.adesigner.eval.odf/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.actf.examples.adesigner.eval.odf/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: ACTF ODF evaluation example Fragment
Bundle-SymbolicName: org.eclipse.actf.examples.adesigner.eval.odf;singleton:=true
-Bundle-Version: 1.4.0.qualifier
+Bundle-Version: 1.5.0.qualifier
Bundle-Vendor: Eclipse ACTF Project
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.ui,
diff --git a/plugins/org.eclipse.actf.examples.adesigner/META-INF/MANIFEST.MF b/plugins/org.eclipse.actf.examples.adesigner/META-INF/MANIFEST.MF
index 2e8bf1e..bfd98d5 100644
--- a/plugins/org.eclipse.actf.examples.adesigner/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.actf.examples.adesigner/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: ACTF Example aDesigner Client
Bundle-SymbolicName: org.eclipse.actf.examples.adesigner;singleton:=true
-Bundle-Version: 1.4.0.qualifier
+Bundle-Version: 1.5.0.qualifier
Bundle-Activator: org.eclipse.actf.examples.adesigner.ADesignerPlugin
Bundle-Vendor: Eclipse ACTF Project
Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.actf.examples.adesigner/aDesigner.product b/plugins/org.eclipse.actf.examples.adesigner/aDesigner.product
index 22a0fad..7cfd5ea 100644
--- a/plugins/org.eclipse.actf.examples.adesigner/aDesigner.product
+++ b/plugins/org.eclipse.actf.examples.adesigner/aDesigner.product
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
-<product name="aDesigner" uid="ACTF aDesigner" id="org.eclipse.actf.examples.adesigner.aDesigner" application="org.eclipse.actf.examples.adesigner.org.eclipse.actf.examples.adesigner.ADesignerApplication" version="1.4.0.qualifier" useFeatures="true" includeLaunchers="true">
+<product name="aDesigner" uid="ACTF aDesigner" id="org.eclipse.actf.examples.adesigner.aDesigner" application="org.eclipse.actf.examples.adesigner.org.eclipse.actf.examples.adesigner.ADesignerApplication" version="1.5.0.qualifier" useFeatures="true" includeLaunchers="true">
<aboutInfo>
<image path="/org.eclipse.actf.examples.adesigner/about.gif"/>
@@ -40,7 +40,7 @@
</plugins>
<features>
- <feature id="org.eclipse.actf.examples.adesigner" version="1.4.0.qualifier"/>
+ <feature id="org.eclipse.actf.examples.adesigner" version="1.5.0.qualifier"/>
<feature id="org.eclipse.help"/>
</features>
diff --git a/plugins/org.eclipse.actf.examples.adesigner/plugin.properties b/plugins/org.eclipse.actf.examples.adesigner/plugin.properties
index f21fea1..c6388ec 100644
--- a/plugins/org.eclipse.actf.examples.adesigner/plugin.properties
+++ b/plugins/org.eclipse.actf.examples.adesigner/plugin.properties
@@ -1,5 +1,5 @@
###############################################################################
-# Copyright (c) 2007, 2015 IBM Corporation and others.
+# Copyright (c) 2007, 2017 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
@@ -27,4 +27,4 @@
adesigner.menu.window = &Window
adesigner.menu.navigation = Navi&gation
-About.Text=Eclipse ACTF aDesigner\nVersion: 1.4.0\n\nCopyright 2007, 2015 Eclipse contributors and others. All rights reserved.\nVisit http://www.eclipse.org/actf/\n\nThis product includes software developed by the\nApache Software Foundation http://www.apache.org/
\ No newline at end of file
+About.Text=Eclipse ACTF aDesigner\nVersion: 1.5.0\n\nCopyright 2007, 2017 Eclipse contributors and others. All rights reserved.\nVisit http://www.eclipse.org/actf/\n\nThis product includes software developed by the\nApache Software Foundation http://www.apache.org/
\ No newline at end of file
diff --git a/plugins/org.eclipse.actf.examples.emine/META-INF/MANIFEST.MF b/plugins/org.eclipse.actf.examples.emine/META-INF/MANIFEST.MF
index 949b948..bb69206 100644
--- a/plugins/org.eclipse.actf.examples.emine/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.actf.examples.emine/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: ACTF Example eMINE (Incubation)
Bundle-SymbolicName: org.eclipse.actf.examples.emine;singleton:=true
-Bundle-Version: 1.4.0.qualifier
+Bundle-Version: 1.5.0.qualifier
Bundle-Activator: org.eclipse.actf.examples.emine.EminePlugin
Bundle-Vendor: Eclipse ACTF Project
Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.actf.examples.emine/vips.product b/plugins/org.eclipse.actf.examples.emine/vips.product
index 8370b18..991c248 100644
--- a/plugins/org.eclipse.actf.examples.emine/vips.product
+++ b/plugins/org.eclipse.actf.examples.emine/vips.product
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
-<product name="eMINE VIPS" uid="ACTF eMINE VIPS" id="org.eclipse.actf.examples.emine.vips" application="org.eclipse.actf.examples.emine.EmineSampleApplication" version="1.4.0.qualifier" useFeatures="true" includeLaunchers="true">
+<product name="eMINE VIPS" uid="ACTF eMINE VIPS" id="org.eclipse.actf.examples.emine.vips" application="org.eclipse.actf.examples.emine.EmineSampleApplication" version="1.5.0.qualifier" useFeatures="true" includeLaunchers="true">
<aboutInfo>
<image path="/org.eclipse.actf.examples.emine/about.gif"/>
@@ -37,7 +37,7 @@
</plugins>
<features>
- <feature id="org.eclipse.actf.examples.emine" version="1.4.0.qualifier"/>
+ <feature id="org.eclipse.actf.examples.emine" version="1.5.0.qualifier"/>
</features>
<configurations>
diff --git a/plugins/org.eclipse.actf.examples.htmlchecker/META-INF/MANIFEST.MF b/plugins/org.eclipse.actf.examples.htmlchecker/META-INF/MANIFEST.MF
index 4b9a75d..a92b37d 100644
--- a/plugins/org.eclipse.actf.examples.htmlchecker/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.actf.examples.htmlchecker/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: ACTF Examples HtmlChecker
Bundle-SymbolicName: org.eclipse.actf.examples.htmlchecker;singleton:=true
-Bundle-Version: 1.4.0.qualifier
+Bundle-Version: 1.5.0.qualifier
Bundle-Activator: org.eclipse.actf.examples.htmlchecker.Activator
Bundle-Vendor: Eclipse ACTF Project
Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.actf.examples.htmlchecker/htmlchecker.product b/plugins/org.eclipse.actf.examples.htmlchecker/htmlchecker.product
index dc5adbc..9df8e21 100644
--- a/plugins/org.eclipse.actf.examples.htmlchecker/htmlchecker.product
+++ b/plugins/org.eclipse.actf.examples.htmlchecker/htmlchecker.product
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
-<product name="HtmlChecker" uid="ACTF HtmlChecker" id="org.eclipse.actf.examples.htmlchecker.HtmlChecker" application="org.eclipse.actf.examples.htmlchecker.HtmlChecker" version="1.4.0.qualifier" useFeatures="true" includeLaunchers="true">
+<product name="HtmlChecker" uid="ACTF HtmlChecker" id="org.eclipse.actf.examples.htmlchecker.HtmlChecker" application="org.eclipse.actf.examples.htmlchecker.HtmlChecker" version="1.5.0.qualifier" useFeatures="true" includeLaunchers="true">
<aboutInfo>
<image path="/org.eclipse.actf.examples.htmlchecker/about.gif"/>
diff --git a/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/preferences/CapturePreferenceInitializer.java b/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/preferences/CapturePreferenceInitializer.java
index c2d3416..22466a0 100644
--- a/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/preferences/CapturePreferenceInitializer.java
+++ b/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/preferences/CapturePreferenceInitializer.java
@@ -21,7 +21,7 @@
// Initialize values
store.setDefault(CapturePreferenceConstants.SAMPRATE_GROUP_NAME,
- CapturePreferenceConstants.SAMPRATE_NOM);
+ CapturePreferenceConstants.SAMPRATE_FAST);
store.setDefault(CapturePreferenceConstants.GAIN_VOLLVL_NAME,
CapturePreferenceConstants.GAIN_DEF);
}
diff --git a/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/util/SoundMixer.java b/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/util/SoundMixer.java
index 7b0f597..0f38895 100644
--- a/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/util/SoundMixer.java
+++ b/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/util/SoundMixer.java
@@ -10,6 +10,7 @@
*******************************************************************************/
package org.eclipse.actf.ai.scripteditor.util;
+import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
@@ -27,6 +28,7 @@
import org.eclipse.actf.ai.scripteditor.preferences.CapturePreferenceUtil;
import org.eclipse.actf.ai.ui.scripteditor.views.IUNIT;
+import org.eclipse.swt.widgets.Display;
public class SoundMixer implements IUNIT {
@@ -54,7 +56,7 @@
// Save file(.wav) mode
private AudioInputStream voiceInputStream = null;
private AudioFileFormat.Type voiceTargetType;
- private File saveFH;
+ private File saveFH = null;
// current WAV header information
private String currentWavFormatID;
@@ -79,8 +81,7 @@
*/
private SoundMixer() {
// Initialize value by Preference setting
- setSampleRateCaptureAudio(CapturePreferenceUtil
- .getPreferenceSampleRate());
+ setSampleRateCaptureAudio(CapturePreferenceUtil.getPreferenceSampleRate());
}
/**
@@ -224,6 +225,28 @@
final AudioFormat format = getFormat();
voiceInfo = new DataLine.Info(TargetDataLine.class, format);
voiceLine = (TargetDataLine) AudioSystem.getLine(voiceInfo);
+
+ // Initialize captured voice data(wave format)
+ int bufferSize = format.getFrameSize();
+ voiceCaptureBuffer = new byte[bufferSize]; // Capture buffer for
+ // Thread process
+ voiceStoreBuffer = new byte[bufferSize]; // Store buffer for latest
+ // captured data
+ voiceClearData = new byte[bufferSize]; // Clear data for stored
+ // buffer
+ for (int i = 0; i < voiceClearData.length; i++) { // SetUP zero data
+ voiceClearData[i] = 0;
+ }
+ // Setup output stream
+ if (voiceOutputStream == null) {
+ voiceOutputStream = new ByteArrayOutputStream();
+ } else {
+ // reset data
+ if (voiceOutputStream.size() > 0) {
+ voiceOutputStream.reset();
+ }
+ }
+
// Create & Open file for save voice data
saveFH = new File("c:\\temp\\dummy.wav");
@@ -251,12 +274,11 @@
// Only Playing
if (runningCapture) {
// PickUP capture data(PCM)
- int count = voiceLine.read(voiceCaptureBuffer, 0,
- voiceCaptureBuffer.length);
+ int count = voiceLine.read(voiceCaptureBuffer, 0, voiceCaptureBuffer.length);
if (count > 0) {
// Buffering capture data
- System.arraycopy(voiceCaptureBuffer, 0, voiceStoreBuffer,
- 0, count);
+ System.arraycopy(voiceCaptureBuffer, 0, voiceStoreBuffer, 0, count);
+ voiceOutputStream.write(voiceCaptureBuffer, 0, count);
}
}
} catch (Exception e) {
@@ -269,10 +291,17 @@
// Only Playing
if (runningCapture) {
// Write data to .wav file
- AudioSystem.write(voiceInputStream, voiceTargetType, saveFH);
+ // AudioSystem.write(voiceInputStream, voiceTargetType, saveFH);
+ int count = voiceLine.read(voiceCaptureBuffer, 0, voiceCaptureBuffer.length);
+ if (count > 0) {
+ // Buffering capture data
+ //System.arraycopy(voiceCaptureBuffer, 0, voiceStoreBuffer, 0, count);
+ voiceOutputStream.write(voiceCaptureBuffer, 0, count);
+ }
+
}
} catch (Exception e) {
- System.err.println("I/O problems: " + e);
+ e.printStackTrace();
}
}
@@ -282,9 +311,21 @@
public void stopCaptureSound() {
try {
if (runningCapture) {
+
// Stop control
runningCapture = false;
mainThreadCapture = null;
+
+// Display.getCurrent().asyncExec(new Runnable(){
+// public void run() {
+// try {
+ AudioSystem.write(new AudioInputStream(new ByteArrayInputStream(voiceOutputStream.toByteArray()), getFormat(),
+ voiceOutputStream.size()), voiceTargetType, saveFH);
+// } catch (IOException e) {
+// e.printStackTrace();
+// }
+// }
+// });
// Stop&Close InputStream for Save file mode
if (voiceInputStream != null) {
@@ -295,9 +336,10 @@
voiceLine.stop();
voiceLine.close();
}
+
}
} catch (Exception e) {
- System.out.println("stopSoundMixer() : " + e);
+ e.printStackTrace();
}
}
@@ -350,14 +392,12 @@
// check current process mode
if (ownProcMode == SM_PMODE_CAPTURE) {
// Exchange data type from byte[] to integer
- rawData = ((int) voiceStoreBuffer[1] << 8)
- + (int) voiceStoreBuffer[0];
+ rawData = ((int) voiceStoreBuffer[1] << 8) + (int) voiceStoreBuffer[0];
if (rawData < 0)
rawData = -1 * rawData;
// Clear current stored buffer
- System.arraycopy(voiceClearData, 0, voiceStoreBuffer, 0,
- voiceClearData.length);
+ System.arraycopy(voiceClearData, 0, voiceStoreBuffer, 0, voiceClearData.length);
}
}
@@ -376,8 +416,7 @@
boolean bigEndian = false;
// return format type(WAV)
- return (new AudioFormat(encoding, sampleRate, sampleSizeInBits,
- channels, frameSize, frameRate, bigEndian));
+ return (new AudioFormat(encoding, sampleRate, sampleSizeInBits, channels, frameSize, frameRate, bigEndian));
}
/*******************************************************************
@@ -394,17 +433,14 @@
public void run() {
try {
int size = 0;
- float frameRate = audioInputStreamWavPlayer.getFormat()
- .getFrameRate();
- int frameSize = audioInputStreamWavPlayer.getFormat()
- .getFrameSize();
+ float frameRate = audioInputStreamWavPlayer.getFormat().getFrameRate();
+ int frameSize = audioInputStreamWavPlayer.getFormat().getFrameSize();
byte[] inStream = new byte[(int) (frameRate * frameSize)];
// Play sound stream
while (runningPlayer) {
// Read WAV data from input stream
- size = audioInputStreamWavPlayer.read(inStream, 0,
- inStream.length);
+ size = audioInputStreamWavPlayer.read(inStream, 0, inStream.length);
if (size >= 0) {
// put WAV data to source line
lineWavPlayer.write(inStream, 0, size);
@@ -434,8 +470,7 @@
* @param newSampleRate
* @return New AudioFormat
*/
- private AudioFormat adjustSampleRateWav(AudioFormat orgForm,
- float newSampleRate) {
+ private AudioFormat adjustSampleRateWav(AudioFormat orgForm, float newSampleRate) {
// MakeUP new sampling rate
float sampleRate = newSampleRate;
@@ -448,8 +483,7 @@
boolean bigEndian = orgForm.isBigEndian();
// return format type(WAV)
- return (new AudioFormat(encoding, sampleRate, sampleSizeInBits,
- channels, frameSize, frameRate, bigEndian));
+ return (new AudioFormat(encoding, sampleRate, sampleSizeInBits, channels, frameSize, frameRate, bigEndian));
}
/**
@@ -469,8 +503,7 @@
// Open WAV file
File soundFile = new File(uriWavFileName);
// Create Input stream
- audioInputStreamWavPlayer = AudioSystem
- .getAudioInputStream(soundFile);
+ audioInputStreamWavPlayer = AudioSystem.getAudioInputStream(soundFile);
// Get audio format from current input stream
AudioFormat audioFormat = audioInputStreamWavPlayer.getFormat();
@@ -480,8 +513,7 @@
audioFormat = adjustSampleRateWav(audioFormat, samplerate);
// Get data line from current input stream
- DataLine.Info info = new DataLine.Info(SourceDataLine.class,
- audioFormat);
+ DataLine.Info info = new DataLine.Info(SourceDataLine.class, audioFormat);
// Get source line from current data line
lineWavPlayer = (SourceDataLine) AudioSystem.getLine(info);
// Open source line
@@ -553,17 +585,12 @@
String strEndian = "Endian : ";
// Cat string for WAV header information
- strWavInfo = strFileName + wfname + strSeparator + strFormatID
- + currentWavFormatID + strSeparator + strSampRate
- + Integer.toString((int) currentWavSampRate) + " Hz"
- + strSeparator + strSampBit
- + Integer.toString(currentWavSampBit) + " bit" + strSeparator
- + strChNum + ((currentWavCh == 2) ? "Stereo" : "Mono")
- + strSeparator + strFrameRate
- + Integer.toString((int) currentWavFrameRate) + " bytes/frame"
- + strSeparator + strEndian
- + (currentWavBigEndian ? "Big Endian" : "Littele Endian")
- + strSeparator;
+ strWavInfo = strFileName + wfname + strSeparator + strFormatID + currentWavFormatID + strSeparator + strSampRate
+ + Integer.toString((int) currentWavSampRate) + " Hz" + strSeparator + strSampBit
+ + Integer.toString(currentWavSampBit) + " bit" + strSeparator + strChNum
+ + ((currentWavCh == 2) ? "Stereo" : "Mono") + strSeparator + strFrameRate
+ + Integer.toString((int) currentWavFrameRate) + " bytes/frame" + strSeparator + strEndian
+ + (currentWavBigEndian ? "Big Endian" : "Littele Endian") + strSeparator;
// return result
return (strWavInfo);
@@ -605,7 +632,8 @@
// Calculate total data length of current WAV file
currentWavDataLength = (int) (aff.getFrameLength() * currentWavFrameSize);
// Calculate duration time of current WAV file
- currentWavDurationTime = (int) (((float) currentWavDataLength / (float) currentWavBytePerSec) * (float) MSEC);
+ currentWavDurationTime = (int) (((float) currentWavDataLength / (float) currentWavBytePerSec)
+ * (float) MSEC);
}
}
diff --git a/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/util/TTMLUtil.java b/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/util/TTMLUtil.java
index eaea3b8..86a021c 100644
--- a/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/util/TTMLUtil.java
+++ b/plugins/org.eclipse.actf.examples.scripteditor/src/org/eclipse/actf/ai/scripteditor/util/TTMLUtil.java
@@ -17,15 +17,16 @@
import java.io.PrintWriter;
import java.util.List;
+import org.eclipse.actf.ai.internal.ui.scripteditor.event.TimerEvent;
import org.eclipse.actf.ai.scripteditor.data.IScriptData;
import org.eclipse.actf.ai.scripteditor.data.ScriptDataManager;
import org.eclipse.actf.util.FileUtils;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Display;
public class TTMLUtil {
- private static ScriptDataManager scriptDataMgr = ScriptDataManager
- .getInstance();
+ private static ScriptDataManager scriptDataMgr = ScriptDataManager.getInstance();
/**
* Export AudioDescription data in TTML format
@@ -38,68 +39,55 @@
* Export AudioDescription data in TTML format and pre-recorded
* AudioDescription(AD) WAV files
*/
- public static void exportTTMLandWAV(String ttmlPathname,
- String adWavDirpath, String adWavFilename, String adUrlBase,
- boolean warnOverwrite) {
- exportTTML(ttmlPathname, true, adWavDirpath, adWavFilename, adUrlBase,
- warnOverwrite);
+ public static void exportTTMLandWAV(String ttmlPathname, String adWavDirpath, String adWavFilename,
+ String adUrlBase, boolean warnOverwrite) {
+ exportTTML(ttmlPathname, true, adWavDirpath, adWavFilename, adUrlBase, warnOverwrite);
}
/**
* Export AudioDescription data in TTML format and pre-recorded
* AudioDescription(AD) WAV files
*/
- private static void exportTTML(String ttmlPathname, boolean isPrerecorded,
- String adWavDirpath, String adWavFilename, String adUrlBase,
- boolean warnOverwrite) {
+ private static void exportTTML(String ttmlPathname, boolean isPrerecorded, String adWavDirpath,
+ String adWavFilename, String adUrlBase, boolean warnOverwrite) {
PrintWriter writer = null;
- VoicePlayerFactory voice = VoicePlayerFactory.getInstance();
+ final VoicePlayerFactory voice = VoicePlayerFactory.getInstance();
try {
File file = new File(ttmlPathname);
if (warnOverwrite && file.exists()) {
- XMLFileMessageBox warningExistFile = new XMLFileMessageBox(
- XMLFileMessageBox.MB_STYLE_OVERWR, ttmlPathname);
+ XMLFileMessageBox warningExistFile = new XMLFileMessageBox(XMLFileMessageBox.MB_STYLE_OVERWR,
+ ttmlPathname);
int ret = warningExistFile.open();
if (ret != SWT.YES)
return;
}
- writer = new PrintWriter(new OutputStreamWriter(
- new FileOutputStream(ttmlPathname), "UTF-8"));
+ writer = new PrintWriter(new OutputStreamWriter(new FileOutputStream(ttmlPathname), "UTF-8"));
String LINE_SEP = FileUtils.LINE_SEP;
writer.println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
writer.println("<?xml-stylesheet href=\"ttml.css\" type=\"text/css\"?>");
writer.println("<?access-control allow=\"*\"?>");
- writer.println("<tt ttp:profile='http://www.w3.org/ns/ttml/profile/dfxp-full'"
- + LINE_SEP
- + " xmlns='http://www.w3.org/ns/ttml'"
- + LINE_SEP
- + " xmlns:ttm='http://www.w3.org/ns/ttml#metadata'"
- + LINE_SEP
- + " xmlns:tts='http://www.w3.org/ns/ttml#styling'"
- + LINE_SEP
- + " xmlns:ttp='http://www.w3.org/ns/ttml#parameter'"
- + LINE_SEP
+ writer.println("<tt ttp:profile='http://www.w3.org/ns/ttml/profile/dfxp-full'" + LINE_SEP
+ + " xmlns='http://www.w3.org/ns/ttml'" + LINE_SEP
+ + " xmlns:ttm='http://www.w3.org/ns/ttml#metadata'" + LINE_SEP
+ + " xmlns:tts='http://www.w3.org/ns/ttml#styling'" + LINE_SEP
+ + " xmlns:ttp='http://www.w3.org/ns/ttml#parameter'" + LINE_SEP
+ " xmlns:tvd='http://www.eclipse.org/actf/ai/tvd'>");
writer.println(" <head>");
writer.println(" <metadata>");
writer.println(" <ttm:title>TextTrack (Audio Description)</ttm:title>");// TODO
writer.println(" </metadata>");
- writer.println(" <styling>" + LINE_SEP
- + " <style xml:id=\"style1\"/>" + LINE_SEP
- + " </styling>" + LINE_SEP + " <layout>" + LINE_SEP
- + " <region xml:id=\"region1\" style=\"style1\"/>"
- + LINE_SEP + " </layout>" + LINE_SEP
- +
+ writer.println(" <styling>" + LINE_SEP + " <style xml:id=\"style1\"/>" + LINE_SEP + " </styling>"
+ + LINE_SEP + " <layout>" + LINE_SEP + " <region xml:id=\"region1\" style=\"style1\"/>" + LINE_SEP
+ + " </layout>" + LINE_SEP +
//
- " </head>" + LINE_SEP + " <body>" + LINE_SEP
- + " <div role=\"narration\" region=\"region1\">");
+ " </head>" + LINE_SEP + " <body>" + LINE_SEP + " <div role=\"narration\" region=\"region1\">");
if (isPrerecorded) {
File readmeFile = new File(adWavDirpath + "1st_Readme.txt");
@@ -112,8 +100,7 @@
pw.println(" m4a: for IE9 or later, Safari");
pw.println();
pw.println("After converting files, please deploy these files to your Web server,");
- pw.println("and adjust URLs of \"tvd:external\" attribute in "
- + file.getName());
+ pw.println("and adjust URLs of \"tvd:external\" attribute in " + file.getName());
pw.flush();
pw.close();
} else {
@@ -124,8 +111,7 @@
pw.println(" m4a: for IE9 or later, Safari");
pw.println();
pw.println("After preparing files, please deploy these files to your Web server,");
- pw.println("and adjust URLs of \"tvd:external\" attribute in "
- + file.getName());
+ pw.println("and adjust URLs of \"tvd:external\" attribute in " + file.getName());
pw.flush();
pw.close();
}
@@ -142,37 +128,30 @@
}
int startTime = scriptData.getStartTime();
int frame = (startTime % 1000) / (1000 / 30);
- String frameS = (frame > 9) ? Integer.toString(frame) : "0"
- + frame;
+ String frameS = (frame > 9) ? Integer.toString(frame) : "0" + frame;
- String strStartTime = TimeFormatUtil
- .makeFormatHHMMSS_short(startTime / 1000) + ":" + frameS;
+ String strStartTime = TimeFormatUtil.makeFormatHHMMSS_short(startTime / 1000) + ":" + frameS;
int endTime = scriptData.getEndTime();
int duration = endTime - startTime;
frame = (endTime % 1000) / (1000 / 30);
frameS = (frame > 9) ? Integer.toString(frame) : "0" + frame;
- String StrEndTime = TimeFormatUtil
- .makeFormatHHMMSS_short(endTime / 1000) + ":" + frameS;
+ String StrEndTime = TimeFormatUtil.makeFormatHHMMSS_short(endTime / 1000) + ":" + frameS;
frame = (duration % 1000) / (1000 / 30);
frameS = (frame > 9) ? Integer.toString(frame) : "0" + frame;
- String strDuration = TimeFormatUtil
- .makeFormatHHMMSS_short(duration / 1000) + ":" + frameS;
+ String strDuration = TimeFormatUtil.makeFormatHHMMSS_short(duration / 1000) + ":" + frameS;
String strDesc = scriptData.getDescription();
// TODO diff duration with next item
- writer.print(" <p xml:id=\"description" + i + "\" begin=\""
- + strStartTime);
+ writer.print(" <p xml:id=\"description" + i + "\" begin=\"" + strStartTime);
if (scriptData.isExtended()) {
- writer.print("\" tvd:extended=\"true\" dur=\""
- + strDuration + "\"");
+ writer.print("\" tvd:extended=\"true\" dur=\"" + strDuration + "\"");
} else {
- writer.print("\" tvd:extended=\"false\" end=\""
- + StrEndTime + "\"");
+ writer.print("\" tvd:extended=\"false\" end=\"" + StrEndTime + "\"");
}
if (isPrerecorded) {
@@ -190,29 +169,48 @@
ad_file = adWavFilename + number;
}
if (adUrlBase == null || adUrlBase.isEmpty()) {
- writer.print(" tvd:external=\"file://" + adWavDirpath
- + ad_file + ".*\"");
+ writer.print(" tvd:external=\"file://" + adWavDirpath + ad_file + ".*\"");
} else {
- writer.print(" tvd:external=\"" + adUrlBase + ad_file
- + ".*\"");
+ writer.print(" tvd:external=\"" + adUrlBase + ad_file + ".*\"");
}
if (voice.canSpeakToFile()) {
- String strGender = scriptData.getVgGender() ? "male"
- : "female";
+ String strGender = scriptData.getVgGender() ? "male" : "female";
voice.setGender(strGender);
// TODO need convert
voice.setSpeed(scriptData.getVgPlaySpeed());
- voice.speakToFile(strDesc, new File(adWavDirpath
- + ad_file + ".wav"));
+ voice.speakToFile(strDesc, new File(adWavDirpath + ad_file + ".wav"));
+ } else { // Temporally implementation
+ final IScriptData target = scriptData;
+ System.out.println("bbb: " + voice.getPlayVoiceStatus());
+ if (!voice.getPlayVoiceStatus()) {
+ final SoundMixer mixer = SoundMixer.getInstance();
+ mixer.startCaptureSound(SoundMixer.SM_PMODE_FSAVE);
+ voice.speak(target);
+ voice.setPlayVoiceStatus(1);
+
+ Runnable finishCheck = new Runnable(){
+ public void run(){
+ System.out.println("aaa:" + voice.getPlayVoiceStatus());
+ if(voice.getPlayVoiceStatus()){
+ Display display = Display.getCurrent();
+ if(!display.isDisposed()){
+ display.timerExec(100, this);
+ }
+ }else{
+ mixer.stopCaptureSound();
+ }
+ }
+ };
+ Display.getCurrent().timerExec(100, finishCheck);
+ }
}
}
writer.println(">" + canonicalize(strDesc) + "</p>");
i++;
}
- writer.println(" </div>" + LINE_SEP + " </body>" + LINE_SEP
- + "</tt>");
+ writer.println(" </div>" + LINE_SEP + " </body>" + LINE_SEP + "</tt>");
} catch (IOException e) {
e.printStackTrace();
@@ -228,9 +226,8 @@
}
private static String canonicalize(String targetS) {
- return (targetS.replaceAll("\\p{Cntrl}", "").replaceAll("&", "&")
- .replaceAll("<", "<").replaceAll(">", ">")
- .replaceAll("\"", """).replaceAll("\'", "'"));
+ return (targetS.replaceAll("\\p{Cntrl}", "").replaceAll("&", "&").replaceAll("<", "<")
+ .replaceAll(">", ">").replaceAll("\"", """).replaceAll("\'", "'"));
}
}
diff --git a/plugins/org.eclipse.actf.examples.simplevisualizer/META-INF/MANIFEST.MF b/plugins/org.eclipse.actf.examples.simplevisualizer/META-INF/MANIFEST.MF
index 2230187..d9e2ac9 100644
--- a/plugins/org.eclipse.actf.examples.simplevisualizer/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.actf.examples.simplevisualizer/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: ACTF Example Simple Visualizer
Bundle-SymbolicName: org.eclipse.actf.examples.simplevisualizer;singleton:=true
-Bundle-Version: 1.4.0.qualifier
+Bundle-Version: 1.5.0.qualifier
Bundle-Activator: org.eclipse.actf.examples.simplevisualizer.SimpleVisualizerPlugin
Bundle-Vendor: Eclipse ACTF Project
Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.actf.examples.simplevisualizer/plugin.properties b/plugins/org.eclipse.actf.examples.simplevisualizer/plugin.properties
index 201adb2..0cbd0a1 100644
--- a/plugins/org.eclipse.actf.examples.simplevisualizer/plugin.properties
+++ b/plugins/org.eclipse.actf.examples.simplevisualizer/plugin.properties
@@ -1,5 +1,5 @@
###############################################################################
-# Copyright (c) 2007, 2015 IBM Corporation and others.
+# Copyright (c) 2007, 2017 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
@@ -21,4 +21,4 @@
simplevizualizer.HTMLPerspective.name=Web Perspective
-About.Text=Eclipse ACTF Simple Vizualizer\nVersion: 1.4.0\n\nCopyright 2007, 2015 Eclipse contributors and others. All rights reserved.\nVisit http://www.eclipse.org/actf/\n\nThis product includes software developed by the\nApache Software Foundation http://www.apache.org/
\ No newline at end of file
+About.Text=Eclipse ACTF Simple Vizualizer\nVersion: 1.5.0\n\nCopyright 2007, 2017 Eclipse contributors and others. All rights reserved.\nVisit http://www.eclipse.org/actf/\n\nThis product includes software developed by the\nApache Software Foundation http://www.apache.org/
\ No newline at end of file
diff --git a/plugins/org.eclipse.actf.examples.simplevisualizer/simplevisualizer.product b/plugins/org.eclipse.actf.examples.simplevisualizer/simplevisualizer.product
index 40faaff..4b873fe 100644
--- a/plugins/org.eclipse.actf.examples.simplevisualizer/simplevisualizer.product
+++ b/plugins/org.eclipse.actf.examples.simplevisualizer/simplevisualizer.product
@@ -37,7 +37,7 @@
</plugins>
<features>
- <feature id="org.eclipse.actf.examples.simplevisualizer" version="1.4.0.qualifier"/>
+ <feature id="org.eclipse.actf.examples.simplevisualizer" version="1.5.0.qualifier"/>
</features>
<configurations>
diff --git a/plugins/org.eclipse.actf.examples.vicram/META-INF/MANIFEST.MF b/plugins/org.eclipse.actf.examples.vicram/META-INF/MANIFEST.MF
index fd2ea16..8ab7ffc 100644
--- a/plugins/org.eclipse.actf.examples.vicram/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.actf.examples.vicram/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: ACTF Example ViCRAM
Bundle-SymbolicName: org.eclipse.actf.examples.vicram;singleton:=true
-Bundle-Version: 1.4.0.qualifier
+Bundle-Version: 1.5.0.qualifier
Bundle-Activator: org.eclipse.actf.examples.vicram.VicramPlugin
Bundle-Vendor: Eclipse ACTF Project
Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.actf.examples.vicram/plugin.properties b/plugins/org.eclipse.actf.examples.vicram/plugin.properties
index dc78528..8cc19f9 100644
--- a/plugins/org.eclipse.actf.examples.vicram/plugin.properties
+++ b/plugins/org.eclipse.actf.examples.vicram/plugin.properties
@@ -1,5 +1,5 @@
###############################################################################
-# Copyright (c) 2007, 2015 IBM Corporation and others.
+# Copyright (c) 2007, 2017 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
@@ -19,4 +19,4 @@
vicram.menu.window = &Window
vicram.menu.navigation = Navi&gation
-About.Text=Eclipse ACTF ViCRAM\nVersion: 1.4.0\n\nCopyright 2007, 2015 Eclipse contributors and others. All rights reserved.\nVisit http://www.eclipse.org/actf/\n\nThis product includes software developed by the\nApache Software Foundation http://www.apache.org/
\ No newline at end of file
+About.Text=Eclipse ACTF ViCRAM\nVersion: 1.5.0\n\nCopyright 2007, 2017 Eclipse contributors and others. All rights reserved.\nVisit http://www.eclipse.org/actf/\n\nThis product includes software developed by the\nApache Software Foundation http://www.apache.org/
\ No newline at end of file
diff --git a/plugins/org.eclipse.actf.examples.vicram/vicram.product b/plugins/org.eclipse.actf.examples.vicram/vicram.product
index 064bfeb..286e07a 100644
--- a/plugins/org.eclipse.actf.examples.vicram/vicram.product
+++ b/plugins/org.eclipse.actf.examples.vicram/vicram.product
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
-<product name="Visual Complexity Rankings and Accessibility Metrics (ViCRAM)" uid="ACTF Visual Complexity Rankings and Accessibility Metrics" id="org.eclipse.actf.examples.vicram.ViCRAM" application="org.eclipse.actf.examples.vicram.VicramApplication" version="1.4.0.qualifier" useFeatures="true" includeLaunchers="true">
+<product name="Visual Complexity Rankings and Accessibility Metrics (ViCRAM)" uid="ACTF Visual Complexity Rankings and Accessibility Metrics" id="org.eclipse.actf.examples.vicram.ViCRAM" application="org.eclipse.actf.examples.vicram.VicramApplication" version="1.5.0.qualifier" useFeatures="true" includeLaunchers="true">
<aboutInfo>
<image path="/org.eclipse.actf.examples.vicram/about.gif"/>
@@ -37,7 +37,7 @@
</plugins>
<features>
- <feature id="org.eclipse.actf.examples.vicram" version="1.4.0.qualifier"/>
+ <feature id="org.eclipse.actf.examples.vicram" version="1.5.0.qualifier"/>
</features>
<configurations>