AS3で音源を埋め込もうとしたら、コンパイルエラーが出たので調査。

  • このエントリーをはてなブックマークに追加
  • 0

ちょっと、またAS3でコンテンツ作ろうとして、mp3ファイルをEmbedしようとしたんだが、何故かこんなエラーが出てきた。原因をいろいろと調べたところ、サンプリングレートが悪い説とかいろいろ出てきた。で、再サンプリングしてみても状況が変わらない。
で、色々調べているうちに、真の原因がわかったのでメモしておく。

ActionScript

  1. SoundEmbed.as(17): col: 3: Error: unsupported sampling rate (0Hz)
  2. [Embed(source = "../sample.mp3")]private const SampleSound:Class;
  3. ^
  4. SoundEmbed.as(17): col: 3: Error: Unable to transcode ../sample.mp3.

cheero Power Plus 10400mAh DANBOARD Version マルチデバイス対応モバイルバッテリー

cheero Power Plus 10400mAh DANBOARD Version マルチデバイス対応モバイルバッテリー

定価:¥ 6,980

Amazon価格:¥ 24,776

カテゴリ:エレクトロニクス




ということで作ったコードはこれ。これだけでコンパイルすら出来ない所が凄い。しかも、原因は読み込んでるMP3ファイル側。

原因だが、「アルバムのタイトル」に、日本語が入っているとダメだった。理由は不明だが。ということで、Windowsの「プロパティ」から、アルバムのタイトルを半角文字だけにしたところ動作した。よしよし。

ちなみに、エラーメッセージの「(0Hz)」のところだが、アルバムのタイトルに入れる日本語によって変わった。「タロウ」だと0だったが、「太郎」だと(32000Hz)だった。

ActionScript

  1. package
  2. {
  3.     import flash.display.*;
  4.     import flash.media.Sound;
  5.    
  6.     /**
  7.      * ...
  8.      * @author tarotarorg
  9.      */
  10.     public class SoundEmbed extends Sprite
  11.     {
  12.         [Embed(source = "../sample.mp3")]private const SampleSound:Class;
  13.         public function SoundEmbed()
  14.         {
  15.             var snd:Sound = new SampleSound() as Sound;
  16.             snd.play();
  17.         }
  18.     }
  19. }
スポンサーリンク
スポンサーリンク
  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク