搜索插件、代码仓与 APP 分类

插件详情v0.11.0

fijkplayer

基于 ijkplayer 的视频播放器 Flutter 插件,支持大多数流行的协议和编解码器

AndroidiOS
近 30 天下载
750
喜欢数
250
Pub 分数
130

安装插件

flutter pub add fijkplayer

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

FijkPlayer 是一个基于 ijkplayer 框架构建的 Flutter 视频播放器插件,支持广泛的视频协议和编解码器。它可在 Android 和 iOS 平台上流畅播放多种媒体格式。设计用于高性能和高可靠性,提供对视频渲染和播放行为的底层控制。该插件可无缝集成到 Flutter 的 widget 系统中,并支持硬件加速、字幕渲染和自定义控件等功能。适用于需要广泛视频兼容性和高度定制化的应用。

适合场景

  • 流媒体视频内容
  • 播放本地视频文件
  • 支持多种编解码器
  • 构建媒体播放器
  • 集成字幕

主要特点

  • 广泛的编解码器和协议支持
  • 硬件加速播放
  • 可自定义的 UI 组件
  • 字幕支持
  • 低级别播放控制

适合对象

  • 媒体密集型应用
  • 视频流媒体应用
  • 离线视频播放
  • 自定义视频播放器
  • 跨平台视频解决方案

使用建议

  • 需要原生平台设置
  • 有限的文档
  • 可能需要额外配置才能使用高级功能
  • 不太适合简单的使用场景
  • 依赖于ijkplayer的稳定性

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

fijkplayer (Video player plugin for Flutter) Flutter 媒体播放器

✨ 手把手带你写 Flutter 系统音量插件 ✨ Flutter 多版本管理工具 fvm ✨

HitCount     pub package     Action Status    

A Flutter media player plugin for iOS and android based on ijkplayer

您的支持是我们开发的动力。 欢迎Star,欢迎PR~。 Feedback welcome and Pull Requests are most welcome!

Documentation 文档

  • Development Documentation https://fijkplayer.befovy.com/docs/en/ quick start、guide、and concepts about fijkplayer
  • 开发文档 https://fijkplayer.befovy.com/docs/zh/ 包含快速开始、使用指南、fijkplayer 中的概念理解
  • dart api https://pub.dev/documentation/fijkplayer/ detail API and argument explaination
  • Release Notes https://github.com/befovy/fijkplayer/releases and CHANGELOG.md
  • FAQ https://fijkplayer.befovy.com/docs/zh/faq.html

Installation 安装

Add fijkplayer as a dependency in your pubspec.yaml file.

pub package

dependencies:
  fijkplayer: ^{{latest version}}

Replace {{latest version}} with the version number in badge above.

Use git branch which not published to pub.

dependencies:
  fijkplayer:
    git:
      url: https://github.com/befovy/fijkplayer.git
      ref: develop # can be replaced to branch or tag name

Example 示例

import 'package:fijkplayer/fijkplayer.dart';
import 'package:flutter/material.dart';

class VideoScreen extends StatefulWidget {
  final String url;

  VideoScreen({@required this.url});

  @override
  _VideoScreenState createState() => _VideoScreenState();
}

class _VideoScreenState extends State<VideoScreen> {
  final FijkPlayer player = FijkPlayer();

  _VideoScreenState();

  @override
  void initState() {
    super.initState();
    player.setDataSource(widget.url, autoPlay: true);
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(title: Text("Fijkplayer Example")),
        body: Container(
          alignment: Alignment.center,
          child: FijkView(
            player: player,
          ),
        ));
  }

  @override
  void dispose() {
    super.dispose();
    player.release();
  }
}

Contributors 贡献者 ✨

Thanks goes to these wonderful people (emoji key)

This project follows the all-contributors specification. Contributions of any kind welcome

iOS Warning 警告

Warning: The fijkplayer video player plugin is not functional on iOS simulators. An iOS device must be used during development/testing. For more details, please refer to this issue.

Join Ding Talk Group 加入钉钉群

加入钉钉群 微信赞赏码 支付宝
加入钉钉群 微信赞赏码 支付宝二维码

所属分类

源码仓库

使用此插件的项目