トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     Sound.position
投稿するにはまず登録を

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
まさはる
Åê¹ÆNo.25222
投稿日時: 2006-4-28 19:01
新米
居住地: よこはま
投稿: 17
使用環境:
XP SP3
Core2Duo 2.6GHz 2GB
:Flash CS4:
Re: Sound.position
MacはDirector3.1.1の時代からサウンド発声の遅れがなく優秀でした。サウンドボード含め自社ブランドだからですかね。

Winは泣けてくるほどばらばらです。

と言うわけでこれにて終わりにします。
ありがとうございました。
ひろゆき
Åê¹ÆNo.25221
投稿日時: 2006-4-28 18:33
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: Sound.position
引用:
まさはるさんは書きました:
テストツールは以下:
http://up01.symphonic.co.jp/~takahasi/soundTest/

IE, Firefox よりも、Safari の方がそれほど目立たないズレでした。
ご報告まで。


----------------
質問する際は、回答者に具体的な情報を与えてください。

まさはる
Åê¹ÆNo.25218
投稿日時: 2006-4-28 17:59
新米
居住地: よこはま
投稿: 17
使用環境:
XP SP3
Core2Duo 2.6GHz 2GB
:Flash CS4:
Re: Sound.position
テストツールを作って
 1.getTimer()やtimerと実サウンドとのずれ
 2.Sound.positionと実サウンドとのずれ
をテストしてみました。

Macの場合あまりずれがないのですが、Winの場合機種によっては
Sound.positionが0.1?0.2秒もずれる事が分かりました。
getTimer()の方がずれないんです。

サウンドのスタート時刻を指定して再生した場合でも
getTimer()の方が優秀でした。スタートオフセットは案外忠実に
オフセットされるようです。

よって今回はサウンドと同時にタイマーをセットしそちらの
数値により判断させる事としました。

テストツールは以下:
http://up01.symphonic.co.jp/~takahasi/soundTest/
まさはる
Åê¹ÆNo.25196
投稿日時: 2006-4-26 17:20
新米
居住地: よこはま
投稿: 17
使用環境:
XP SP3
Core2Duo 2.6GHz 2GB
:Flash CS4:
Re: Sound.position
Winでもそうなりました。
ひろゆき
Åê¹ÆNo.25195
投稿日時: 2006-4-26 17:09
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: Sound.position
引用:
ちなみに速いコンピュータでフレームレートを60fpsぐらいにして
Sound.posisitonと同時にgetTimerの数値も一緒に出力させると、
getTimerの方は常に違う細かい数値を吐き出すんですけど
Sound.posisitonは4?5回同じ数値を出力します。

Macだけなのかもしれませんが。

例えば、
soundObj = new Sound(this);
	(中略)
play_btn.onRelease = function() {
	trace(soundObj.position);
	soundObj.start();
	trace(soundObj.position);
};
stop_btn.onRelease = function() {
	soundObj.stop();
};
などでテストしてみると、
soundObj.start() の前後で、soundObj.position の値が変わらないんですよ。
#特に、停止ボタンを押した後の値に困った経験が。

サンプル2

印象としては、少し前の soundObj.position を引きずるのような。
すぐに値が反映されないような。

お役に立てず、申し訳ないです。


----------------
質問する際は、回答者に具体的な情報を与えてください。

まさはる
Åê¹ÆNo.25193
投稿日時: 2006-4-26 16:57
新米
居住地: よこはま
投稿: 17
使用環境:
XP SP3
Core2Duo 2.6GHz 2GB
:Flash CS4:
Re: Sound.position
返信が来る間考えました。
そう、ひろゆきさんの方がスペックが低いんでした。

30fpsと12fpsで似た数値を出してはいるけれども、30fpsにて
12fpsの倍の密度で数字が出ているわけではなく、また数字を
よく見ると双方に同じものがでている。
つまりこれは実際30fpsで動いてはおらず、数値の始まり付近
が違うだけで僕の場合とある程度傾向は同じ、なのでした。
多少コンピュータによって傾向が異なると言う事ですね。

分かりました。こちらであと2?3台のコンピュータでテスト
してみてあまり間隔に変化がないようであれば、ここを限界と
考え、仕様を相談してみます。

ちなみに速いコンピュータでフレームレートを60fpsぐらいにして
Sound.posisitonと同時にgetTimerの数値も一緒に出力させると、
getTimerの方は常に違う細かい数値を吐き出すんですけど
Sound.posisitonは4?5回同じ数値を出力します。

お付き合いありがとうございました。
ひろゆき
Åê¹ÆNo.25192
投稿日時: 2006-4-26 16:45
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: Sound.position
引用:
サウンドボードやCPUによって違うのかも知れませんね。
うちは毎回どんな物でもこの数字です。

Sound.position を取得する部分以外の処理を重いものにすると、
間隔が延びたりするので、内部的にどうなっているのか、よく分からないです。
ブラウザとかによっても、違っているかもしれません。
#そこまで検証するパワーがないので、申し訳ないですが。

引用:
ちなみにコンピュータのスペックはどのくらいですか?

低いですよ。
PowerPC G4 400MHz


----------------
質問する際は、回答者に具体的な情報を与えてください。

まさはる
Åê¹ÆNo.25191
投稿日時: 2006-4-26 16:36
新米
居住地: よこはま
投稿: 17
使用環境:
XP SP3
Core2Duo 2.6GHz 2GB
:Flash CS4:
Re: Sound.position
あ!!!

ではこれは環境に大きく左右されると言う事。
サウンドボードやCPUによって違うのかも知れませんね。
うちは毎回どんな物でもこの数字です。

色々なコンピュータで試してみますね。

ひろゆきさんの状態であれば十分なのですけど、音楽教育ソフトなので、
僕のような環境の人、それ以下の人も考慮に入れて、割と厳しい判定を
しなければならないのです。

ちなみにコンピュータのスペックはどのくらいですか? 
うちはこの他デスクトップ 3GHz/2GB、ートの1.5GHz/1.5GBで同じような症状です。

ありがとうございました。

-----
そうですか、署名ですか…。
ひろゆき
Åê¹ÆNo.25190
投稿日時: 2006-4-26 16:21
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: Sound.position
うちの環境だと、例えば、今見てみると...。

onEnterFrame/30fpsの場合
70
93
139
186
209
255
348
395
464
511

setInterval/12fpsの場合
23
70
116
139
186
209
255
279
348
395

だったりします。
#最初の 0 は表示されないように変更しました。
#そのときどきで一部異なります。
#最初の方の数値にばらつきがあるようですが、
#原因までは、分からないです。

引用:
FLVがフレーム単位でシークできないのと同じような感じがします。

そんな感じですね。
なので、あまり正確なものは期待できないかと。

↓署名です。


----------------
質問する際は、回答者に具体的な情報を与えてください。

まさはる
Åê¹ÆNo.25189
投稿日時: 2006-4-26 16:07
新米
居住地: よこはま
投稿: 17
使用環境:
XP SP3
Core2Duo 2.6GHz 2GB
:Flash CS4:
Re: Sound.position
サンプルまで作って検証していただいたのですね。
ありがとうございます。

ちなみに上記サンプルでテストを行った結果、多少間隔は違いますが、ものすごく似た数値を返すのです。僕が作っているゲームにおいてもこの数値が出てきます。つまりFlashは取り込まれた音ファイルをレートに関係なく一定のFlash独自のブロックに分けて処理し、このブロックよりも細かい数値は考えないようにしているのではないかと思うのです。FLVがフレーム単位でシークできないのと同じような感じがします。

onEnterFrame/30fpsの場合
0
186
186
232
325
325
418
464
511

interval/ 12fpsの場合
0
186
186
232
279
279
325
372
372
418
464

追伸:
「質問する際は具体的な…」という注意書きがありますがこの場合どのような情報があればよかったでしょうか。Flashの仕様的な部分への質問なので、実験の経過などは不要かと思ったのです。もし失礼があったのならお詫びします。文章が分かりづらかったですかね。
(1) 2 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops