flutter_wowza 0.1.1 copy "flutter_wowza: ^0.1.1" to clipboard
flutter_wowza: ^0.1.1 copied to clipboard

outdated

Flutter WOWZA plugin for iOS/Android.

flutter-wowza #

Wowza GoCoderSDK plugin for Flutter Android/IOS The project is based on Wowza GoCoder SDK

Learn more about using GoCoder here Android | IOS

Usage #

Add flutter-wowza as a dependency in your pubspec.yaml file.

iOS #

Add the following entry to your Info.plist file, located in <project root>/ios/Runner/Info.plist:

<key>NSCameraUsageDescription</key>
<string>The camera will be used to capture video for live streaming</string>
<key>NSMicrophoneUsageDescription</key>
<string>The microphone will be used to capture live audio for streaming</string>
<key>UIRequiredDeviceCapabilities</key>
<array>
   <string>armv7</string>
</array>
<key>io.flutter.embedded_views_preview</key>
<true/>

Android #

Ensure the following permission is present in your Android Manifest file, located in <project root>/android/app/src/main/AndroidManifest.xml:

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature android:name="android.hardware.camera.any" android:required="false" />
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />
<uses-feature android:name="android.hardware.camera.flash" android:required="false" />
<uses-feature android:name="android.hardware.microphone" android:required="false" />
<uses-feature android:glEsVersion="0x00020000" android:required="true" />

Example #

WOWZCameraView(
   apiLicenseKey: (defaultTargetPlatform == TargetPlatform.android)
   ? "GOSK-xxxx-xxxx-xxxx-xxxx-xxxx"
   : "GOSK-xxxx-xxxx-xxxx-xxxx-xxxx",
   controller: controller,
   hostAddress: "xxx.xxx.xxx.xxx",
   portNumber: 1935,
   applicationName: "xxxxxx",
   streamName: "xxxxx",
   username: "xxxx",
   password: "xxxx",
   scaleMode: ScaleMode.FILL_VIEW,
   statusCallback: (status) {
      print(
            "status: ${status.mState} | ${status.isStarting()} | ${status.isReady()}");
   },
   broadcastStatusCallback: (broadcastStatus) {
       print(
             "status: ${broadcastStatus.state.toString()} | ${broadcastStatus.message}");
   },
)

Control live streams

WOWZCameraController controller = WOWZCameraController();

Functionality supported #

WOWZMediaConfig

Feature Android iOS
WOWZMediaConfig.FRAME_SIZE_176x144 ✔️
WOWZMediaConfig.FRAME_SIZE_320x240 ✔️
WOWZMediaConfig.FRAME_SIZE_352x288 ✔️ ✔️
WOWZMediaConfig.FRAME_SIZE_640x480 ✔️ ✔️
WOWZMediaConfig.FRAME_SIZE_960x540 ✔️
WOWZMediaConfig.FRAME_SIZE_1280x720 ✔️ ✔️
WOWZMediaConfig.FRAME_SIZE_1440x1080 ✔️
WOWZMediaConfig.FRAME_SIZE_1920x1080 ✔️ ✔️
WOWZMediaConfig.FRAME_SIZE_3840x2160 ✔️ ✔️

scaleMode

Feature Android iOS
ScaleMode.FILL_VIEW ✔️ ✔️
ScaleMode.RESIZE_TO_ASPECT ✔️ ✔️
IOS Android Flutter
hostAddress hostAddress hostAddress
portNumber portNumber portNumber
applicationName applicationName applicationName
streamName streamName streamName
username username username
password password password
videoFrameRate videoFrameRate fps
videoBitrate videoBitrate bps
audioSampleRate audioSampleRate khz
cameraView.start() WOWZCameraView.startPreview() startPreview
cameraView.stop() WOWZCameraView.stopPreview() stopPreview
cameraView.start() WOWZCameraView.continuePreview() continuePreview
cameraView.stop() WOWZCameraView.pausePreview() pausePreview
cameraView.switchCamera() WOWZCameraView.switchCamera() switchCamera
cameraView.camera.isTorchOn WOWZCameraView.camera.isTorchOn flashLight
GoCoder.isAudioMuted WOWZAudioDevice.isMuted muted
cameraView.isSwitchCameraAvailable WOWZCameraView.isSwitchCameraAvailable isSwitchCameraAvailable
GoCoder.isStreaming WowzaGoCoder.isInitialized isInitialized
GoCoder.startStreaming WOWZBroadcast.startBroadcast startBroadcast
GoCoder.endStreaming WOWZBroadcast.endBroadcast endBroadcast

Project that is still being developed #

18
likes
0
pub points
0%
popularity

Publisher

verified publishersmew.tech

Flutter WOWZA plugin for iOS/Android.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter

More

Packages that depend on flutter_wowza