0

私はXBMCで作業しています。システム (Windows 7、32 ビット) に XBMC をインストールしました。Xbmc は私のシステムで正常に動作しています。Ipad から Xbmc をリモートで制御するためのアプリケーションを開発しました。Xbmc から音楽ファイルまたはビデオ ファイルを取得することができません。xbmc のフォーラムを検索したところ、SQL クエリを記述してそれらを取得できることがわかりました。しかし、データベースが自分のシステムのどこにあるのかわかりません。誰か私が見つけられる場所で私を助けてください。

よろしく、シュシュマ。

4

1 に答える 1

3

データベース自体

デフォルトでは、データベースの場所は wiki ページXBMC データベースで説明されている場所 ですが、実際の場所はユーザーが変更したり、別のデータベース テクノロジを完全に使用したりできます。

これに影響する設定は、advancedsettings.xmlにあります。

しかし、一般に、XBMC 開発者はデータベースに直接アクセスしないようにアドバイスしています

JSONRPC

データベースとの対話を支援するために、XBMC は JSONRPC クエリをサポートしていますが、これらの 1 つの欠点は、これらのクエリに応答するために XBMC を同時に実行する必要があることです。主な利点は、XBMC がデータベースを見つけて、共通のインターフェイスでそのデータベースへのアクセスを公開することです。

JSONRPC サポートは、"Darhma" (v10) で XBMC に最初に追加され、"Eden" (v11) で非常に便利になり、"Frodo" (v12) で可能なほとんどすべてをサポートします。JSONRPC の使用に関する情報は wiki にあります

この例では、XBMC の現在の安定版リリースである「Eden」をターゲットにしていると想定しています。また、次の行を新しい行でフォーマットしました。これらは必須ではなく、XBMC からの応答には含まれていません。

リクエスト

JSONRPC を使用する場合、送信する必要があるリクエストは次のようになります。

{
  "jsonrpc": "2.0",
  "method": "VideoLibrary.GetMovies",
  "params": {
    "properties": [
      "title",
      "year",
      "file"
    ],
    "limits": {
      "start": 0,
      "end": 2
    }
  },
  "id": 1
}

注: 映画ごとに異なる情報が必要な場合は、ここにリストされている他のプロパティを使用できます。 *注: すべてのムービーを取得するには、"limits" の部分を省略した方がよいでしょう。*

応答

これに対する応答は次のようになります。

{
  "id": 1,
  "jsonrpc": "2.0",
  "result": {
    "limits": {
      "end": 2,
      "start": 0,
      "total": 47
    },
    "movies": [
      {
        "label": "Label for movie",
        "movieid": 1,
        "title": "Title of movie",
        "year": 2012
      },
      {
        "label": "Label for another movie",
        "movieid": 2,
        "title": "Title of another movie",
        "year": 2010
      },
      {
        "label": "Label for a third movie",
        "movieid": 3,
        "title": "Title of a third movie",
        "year": 2012
      }
    ]
  }
}

今何をする?

この時点で、次のいずれかを選択できます。

  1. プロパティのリストに「ファイル」を追加すると、ビデオ ファイルの場所である「ファイル」プロパティが返されます。
  2. JSONRPC を使用して xbmc にムービーを再生するよう指示します。

    この方法は、ファイルをローカル (iPad) ではなく XBMC で再生する場合に最適です。

JSONRPC を介して XBMC でムービーを再生する

これは非常に簡単です。以前に受け取った「movieid」を次のリクエストで使用します。

{
  "jsonrpc": "2.0",
  "method": "Player.Open",
  "params": {
    "item": {
      "movieid": 2
    }
  },
  "id": 1
}

最後に、映画の場合と同じように、TV エピソードにも同等のコマンドがあることに注意してください。

于 2012-09-08T02:36:51.217 に答える