Skip to content

Commit

Permalink
added support for M4A for safari
Browse files Browse the repository at this point in the history
audio formats in their own directories
  • Loading branch information
kevmoo committed Oct 19, 2012
1 parent 4fea4ed commit b74bc34
Show file tree
Hide file tree
Showing 40 changed files with 18 additions and 6 deletions.
24 changes: 18 additions & 6 deletions web/_audio.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@ class _Audio {

final AudioLoader _audioLoader;
final Map<String, AudioBuffer> _buffers = new Map();
static final _audioFormat = _getAudioFormat();

factory _Audio() {
if(_supportsAudio) {
if(_audioFormat != null) {
final audioContext = new AudioContext();
final loader = new AudioLoader(audioContext, _getAudioPaths(_audioNames));
return new _Audio._internal(loader);
Expand Down Expand Up @@ -94,16 +95,27 @@ class _Audio {
}
}

static bool get _supportsAudio {
static String _getAudioFormat() {
try {
final isChrome = window.clientInformation.userAgent.contains("Chrome");
return isChrome;
final isWebKit = window.clientInformation.userAgent.contains("WebKit");
if(isWebKit) {
final isChrome = window.clientInformation.userAgent.contains("Chrome");
if(isChrome) {
return 'webm';
} else {
return 'm4a';
}
}
} catch (e) {
return false;
print("Error getting client info: ${e}");
}
return null;
}

static String _getAudioPath(String name) => 'audio/$name.webm';
static String _getAudioPath(String name) {
assert(_audioFormat != null);
return 'audio/${_audioFormat}/$name.${_audioFormat}';
}

static Iterable<String> _getAudioPaths(Iterable<String> names) {
return $(names).map(_getAudioPath);
Expand Down
Binary file added web/audio/m4a/Bomb0.m4a
Binary file not shown.
Binary file added web/audio/m4a/Bomb1.m4a
Binary file not shown.
Binary file added web/audio/m4a/Bomb2.m4a
Binary file not shown.
Binary file added web/audio/m4a/Bomb3.m4a
Binary file not shown.
Binary file added web/audio/m4a/Bomb4.m4a
Binary file not shown.
Binary file added web/audio/m4a/Pop0.m4a
Binary file not shown.
Binary file added web/audio/m4a/Pop1.m4a
Binary file not shown.
Binary file added web/audio/m4a/Pop2.m4a
Binary file not shown.
Binary file added web/audio/m4a/Pop3.m4a
Binary file not shown.
Binary file added web/audio/m4a/Pop4.m4a
Binary file not shown.
Binary file added web/audio/m4a/Pop5.m4a
Binary file not shown.
Binary file added web/audio/m4a/Pop6.m4a
Binary file not shown.
Binary file added web/audio/m4a/Pop7.m4a
Binary file not shown.
Binary file added web/audio/m4a/Pop8.m4a
Binary file not shown.
Binary file added web/audio/m4a/click.m4a
Binary file not shown.
Binary file added web/audio/m4a/flag.m4a
Binary file not shown.
Binary file added web/audio/m4a/throw.m4a
Binary file not shown.
Binary file added web/audio/m4a/unflag.m4a
Binary file not shown.
Binary file added web/audio/m4a/win.m4a
Binary file not shown.
Binary file renamed web/audio/Bomb0.webm → web/audio/webm/Bomb0.webm
Binary file not shown.
Binary file renamed web/audio/Bomb1.webm → web/audio/webm/Bomb1.webm
Binary file not shown.
Binary file renamed web/audio/Bomb2.webm → web/audio/webm/Bomb2.webm
Binary file not shown.
Binary file renamed web/audio/Bomb3.webm → web/audio/webm/Bomb3.webm
Binary file not shown.
Binary file renamed web/audio/Bomb4.webm → web/audio/webm/Bomb4.webm
Binary file not shown.
Binary file renamed web/audio/Pop7.webm → web/audio/webm/Pop0.webm
Binary file not shown.
Binary file renamed web/audio/Pop1.webm → web/audio/webm/Pop1.webm
Binary file not shown.
Binary file renamed web/audio/Pop2.webm → web/audio/webm/Pop2.webm
Binary file not shown.
Binary file renamed web/audio/Pop3.webm → web/audio/webm/Pop3.webm
Binary file not shown.
Binary file renamed web/audio/Pop4.webm → web/audio/webm/Pop4.webm
Binary file not shown.
Binary file renamed web/audio/Pop5.webm → web/audio/webm/Pop5.webm
Binary file not shown.
Binary file renamed web/audio/Pop6.webm → web/audio/webm/Pop6.webm
Binary file not shown.
Binary file renamed web/audio/Pop0.webm → web/audio/webm/Pop7.webm
Binary file not shown.
Binary file renamed web/audio/Pop8.webm → web/audio/webm/Pop8.webm
Binary file not shown.
Binary file renamed web/audio/click.webm → web/audio/webm/click.webm
Binary file not shown.
Binary file renamed web/audio/flag.webm → web/audio/webm/flag.webm
Binary file not shown.
Binary file renamed web/audio/throw.webm → web/audio/webm/throw.webm
Binary file not shown.
Binary file renamed web/audio/unflag.webm → web/audio/webm/unflag.webm
Binary file not shown.
Binary file added web/audio/webm/win.webm
Binary file not shown.
Binary file removed web/audio/win.webm
Binary file not shown.

0 comments on commit b74bc34

Please sign in to comment.