之前写过一片服务器推流实现无人直播功能,这次分享无需服务器实现推流,已支持安卓、windows版本
支持本地和服务器推流下载地址https://firefix.cn/
1.推流指令:'-i "${path}" -c:v copy -c:a aac -b:a 192k -strict -2 -f flv ${_rtmp}'
参数说明:
-i "${path}"
: 指定输入文件,${path}
是一个变量,表示输入文件的路径,可从相册选择。-c:v copy
: 复制视频流而不重新编码。这将保持输入文件的视频编解码器和参数。-c:a aac
: 设置音频编解码器为 AAC(Advanced Audio Coding)。-b:a 192k
: 设置音频比特率为 192 kbps,控制音频的质量和大小。-strict -2
: 设置严格模式为-2
,允许使用实验性或非标准的 AAC 编码器。-f flv
: 设置输出格式为 FLV(Flash Video),用于流媒体传输。${_rtmp}
:表示输出的 RTMP(Real-Time Messaging Protocol)服务器地址。
2.添加ffmpeg依赖 例如flutter版本 ffmpeg_kit_flutter: ^6.0.3-LTS
调用:static Future<FFmpegSession> executeAsync(String command, [FFmpegSessionCompleteCallback? completeCallback = null, LogCallback? logCallback = null, StatisticsCallback? statisticsCallback = null]) async => FFmpegKit.executeWithArgumentsAsync( FFmpegKitConfig.parseArguments(command), completeCallback, logCallback, statisticsCallback);传入第一步指令即可