top of page

FileMaker スクリプトでオーディオ再生②

更新日:5月20日



こんにちは。ティーマネジメントの田中です。


前回はFileMaker Go(iPad,iPhone)において、スクリプトからオーディオを再生する方法についてご紹介しました。

今回は、FileMaker Proにおいてはどのようにして、スクリプトからオーディオを再生するのかについてご紹介します。




FileMaker Pro上で、スクリプトからオーディオファイルを再生する

FileMaker Proでは「AVPlayer再生」スクリプトステップが使用できず、また、他にもオーディオを再生するようなスクリプトステップは用意されていません。(記事執筆時点)


そこで、WebViewerとJavaScriptを使用して、オーディオファイルを再生したいと思います。

下記に手順を記載します。



1.

レイアウト上に、任意の名前をつけたWebビューアを配置します。今回は「webviewer」とします。



2.

Webビューアの設定から、「Webアドレス」の部分に、任意のグローバル変数を設定します。

ここでは、「$$webviewer」とします。

続けて、オプションにチェックを入れます。

Webビューアは、レイアウト上に配置されていなければ動作しませんので、目立たない位置に置くようにしてください。



3.

オーディオ再生のためのスクリプトを作成します。

今回設定するのは4ステップです。



順に説明していきます。



テキストを挿入

下記のテキストを、グローバル変数「$$webviewer」に挿入します。

data:text/html,<!DOCTYPE html>
  <meta charset="utf-8">
  <script type="text/javascript">

     function playSound(audio_base64){
      var audio_datauri = "data:audio/mp3;base64,";
      var audio = new Audio(audio_datauri + audio_base64);
      audio.play();
     };

  </script>
</html>



変数を設定

続いて変数「$audio」を設定します。

ここで指定するフィールドは、オーディオが格納されているフィールドです。

Base64EncodeRFC ( 4648 ; file::オーディオファイル01 )

オーディオファイルを改行なしのBase64形式に変換することで、JavaScriptに引数として渡しています。




オブジェクトの更新

一度オブジェクトを更新し、$$webviewerに挿入されているテキストを反映させます。




WebビューアでJavaScriptを実行

次の通りに設定します。

オブジェクト名:”webviewer”

関数名:”playSound”

引数:$audio



スクリプトを実行してみてください!

音声が鳴っていますでしょうか?




おわりに

2回に渡り、スクリプトで音を鳴らす方法を紹介してきました。

ぜひお手元のデバイスで試してみてください。

コメント


bottom of page