Video Playerインターフェース(Sintelトレーラーのサンプルフレーム付き)。
Video Playerインターフェース(Sintelトレーラーのサンプルフレーム付き)。
© copyright Blender Foundation | durian.blender.org · CC BY 3.0
← すべてのネイティブガイド

Xodera Plugins · Bubble Native

Xodera Video Player Native

アプリ内でレッスン、製品デモ、サポートされているライブストリームを表示し、再生コントロール、全画面表示、利用可能な言語トラックを提供します。

Public beta guides · Haptics instructions are in its Bubble listing

Public beta offer: free Bubble install · 7-day card trial, then US$1.50/month per plugin/project.

ドキュメント確認日:2026年11月6日

実用的な例

トレーニングアプリの章リンク

学習者は外部プレーヤーに移動せずにデモのステップを再生する必要があります。

`source_url = Current Lesson’s video URL`;`poster_url = Current Lesson’s cover`;各 Chapter はアプリ所有の開始時間を保存します。

Chapter をクリック → ソースを変更する場合は `source_loaded` を待つ → Seek で `position_seconds` に移動 → Play。詳細なデモには Set playback rate を、要求があれば Enter fullscreen を使用します。

`position_seconds`、`duration_seconds`、`is_fullscreen` を読み取ります;ワークフローは現在のソースに対してのみレッスンの進捗を保存します。

`player_error` 発生時に `error_code` を表示し、進捗を保持して Reload video を提供します。完了イベントはレッスンや安全評価が合格したことの証明ではありません。

直接のビデオファイルまたはサポートされたストリームを使用してください。このプレーヤーはビデオをエクスポートしません。

マーケットプレイスのリスティングにおけるビデオデモンストレーション

製品画像だけではアイテムの使い方を説明できませんが、外部のビデオは購入フローを中断させます。

`source_url = Selected Listing’s demonstration URL`;`poster_url = its thumbnail`;意図的に無音の最初のプレビュー用に `muted = yes`。

選択したリスティングを開き → ビデオをバインドし → ユーザー操作後に Play を実行します。音声には Set muted、詳細な検査には Enter fullscreen を提供します。可視の詳細に `is_active` をバインドします。

動画が無い、読み込み中、準備完了のメディアを区別するために `has_source`、`is_buffering`、`status` を使用します。

ソース置換時に、古い進捗やトラック選択の適用を停止します。選択されたファイルがサポートされていない場合はサムネイルのフォールバックを表示します。

直接のビデオファイルまたはサポートされたストリームを使用してください。このプレーヤーはビデオをエクスポートしません。

サポートされているストリームで利用可能な言語トラックを選択してください

多言語アプリは、特定のソースが実際に含むトラックを提供する必要があります。

`source_url = Selected Programme’s accepted stream URL`; ソース自体が互換性のある音声/字幕トラックを提供しなければなりません。

`tracks_changed`で、現在の`audio_tracks_json`と`subtitle_tracks_json`を読み取り、アプリ内で選択肢を作成し、現在のインデックスでSelect audio trackまたはSelect subtitle trackを呼び出してください。

`selected_audio_index`、`selected_subtitle_index`、`source_generation`を使用して、選択肢をこのソースに関連付けます。

ソースが変更されるたびに選択肢を再構築します。トラックが存在しない、またはサポートされていない場合は、デフォルトトラックを保持し、その可用性を正直に表示します。

直接のビデオファイルまたはサポートされたストリームを使用してください。このプレーヤーはビデオをエクスポートしません。

現在機能しているもの

Public beta. Use the documented controls and actions; test supported formats, permissions and device behavior in your own native app. Browser preview does not validate native device output.

ワークフローを構築する

以下の利用可能なベータアクションを使用し、対象デバイスで結果をテストしてください。

これらの例は Lesson、Message、Order などのアプリレコードを使用しています。ご自身のデータ型や要素名に置き換えてください。メディアアドレスの例はご自身のファイルに置き換える必要があります。

  1. source_url = Selected Lesson's video_url と poster_url = Selected Lesson's poster_url を設定します。MP4 には auto または progressive を使用します;HLS ストリームには hls を使用します。

  2. playback_ready の後、保存された position_seconds から再開するには Seek を使用します。ユーザーは Play を開始します。レッスンビューが開いているかどうかは is_active で設定します。

  3. Play、Pause、Seek、Set playback rate、Enter fullscreen のコントロールを追加します。position_seconds と duration_seconds を表示します。

  4. tracks_changed の後、このビデオの利用可能な audio_tracks_json と subtitle_tracks_json の選択肢を表示します。選択されたインデックスを Select audio track または Select subtitle track に渡します。ended 発生時に進捗を保存します。

ワークフローダイアグラム — アプリのスクリーンショットではありません

一度だけ設定する

Bubble アプリプロジェクトを BestPlugins → Dashboard → Plugins で作成または選択します。Xodera Video Player Native を選び、キーをコピーし、次に Bubble → Plugins → Xodera Video Player Native を開いて licensing_api_key に貼り付けます。一度保存し、以下のアクションを使用してください。各プロジェクトの各プラグインはそれぞれ固有のキーを持ちます。

直接の動画またはストリームアドレスを使用してください。YouTube や Vimeo のウェブページアドレスは直接の動画ファイルではありません。再生にはカメラやマイクへのアクセスは不要です。

一度だけ設定する
  1. BestPlugins → Dashboard → Plugins で Bubble アプリプロジェクトを作成または選択してください。
  2. このプラグインを選択し、プロジェクトキーをコピーしてください。
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. 要素を追加し、アプリデータを選択して、以下のワークフローを構築してください。
  5. In the dashboard, review and confirm the 7-day card trial for this plugin. It then costs US$1.50/month per app project, including development and production. Cancel before the trial ends to avoid the first charge.
インストールとサブスクリプション

For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.

結果をアプリに保存する

例: WatchProgress は owner = Current User、lesson = Selected Lesson、seconds = Video Player's position_seconds、duration = Video Player's duration_seconds です。現在選択されている動画に対してのみ保存してください。トラックインデックスはその動画に属し、永続的な言語選択として保存すべきではありません。

失敗、キャンセル、リカバリー

player_error 上で error_code を表示し、Reload video を提供します。再生を開始せずにリロードされます。別のソースを選択すると古いトラック選択がクリアされます。ビューを離れると動画が一時停止し、ユーザーが Play を押すと続行します。

機能と制限

速度: 0.5、1、1.5、2。音量: 0–1。フォーマット: auto、progressive、HLS、Android のみ DASH。利用可能なトラックはファイルに依存します。-1 を使用してトラックをオフにし、-2 は不明で選択できません。編集、動画エクスポート、DRM、ピクチャーインピクチャー、永続的なオフラインキャッシュはサポートされていません。

設定、アクション、結果

Bubbleでこれらの名前を使用してください。計画中の機能は別途マークされています。

利用可能なベータ設定

要素設定

source_url · textposter_url · textcontent_type · textrate · numbervolume · numbermuted · yes/noloop · yes/nois_active · yes/nodisabled · yes/nonative_controls · yes/noui_text_json · textlanguage · text

ステート

is_playing · yes/nois_buffering · yes/nopending_play · yes/nois_live · yes/nomuted · yes/noloop · yes/nohas_source · yes/nois_fullscreen · yes/noposition_seconds · numberduration_seconds · numbervolume · numberrate · numbersource_generation · numberselected_audio_index · numberselected_subtitle_index · numberstatus · textaudio_tracks_json · textsubtitle_tracks_json · texterror_code · texterror_message · text

イベント

source_changedsource_loadedplayback_readyplaying_changedtime_changedendedtracks_changedfullscreen_changedplayer_error

アクションとその入力

PlayPauseStop and rewindReload videoSeekSet volumeSet mutedSet playback rateEnter fullscreenSelect audio trackSelect subtitle track
要素設定 · 12
source_urltext · デフォルト: ""
例の値https://bestplugins.online/native-samples/lesson.mp4
例 Bubble 式Selected Lesson's video_url
選択された音声、動画、画像ファイルのアドレスです。このプラグインがサポートするファイルタイプを使用してください。
poster_urltext · デフォルト: ""
例の値https://bestplugins.online/native-samples/poster.jpg
例 Bubble 式Selected Lesson's poster_url
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
content_typetext · デフォルト: "auto"
例の値auto
例 Bubble 式Selected Lesson's video_content_type
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
ratenumber · デフォルト: 1
例の値1.5
例 Bubble 式Speed Dropdown's value
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
volumenumber · デフォルト: 1
例の値0.8
例 Bubble 式Volume Slider's value
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
mutedyes/no · デフォルト: false
例の値no
例 Bubble 式Mute Checkbox is checked
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
loopyes/no · デフォルト: false
例の値no
例 Bubble 式Selected Lesson's repeat_enabled
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
is_activeyes/no · デフォルト: true
例の値yes
例 Bubble 式GuideHost's view_is_active (your yes/no custom state)
このビューが開いている間はyesに設定し、離れる際はnoに設定して、再生や現在の作業を停止できるようにします。
disabledyes/no · デフォルト: false
例の値no
例 Bubble 式GuideHost's is_busy (your yes/no custom state)
アプリがビジー状態またはこのアクションが利用できない場合は要素を無効にします。
native_controlsyes/no · デフォルト: false
例の値no
例 Bubble 式App Settings' use_native_video_controls
デバイスの標準ビデオコントロールを表示または非表示にします。
ui_text_jsontext · デフォルト: "{}"
例の値{}
例 Bubble 式App Settings' player_labels_json (supported keys only)
サポートされているボタンラベルを含むオプションの JSON です。空欄にすると組み込みテキストが使用されます。
languagetext · デフォルト: "auto"
例の値uk
例 Bubble 式Current User's preferred_language
language=auto を設定して、サポートされているデバイスまたはブラウザ言語に従わせます。サポートされている言語コードを入力して明示的に選択してください。
アクションとその入力 · 11
Play

アクションパラメータなし

Pause

アクションパラメータなし

Stop and rewind

アクションパラメータなし

Reload video

アクションパラメータなし

Seek
position_secondsnumber · デフォルト: —
例の値45
例 Bubble 式Selected Chapter's start_seconds
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
Set volume
volumenumber · デフォルト: —
例の値0.8
例 Bubble 式Volume Slider's value
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
Set muted
mutedyes/no · デフォルト: —
例の値no
例 Bubble 式Mute Checkbox is checked
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
Set playback rate
ratenumber · デフォルト: —
例の値1.5
例 Bubble 式Speed Dropdown's value
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
Enter fullscreen

アクションパラメータなし

Select audio track
indexnumber · デフォルト: —
例の値0
例 Bubble 式Selected row's current_source_index
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
Select subtitle track
indexnumber · デフォルト: —
例の値0
例 Bubble 式Selected row's current_source_index
現在のビジネスレコードの値を使用し、以下の制限と照合して検証してください。
ステートとイベント

ステート

is_playing · yes/no

選択された項目の現在の値です。関連イベントの後に読み取ります。

is_buffering · yes/no

選択された項目の現在の値です。関連イベントの後に読み取ります。

pending_play · yes/no

選択された項目の現在の値です。関連イベントの後に読み取ります。

is_live · yes/no

選択された項目の現在の値です。関連イベントの後に読み取ります。

muted · yes/no

選択された項目の現在の値です。関連イベントの後に読み取ります。

loop · yes/no

選択された項目の現在の値です。関連イベントの後に読み取ります。

has_source · yes/no

選択された項目の現在の値です。関連イベントの後に読み取ります。

is_fullscreen · yes/no

選択された項目の現在の値です。関連イベントの後に読み取ります。

position_seconds · number

選択された項目の現在の値です。関連イベントの後に読み取ります。

duration_seconds · number

選択された項目の現在の値です。関連イベントの後に読み取ります。

volume · number

選択された項目の現在の値です。関連イベントの後に読み取ります。

rate · number

選択された項目の現在の値です。関連イベントの後に読み取ります。

source_generation · number

選択された項目の現在の値です。関連イベントの後に読み取ります。

selected_audio_index · number

選択された項目の現在の値です。関連イベントの後に読み取ります。

selected_subtitle_index · number

選択された項目の現在の値です。関連イベントの後に読み取ります。

status · text

このアクションの現在の結果です。成功を保存する前に、対応する完了イベントを使用してください。idle,loading,readyToPlay,error

audio_tracks_json · text

選択された項目の現在の値です。関連イベントの後に読み取ります。

subtitle_tracks_json · text

選択された項目の現在の値です。関連イベントの後に読み取ります。

error_code · text

直前のアクションのエラー情報です。役立つメッセージを表示し、該当する再試行を提供してください。

error_message · text

直前のアクションのエラー情報です。役立つメッセージを表示し、該当する再試行を提供してください。

イベント

source_changed

このイベントが発生したとき、同じ要素から関連する状態を読み取ります。

source_loaded

このイベントが発生したとき、同じ要素から関連する状態を読み取ります。

playback_ready

このイベントが発生したとき、同じ要素から関連する状態を読み取ります。

playing_changed

このイベントが発生したとき、同じ要素から関連する状態を読み取ります。

time_changed

このイベントが発生したとき、同じ要素から関連する状態を読み取ります。

ended

このイベントが発生したとき、同じ要素から関連する状態を読み取ります。

tracks_changed

このイベントが発生したとき、同じ要素から関連する状態を読み取ります。

fullscreen_changed

このイベントが発生したとき、同じ要素から関連する状態を読み取ります。

player_error

このイベントが発生したとき、同じ要素から関連する状態を読み取ります。

開発者が尋ねる質問

選択したセグメントをエクスポートできますか?

いいえ。Seek とフルスクリーンは再生を変更しますが、ビデオデータは変更しません。

サブスクリプションはどのように機能しますか?

For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.

関連ガイド

サポートが必要な場合は、使用しているプラグインとデバイス、試したアクションと結果をお知らせください。個人データを含まない例を使用してください。キーやプライベートファイルを決して共有しないでください。