KODI API V6 JSON-RPC を使用して KODI をコントロールしたりライブラリ情報を取得するサンプル。リターンされたJSONをデシリアライズしてObjectに入れて参照する感じ。今のところVB.NETのクラスやメソッドは未作成。今後も作成しないと思う。
随時追加していく。
参考
ファイルパスを指定して再生する
Player.Open
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"file":"smb://mediasv/movie01/MOVIE01/abc.mov"}},"id":1}
ファイルパスを指定してKODIライブラリに登録されているmovieidを取得する
VideoLibrary.GetMovies
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","method":"VideoLibrary.GetMovies","params":{"filter":{ "and":[{ "field":"path","operator":"is","value":"smb://MEDIASV/MOVIE01/MOVIE01/" },{"field":"filename","operator":"is","value":"abc.mov"}]},"limits":{"start":0,"end":0},"properties":["file"]},"id":1}
KODIライブラリに登録されているmovieidが335を再生する
Player.Open
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","method":"Player.Open","id":1,"params":{"item":{"movieid":335}}}
現在再生中の作品を総再生時間の50%の位置で頭出しする
Player.Seek
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","id":1,"method":"Player.Seek","params":{"playerid":1,"value":50.0}}
現在再生中の作品を再生時間が1時間の位置で頭出しする
Player.Seek
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","id":1,"method":"Player.Seek","params":{"playerid":1,"value":{"hours":1}}}
現在再生中の作品を再生時間が1時間10分0秒の位置で頭出しする
Player.Seek
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","id":1,"method":"Player.Seek","params":{"playerid":1,"value":{"hours":1,"milliseconds":0,"seconds":0,"minutes":10}}}
KODIのライブラリに登録されているmovieidが335の作品を再生時間が1時間30分30秒の位置に頭出しして再生する
Player.Open
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"movieid":335},"options":{"shuffled":null,"repeat":"off","resume":{"hours":1,"milliseconds":0,"seconds":30,"minutes":30}}},"id":1}
ファイルパスを指定して再生時間が1時間0分0秒の位置に頭出しして再生する
Player.Open
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"file":"smb://mediasv/movie01/MOVIE01/abc.mov"},"options":{"shuffled":null,"repeat":"off","resume":{"hours":1,"milliseconds":0,"seconds":0,"minutes":0}}},"id":1}
KODIのライブラリに登録されているmovieidが335の作品を前回レジュームポイントから再生する
Player.Open
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"movieid":335},"options":{"shuffled":null,"repeat":"off","resume":true}},"id":1}
現在再生中の時間を取得する(hh:MM:ss:ddd)
Player.GetProperties
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","id":1,"method":"Player.GetProperties","params":{"playerid":1,"properties":["time"]}}
現在再生中の作品の再生位置時間、ファイルタイプ、収録されている音声ストリーム、収録されている字幕を取得する
Player.GetProperties
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","id":1,"method":"Player.GetProperties","params":{"playerid":1,"properties":["time","type","audiostreams","subtitles","totaltime"]}}
現在再生中のタイトル名を取得する
Player.GetItem
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","id":1,"method":"Player.GetItem","params":{"playerid":1}}
現在再生中の作品のタイトル名、ファイルパス、公開年を取得する ※KODIライブラリのmovieidも返却オブジェクトの属性idで返却される
Player.GetItem
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","id":1,"method":"Player.GetItem","params":{"playerid":1,"properties":["title","file","year"]}}}}
KODIライブラリのmovieidが1021のキャスト情報とファイルパスを取得する
VideoLibrary.GetMovieDetails
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","method":"VideoLibrary.GetMovieDetails","params":{"movieid":1021,"properties":["cast","file"]},"id":1}
ファイルパスを指定してファイル名を取得する(フォルダ名を除外したファイル名のみ抽出)
Files.GetFileDetails
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","method":"Files.GetFileDetails","params":{"file":"smb://mediasv/movie01/MOVIE01/abc.mov"},"id":1}
ファイルパスを指定してファイルコンテナ情報を取得する
Files.GetDirectory
http://192.168.11.5:8080/jsonrpc?request={"jsonrpc":"2.0","method":"Files.GetDirectory","params":{"directory":"smb://mediasv/movie01/MOVIE01/abc.mkv"},"id":1}
コメント
コメントを投稿