You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

126 lines
4.7 KiB

4 years ago
![Logo](https://github.com/fluttify-project/fluttify-core-example/blob/develop/other/Logo-Landscape.png?raw=true)
# 腾讯直播 Flutter插件
[![pub package](https://img.shields.io/pub/v/tencent_live_fluttify.svg)](https://pub.Flutter-io.cn/packages/tencent_live_fluttify)
## 依赖
```yaml
dependencies:
flutter:
sdk: flutter
tencent_live_fluttify: ^x.x.x
```
## 配置
### Android
1. 如果你的AndroidManifest.xml的application标签配置了`android:label`属性, 那么编译时会出错, 报错信息为:
```text
/Users/xxx/AndroidManifest.xml:10:9-41 Error:
Attribute application@label value=(new_project_test) from AndroidManifest.xml:10:9-41
is also present at [com.tencent.liteavsdk:LiteAVSDK_Smart:7.2.8927] AndroidManifest.xml:30:9-41 value=(@string/app_name).
Suggestion: add 'tools:replace="android:label"' to <application> element at AndroidManifest.xml:8:5-46:19 to override.
FAILURE: Build failed with an exception.
```
你需要做的是按照错误提示, 添加`tools:replace="android:label"`到application标签下, 注意`tools:`命名空间需要另外导入.
完整的修改后的AndroidManifest.xml示例:
```xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" <!--需要添加的代码-->
package="xxx">
<application
android:name="io.flutter.app.FlutterApplication"
android:label="xxx"
tools:replace="android:label" <!--需要添加的代码-->
android:icon="@mipmap/ic_launcher">
...
</application>
</manifest>
```
### iOS
1. 推流需要摄像头和麦克风权限, 并且需要配置为UiKitView使能, 在Info.plist中添加:
```xml
<key>NSMicrophoneUsageDescription</key>
<string>需要麦克风</string>
<key>NSCameraUsageDescription</key>
<string>需要相机</string>
<key>io.flutter.embedded_views_preview</key>
<string>YES</string>
```
2. 腾讯直播的pod比较大, 有198M, `pod install`时间比较久, 请耐心等待, `pod install --verbose`可以观察下载进度.
## 导入
```dart
import 'package:tencent_live_fluttify/tencent_live_fluttify.dart';
```
## 使用
参考[wiki](https://github.com/fluttify-project/tencent_live_fluttify/wiki).
## 社区
| QQ群 |
| :----------: |
| <img src="https://github.com/fluttify-project/fluttify-project/blob/master/resources/1593774713224_temp_qrcode_share_9993.png?raw=true" height="300"> |
## 社区版与专业版
| 推流 | 社区版 | 专业版 |
|:-----:|:-----:|:-----:|
| 预览 | ✅ | ✅ |
| 推流 | ✅ | ✅ |
| 暂停推流 | ✅ | ✅ |
| 停止推流 | ✅ | ✅ |
| 停止预览 | ✅ | ✅ |
| 切换前后摄像头 | ✅ | ✅ |
| 打开/关闭闪光灯 | ✅ | ✅ |
| 播放背景音乐 | ✅ | ✅ |
| 停止背景音乐 | ✅ | ✅ |
| 暂停背景音乐 | ✅ | ✅ |
| 恢复背景音乐 | ✅ | ✅ |
| 麦克风音量大小 | ✅ | ✅ |
| 背景音乐音量大小 | ✅ | ✅ |
| 背景音乐音调高低 | ✅ | ✅ |
| 事件处理 | ✅ | ✅ |
| 设置观众看到的画面清晰度 | ☑️ | ✅ |
| 美颜 | ☑️ | ✅ |
| 滤镜 | ☑️ | ✅ |
| 调整摄像头的焦距 | ☑️ | ✅ |
| 设置曝光比例 | ☑️ | ✅ |
| 观众端镜像效果 | ☑️ | ✅ |
| 横屏推流 | ☑️ | ✅ |
| 隐私模式(垫片推流) | ☑️ | ✅ |
| 设置混音效果 | ☑️ | ✅ |
| 设置变调效果 | ☑️ | ✅ |
| 设置 Logo 水印 | ☑️ | ✅ |
| 开始本地录制 | ☑️ | ✅ |
| 停止本地录制 | ☑️ | ✅ |
| 发送 SEI 消息 | ☑️ | ✅ |
| 拉流 | 社区版 | 专业版 |
|:-----:|:-----:|:-----:|
| 播放 | ✅ | ✅ |
| 恢复播放 | ✅ | ✅ |
| 恢复直播 | ✅ | ✅ |
| 是否在播放中 | ✅ | ✅ |
| 暂停播放 | ✅ | ✅ |
| 停止播放 | ✅ | ✅ |
| 事件处理 | ✅ | ✅ |
| 清晰度无缝切换 | ☑️ | ✅ |
| 画面调整 | ☑️ | ✅ |
## LICENSE
> Copyright (C) 2020 yohom
>
> This program is free software: you can redistribute it and/or modify
> it under the terms of the GNU General Public License as published by
> the Free Software Foundation, either version 3 of the License, or
> (at your option) any later version.
>
> This program is distributed in the hope that it will be useful,
> but WITHOUT ANY WARRANTY; without even the implied warranty of
> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> GNU General Public License for more details.
>
> You should have received a copy of the GNU General Public License
> along with this program. If not, see <https://www.gnu.org/licenses/>.