cordova-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mwbro...@apache.org
Subject [5/10] Version 2.5.0
Date Thu, 28 Feb 2013 00:36:34 GMT
http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/inappbrowser/window.open.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/inappbrowser/window.open.md b/docs/en/2.5.0/cordova/inappbrowser/window.open.md
new file mode 100644
index 0000000..a37fa82
--- /dev/null
+++ b/docs/en/2.5.0/cordova/inappbrowser/window.open.md
@@ -0,0 +1,95 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+window.open
+===========
+
+Opens a URL in a new InAppBrowser instance, the current browser instance, or the system browser.
+
+    var ref = window.open(url, target, options);
+    
+- __ref:__ reference to the InAppBrowser window (`InAppBrowser`)
+- __url:__ the URL to load (`String`). Call encodeURI() on this if you have Unicode characters in your URL.
+- __target:__ the target to load the URL in (`String`) (Optional, Default: "_self")
+
+        _self - opens in the Cordova WebView if url is in the white-list, else it opens in the InAppBrowser 
+        _blank - always open in the InAppBrowser 
+        _system - always open in the system web browser 
+    
+    
+- __options:__ options for the InAppBrowser (`String`) (Optional, Default: "location=yes")
+    
+    The options string must not contain any blank space, each feature name and value must be separated by a comma. Feature names are case insensitive. Only the value below is supported on all platforms:
+
+    - __location__ - set to 'yes' or 'no' to turn the location bar on or off for the InAppBrowser
+
+    iOS only
+    --------
+    - __enableViewportScale__ -  set to 'yes' or 'no' to prevent viewport scaling through a meta tag (defaults to 'no')
+    - __mediaPlaybackRequiresUserAction__ - set to 'yes' or 'no' to not allow autoplayed HTML5 video (defaults to 'no')
+    - __allowInlineMediaPlayback__ - set to 'yes' or 'no' to allow inline HTML5 media playback, also, the video element in the HTML document must also include the webkit-playsinline attribute (defaults to 'no')
+    - __keyboardDisplayRequiresUserAction__ - set to 'yes' or 'no' to open the keyboard when form elements get focus via the JavaScript focus() call (defaults to 'yes')
+    - __suppressesIncrementalRendering__ - set to 'yes' or 'no' to wait until all new view content has been received before it is rendered (defaults to 'no')
+    - __presentationstyle__ -  set to 'pagesheet', 'formsheet' or 'fullscreen' to set the [presentation style](http://developer.apple.com/library/ios/documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instp/UIViewController/modalPresentationStyle) (defaults to 'fullscreen')
+    - __transitionstyle__ - set to 'fliphorizontal', 'crossdissolve' or 'coververtical' to set the [transition style](http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instp/UIViewController/modalTransitionStyle) (defaults to 'coververtical')
+            
+Supported Platforms
+-------------------
+
+- Android
+- iOS
+- BlackBerry 10
+- Windows Phone 7 + 8
+
+Quick Example
+-------------
+
+    var ref = window.open('http://apache.org', '_blank', 'location=yes');
+    var ref2 = window.open(encodeURI('http://ja.m.wikipedia.org/wiki/ハングル'), '_blank', 'location=yes');
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>window.open Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            // external url
+            var ref = window.open(encodeURI('http://apache.org'), '_blank', 'location=yes');
+            // relative document
+            ref = window.open('next.html', '_self');
+        }
+
+        </script>
+      </head>
+      <body>
+      </body>
+    </html>
+

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/MediaError/mediaError.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/MediaError/mediaError.md b/docs/en/2.5.0/cordova/media/MediaError/mediaError.md
new file mode 100644
index 0000000..ab79258
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/MediaError/mediaError.md
@@ -0,0 +1,44 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+MediaError
+==========
+
+A `MediaError` object is returned to the `mediaError` callback function when an error occurs.
+
+Properties
+----------
+
+- __code:__ One of the predefined error codes listed below.
+- __message:__ Error message describing the details of the error.
+
+Constants
+---------
+
+- `MediaError.MEDIA_ERR_ABORTED`
+- `MediaError.MEDIA_ERR_NETWORK`
+- `MediaError.MEDIA_ERR_DECODE`
+- `MediaError.MEDIA_ERR_NONE_SUPPORTED`
+
+
+Description
+-----------
+
+The `MediaError` object is returned to the user through the `mediaError` callback function when an error occurs.
+

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/Parameters/mediaError.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/Parameters/mediaError.md b/docs/en/2.5.0/cordova/media/Parameters/mediaError.md
new file mode 100644
index 0000000..e1803b4
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/Parameters/mediaError.md
@@ -0,0 +1,32 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+mediaError
+==========
+
+A user specified callback function that is invoked when there is an error in media functions.
+
+    function(error) {
+        // Handle the error
+    }
+
+Parameters
+----------
+
+- __error:__ The error returned by the device. (`MediaError`)

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/CaptureCB.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/CaptureCB.md b/docs/en/2.5.0/cordova/media/capture/CaptureCB.md
new file mode 100644
index 0000000..5f31fd0
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/CaptureCB.md
@@ -0,0 +1,44 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+CaptureCB
+=========
+
+> Invoked upon a successful media capture operation.
+
+    function captureSuccess( MediaFile[] mediaFiles ) { ... };
+
+Description
+-----------
+
+This function is invoked after a successful capture operation has completed.  This means a media file has been captured, and either the user has exited the media capture application, or the capture limit has been reached.
+
+Each MediaFile object describes a captured media file.  
+
+Quick Example
+-------------
+
+    // capture callback
+    function captureSuccess(mediaFiles) {
+        var i, path, len;
+        for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+            path = mediaFiles[i].fullPath;
+            // do something interesting with the file
+        }
+    };

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/CaptureError.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/CaptureError.md b/docs/en/2.5.0/cordova/media/capture/CaptureError.md
new file mode 100644
index 0000000..5f98d51
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/CaptureError.md
@@ -0,0 +1,37 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+CaptureError
+============
+
+> Encapsulates the error code resulting from a failed media capture operation.
+
+Properties
+----------
+
+- __code:__ One of the pre-defined error codes listed below.
+
+Constants
+---------
+
+- CaptureError.`CAPTURE_INTERNAL_ERR`: Camera or microphone failed to capture image or sound. 
+- CaptureError.`CAPTURE_APPLICATION_BUSY`: Camera application or audio capture application is currently serving other capture request.
+- CaptureError.`CAPTURE_INVALID_ARGUMENT`: Invalid use of the API (e.g. limit parameter has value less than one).
+- CaptureError.`CAPTURE_NO_MEDIA_FILES`: User exited camera application or audio capture application before capturing anything.
+- CaptureError.`CAPTURE_NOT_SUPPORTED`: The requested capture operation is not supported.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/CaptureErrorCB.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/CaptureErrorCB.md b/docs/en/2.5.0/cordova/media/capture/CaptureErrorCB.md
new file mode 100644
index 0000000..948140a
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/CaptureErrorCB.md
@@ -0,0 +1,40 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+CaptureErrorCB
+==============
+
+> Invoked if an error occurs during a media capture operation.
+
+    function captureError( CaptureError error ) { ... };
+
+Description
+-----------
+
+This function is invoked if an error occurs when trying to launch a media capture operation and the capture application is busy, if an error occurs while the capture operation is taking place, or if the capture operation has been canceled by the user before any media files have been captured.
+
+This function is invoked with a CaptureError object containing an appropriate error code.
+
+Quick Example
+-------------
+
+    // capture error callback
+    var captureError = function(error) {
+        navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
+    };

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/ConfigurationData.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/ConfigurationData.md b/docs/en/2.5.0/cordova/media/capture/ConfigurationData.md
new file mode 100644
index 0000000..c166b3e
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/ConfigurationData.md
@@ -0,0 +1,62 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+ConfigurationData
+=================
+
+> Encapsulates a set of media capture parameters that a device supports.
+
+Description
+-----------
+
+This object is used to describe media capture modes supported by the device.  The configuration data includes the MIME type, and capture dimensions (for video or image capture).  
+
+The MIME types should adhere to [RFC2046](http://www.ietf.org/rfc/rfc2046.txt).  Examples:
+
+- video/3gpp
+- video/quicktime
+- image/jpeg
+- audio/amr
+- audio/wav 
+
+Properties
+----------
+
+- __type:__ The ASCII-encoded string in lower case representing the media type. (DOMString)
+- __height:__ The height of the image or video in pixels.  In the case of a sound clip, this attribute has value 0. (Number)
+- __width:__ The width of the image or video in pixels.  In the case of a sound clip, this attribute has value 0. (Number)
+
+Quick Example
+-------------
+
+    // retrieve supported image modes
+    var imageModes = navigator.device.capture.supportedImageModes;
+
+    // Select mode that has the highest horizontal resolution
+    var width = 0;
+    var selectedmode;
+    for each (var mode in imageModes) {
+        if (mode.width > width) {
+            width = mode.width;
+            selectedmode = mode;
+        }
+    }
+
+
+Not supported by any platform.  All configuration data arrays are empty.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/MediaFile.getFormatData.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/MediaFile.getFormatData.md b/docs/en/2.5.0/cordova/media/capture/MediaFile.getFormatData.md
new file mode 100644
index 0000000..7861fee
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/MediaFile.getFormatData.md
@@ -0,0 +1,54 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+MediaFile.getFormatData
+=======================
+
+> Retrieves format information about the media capture file.
+
+    mediaFile.getFormatData( 
+        MediaFileDataSuccessCB successCallback, 
+        [MediaFileDataErrorCB errorCallback]
+    );
+
+Description
+-----------
+
+This function asynchronously attempts to retrieve the format information for the media file.  If successful, it invokes the MediaFileDataSuccessCB callback with a MediaFileData object.  If the attempt fails, this function will invoke the MediaFileDataErrorCB callback.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+BlackBerry WebWorks Quirks
+--------------------------
+There is no API that provides format information of media files.  Therefore, all MediaFileData objects will be returned with default values.  See MediaFileData documentation.
+
+Android Quirks
+--------------
+The API for retrieving media file format information is limited.  Therefore, not all MediaFileData properties are supported.  See MediaFileData documentation.
+
+iOS Quirks
+----------
+The API for retrieving media file format information is limited.  Therefore, not all MediaFileData properties are supported.  See MediaFileData documentation.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/MediaFile.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/MediaFile.md b/docs/en/2.5.0/cordova/media/capture/MediaFile.md
new file mode 100644
index 0000000..fe3d9a1
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/MediaFile.md
@@ -0,0 +1,37 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+MediaFile
+=========
+
+> Encapsulates properties of a media capture file.
+
+Properties
+----------
+
+- __name:__ The name of the file, without path information. (DOMString)
+- __fullPath:__ The full path of the file, including the name. (DOMString)
+- __type:__ The mime type (DOMString)
+- __lastModifiedDate:__ The date and time that the file was last modified. (Date)
+- __size:__ The size of the file, in bytes. (Number)
+
+Methods
+-------
+
+- __MediaFile.getFormatData:__ Retrieves the format information of the media file.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/MediaFileData.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/MediaFileData.md b/docs/en/2.5.0/cordova/media/capture/MediaFileData.md
new file mode 100644
index 0000000..93ed349
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/MediaFileData.md
@@ -0,0 +1,62 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+MediaFileData
+=============
+
+> Encapsulates format information about a media file.
+
+Properties
+----------
+
+- __codecs:__ The actual format of the audio and video content. (DOMString)
+- __bitrate:__ The average bitrate of the content.  In case of an image, this attribute has value 0. (Number)
+- __height:__ The height of the image or video in pixels. In the case of a sound clip, this attribute has value 0. (Number)
+- __width:__ The width of the image or video in pixels. In the case of a sound clip, this attribute has value 0. (Number)
+- __duration:__ The length of the video or sound clip in seconds. In the case of an image, this attribute has value 0. (Number)
+
+BlackBerry WebWorks Quirks
+--------------------------
+There is no API that provides format information of media files.  So the MediaFileData object returned by the MediaFile.getFormatData function will have the following default values:
+
+- __codecs:__ Not supported. The attribute will always be null.
+- __bitrate:__ Not supported.  The attribute will always be 0.
+- __height:__ Not supported.  The attribute will always be 0.
+- __width:__ Not supported.  The attribute will always be 0.
+- __duration:__ Not supported.  The attribute will always be 0.
+
+Android Quirks
+--------------
+Support for the MediaFileData properties is as follows:
+
+- __codecs:__ Not supported.  The attribute will always be null.
+- __bitrate:__ Not supported.  The attribute will always be 0.
+- __height:__ Supported.  (Image and video files only).  
+- __width:__ Supported.  (Image and video files only). 
+- __duration:__ Supported.  (Audio and video files only).
+
+iOS Quirks
+----------
+Support for the MediaFileData properties is as follows:
+
+- __codecs:__ Not supported.  The attribute will always be null.
+- __bitrate:__ Supported on iOS4 devices for audio only. The attribute will always be 0 for image and video.
+- __height:__ Supported.  (Image and video files only).  
+- __width:__ Supported.  (Image and video files only). 
+- __duration:__ Supported.  (Audio and video files only).
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/capture.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/capture.md b/docs/en/2.5.0/cordova/media/capture/capture.md
new file mode 100644
index 0000000..088277a
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/capture.md
@@ -0,0 +1,131 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+Capture
+=======
+
+> Provides access to the audio, image, and video capture capabilities of the device.
+
+Objects
+-------
+
+- Capture
+- CaptureAudioOptions
+- CaptureImageOptions
+- CaptureVideoOptions
+- CaptureCB
+- CaptureErrorCB
+- ConfigurationData
+- MediaFile
+- MediaFileData
+
+Methods
+-------
+
+- capture.captureAudio
+- capture.captureImage
+- capture.captureVideo
+- MediaFile.getFormatData
+
+Scope
+-----
+
+The __capture__ object is assigned to the __navigator.device__ object, and therefore has global scope.
+
+    // The global capture object
+    var capture = navigator.device.capture;
+
+Properties
+----------
+
+- __supportedAudioModes:__ The audio recording formats supported by the device. (ConfigurationData[])
+- __supportedImageModes:__ The recording image sizes and formats supported by the device. (ConfigurationData[])
+- __supportedVideoModes:__ The recording video resolutions and formats supported by the device. (ConfigurationData[])
+
+Methods
+-------
+
+- capture.captureAudio: Launch the device audio recording application for recording audio clip(s).
+- capture.captureImage: Launch the device camera application for taking image(s).
+- capture.captureVideo: Launch the device video recorder application for recording video(s).
+
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Capture" value="org.apache.cordova.Capture"/>
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.RECORD_AUDIO" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />   
+
+### Bada
+
+#### manifest.xml
+
+    <Privilege>
+        <Name>RECORDING</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Capture" value="org.apache.cordova.capture.MediaCapture" />
+
+#### www/config.xml
+
+    <feature id="blackberry.system"  required="true" version="1.0.0.0" />
+    <feature id="blackberry.io.file" required="true" version="1.0.0.0" />
+
+### iOS
+
+#### config.xml
+
+    <plugin name="Capture" value="CDVCapture" />
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_MEDIALIB" />
+        <Capability Name="ID_CAP_MICROPHONE" />
+        <Capability Name="ID_HW_FRONTCAMERA" />
+        <Capability Name="ID_CAP_ISV_CAMERA" />
+        <Capability Name="ID_CAP_CAMERA" />
+    </Capabilities>

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/captureAudio.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/captureAudio.md b/docs/en/2.5.0/cordova/media/capture/captureAudio.md
new file mode 100644
index 0000000..36b0417
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/captureAudio.md
@@ -0,0 +1,141 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+capture.captureAudio
+====================
+
+> Start the audio recorder application and return information about captured audio clip file(s).
+
+    navigator.device.capture.captureAudio( 
+	    CaptureCB captureSuccess, CaptureErrorCB captureError,  [CaptureAudioOptions options]
+	);
+
+Description
+-----------
+
+This method starts an asynchronous operation to capture audio recordings using the device's default audio recording application.  The operation allows the device user to capture multiple recordings in a single session.
+
+The capture operation ends when either the user exits the audio recording application, or the maximum number of recordings, specified by the __limit__ parameter in CaptureAudioOptions, has been reached.  If no value is provided for the __limit__ parameter, a default value of one (1) is used, and the capture operation will terminate after the user records a single audio clip.
+
+When the capture operation is finished, it will invoke the CaptureCB callback with an array of MediaFile objects describing each captured audio clip file.  If the operation is terminated by the user before an audio clip is captured, the CaptureErrorCB callback will be invoked with a CaptureError object with the CaptureError.`CAPTURE_NO_MEDIA_FILES` error code.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+Quick Example
+-------------
+
+    // capture callback
+    var captureSuccess = function(mediaFiles) {
+        var i, path, len;
+        for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+            path = mediaFiles[i].fullPath;
+            // do something interesting with the file
+        }
+    };
+
+    // capture error callback
+    var captureError = function(error) {
+        navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
+    };
+
+    // start audio capture
+    navigator.device.capture.captureAudio(captureSuccess, captureError, {limit:2});
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Capture Audio</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
+        <script type="text/javascript" charset="utf-8" src="json2.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Called when capture operation is finished
+        //
+        function captureSuccess(mediaFiles) {
+            var i, len;
+            for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+                uploadFile(mediaFiles[i]);
+            }	    
+        }
+
+        // Called if something bad happens.
+        // 
+        function captureError(error) {
+	        var msg = 'An error occurred during capture: ' + error.code;
+            navigator.notification.alert(msg, null, 'Uh oh!');
+        }
+
+        // A button will call this function
+        //
+        function captureAudio() {
+            // Launch device audio recording application, 
+            // allowing user to capture up to 2 audio clips
+            navigator.device.capture.captureAudio(captureSuccess, captureError, {limit: 2});
+        }
+
+        // Upload files to server
+        function uploadFile(mediaFile) {
+            var ft = new FileTransfer(),
+                path = mediaFile.fullPath,
+                name = mediaFile.name;
+
+            ft.upload(path,
+                "http://my.domain.com/upload.php",
+                function(result) {
+                    console.log('Upload success: ' + result.responseCode);
+                    console.log(result.bytesSent + ' bytes sent');
+                },
+                function(error) {
+                    console.log('Error uploading file ' + path + ': ' + error.code);
+                },
+                { fileName: name });   
+        }
+
+        </script>
+        </head>
+        <body>
+            <button onclick="captureAudio();">Capture Audio</button> <br>
+        </body>
+    </html>
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- Cordova for BlackBerry WebWorks attempts to launch the __Voice Notes Recorder__ application, provided by RIM, to capture the audio recordings.  The developer will receive a CaptureError.`CAPTURE_NOT_SUPPORTED` error code if the application is not installed on the device.
+
+iOS Quirks
+----------
+
+- iOS does not have a default audio recording application so a simple user interface is provided.
+
+Windows Phone 7 and 8 Quirks
+----------
+
+- Windows Phone 7 does not have a default audio recording application so a simple user interface is provided.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/captureAudioOptions.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/captureAudioOptions.md b/docs/en/2.5.0/cordova/media/capture/captureAudioOptions.md
new file mode 100644
index 0000000..19ec58b
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/captureAudioOptions.md
@@ -0,0 +1,56 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+CaptureAudioOptions
+===================
+
+> Encapsulates audio capture configuration options.
+
+Properties
+----------
+
+- __limit:__ The maximum number of audio clips the device user can record in a single capture operation.  The value must be greater than or equal to 1 (defaults to 1).
+- __duration:__ The maximum duration of an audio sound clip, in seconds.
+- __mode:__ The selected audio mode.  The value must match one of the elements in `capture.supportedAudioModes`.
+
+Quick Example
+-------------
+
+    // limit capture operation to 3 media files, no longer than 10 seconds each
+    var options = { limit: 3, duration: 10 };
+
+    navigator.device.capture.captureAudio(captureSuccess, captureError, options);
+
+Android Quirks
+--------------
+
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The audio recording format cannot be altered programmatically.  Recordings are encoded using Adaptive Multi-Rate (AMR) format (audio/amr).
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The audio recording format cannot be altered programmatically.  Recordings are encoded using Adaptive Multi-Rate (AMR) format (audio/amr).
+
+iOS Quirks
+----------
+
+- The __limit__ parameter is not supported. One recording can be created for each invocation.
+- The __mode__ parameter is not supported.  The audio recording format cannot be altered programmatically.  Recordings are encoded using Waveform Audio (WAV) format (audio/wav).

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/captureImage.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/captureImage.md b/docs/en/2.5.0/cordova/media/capture/captureImage.md
new file mode 100644
index 0000000..ade443f
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/captureImage.md
@@ -0,0 +1,159 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+capture.captureImage
+====================
+
+> Start the camera application and return information about captured image file(s).
+
+    navigator.device.capture.captureImage( 
+	    CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureImageOptions options]
+	);
+
+Description
+-----------
+
+This method starts an asynchronous operation to capture images using the device camera application.  The operation allows the device user to capture multiple images in a single session.
+
+The capture operation ends when either the user exits the camera application, or the maximum number of images, specified by the __limit__ parameter in CaptureImageOptions, has been reached.  If no value is provided for the __limit__ parameter, a default value of one (1) is used, and the capture operation will terminate after the user captures a single image.
+
+When the capture operation is finished, it will invoke the CaptureCB callback with an array of MediaFile objects describing each captured image file.  If the operation is terminated by the user before an image is captured, the CaptureErrorCB callback will be invoked with a CaptureError object with the CaptureError.`CAPTURE_NO_MEDIA_FILES` error code.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Bada 2.x
+- Windows 8
+
+Windows Phone 7 Quirks
+----------------------
+
+Invoking the native camera application while your device is connected
+via Zune will not work, and the error callback will be triggered.
+
+Quick Example
+-------------
+
+    // capture callback
+    var captureSuccess = function(mediaFiles) {
+        var i, path, len;
+        for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+            path = mediaFiles[i].fullPath;
+            // do something interesting with the file
+        }
+    };
+
+    // capture error callback
+    var captureError = function(error) {
+        navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
+    };
+
+    // start image capture
+    navigator.device.capture.captureImage(captureSuccess, captureError, {limit:2});
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Capture Image</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
+        <script type="text/javascript" charset="utf-8" src="json2.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Called when capture operation is finished
+        //
+        function captureSuccess(mediaFiles) {
+            var i, len;
+            for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+                uploadFile(mediaFiles[i]);
+            }	    
+        }
+
+        // Called if something bad happens.
+        // 
+        function captureError(error) {
+	        var msg = 'An error occurred during capture: ' + error.code;
+            navigator.notification.alert(msg, null, 'Uh oh!');
+        }
+
+        // A button will call this function
+        //
+        function captureImage() {
+            // Launch device camera application, 
+            // allowing user to capture up to 2 images
+            navigator.device.capture.captureImage(captureSuccess, captureError, {limit: 2});
+        }
+
+        // Upload files to server
+        function uploadFile(mediaFile) {
+            var ft = new FileTransfer(),
+                path = mediaFile.fullPath,
+                name = mediaFile.name;
+
+            ft.upload(path,
+                "http://my.domain.com/upload.php",
+                function(result) {
+                    console.log('Upload success: ' + result.responseCode);
+                    console.log(result.bytesSent + ' bytes sent');
+                },
+                function(error) {
+                    console.log('Error uploading file ' + path + ': ' + error.code);
+                },
+                { fileName: name });   
+        }
+
+        </script>
+        </head>
+        <body>
+            <button onclick="captureImage();">Capture Image</button> <br>
+        </body>
+    </html>
+
+
+Bada Quirks
+-----------
+
+Bada supports _captureImage_ just like the other platforms. However there is _another_ mode where you can capture a video or an image straight in the webview without launching any camera app. In order to do that you need to:
+
+1. create a _&#60;div&#62;_ element somewhere in your document and give it an id (such as "preview"). 
+
+        <div id="preview"></div>
+
+2. Initialize the camera preview with the following method
+
+        navigator.camera.showPreview("preview");
+
+3. Once you get the preview you can
+
+    3.1 Capture an image with
+
+        var options = { destinationFilename: "images/cam01.jpg", highRes: false};
+        navigator.capture.captureImage(success, fail, options);
+    
+3. Hide the camera preview with the following method
+
+        navigator.camera.hidePreview("preview");
+

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/captureImageOptions.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/captureImageOptions.md b/docs/en/2.5.0/cordova/media/capture/captureImageOptions.md
new file mode 100644
index 0000000..763a389
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/captureImageOptions.md
@@ -0,0 +1,53 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+CaptureImageOptions
+===================
+
+> Encapsulates image capture configuration options.
+
+Properties
+----------
+
+- __limit:__ The maximum number of images the device user can capture in a single capture operation.  The value must be greater than or equal to 1 (defaults to 1).
+- __mode:__ The selected image mode.  The value must match one of the elements in `capture.supportedImageModes`.
+
+Quick Example
+-------------
+
+    // limit capture operation to 3 images
+    var options = { limit: 3 };
+
+    navigator.device.capture.captureImage(captureSuccess, captureError, options);
+
+Android Quirks
+--------------
+
+- The __mode__ parameter is not supported.  The image size and format cannot be altered programmatically; however, the image size can be altered by the device user.  Images are saved in JPEG format (image/jpeg).
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- The __mode__ parameter is not supported.  The image size and format cannot be altered programmatically; however, the image size can be altered by the device user.  Images are saved in JPEG format (image/jpeg).
+
+iOS Quirks
+----------
+
+- The __limit__ parameter is not supported. One image is taken per invocation.
+- The __mode__ parameter is not supported.  The image size and format cannot be altered programmatically.  Images are saved in JPEG format (image/jpeg).

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/captureVideo.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/captureVideo.md b/docs/en/2.5.0/cordova/media/capture/captureVideo.md
new file mode 100644
index 0000000..9cbb6ed
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/captureVideo.md
@@ -0,0 +1,160 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+capture.captureVideo
+====================
+
+> Start the video recorder application and return information about captured video clip file(s).
+
+    navigator.device.capture.captureVideo( 
+	    CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureVideoOptions options]
+	);
+
+Description
+-----------
+
+This method starts an asynchronous operation to capture video recordings using the device video recording application.  The operation allows the device user to capture multiple recordings in a single session.
+
+The capture operation ends when either the user exits the video recording application, or the maximum number of recordings, specified by the __limit__ parameter in CaptureVideoOptions, has been reached.  If no value is provided for the __limit__ parameter, a default value of one (1) is used, and the capture operation will terminate after the user records a single video clip.
+
+When the capture operation is finished, it will invoke the CaptureCB callback with an array of MediaFile objects describing each captured video clip file.  If the operation is terminated by the user before an video clip is captured, the CaptureErrorCB callback will be invoked with a CaptureError object with the CaptureError.`CAPTURE_NO_MEDIA_FILES` error code.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Bada 2.x
+- Windows 8
+
+Quick Example
+-------------
+
+    // capture callback
+    var captureSuccess = function(mediaFiles) {
+        var i, path, len;
+        for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+            path = mediaFiles[i].fullPath;
+            // do something interesting with the file
+        }
+    };
+
+    // capture error callback
+    var captureError = function(error) {
+        navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
+    };
+
+    // start video capture
+    navigator.device.capture.captureVideo(captureSuccess, captureError, {limit:2});
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Capture Video</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
+        <script type="text/javascript" charset="utf-8" src="json2.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Called when capture operation is finished
+        //
+        function captureSuccess(mediaFiles) {
+            var i, len;
+            for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+                uploadFile(mediaFiles[i]);
+            }	    
+        }
+
+        // Called if something bad happens.
+        // 
+        function captureError(error) {
+	        var msg = 'An error occurred during capture: ' + error.code;
+            navigator.notification.alert(msg, null, 'Uh oh!');
+        }
+
+        // A button will call this function
+        //
+        function captureVideo() {
+            // Launch device video recording application, 
+            // allowing user to capture up to 2 video clips
+            navigator.device.capture.captureVideo(captureSuccess, captureError, {limit: 2});
+        }
+
+        // Upload files to server
+        function uploadFile(mediaFile) {
+            var ft = new FileTransfer(),
+                path = mediaFile.fullPath,
+                name = mediaFile.name;
+
+            ft.upload(path,
+                "http://my.domain.com/upload.php",
+                function(result) {
+                    console.log('Upload success: ' + result.responseCode);
+                    console.log(result.bytesSent + ' bytes sent');
+                },
+                function(error) {
+                    console.log('Error uploading file ' + path + ': ' + error.code);
+                },
+                { fileName: name });   
+        }
+
+        </script>
+        </head>
+        <body>
+            <button onclick="captureVideo();">Capture Video</button> <br>
+        </body>
+    </html>
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- Cordova for BlackBerry WebWorks attempts to launch the __Video Recorder__ application, provided by RIM, to capture the video recordings.  The developer will receive a CaptureError.`CAPTURE_NOT_SUPPORTED` error code if the application is not installed on the device.
+
+Bada 2.x Quirks
+---------------
+
+Bada supports _captureVideo_ just like the other platforms. However there is _another_ mode where you can capture a video or an image straight in the webview without launching any camera apps. In order to do that you need to:
+
+1. create a _&#60;div&#62;_ element somewhere in your document and give it an id (such as "preview"). 
+
+        <div id="preview"></div>
+
+2. Initialize the camera preview with the following method
+
+        navigator.camera.showPreview("preview");
+
+3. Once you get the preview you can
+
+    3.1 Start capturing a video with
+
+        navigator.capture.startVideoCapture(success, fail, {duration: 5000, destinationFilename: "videos/a.3gp"});
+    
+    3.2 Stop the video capture with
+
+        navigator.capture.stopVideoCapture();
+
+3. Hide the camera preview with the following method
+
+        navigator.camera.hidePreview("preview");
+

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/capture/captureVideoOptions.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/capture/captureVideoOptions.md b/docs/en/2.5.0/cordova/media/capture/captureVideoOptions.md
new file mode 100644
index 0000000..95711f1
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/capture/captureVideoOptions.md
@@ -0,0 +1,59 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+CaptureVideoOptions
+===================
+
+> Encapsulates video capture configuration options.
+
+Properties
+----------
+
+- __limit:__ The maximum number of video clips the device user can capture in a single capture operation.  The value must be greater than or equal to 1 (defaults to 1).
+- __duration:__ The maximum duration of a video clip, in seconds.
+- __mode:__ The selected video capture mode.  The value must match one of the elements in `capture.supportedVideoModes`.
+
+Quick Example
+-------------
+
+    // limit capture operation to 3 video clips
+    var options = { limit: 3 };
+
+    navigator.device.capture.captureVideo(captureSuccess, captureError, options);
+
+Android Quirks
+--------------
+
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The video size and format cannot be altered programmatically; however, these parameters can be changed by the device user. By default, videos are recorded in 3GPP (video/3gpp) format.
+
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The video size and format cannot be altered programmatically; however, these parameters can be changed by the device user. By default, videos are recorded in 3GPP (video/3gpp) format.
+
+iOS Quirks
+----------
+
+- The __limit__ parameter is not supported.  One video is recorded per invocation.
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The video size and format cannot be altered programmatically. By default, videos are recorded in MOV (video/quicktime) format.
+

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/media.getCurrentPosition.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/media.getCurrentPosition.md b/docs/en/2.5.0/cordova/media/media.getCurrentPosition.md
new file mode 100644
index 0000000..fd14aba
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/media.getCurrentPosition.md
@@ -0,0 +1,175 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+media.getCurrentPosition
+========================
+
+Returns the current position within an audio file.
+
+    media.getCurrentPosition(mediaSuccess, [mediaError]);
+
+Parameters
+----------
+
+- __mediaSuccess__: The callback that is called with the current position in seconds.
+- __mediaError__: (Optional) The callback that is called if there was an error.
+
+Description
+-----------
+
+Function `media.getCurrentPosition` is an asynchronous function that returns the current position of the underlying audio file of a Media object. Also updates the ___position__ parameter within the Media object. 
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+Quick Example
+-------------
+
+        // Audio player
+        //
+        var my_media = new Media(src, onSuccess, onError);
+
+        // Update media position every second
+        var mediaTimer = setInterval(function() {
+            // get media position
+            my_media.getCurrentPosition(
+                // success callback
+                function(position) {
+                    if (position > -1) {
+                        console.log((position) + " sec");
+                    }
+                },
+                // error callback
+                function(e) {
+                    console.log("Error getting pos=" + e);
+                }
+            );
+        }, 1000);
+
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                      "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+                // Create Media object from src
+                my_media = new Media(src, onSuccess, onError);
+        
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/media.getDuration.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/media.getDuration.md b/docs/en/2.5.0/cordova/media/media.getDuration.md
new file mode 100644
index 0000000..0793b73
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/media.getDuration.md
@@ -0,0 +1,167 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+media.getDuration
+=================
+
+Returns the duration of an audio file.
+
+    media.getDuration();
+
+
+Description
+-----------
+
+Function `media.getDuration` is a synchronous function that returns the duration of the audio file in seconds, if known.  If the duration is unknown, a value of -1 is returned.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+Quick Example
+-------------
+
+        // Audio player
+        //
+        var my_media = new Media(src, onSuccess, onError);
+
+        // Get duration
+        var counter = 0;
+        var timerDur = setInterval(function() {
+            counter = counter + 100;
+            if (counter > 2000) {
+                clearInterval(timerDur);
+            }
+            var dur = my_media.getDuration();
+            if (dur > 0) {
+                clearInterval(timerDur);
+                document.getElementById('audio_duration').innerHTML = (dur) + " sec";
+            }
+       }, 100);
+
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                              "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+                // Create Media object from src
+                my_media = new Media(src, onSuccess, onError);
+        
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/media.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/media.md b/docs/en/2.5.0/cordova/media/media.md
new file mode 100644
index 0000000..5532b96
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/media.md
@@ -0,0 +1,139 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+Media
+=====
+
+> The `Media` object provides the ability to record and play back audio files on a device.
+
+    var media = new Media(src, mediaSuccess, [mediaError], [mediaStatus]);
+
+
+Note: The current implementation does not adhere to a W3C specification for media capture, and is provided for convenience only.  A future implementation will adhere to the latest W3C specification and may deprecate the current APIs.
+
+Parameters
+----------
+
+- __src__: A URI containing the audio content. _(DOMString)_
+- __mediaSuccess__: (Optional) The callback that is invoked after a Media object has completed the current play/record or stop action. _(Function)_
+- __mediaError__: (Optional) The callback that is invoked if there was an error. _(Function)_
+- __mediaStatus__: (Optional) The callback that is invoked to indicate status changes. _(Function)_
+
+Constants
+---------
+
+The following constants are reported as the only parameter to the __mediaStatus__ callback function.
+
+- `Media.MEDIA_NONE`     = 0;
+- `Media.MEDIA_STARTING` = 1;
+- `Media.MEDIA_RUNNING`  = 2;
+- `Media.MEDIA_PAUSED`   = 3;
+- `Media.MEDIA_STOPPED`  = 4;
+
+Methods
+-------
+
+- media.getCurrentPosition: Returns the current position within an audio file.
+- media.getDuration: Returns the duration of an audio file.
+- media.play: Start or resume playing audio file.
+- media.pause: Pause playing audio file.
+- media.release: Releases the underlying OS'es audio resources.
+- media.seekTo: Moves the position within the audio file.
+- media.startRecord: Start recording audio file.
+- media.stopRecord: Stop recording audio file.
+- media.stop: Stop playing audio file.
+
+Additional ReadOnly Parameters
+---------------------
+
+- __position__: The position within the audio playback in seconds.
+    - Not automatically updated during play, call `getCurrentPosition` to update.
+- __duration__: The duration of the media in seconds.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7.5
+- Tizen
+- Windows 8
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/config.xml
+
+    <plugin name="Media" value="org.apache.cordova.AudioHandler" />
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.RECORD_AUDIO" />
+    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+### Bada
+
+#### manifest.xml
+
+    <Privilege>
+        <Name>RECORDING</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Capture" value="org.apache.cordova.media.MediaCapture" />
+
+### iOS
+
+#### config.xml
+
+    <plugin name="Media" value="CDVSound" />
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_MEDIALIB" />
+        <Capability Name="ID_CAP_MICROPHONE" />
+        <Capability Name="ID_HW_FRONTCAMERA" />
+        <Capability Name="ID_CAP_ISV_CAMERA" />
+        <Capability Name="ID_CAP_CAMERA" />
+    </Capabilities>
+
+Reference: [Application Manifest for Windows Phone](http://msdn.microsoft.com/en-us/library/ff769509%28v=vs.92%29.aspx)
+
+### Tizen
+
+    No permissions are required.
+
+
+### Windows Phone Quirks
+    Only one media file can be played back at a time.
+    There are strict restrictions as to how your application interacts with other media. See http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh184838(v=vs.92).aspx     

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/media.pause.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/media.pause.md b/docs/en/2.5.0/cordova/media/media.pause.md
new file mode 100644
index 0000000..70166fc
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/media.pause.md
@@ -0,0 +1,172 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+media.pause
+===========
+
+Pauses playing an audio file.
+
+    media.pause();
+
+
+Description
+-----------
+
+Function `media.pause` is a synchronous function that pauses playing an audio file.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+    
+Quick Example
+-------------
+
+    // Play audio
+    //
+    function playAudio(url) {
+        // Play the audio file at url
+        var my_media = new Media(url,
+            // success callback
+            function() {
+                console.log("playAudio():Audio Success");
+            },
+            // error callback
+            function(err) {
+                console.log("playAudio():Audio Error: "+err);
+        });
+
+        // Play audio
+        my_media.play();
+
+        // Pause after 10 seconds
+        setTimeout(function() {
+            media.pause();
+        }, 10000);        
+    }
+
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                              "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+                // Create Media object from src
+                my_media = new Media(src, onSuccess, onError);
+        
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/bc56c4ba/docs/en/2.5.0/cordova/media/media.play.md
----------------------------------------------------------------------
diff --git a/docs/en/2.5.0/cordova/media/media.play.md b/docs/en/2.5.0/cordova/media/media.play.md
new file mode 100644
index 0000000..6ff5593
--- /dev/null
+++ b/docs/en/2.5.0/cordova/media/media.play.md
@@ -0,0 +1,198 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you under the Apache License, Version 2.0 (the
+         "License"); you may not use this file except in compliance
+         with the License.  You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+         Unless required by applicable law or agreed to in writing,
+         software distributed under the License is distributed on an
+         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+         KIND, either express or implied.  See the License for the
+         specific language governing permissions and limitations
+         under the License.
+---
+
+media.play
+==========
+
+Starts or resumes playing an audio file.
+
+    media.play();
+
+
+Description
+-----------
+
+Function `media.play` is a synchronous function that starts or resumes playing an audio file.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+Quick Example
+-------------
+
+    // Play audio
+    //
+    function playAudio(url) {
+        // Play the audio file at url
+        var my_media = new Media(url,
+            // success callback
+            function() {
+                console.log("playAudio():Audio Success");
+            },
+            // error callback
+            function(err) {
+                console.log("playAudio():Audio Error: "+err);
+        });
+
+        // Play audio
+        my_media.play();
+    }
+
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                              "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+            	if (my_media == null) {
+                	// Create Media object from src
+                	my_media = new Media(src, onSuccess, onError);
+            	} // else play current audio
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>
+
+BlackBerry WebWorks Quirks
+----------
+
+- BlackBerry devices support a limited number of simultaneous audio channels. CDMA devices only support a single audio channel. Other devices support up to two simultaneous channels. Attempting to play more audio files then the supported amount will result in previous playback being stopped.
+
+iOS Quirk
+---------
+
+- __numberOfLoops__
+ 
+    Pass in this option to the **play** method to specify the number of times you want the media file to play. e.g:
+    
+        var myMedia = new Media("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3")
+        myMedia.play({ numberOfLoops: 2 })
+
+- __playAudioWhenScreenIsLocked__
+ 
+    Pass in this option to the **play** method to specify whether you want to play the audio of the media file when the screen is locked (this defaults to true if not set). If this is set to true, it will ignore the state of the hardware mute button. e.g:
+    
+        var myMedia = new Media("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3")
+        myMedia.play({ playAudioWhenScreenIsLocked : false })
+
+
+- __order of file search__
+
+    When only a file name or simple path is provided, iOS will search in the www for the file and then in the application documents/tmp directory.
+
+        var myMedia = new Media("audio/beer.mp3")
+        myMedia.play()  // will first look for file in www/audio/beer.mp3 then in <application>/documents/tmp/audio/beer.mp3


Mime
View raw message