西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴(lài)的軟件下載站!
西西首頁(yè) 電腦軟件 安卓軟件 電腦游戲 安卓游戲 排行榜 專(zhuān)題合集

Flutter視頻播放器fijkplayer

v0.0.7 官方版
  • Flutter視頻播放器fijkplayerv0.0.7 官方版
  • 軟件大小:606KB
  • 更新時(shí)間:2019-08-14 17:22
  • 軟件語(yǔ)言:中文
  • 軟件廠商:
  • 軟件類(lèi)別:國(guó)產(chǎn)軟件 / 免費(fèi)軟件 / 源碼相關(guān)
  • 軟件等級(jí):2級(jí)
  • 應(yīng)用平臺(tái):WinAll
  • 官方網(wǎng)站:暫無(wú)
  • 應(yīng)用備案:
好評(píng):50%
壞評(píng):50%

本類(lèi)精品

軟件介紹

fijkplayer是一款開(kāi)源免費(fèi)的Flutter視頻播放器,fijkplayer 使用 ijkplayer 作為播放器內(nèi)核。ijkplayer 使用 ffmpeg 進(jìn)行音視頻解封裝和解碼,同時(shí)添加了 Android 和 iOS 平臺(tái)特有的硬件加速解碼能力。

安裝步驟:

新建 Flutter App 項(xiàng)目

終端輸入以下命令,新建一個(gè)名為 playerapp 的 Flutter App 項(xiàng)目。

$ flutter create -t app playerapp

命令運(yùn)行結(jié)束后,F(xiàn)lutter 會(huì)給我們?nèi)缦绿崾尽?/p>

In order to run your application, type:

  $ cd playerapp
  $ flutter run

Your application code is in playerapp/lib/main.dart.

連接上手機(jī)設(shè)備(或者打開(kāi) Android 模擬器),并且使用 flutter doctor 命令檢查設(shè)備是否連接成功。

$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, v1.7.8+hotfix.4, on Mac OS X 10.14.3 18D109, locale zh-Hans-CN)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 10.3)
[✓] iOS tools - develop for iOS devices
[✓] Android Studio (version 3.4)
[✓] IntelliJ IDEA Ultimate Edition (version 2019.1.2)
[✓] VS Code (version 1.36.1)
[✓] Connected device (1 available)

• No issues found!

在 flutter doctor 命令的輸出中,至少應(yīng)該含有 [✓] Connected device (1 available)

安裝 fijkplayer 依賴(lài)

進(jìn)入上一步中創(chuàng)建的目錄 playerapp 中,編輯其中的文件 pubspec.yaml ,增加依賴(lài) fijkplayer: ^0.0.7

dependencies:
  flutter:
    sdk: flutter    
+ fijkplayer: ^0.0.7

然后在 playerapp 目錄中運(yùn)行如下命令安裝依賴(lài),等待命令成功完成。

$ flutter pub get --verbose

驗(yàn)證依賴(lài)安裝

安裝完 fijkplayer 之后我們先驗(yàn)證一下,確保安裝正確。

編輯 lib/main.dart 文件,在開(kāi)頭加入如下行,引入 fijkplayer。

import 'package:fijkplayer/fijkplayer.dart';

然后分別編譯 ios 和 android 項(xiàng)目,確保 build 成功

$ flutter build apk
$ flutter build ios --no-codesign

如果 build apk 時(shí)太久時(shí)間沒(méi)有輸出,可以先在 android 目錄運(yùn)行 ./gradlew 檢查 gradle 環(huán)境是否正確。

播放器狀態(tài):

idle 閑置狀態(tài),剛完成構(gòu)造的 FijkPlayer 處于此狀態(tài)。 

此狀態(tài)下播放器占用少量?jī)?nèi)存,無(wú)額外線程啟動(dòng)。 

idle 狀態(tài)只能通過(guò) setDataSource 轉(zhuǎn)換為 initialized 狀態(tài)

initialized 初始化完成狀態(tài),和 idle 狀態(tài)相比,僅是多了輸入媒體數(shù)據(jù)源的信息。 同樣無(wú)額外線程打開(kāi)。

asyncPreparing 異步準(zhǔn)備狀態(tài),在 initialized 狀態(tài)調(diào)用 prepareAsync 到達(dá)此狀態(tài)。 

這不是一個(gè)穩(wěn)定狀態(tài),此狀態(tài)等待特定任務(wù)完成后自動(dòng)轉(zhuǎn)化為 prepared 狀態(tài)。 

這一狀態(tài)的主要準(zhǔn)備工作是 探測(cè)媒體文件類(lèi)型,打開(kāi)媒體文件,打開(kāi)解碼器以及新建解碼線程,新建數(shù)據(jù) read 線程,打開(kāi)音頻輸出設(shè)備,新建視頻輸出線程等。

prepared asyncPreparing 完成指定任務(wù)后自動(dòng)轉(zhuǎn)化為此狀態(tài)。 

此狀態(tài)下已經(jīng)緩沖并解碼了一部分音視頻數(shù)據(jù),可以隨時(shí)進(jìn)行播放。

started 媒體(視頻、音頻)正在播放中。

paused 媒體(視頻、音頻)播放暫停。

completed 媒體(視頻、音頻)播放完成。 可重新從頭開(kāi)始播放。

stopped 播放器各種線程占用資源都已經(jīng)釋放。 音頻設(shè)備關(guān)閉。

end 播放器中所有需要手動(dòng)釋放的內(nèi)存都釋放完成。 

處于此狀態(tài)的播放器只能等待垃圾回收進(jìn)行內(nèi)存釋放。

軟件標(biāo)簽: fijkplayer Flutter

其他版本下載

發(fā)表評(píng)論

昵稱(chēng):
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
查看所有(0)條評(píng)論 > 字?jǐn)?shù): 0/500

TOP
軟件下載