おしらせ
coroidはSourceForge.JPへ移行中です。質問事項はQ&Aフォーラムへ、バグ報告や機能リクエストなどはチケット登録で行っていただけるとありがたいです。(現時点では移行中であるため、本エントリのコメントとして投稿して頂いても対応致します。)
概要
coroid-serverは、ニコニコ動画サービスに登録されている動画をAndroidで視聴可能な動画形式に変換(トランスコード)し配信するソフトウェアです。
この機能により、Android端末(HT-03Aを想定していますがNexusOneやXperia、その他非AndroidでもiPhoneなどから利用されている方もいらっしゃいます)からニコニコ動画サービスに登録されている動画が視聴できるようになります。
coroid-serverは、Windows/Linux で動作します。Android上で動作するソフトウェアではありません。
本ソフトウェアを利用するメリットは以下の通りです。
- Android端末でニコニコ動画サービスに登録された動画をコメント付きで再生できる
- Android2.2でのFlash対応などにより、本ソフトウェア利用が唯一の方法では無くなってしまいましたが…
- 端末への負荷が少ない
- 端末に最適なサイズにあらかじめトランスコードしますので、再生負荷(消費電力、必要CPU性能)は最も抑えられるはずです。
- マルチプラットフォーム
- Androidに依存した仕組みでは無いため、iPhone等他のスマートフォンでも利用できます(私が試したわけではないので、正確には「利用できるようです」ですが)。
機能
ニコニコ動画サービスに関する下記の機能があります。
- HT-03A等Android端末での、ニコニコ動画登録動画各ランキング上位100位までの動画の閲覧
- 公開マイリストに登録した動画の視聴
- 検索結果からの視聴
- ランキングから公開マイリストへの登録
動作環境
JDK6及びGrails1.3.1(これ以外のバージョンでは未検証)がインストールされたWindows。Grailsのインストールについてはこちら(公式サイト)やこちら(日本語で解説されているページ)を参照。
Linux(Ubuntu9.10で動作確認)も実験的ですが動作します。詳細はこちらを参照。
JDK6とGrailsをインストールし、JAVA_HOME, GRAILS_HOME, PATH環境変数を設定してください。
なお、内部でffmpegを利用していますが、どうもDEPを有効にしていると強制終了されるようです。Vista/7ではデフォルトでDEPが有効になっている場合があるらしいので、coroid-serverは起動したものの変換が上手くいかないようであれば、こちらを参考に、coroid\bin\ffmpeg.exeについてDEPを無効にしてみて下さい。
実行方法
coroid\grails-app\conf\Config.groovy をエディタで開き、coroid.saccubus.mail, coroid.saccubus.passwordにニコニコ動画サービスのid,passwordを設定します。また、coroid.mylistにこのアカウントが所有する公開マイリストの番号を設定してください。
その後、coroidディレクトリに於いて grails run-app -https コマンド(grails[スペース]run-app[スペース]-httpsです)を実行することでcoroidが起動します。初回起動時はプラグインの読み込みで結構時間がかかります。また、フレームワークの問題で、上記コマンド実行後に、下記のエラーが出て起動できない場合がランダムに発生することを確認しています。
WARNING: Dependencies cannot be resolved for plugin [hibernate] due to error: null
この場合、何度かコマンドを実行し直してみてください。
起動が完了すると、”Server running. Browse to http://localhost:8080/coroid”というようなメッセージが出ると思いますので、サーバを起動したマシンのWebブラウザでアクセスしてみて下さい。ページが開ければ正常に起動しています。
起動後、Android端末等で、http://<Windows PCのIPアドレス>:8080/coroid/ へアクセスすれば一覧が表示されます。操作の概要については以前のエントリ内動画を見てみて下さい。念のため書いておくと、Windows PCのIPアドレスはipconfigコマンドで見ることができます。
使用するポートをデフォルト値から変更したい場合は「coroid-server 少し高度な設定の説明」のエントリを参照してください。
実行方法 - SoftBank X06HT(HTC Desire)に関する補足
X06HTのデフォルトAPN設定では、HTTPは80番ポート、HTTPSは443番ポート(つまりそれぞれのwell-known port)しか通らないようになっているという情報を頂きました。
従って、X06HTからcoroidを利用する場合には、以下の2つの手段のうち、どちらかの設定で運用する必要があります。
- coroidのHTTPを80番、HTTPSを443番で動作させる
- APN設定を変更し、well-known port以外でもHTTP/HTTPSを通すようにする
アンインストール
coroidアンインストールは以下の2ディレクトリを削除して下さい。また、GrailsやJDKもアンインストールしたい場合は、前述「動作環境」で記載した環境変数も編集し直して下さい。
- 展開したcoroidディレクトリ
- [プロファイル・フォルダ]\[ユーザ名]\.grails\[Grailsバージョン]\projects\coroid ディレクトリ
- “プロファイル・フォルダ”はOSのバージョンによって異なります。こちらのページの最後の方の表”Windows 2000/XPとWindows Vista/7のプロファイル・フォルダなどの対応”を参照して下さい。
- Grails自体もアンインストールする場合は.grailsディレクトリを削除して下さい。
アップデートに関する注意事項
旧バージョンからアップデートする場合、上書きインストールは行わず、coroidディレクトリ以下を置き換えて下さい。その上で、自身で更新したConfig.groovyの内容の書き換えなどを新しいcoroidに対して行って下さい。
その他、各バージョンの互換性に関する注意点は以下のとおりです。
- ver.0.5.0
- 対応Grailsのバージョンが1.3.1になりました。このバージョンのGrailsをダウンロードしハードディスクに展開した後、環境変数GRAILS_HOMEを更新してください。コマンドプロンプトで grails コマンドを実行すれば、設定されているgrailsのバージョンが確認できます。
- 起動コマンドラインに、-httpsオプションが必要になりました。
- ポート設定をデフォルト値から変更する場合、Config.groovyに修正が必要になりました。
- ver.0.3.0
- ver.0.2.0
- 対応Grailsのバージョンが1.2.1になりました。本バージョンのGrailsをダウンロードしハードディスクに展開した後、環境変数GRAILS_HOMEを更新してください。コマンドプロンプトで grails コマンドを実行すれば、設定されているgrailsのバージョンが確認できます。
補足
- 付属のffmpegを使うとかなり音質が悪くなるようです。これはffmpeg内蔵aacエンコーダを利用しているからで、よく利用されているFAACを利用すれば改善します。ただ、FAACをリンクしたffmpegはGPLv3で配布できないため、同梱していません。FAACを利用したい場合、ソースコードから自力でビルドするか、2chにアップされているffmpeg.exeを自己責任で利用してみてください。なお、さきゅばす用でない一般的なffmpegは利用できません。
- ffmpeg.exeは coroid\bin ディレクトリに配置してください。
- faacを利用する場合のオプションは –acodec libfaac です。後述Config.groovyファイル該当行を書き換えて下さい。
- 同梱のffmpeg.exeでも、オプションに-ab 192000 等を追加し、音声のビットレートを上げれば多少改善するようですが…
- ffmpegのオプションを変更するには、前述Config.groovy中の coroid.ffmpeg.optionを修正する。
デフォルトオプションでは、どうも再生できない動画が多い。-qmaxの値が小さすぎのようだ。40から50程度にすると再生可能になるようだが、画質は低下する。 大分改善されたはず。 - ffmpegのオプションに詳しい方がいれば…
ダウンロード

coroid-server最新版 (2010/06/08 ver.0.5.1)をダウンロードする
バイナリ部のソースコードはさきゅばす拡張ダウンロードページから。一部Java/Groovy部のソースは上記coroid-serverに同梱されています。
現在、配布はSourceForge.JPで行うよう変更しました。
最近のコメント