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
126 lines
4.7 KiB
![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/>.
|