2005-05-01から1ヶ月間の記事一覧

他のソフトのマニュアル作りは勉強になる。

自分のソフトはどうしても間違いは認められませんが、他のソフトのマニュアルを作っていると嫌というほど、操作上の欠点を見つけれます。 以外とそれを自分のソフトでもやっていることがあります。 まさに他人の振り見てわが振りなおせですね。

JavaSound といえば、

http://www.jsresources.org/ のページはかかせません。 JavaSoundの記事などはこれの日本語版の方が実用的とさえ思えます。MixingAudioはそのままだとうまく動かない気がした。 http://www.jsresources.org/examples/MixingAudioInputStream.java.html

akJ Subplayer2.0デモ版公開

一言でいうと、alpha以前の状態です。 進行していることをお知らせするため公開します。 以前のバージョンと同等のものが、7月ぐらい、安定版が8月までかかりそうです。(>ohttp://prdownloads.sourceforge.jp/akjrcp/14973/akjsubplayer2.0.0alpha.zip描画…

PluginでのPreferenceConverterを使うと?エラー

AbstractUIPluginの拡張クラスのstartメソッド内で、 PreferenceConverter.setDefault等を使うと、エラーになる。 普通の設定ならできるんだけどなー 他が原因か? public void start(BundleContext context) throws Exception {}

sampleとmillisecondの変換

こんな感じ?? public static long millisecondToSample(long millisecond,float samplerate){ return (long)(millisecond*samplerate/1000); } public static long sampleToMillisecond(long sample,float samplerate){ return (long)(sample*1000/samplerat…

draw2dのfigureの最大数は以外と少ない?

どこかで作り方がまずかったのかもしれないけど、500〜1000ぐらいのfigureを描画させてスクロールさせてたら、no more handle というエラーでよく落ちる。 figureの最大数制限とかあるのだろうか? まとめるなら、figureを使う意味ないので難しいところだ。

なるべく最初から最終系のデーターを使うべき。

例えば、だいたい2時間の長さの音声を扱うプログラムを作りたい場合、1分ほどのデーターを参考にプログラム作成すると、途中で破綻する場合ある。 破綻の原因は速度だったり、メモリ容量だったりする。 なのでなるべく最初から目的のデーターを使ってテス…

akJ Subplayer alphaの画像

バージョンアップ、基本の所を触りすぎたため、バグ多発で苦労してます。 とりあえず、こんな感じになります。 ちなみに、背景画像は次のバージョンでは固定です。

draw2dメモ

■setSizeはラグが出る。 後で値を参照する場合 setSizeは、syncExecした方がいい。■Mouse UpとDownの処理をFigureでするときには、 UpイベントをFigureで拾わないときがあるのに注意 ドラッグなど これは、Canvasで拾わないといけない。

figureの順番入れ替え?

クリックで一番上のfigureを変更ただし、これをするとクリックの後にDrugイベントに以降できません。 public void mousePressed(MouseEvent me) { Figure figure=(Figure)me.getSource(); IFigure parent=figure.getParent(); //figure.requestFocus(); List…

Fastview

FastView 左下にステータスに収納されるView、表示と非表示を自動で行うPerspectiveなどから追加 layout.addFastView(LibralyView.ID,0.1f);WorkbenchAdvisorで指定が必要 configurer.setShowFastViewBars(true);透過ウインドウの代用かな? ファイルツリーや…

初期の作成でつまる

少したつと作り方忘れてしまうな。(>oplugin.xml 必須 point point="org.eclipse.core.runtime.products" point="org.eclipse.ui.perspectives" point="org.eclipse.core.runtime.applications"

[eclipse-rcp]draw2dのgraphicsにstringExtengがない?? GC作るのが一番簡単? いや、どこかで取れそうな気がするけど、よしとしよう。 GC gc=new GC(shell.getDisplay()); String text="text\n\nalo"; org.eclipse.swt.graphics.Point dm=gc.stringExtent(tex…

Graphicsクラスに、stringExternがない?

いかな感じで代用 public Point stringExtent(Graphics gc,String label){ int w=gc.getFontMetrics().getAverageCharWidth()*label.length(); int h=gc.getFontMetrics().getHeight(); return new Point(w,h); }

Draw2DをFigureCanvasではなくCanvas使うときは

super(parent,SWT.V_SCROLL|SWT.H_SCROLL|SWT.NO_REDRAW_RESIZE); に注意、resizeしてちらついたりするときはこれです。

商標を侵害か?

http://slashdot.jp/article.pl?sid=05/05/18/0623245&topic=19&mode=thread スイスイ社危険な会社だな。ソフト名決めるときにかぶらないよう気をつけないと一方、商標回避のSEO技に使えるかもね。せこいけど

SWTの処理をwhileループでまわすときは

if(!getShell().isDisposed()){ getShell().getDisplay().readAndDispatch (); getShell().getDisplay().sleep (); } をいれないと固まる。また、処理速度が速すぎるときは Thread.sleepを入れて調整する必要がある。 try { Thread.sleep(20); } catch (Inte…

Wave Form

WaveForm 書いたよ。手抜いたわりには本物ぽいのができた。 そのうち披露する機会があるだろう。 画像的には、んな漢字です。 http://blog.livedoor.jp/openordie/

本日

My Favorite 情報アンテナー 蜜蜂号の大冒険記よりこの人の文章の書き方の本はわかりやすくていいんですよ。 http://www2u.biglobe.ne.jp/~kurapy/jwriting/7rules.html http://www2u.biglobe.ne.jp/~kurapy/jwriting.html

workbenchdirの取得

File workbench=new File(Platform.getInstanceLocation().getURL().toString().substring(5));pluginのディレクトリーの取得(こっちは実用性難しい) return new File(Platform.getInstallLocation().getURL().getPath(), "plugins/" +plugin.getBundle().ge…

AudioInputStreamはcloseしないといけない。

inputStreamは当然closeするべきなのですが、 たまに、AudioSystem.getAudioInputStream(file).getFormat() とかのメソッドを書くと、inputStreamが開いたままなので、このファイルは削除できなくなります。 public static AudioFormat getAudioFormat(File …

vorbis ogg

RFC3533を参考に http://http1.debian.or.jp/pub/rfc/3500/rfc3533.txtcom.jcraft.jorbis.DecodeExample のコードを読んでるけど難しいな。 [Java]ImageIOを使って、JPEG出力に苦労した。 2箇所の複合的なミスがあり時間がかかった。 一つ目は、BufferedIma…

ストリーミングデータの保存と変換

よくまとまっている。 http://homepage2.nifty.com/netwarp/convert/

5月ソフト バージャンアップ スケジュール

もう中旬だけど 第1 akJ Speechtools 公開 済み 第2 akJ Audiotools 第3 akJ OptipngWrapper 第4 akJ SubPlayer 第5 原則 お休み

Optipngがバージョンアップ!

http://www.cs.toronto.edu/~cosmin/pngtech/optipng/ したようだ。 akJ OptipngWrapperもバージョンアップをしよっと! さてさて何の機能を加えるか! ちょうど、EclipseでPNGの保存のメソッドも覚えたし、 GIF/JPG/BMPでもサポートしてみようかなー。あまり…

スペクトログラム解析足りないデーターを足せばいいというもんじゃない。

足りないところに値0の音を入れて 解析するとスペクトログラムはなんとなく無難にでるけど、フォルマント解析がおかしくなる。 難しいな。フォルマントの場合、追加データーは解析しないようした方がいいかもしれない。

全角マイナス(−)は化ける?

なぜかよくわからないが全角マイナスがコンパイル時に化けた! 半角が使えるから問題ないけど気をつけよう。

スペクトログラムは鬼門だった。

snackライブラリーを使ってのスペクトログラムの開発に進んだのは無理があったな。日本語名通らないのはさておき、一度に処理できるのは現実的には数分ほどだし、画像も分割しないと表示できない。 (元画像が小さくても、60000*60000とかに無理やり拡大する…

ホイールで横スクロール

ホイールで横スクロール(立てスクロールが非表示なら万事うまくいく) Focusに注意 //canvas.getVerticalBar().setEnabled(false);//無効にしてもいいみたい canvas.getVerticalBar().addSelectionListener(new ScrollChange()); canvas.setFocus(); } public…

draw2dメモ

panel(figureすべて?)のデフォルトのlayoutmanagerはnull layoutmanagerがnullなら左上に追加した順に描画する。 つまり、最後に追加したFigureが一番上 しかし、nullだとpanelのsizeは大きくしかならない。childrenのFigureをサイズを変更して、親のサイズ…