vocho / beer-media-server2

Automatically exported from code.google.com/p/beer-media-server2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

VFRなmp4を再生するとエラーが発生する

GoogleCodeExporter opened this issue · comments

What steps will reproduce the problem?
1. VIERA X3でVFRなmp4(AVC+AAC LC)を再生する
2. 
最初の数秒が再生された後、再生が停止し「データの読み��
�みに失敗しました。」と表示される
3. 
BMSのログでERRORが発生しており、BMSの挙動が不安定(接続で��
�たりできなかったり)になる

What is the expected output? What do you see instead?
CFRなmp4(AVC+AAC LC)だと特に問題なく再生されます
VFRなmp4(AVC+AAC 
LC)だと接続リクエストが増えるためなのかエラーになりま��
�
エラーは以下の2種類のどちらかが発生します
*** ERROR HTTPT: Out of memory
*** ERROR HTTPD : Thread creation error: 
このコマンドを実行するのに十分な記憶域がありません。

RAMはProcess 
Explorerで確認する限り、BMS.exeが通常時25MBで、VFR再生時は最�
��1G近く使用します。
その場合でもRAMは5GB程度余っています。

エラー内容をWEBで検索した結果、レジストリの変更も効果��
�あるかと思いましたが変化ありませんでした
以下のレジストリのMaxRequestThreadsを32へ変更後、再起動して�
��してみました
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session 
Manager\SubSystems\Windows
%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows 
SharedSection=1024,20480,768 Windows=On SubSystemType=Windows 
ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 
ServerDll=winsrv:ConServerDllInitialization,2 ServerDll=sxssrv,4 
ProfileControl=Off MaxRequestThreads=16

What version of the product are you using? On what operating system?
Version 2.0.130128
OS:Win7 x64 SP1
CPU:Core i3-2100
RAM:8GB
ウイルス対策やファイアウォールはOFFにして検証

Please provide any additional information below.
CFRで再生成功時、VFRで再生失敗時(Out of memory/Thread creation 
error)のログを添付します
mp4対応のBRAVIAやREGZAを所持していないため動作確認できませ
んが、VIERA特有の問題かもしれません

Original issue reported on code.google.com by voc...@gmail.com on 30 Jan 2013 at 10:54

Attachments:

PMS for 
VIERAでうまくいくなら同じような処理をすればよいのですが
、当方にはVIERAがないため実験が難しい状況です。
もしPMS for 
VIERAでもうまくいかないならVFRなMP4にVIERAは対応していない�
��能性が高いのでトランスコードするしかないと思います。

Original comment by malcome...@gmail.com on 30 Jan 2013 at 12:11

  • Added labels: ****
  • Removed labels: ****
コメントありがとうございます
VIERAでVFRなmp4を直接再生したいわけではないので、トランス
コードすることにします
他のファイルも検証してみたところ、VFRなmp4以外でも単位��
�間当たりのリクエスト数が多いとVIERAからの再生に限らずBM
Sで同じエラーが発生しました
エラーが発生すること自体は構わないのですが、その後BMS��
�不安定になってしまうのでそれが防げると助かります
ですが再現できないとどうしようもないですよね、ううむ

Original comment by voc...@gmail.com on 30 Jan 2013 at 1:20

  • Added labels: ****
  • Removed labels: ****
PMS for VIERAでの動作結果を報告します
mp4を「変換しない拡張子」に指定して再生させたところ、��
�生は停止しないもののカクカクするのでやはりVFRには対応�
��ていないようでした
TThread以外でリクエストの処理分散させるのって難しいです�
��ね。。。

Original comment by voc...@gmail.com on 30 Jan 2013 at 1:30

  • Added labels: ****
  • Removed labels: ****
このページを参考にVMMapを見ていたらx64は少し制限がゆるそ
うだな?と思いつきました
http://technet.microsoft.com/ja-jp/windows/mark_04.aspx

win64のlazarus、MediaInfo.dll、lua52.dllを用意して必要な箇所のソ�
��スを修正してビルドして実行したところ、見事にOut of 
memoryやThread creation errorのエラーは起きなくなりました

Windowsの制限だったようです

Original comment by voc...@gmail.com on 30 Jan 2013 at 2:58

  • Added labels: ****
  • Removed labels: ****
通信に使う最大スレッド数を最大100ぐらいに制限したほう��
�よいかもしれませんね。
PMSはそれをやっていて、スレッド数が減るまでクライアン��
�を待たせることになるためかくかくするのかもしれません�
��結局きれいな再生はできないにせよ不安定になるよりはよ
い気がします。

Original comment by malcome...@gmail.com on 31 Jan 2013 at 12:41

  • Added labels: ****
  • Removed labels: ****
エラーになって不安定になるよりは制限したほうが安心で��
�よね
VFRなmp4の再生時でもwin64のbms2なら安定して転送しているよ��
�です。恐ろしいことにスレッドを最大200~300は使っている�
��うでした・・・
しかし、PMS for VIERA同様カクカクはするので、VIERA 
X3はVFRなmp4の再生は対応していないのかな?と思いました

Original comment by voc...@gmail.com on 31 Jan 2013 at 1:29

  • Added labels: ****
  • Removed labels: ****
パナソニックに「VIERAがDoSアタックのような挙動をします!
」とか報告すればあわててVFRなmp4対応アップデートをして��
�れるとかないですかね(笑)。

Original comment by malcome...@gmail.com on 31 Jan 2013 at 10:51

  • Changed state: Accepted
  • Added labels: ****
  • Removed labels: ****
本当にDoSアタックのような勢いでアクセスしてきますね
VIERAは他にもバグ(一定個数のUUIDを認識してそれ以降は電源�
��切っても新しいDLNAサーバーを認識しなくなる)や変な仕様(
日本向けなのにDLNAはPAL仕様)があるので報告しときます

Original comment by voc...@gmail.com on 1 Feb 2013 at 3:11

  • Added labels: ****
  • Removed labels: ****