Raspberry Pi(ラズパイ)でAmazonプライムビデオを見る
前回まででRaspberry Pi(ラズパイ)でYoutubeが見れるようになりました。

今回は、いよいよ今回のOSMCを入れる目的となったAmazonプライムビデオを見れるようにしたいと思います。
プロファイルをネットからダウンロードする必要がありますが、手順はYouTubeの時と同様に、アドオンを選ぶだけなので簡単です。
それではやってみましょう
OSMCでAmazonプライムビデオを見る
Amazonプライムビデオをみるにはアドオンをインストールしないといけませんが、アドオンブラウザーからは見つけられません。なので直接インストール用のファイルをラズパイに送信します。
Tera Termをインストールする
初期設定のときにSSHを設定しました。

これを利用してパソコンからRaspberry Pi(ラズパイ)を操作します。
下記のサイトからTera Termをダウンロードしてインストールしてください。
https://ja.osdn.net/projects/ttssh2/

Tera Termのインストールはウィザードに従ってそのまま行います。特に注意することもないので、ここでは割愛します。
Raspberry Pi(ラズパイ)と接続する
まずはターミナルソフト(TeraTerm)を起動して、SSHでOSMCにログインします。
Raspberry Pi(ラズパイ)のIPアドレスを入力し、「OK」を押して接続します。

※IPアドレスがわからない場合はコマンドプロンプトで「 arp -a 」でIPアドレスの一覧がでてきます。
以下の画面は「続行」を選択

ユーザー名もパスワードも初期設定では「osmc」です。

「OK」を選択し、接続完了すると以下のような画面が出てきます。

これで準備完了です。
アドオンをダウンロードする準備
最新のビルドである「nightly build」版を以下の手順でインストールします。
Tere Term以下のコマンドを打ち込んでください。
$ sudo apt update
$ sudo apt dist-upgrade -y
$ sudo apt install rbp2-mediacenter-osmc -y --allow-downgrades
こんな感じ

以下のコマンドも同様に入力していきましょう。
次にPython関連のパッケージをインストールします。
$ sudo apt install python-pip python-crypto build-essential -y
$ sudo apt install python-all-dev python-setuptools python-wheel -y
$ sudo apt install python-crypto-dbg python-crypto-doc python-pip-whl -y
$ sudo pip install pycryptodomex
シンボリックリンクを作成します。
sudo ln -s /usr/lib/python2.7/dist-packages/Crypto /usr/lib/python2.7/dist-packages/Cryptodome
amazonプライムビデオのアドオンが入ったリポジトリをダウンロード
$ wget https://github.com/Sandmann79/xbmc/releases/download/Repository/repository.sandmann79.plugins-1.0.3-leia.zip
アドオンがダウンロードできたらターミナルソフトは終了して構いません。
Raspberry Pi(ラズパイ)にインストール
OSMC(ラズパイ)に戻り「設定→アドオンブラウザー」「zipファイルからインストール」を選びます。

デフォルトでは不明なソースをインストールできないというメッセージが表示されますので、ここで「設定」を選択します。


設定画面で「不明なソース」にチェックを入れます。


「 アドオンブラウザー 」から再度「zipファイルからインストール」を選択する



先ほどTeraTermでダウンロードしたファイルはホームフォルダーの中にあります。
「ホームフォルダー」を選び、「repository.sandmann79.plugins-1.0.3-leia.zip」を選択してOKをクリックします。




※画像のバージョンが古いですが手順は同様です。
その後アドオンブラウザーに戻り「レポジトリからインストール」を選んで「Sandmann79s Repojitory」を選びます。




「ビデオアドオン→Amazon VOD」を選択し、次の画面で「インストール」を選択します。これでインストール作業は完了です。




インストール後は再起動してください。
Amazonプライムビデオの設定
「Connection」から「Amazon Account」を選んでログインする。


ログイン後は「ビデオ→ビデオアドオン」から「Amazon VOD」を選べばAmazonプライムビデオが見られるようになります。
日本語で検索するとエラーがでる
前にも記事に書きましたが、OSMCでは日本語をキーボードから入力できません。
ですのでスマホのKodiアプリから「ドラえもん」と送ってみました。


そうするとエラーが発生して検索できません。
ログの場所は、TeraTermで以下のコマンドで確認できます。
cat /home/osmc/.kodi/temp/kodi.log
ログの内容
2020-02-06 06:24:54.285 T:1394582240 ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<-- - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS! Error Type:
Error Contents: u'\u30c9'
Traceback (most recent call last):
File "/home/osmc/.kodi/addons/plugin.video.amazon-test/default.py", line 5, in
EntryPoint()
File "/home/osmc/.kodi/addons/plugin.video.amazon-test/resources/lib/startup.py", line 99, in EntryPoint
exec('g.amz.{}()'.format(mode))
File "", line 1, in
File "/home/osmc/.kodi/addons/plugin.video.amazon-test/resources/lib/amazontld.py", line 178, in Search
url = 'searchString=%s%s' % (quote_plus(searchString), self._s.OfferGroup)
File "/usr/lib/python2.7/urllib.py", line 1306, in quote_plus
return quote(s, safe)
File "/usr/lib/python2.7/urllib.py", line 1299, in quote
return ''.join(map(quoter, s))
KeyError: u'\u30c9'
-->End of Python script error report<--
2020-02-06 06:24:54.479 T:1394582240 WARNING: CPythonInvoker(10, /home/osmc/.kodi/addons/plugin.video.amazon-test/default.py): the python script "/home/osmc/.kodi/addons/plugin.video.amazon-test/default.py" has left several classes in memory that we couldn't clean up. The classes include: N9XBMCAddon7xbmcgui6DialogE,N14PythonBindings31XBMCAddon_xbmc_Monitor_DirectorE,N9XBMCAddon9xbmcaddon5AddonE
2020-02-06 06:24:54.487 T:1542828768 ERROR: GetDirectory - Error getting plugin://plugin.video.amazon-test/?cat=Browse&mode=Search&opt&page=1&url
2020-02-06 06:24:54.488 T:1915311664 ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.amazon-test/?cat=Browse&mode=Search&opt&page=1&url) failed
これがエラーを起こしている箇所でした。これによると
2行目: Error Contents: u’\u30c9′ ってありますね。調べたらユニコードの「ド」でした。検索のドラえもんの「ド」がエラーになっているようです。
9-10行目:怪しいのはこれですね。178行目にエラーがでているとあります。
urlという変数名からURLを作成しているようですが、URLは本来UTF-8であるため、ユニコードは使えないはずです。
searchStringにユニコードの「ドラえもん」が入っているのでエラーになっていると推測します。
searchStringをdecodeしてみます。ソースコードをViで開きます。
vi /home/osmc/.kodi/addons/plugin.video.amazon-test/resources/lib/amazontld.py
エラーの個所を探しましょう。ログによると178行目とあります。
「i」を押して編集モードに入ります。
url = 'searchString=%s%s' % (quote_plus(searchString), self._s.OfferGroup)
これを以下のように直します。
url = 'searchString=%s%s' % (quote_plus(searchString.encode('utf-8')), self._s.OfferGroup)


編集が終わったら「ESC」キーを押して編集モードから抜けます。
「:wq」と入力してEnterキーを押すと保存して終了します。
エラーはでなくなったが・・・
検索文字が「ドラえもん」だとエラー「ドラえも」だとできました。
また「クレヨン」はダメ「クレヨ」だと通りました。
amazonプライムの検索用のURLが500エラーを返しているので検索した文字列の制限があるのかもしれません。 これはAmazon側の問題です。
ユニコードをUTF-8に変換すると「ドラえもん」という検索だけで45文字くらいになるので検索文字が長すぎてエラーになっているのだと思われます。
まあローマ字でも打ちでいけるので我慢するしかないですね。
まとめ
ついにAmazonプライムビデオが見えるようになりました。
ここで終わりとしたいですが、このままだと子供たち以外操作方法がわかりません。
手順説明がなくても直感的に操作できるようにしていきたいですね。
ここまで読んでいただいてありがとうございます。
ディスカッション
コメント一覧
別ページの「Youtubeをみる」は大変 参考にさせていただきました。ありがとうございました。
その調子で!と思い、「Amazonプライムビデオを見る」にチャレンジしていたのですが、うまくできず、お力をお借りしたくコメント投稿させていただきました。
ZIPファイルのURLが変更されているのか、記事のURLからはダウンロードできず、Githubから検索して記事にあるバージョン「repository.sandmann79.plugins-v1.0.2.zip」および それより新しいバージョン「repository.sandmann79.plugins-v1.0.3.zip」をダウンロードしてホームフォルダーに置いてみたのですが、どちらも「ZIPファイルの構成が違います」エラーが出てしまい先に進めません。
もし、よろしければ、ZIPファイル内の構成を教えていただけませんでしょうか?
こういう所に投稿するのが初めてなので、失礼な事もあるかと思いますが、その辺はご指摘いただけると幸いです。
よろしくお願い致します。
連絡遅くなりました。
コメントありがとうございます。
うれしいです。励みになります。
私の方でも調べてみました。Ver1.02はダウンロードできないようになっていました。
wget https://github.com/Sandmann79/xbmc/releases/download/v1.0.2/repository.sandmann79.plugins-1.0.2.zip
を新バージョンの
wget https://github.com/Sandmann79/xbmc/releases/download/Repository/repository.sandmann79.plugins-1.0.3-leia.zip
とすることで新バージョンを取得し、同様の手順でインストールはできました。
インストール後再起動したあと、ログインし再生できました。
記事の方はまた空き時間で修正を掛けますが取り急ぎお知らせです。
Ver1.02のZipファイルを上げておきます。確認が必要であればダウンロードしてください。
http://nomux2.com/download/repository-sandmann79-plugins-1-0-2-zip