「PSPで動画を無線LANストリーミング再生」が本気で凄い。PMP Mod M4g3 Streaming Video Player
- PSP
- | トラックバック(1)
- | コメント(1)
PSPz - PSPのアレな解説 -さんのPMPファイルをストリーミングで流そう!PMP Mod M4g3 Streaming Video Playerを見て早速試してみました。
結果、普通にPC上にあるPMPファイルが再生出来ました!
これは本気で凄いです!
メモステの容量関係無しなんです(無線LANが使える場所なら)。
早送りや巻き戻しも普通に出来ました。
AVC動画好きでしたが、PMPに切り替えようと思います。
PCで作業中に横でPSPに動画を再生させておく、なんて使い方が結構便利です。
PSP用スタンドがあると更に良い感じで使えました。
PSP用スタンド CYBER クレードルPROのレビュー。
少し試してみただけですが、ビットレートやフレームレート、動画サイズによって音が途切れたりする事があるようです。
WEP暗号をオフにしたりしても変化無しでした(電波強度は100%)。無線LAN省電力はオフにしてあります。
2006.2.27追記
PMP Mod M4g3 ストリーミング再生時の音飛び対策エンコード設定。
記事が長くなってきたので別記事に音飛び対策を書いておきました。
2006.2.22追記
PMP Mod M4g3 Windows Serverが更新されてました。
解凍した中の、pmp_server.pyを使いましょう。C:\Moviesから変更してある人はもう一度設定し直して下さい。
早送りの動作が良くなったような気がします。
PMP Mod M4g3 20060219
ってのも出てました。こちらはPSPにインストールする方です。
Homeボタンで終了が有効になったのと、
PSPで起動してPCと接続した時に、全てのPMP動画情報を一気に受信するようになったようです(ファイルサイズや再生時間など)。
今まではリスト上で移動する度に一つ一つ受信していました。
でもこの方法だと、ファイル数が多い場合待ち時間が長くて使いにくいです。
ファイル再生が終了してもう一度リストに戻った時、もう一度全PMPファイルの情報を受信完了するまで操作不可なので。
なので、私は古い方を使っています。
とりあえず色々エンコードしてみました。
↓は再生してみた結果です。
動画設定ごとのストリーミング再生実験
2006.2.27追記
PMP Mod M4g3 ストリーミング再生時の音飛び対策エンコード設定。
より新しいおすすめエンコード設定は↑の記事に書いてあります。
導入手順や使用方法を自分用メモとして書いておきます。
導入手順
PSPz - PSPのアレな解説 -さんのPMPファイルをストリーミングで流そう!PMP Mod M4g3 Streaming Video Playerの記事が簡潔で分かりやすいです。記事を見ながらだとすぐ出来ました。最初、PMP Mod M4g3が起動しずに焦りましたが、
メモステ:\PSP\VIDEOフォルダ内に何か適当なPMP動画を置いておくと起動しました。
それと、PCに置いておくPMPファイルは、ファイル名にスペースが有ると動作が変になります。
なので、ファイル名にスペースは使わずに_や-で代用した方が良さそうです。
それと、ファイル名に日本語もダメなようです。ローマ字表記するしかなさそうです。
pmp.iniに記入する、自分のPCのIPアドレスが分からない!っていう方は、

Windows左下のスタートメニュー内のファイル名を指定して実行

cmdと入力してOKボタン

黒い画面が出るので
ipconfig
と入力してEnter(改行キー)を押します。
すると

こんな感じでIPアドレスが出るので、それがそのPCのIPアドレスです。
pmp.ini
con = 0;
を
con = 1;
にしておきました。
インフラストラクチャーの設定が「AOSS自動設定」という日本語混じりの設定名でしたが、問題無しでした。
使用方法
デフォルトだとC:\MOVIESフォルダにPMP動画ファイルを入れておく必要があります。これを変更したいという方はPython24フォルダ内のpmp_server.pyをメモ帳などのテキストエディタで開いて

46行目に
C:\Movies
となっている所があるので
それを変更したいアドレスに変更して下さい(例:F:\Movies)。
PMPファイルは今の所、指定したフォルダの直下に置いておかなければいけないようです。
Moviesフォルダ内に更にフォルダを作って分類、とかは出来ませんでした。
なので100個とか動画があるとリストから動画選択がちょっと大変かもしれませんね。
PSPでの再生方法
ファイルリスト画面では
×ボタンで再生、△ボタンで終了
動画再生中は
←、→で巻き戻し、早送り
×ボタンを押しながら←、→で高速巻き戻し、早送り
△でリストに戻る
STARTでシークバー等表示
□で一時停止、×で再開
だと思います。
PMP動画を作成
PMPは携帯動画変換君で作成出来ます。PSPz - PSPのアレな解説 -さんの携帯動画変換君でPMPファイルを作ろう!3GP Converter Direct Encoding Mod For PMPの記事が参考になります。
注意点は、PMP変換用INIファイルのフレームレートが25fpsに設定されている所です。
なので手動で29.97fpsに変更しておきましょう。そうしないとカクカクな感じになります。
2006.2.27追記
PMP Mod M4g3 ストリーミング再生時の音飛び対策エンコード設定。
より新しいTranscoding.ini設定のまるまるコピーは↑の記事に書いてあります。
古い実験結果
一応残しておきます。(古い)2/22時点でのおすすめエンコード設定
4:3の場合
360x272 512kbpsまたは384kbps(時間があるなら2pass) MP3 128k
16:9の場合
480x272 384kbps(2pass推奨) MP3 128k
ほぼ完全に大丈夫ですが非常にまれに音飛びする場合があるので、その場合は2pass 320kbpsにすると良いかもしれません。
普通のテレビ番組は29.97fps
アニメや映画は24fpsでエンコードすると良いです(たぶん)。
2passは時間が倍かかりますが、384kbpsの時にかなり効果がありました(ここまで効果があるとは!というくらいです)。
384kbpsを使う時は、2passにしておいた方が良さそうです。
↓は動画実験の結果を書いてあります。
(導入手順や使い方、携帯動画変換君の設定その後に書いてあります)
○が普通に見れた物で、×は音が途切れるシーンがあった物です。
音が途切れるといっても、○より一個上の×の設定くらいなら30分番組で数秒あるかどうかですが。
16:9
29.97fps
× 480x272 29.97fps 512kbps mp3 128kbps
○ 480x272 29.97fps 384kbps mp3 128kbps
24fps
× 480x272 24.00fps 768kbps mp3 128kbps
× 480x272 24.00fps 640kbps mp3 128kbps
ほとんど○ 480x272 24.00fps 512kbps mp3 128kbps
○ 480x272 24.00fps 384kbps mp3 128kbps
(384kbpsでも極稀に音飛びが発生する動画もありますが、無視出来るくらいの可能性だと思います)
○ 480x272 24.00fps 320kbps mp3 128kbps
○ 368x208 24.00fps 512kbps mp3 128kbps
4:3
29.97fps
未実験 360x272 29.97fps 768kbps mp3 128kbps
ほとんど○ 360x272 29.97fps 512kbps mp3 128kbps
○ 360x272 29.97fps 384kbps mp3 128kbps
24fps
× 360x272 24.00fps 1024kbps mp3 128kbps
× 360x272 24.00fps 768kbps mp3 128kbps
ほとんど○ 360x272 24.00fps 640kbps mp3 128kbps
○ 360x272 24.00fps 512kbps mp3 128kbps
とこんな感じになりました。
・特定のシーンで音が途切れがちになる→動画の内容に影響されているようです。→なので、動画によっては↑の結果通りにならないと思います。
・今回はアニメを使用したので、実写動画の場合では違った結果になるかもしれません。
・映像のビットレートはそのままで、MP3 96kbpsにしてみたりしましたが変化無しでした。→なので音声はMP3 128kbpsで良さそうです(64kbpsはさすがに音質が悪すぎだと思うので試していません)
・480x272 512kbpsで音飛びしたシーンを1pass 2passでエンコード→両方とも音が途切れる→音飛びはビットレート次第で、1passか2passかは関係ないようです
・480x272 512kbpsで音飛びしたシーンを、360x272でエンコードすると音飛びしませんでした→解像度が小さい方が高ビットレートが可能なようです(普通ですが)
・480x272 512kbpsで音飛びしたシーンを368x208 512kbpsでエンコード→音飛び無し→でも、どうせなら画面ぴったり480x272を使いたいような気がします。
使った設定は記事の下の方に書いてあります。
メモステに保存したPMPファイルなら29.97fps 映像1280kbps 音声128kbpsもスムーズに再生出来ているので、これからのバージョンアップでひょっとすると、今は音が途切れてしまうようなビットレート動画もスムーズにストリーミング再生出来るようになるかもしれませんね。
以前私が使っていた設定
[Item9] Title=4:3 / 360x272 @ 384 kbps 128k mp3 Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -bitexact -vol 256 -acodec mp3 -ac 2 -ar 44100 -ab 128 -f mp3 "<%TemporaryFile%>.mp3" -vcodec xvid -s 360x272 -r 29.97 -b 384 -an -f avi "<%TemporaryFile%>.avi"" Command1=""<%AppPath%>\cores\pmp_muxer" "<%TemporaryFile%>.avi" "<%TemporaryFile%>.mp3" "<%OutputFile%>.pmp"" Command2="rm "<%TemporaryFile%>.avi"" Command3="rm "<%TemporaryFile%>.mp3""
[Item12] Title=16:9 / 480x272 @ 384 kbps 128k mp3 Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -bitexact -vol 256 -acodec mp3 -ac 2 -ar 44100 -ab 128 -f mp3 "<%TemporaryFile%>.mp3" -vcodec xvid -s 480x272 -r 29.97 -b 384 -an -f avi "<%TemporaryFile%>.avi"" Command1=""<%AppPath%>\cores\pmp_muxer" "<%TemporaryFile%>.avi" "<%TemporaryFile%>.mp3" "<%OutputFile%>.pmp"" Command2="rm "<%TemporaryFile%>.avi"" Command3="rm "<%TemporaryFile%>.mp3""
[Item54]
Title=16:9 / 480x272 @ 384 kbps 128k mp3 (2-PASS) Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -bitexact -vcodec xvid -s 480x272 -r 29.97 -b 8192 -acodec mp3 -ac 2 -ar 44100 -ab 128 -f avi -pass 1 -passlogfile "<%TemporaryFile%>" nul -f mp3 "<%TemporaryFile%>.mp3"" Command1=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -bitexact -vcodec xvid -s 480x272 -r 29.97 -b 384 -an -f avi -pass 2 -passlogfile "<%TemporaryFile%>" "<%TemporaryFile%>.avi"" Command2=""<%AppPath%>\cores\pmp_muxer" "<%TemporaryFile%>.avi" "<%TemporaryFile%>.mp3" "<%OutputFile%>.pmp"" Command3="rm "<%TemporaryFile%>-0.log"" Command4="rm "<%TemporaryFile%>.avi"" Command5="rm "<%TemporaryFile%>.mp3""
動画の開始時間等をカスタマイズの場合
[Item9] Title=4:3 / 360x272 @ 384 kbps 128k mp3 Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -bitexact -ss 00:01:29.00 -t 00:02:30.00 -vol 256 -acodec mp3 -ac 2 -ar 44100 -ab 128 -f mp3 "<%TemporaryFile%>.mp3" -vcodec xvid -s 360x272 -r 29.97 -b 384 -an -f avi "<%TemporaryFile%>.avi"" Command1=""<%AppPath%>\cores\pmp_muxer" "<%TemporaryFile%>.avi" "<%TemporaryFile%>.mp3" "<%OutputFile%>.pmp"" Command2="rm "<%TemporaryFile%>.avi"" Command3="rm "<%TemporaryFile%>.mp3""
[Item12] Title=16:9 / 480x272 @ 384 kbps 128k mp3 Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -bitexact -ss 00:01:29.00 -t 00:02:30.00 -vol 256 -acodec mp3 -ac 2 -ar 44100 -ab 128 -f mp3 "<%TemporaryFile%>.mp3" -vcodec xvid -s 480x272 -r 29.97 -b 384 -an -f avi "<%TemporaryFile%>.avi"" Command1=""<%AppPath%>\cores\pmp_muxer" "<%TemporaryFile%>.avi" "<%TemporaryFile%>.mp3" "<%OutputFile%>.pmp"" Command2="rm "<%TemporaryFile%>.avi"" Command3="rm "<%TemporaryFile%>.mp3""
[Item54] Title=16:9 / 480x272 @ 384 kbps 128k mp3 (2-PASS) Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -bitexact -ss 00:01:29.00 -t 00:02:30.00 -vcodec xvid -s 480x272 -r 29.97 -b 8192 -acodec mp3 -ac 2 -ar 44100 -ab 128 -f avi -pass 1 -passlogfile "<%TemporaryFile%>" nul -f mp3 "<%TemporaryFile%>.mp3"" Command1=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -bitexact -ss 00:01:29.00 -t 00:02:30.00 -vcodec xvid -s 480x272 -r 29.97 -b 384 -an -f avi -pass 2 -passlogfile "<%TemporaryFile%>" "<%TemporaryFile%>.avi"" Command2=""<%AppPath%>\cores\pmp_muxer" "<%TemporaryFile%>.avi" "<%TemporaryFile%>.mp3" "<%OutputFile%>.pmp"" Command3="rm "<%TemporaryFile%>-0.log"" Command4="rm "<%TemporaryFile%>.avi"" Command5="rm "<%TemporaryFile%>.mp3""
この場合、1分29秒から2分30秒間の動画が作成されます。
つまり↑の設定1:29〜3:59の動画部分という事になります。
使用したい時間に変更して使って下さい。
24fpsでエンコードしたい方は29.97の部分を24に書き換えて下さい。24fpsソースの場合は24fpsでエンコードした方がストリーミング時の音飛びの可能性が下がるのでおすすめです。
ビットレートを変更したい方は384の部分を512とかに変更して下さい。
音声が小さい場合は、256の部分を512や768にしてみて下さい。
<%OutputFile%>.pmpの部分を<%OutputFile%>_384k_2pass.pmp
と変更すると
元の動画ファイル名_384k_2pass.pmpというファイル名でPMPファイルが作成されます。
後でどういう設定でエンコードしたか分からなくなるかもしれないので、設定にあった名前を付けておくと便利かもしません。
[Item9]の部分は連番になるようにして下さい。
動画の入力にはAvisynthを使用して読み込むのDirectShowSource with ConvertFPS を使用して読み込むを使用しています。特にエラーや音ずれも無く使えています。WMVもOKです。(aviutl経由の方はどうも私の環境では不安定です)
24fpsでエンコードする場合は、
DirectShowSource("<%InputFile%>",fps=29.97,convertfps=true)
return last
ではなくDirectShowSource("<%InputFile%>",fps=24,convertfps=true)
return last
と設定した方がスムーズな気がしました。トラックバック
この記事のトラックバックURL
http://digitalkaden.blog17.fc2.com/tb.php/72-804bedcc
TV放送をリアルタイムでストリーミングしてPSPで見よう!〜PiMPStreamer Ver0.73+テレパソ〜
人気ブログランキング。毎日ワンクリックお願いします。m(_ _)m なんだかんだ言いながらも、ブログ開設2週間チョットでアクセスありがとう御座います。昔、yahoo!ブログをやっていたんですが、もう、本当に人が来ないんですよ。実力不足かもしれないですが
- | HOME |

コメントの投稿