MPDWEB 紹介/特徴

MPDWEB 紹介/特徴
MPDWEB 紹介/特徴

2019年11月4日月曜日

2019-11-01:Ver1.33 修正,機能追加....

 1. mpdwebから連動時,mpdartlist:ディレクトリが存在しないないときphpがエラーとなっていたのを修正
 2. 再生楽曲がないときCommonPanel Playlistを表示しない仕様を変更
     Functionで再生PlaylistをClear後,楽曲を追加してもCommonPanel Playlistに表示しないのを修正後,今回仕様にした。
 3. NowMusic Playlistの編集で再生中楽曲からみの移動で再生Positonが誤表示してたのを修正
    Functionで再生PlaylistをClear後,画面の反映がWaitTimeとなっていたが即表示かCallBack後表示にしたが、同時に修正した。
 4. NowMusicからFunction「Link Contens」で画面切り替えの際,AlbumArt表示時の不具合を修正
 5. NowMusicでFunction「Playlistload」でエラーとなる不具合を修正
 6. Playlist/Search機能をスピードアップ対応
    FunctionでFilePathを使用し各機能を作成しているが,複数回発生するので画面上のFilePathをjsでGetすることでHTMLサイズを縮小した。
    Function関数はAlbum内容表示でも使用しているが、こちらは原則Album単位なのでHTMLサイズは抑えることができる。(機能的にはQuery単位だが)
 7. 再生中MusicのMarkStyleを設定できるようにした。
    CommonPLaylistも同様にStyleを設定できるようにした。
    XML設定:<DISP_Config><MarkNowCurrent> : NowMusic
                      <DISP_Config><MarkCommonList> : CommonPLaylist
 8. ChromeでAlbum内容表示時"年"が4桁表示していなかったのを修正
 9. File表示DetailにTag年を追加した。(他に合わせた)
10. File表示DirectoryのDetail時,Modify Date/Time表示にセパレータ|を表示した
11. AGENT空白で機種を判別させる定義をルールに追加
    XML設定:<Html_config><Viewport_{AGENT}> {AGENT}の_はSpaceとする(AGENTの" ","_"の区別はしない)
    Google Pixel3aのAGENTが"Pixel 3a"となっているので対応した。
    XML設定にもPixel3aを追加した。
12. NowMusic機能でStrimingの行Function「Link To Conteins」はグレイアウトした。(従来もLinLしていない)

2019年10月8日火曜日

2019-10-01:Ver1.32 修正,機能追加

2019-10-01:Ver1.32 修正,機能追加....
1. NowMusic画面以外のStatusAreaのデザインをNowMusic画面に合わせた(Chomeで見た目が異なっていた)。
  Status行のスクロールバーをON/OFFできるようにした:XML設定
  <DISP_Config><Status_Scrollbar>on|off : 未設定時デフォルト:on
  perfect-scrollbarを組み込めるようにしたための追加設定
2. JS入力補助[mpdilist.php]作成に伴い,修正を行った。
  ・List機能のListにidを付加した。JS側でidからIndexを作成するため必要になった。
  ・File機能でFile表示時先頭idの付け方に誤りがあった。
  ・XML設定<HTMLBuiltin>を使用して組み込めるようにしたが,global項目を使用した。設定,表示条件をglobalに追加した。
  ・最下行をIndexListの表示ボタンにしたので同行をStatus行にした。(CommpnPlayPanelの操作性に影響がでたため)
  <DISP_Config><Status>off -> onに変更,<!--<Current_Status>on コメントにした。
3. 「Common Function」「Playlist Save as...」が他端末別Playlistを再生しても変わらなかったのを対応した。
  再生中はWatchしているので,Playlistが変更されたのを察知したとき入れ換えるようにした。
4.「mpdartlist.php」も同様にJS入力補助[mpdilist.php]機能を組み込んだ
   「mpdartlist.xml」に設定の追加を行った
    <HTMLBuiltin_mpdweb.php><TermHTML>に機能追加
    <DISP_Config>
        <Sort_Capital>on</Sort_Capital><!-- 表示順に大/小文字の区別しない on/off
        <File_DirLayer>2</File_DirLayer><!-- 抑制Directory階層 /share/Musicで2階層 初期値"":制限なし(外部連携で使用)
             を追加して操作性を同じにした。
    <Additional_Func>CommonFunction設定 p={機能} m={Sub機能} o={使用条件} で条件を追加した。
    <{FuncTag} o="{使用条件}":一致した場合,設定を使用可能にする
     使用条件 : invalid='1' / "invalid='':ディレクトリ指定階層以下は使用可否 ,  file:Layer>=指定階層以下 , directory:Layer>指定階層以下の条件を付けることができる
5. XML設定<HTMLBuiltin>に<EventListener><onLoad>を追加し。AutoLoadを一部修正した。
  NuwMusicのFremeを画面間の継続でEventListenerを使用していたが,onLoadに移動した。
   「mpdartlist.xml」も同じ機能とした。
6. NowMusic画面 Imageクリックの外部I/F HTML生成の不具合を修正。</script>が正常に生成されていなかった。
 7. 閉じるときのEventを設定可能にした
     <HTMLBuiltin_Event><unloaded>を追加した。
 8. Search機能に設定追加
  ・DispSearch Combo選択時で設定なし項目を単一選択で許可。","で複数設定。未設定時動作は変わらない
    XML設定:<DISP_Config><Search_ComboNull>{Filed}</Search_ComboNull>
  ・DispSearch 日付Combo選択で単一で許可する桁数(以上を設定),""は許可しない。未設定時日付5桁以上は単独でSearchできるようになる。
      XML設定:<DISP_Config><Search_ComboDateForm>{5}</Search_ComboDateForm>
     ※Searchで大多数抽出はメモリが耐えないがイレギュラを検索する考慮
9. Rolloverによる名称表示を補完。長いタイトル,ファイル名は確認方法がなかったためロールオーバーで対応
     ・Album内容表示:タイトル行トラックをクリックでロールオーバ表示
     ・File表示     :ファイル表示のNoをクリックでロールオーバ表示
       ディレクトリ表示は,Function「...」で「Rollover Path」ボタンでロールオーバ表示
      ・Search表示   :Noをクリックでロールオーバ表示(Postで実現)
      ・Playlist表示 :Noをクリックでロールオーバ表示(Postで実現)
        ディレクトリは,目的階層のヘッダでロールオーバ表示。最終オペレーションを継続するので、一体的に見えるようデザインを変更
       ※ロールオーバはタブレットの操作を考慮しクリックで行う。
 10. Playlist機能,Search機能,Album内容,File機能から機能を切り替えるときAlbum内容,File機能で対象ミュージックデータを色を変えてマークするようにした。
     ・NowMusic画面からのAlbum内容,File機能に連携したとき再生中にマークするかをの設定を設けた。
     XML設定:<DISP_Config><MarkNowMusic>on|off     デフォルトはoff
          <MarkColor>{style}|""    DispFind/DispFile連携選択のstyle, "":機能なし
          <MarkColorNow>{style}|"" DispFind/DispFile NowMusicからLink時現在再生中のstyle, "":機能なし
      曲が変わってもマークは変わらないので設定できるようにした。(どちらが良いかの判断)
      ・NowMusic画面PlaylistからAlbum内容にLinkするとき,FilePathを持っていないので,タイトル,Disk/Track一致で同じ曲とした。
      NowMusic画面にHTMLを抑えるためFilePathを抱えないようにするため。
11. 指定位置へのポイントする mpdilist.php を作成した
            設定で組み込むこと。HTMLからjsでインデックスを作成するため,デザインを考えなければ汎用的

2019年8月15日木曜日

mpdweb 1.31 レベルアップ 機能追加/不具合修正

デモ/テストサーバがダウンしてしまい,回復に時間が掛かってしまいました。
機能追加/不具合修正以外にみ、次期に向けて構造を改修しています。
現在のmpdライブラリ以外にも共通部を別モジュールにし,XML設定で、JQUERY,JSP を追加できるようにしました。デザインの追加,入力ツールを作った場合は,設定でく見込める構想です。
今回 機能追加の、一部スクロールバーデザインはこの機能を活用しています。
またしばらく、使用していて不便、不具合は極力改善したつもりです。
1.30版で追加したArtListも今回のバージョンアップで当初想定の機能を作成しました。
楽曲アルバムに画像,pdfなどを入れているときは活用できます。曲を聴いているときに活用できます。

2019-08-11:Ver1.31 レベルアップ 機能追加/不具合修正
 1. post処理で,HTML-IDを判定する部分で指標を書き忘れていた。
     (なんで動く?思い当たる原因不明不具合もあった)
 2. XML 属性を取得するライブラリを追加した。(mpdartlist.phpで使用。)
 3. List機能のHTML StyleをClassに移動。List行数が多くなったときに速度の点で有利。
 4. Album名に「"」が含まれるとAlbum Art表示からAlbum内容表示に遷移時内部エラーが発生し
    ていたのを修正
 5. URLがディレクトリ{http://{host}/mpdweb/}までの指定時,SearchBox横Functionで「Session
     Data Clear」「Cash Clear」でエラーとなっていたのを修正。
 6. ChromeでStatus表示エリアがResize可能になっていたのを修正
 7. Session有効期限外でもmpdweb.phpシリーズからのLinkは初期化しない設定を新設
   XML設定ファイル:<php_config><related_link>on|off
 8. XML Attribute操作関数を共通関数としてmpdweb.lib.phpに移動
 9. 外部Link機能がCloseさせずに終了したときに次回起動時再起動 (mpdclock.php)
    XML設定ファイル:<ExpAutoLoad>on|off 有効無効設定
10. 一部のブラウザでURLが変わらないと再表示しないための修正をした。
     (URLに&cnt=99を付加:全ての機能に対応していない)
    URLが同じで画像のみ付加,他に変化なしの場合再表示しない携帯用ブラウザがあったため。
11. HTMLBuiltin機能を追加。mpdartlist.phpの機能を一部移植
    XML設定ファイル:<HTMLBuiltin>を使用しjs/php,外部ソースincludeなどを記述できる。
    XML設定ファイル:<php_config><ua_phone>/<VendorPrefix>を追加し追加機能で使用できる
   設定上で,viewer.jsを使用しSlideShowができる記述をしている。
   ※設定ファイルは肥大化しているが,追加機能は設定で行い、外部ソース,JQuery,公開された
       js,なども組み込める。
    設定てきるユーザに限られるが、一部の不要機能は,切り離せる。(ベースの機能で音楽は視聴 
    できる)
12. File機能 MusicHeaderからAlbum機能ジャンプのときディレクトリに「'」が含まれていると
    Album機能から戻れなかった
    XML設定ファイル:<Additional_Func><File_AlbumHd>の設定%Enc:Album%→%B64:Album%
    に修正して対応
13. File機能からのmpd Updateの機能でUpdateParameterを
    XML設定ファイル:<Additional_Func><File_AlbumHd>の設定<Mpd_Update>を使用していな
    かったのを修正。(Updateは正常に行われている)
14. ArtListボタンの設定をhome=%Enc:→home=%B64:/trns=%Enc:→trns=%B64:とした。
    HistoryBackの機能を強化したが,$_GETで取得していた部分をロジックで伸長するようにした。
URLエンコードとパラメータ区切り、&文字の区別がつかない場合があった。
    前バージョンではB64よりURLを短くしたかったのでEncを使用していた。
    XML設定ファイル:<Additional_Func>ArtList
15. [Back]ボタンでの戻り機能にURL最大長を設定できるようにした。
    XML設定ファイルのSectionも変更した。デフォルトがあるが設定を直すこと
    <History><HistoryBack>
                   <URL_Length>  :BackButtonでの戻り履歴回数以内でも最大長を超えた場合短縮,
                                               または先頭に戻す。
                    <URL_ForceTop>:最大長を超えた場合先頭に戻す
    URLの最大長はブラウザにより異なることが個別設定はできない。
    mpdartlist.phpとのコンビネーションなど長いURLになった場合はあり得るので完璧ではないが,ほとんど戻すことができるようになった。
16. モジュールを共通化のため分割した。
    Module.txt参照。(Laibrary/js/css)
    一本の方が素人的で好きだが今後の展開も考慮した。
    SearchBox横「Function」の画面Infomationに各バージョンを表示した。今回Ver1.0とした。
17. XML設定で,javascript:perfect-scrollbarを組み込めるようにした。
    XML設定ファイル:<HTMLBuiltin>を使用。
18. HistoryBoxに登録済を使用時,先頭になるようにした。
    ※mpdartlist.php/mpdclock.phpは今回改装となり設定も含め入れ替えとなります。

2019年2月18日月曜日

mpdweb 1.30 追加機能/修正/設定変更....

2019-02-15:Ver1.30 修正....
今回は、mpdartlist.phpを作成中に関数をレベルアップしたのでwpdweb.phpに反映と連携の設定を強化した。

 1. Album内容表示のトラックの表示方法変更。Diskが設定時Trackが4桁以上のときは2行に分け表示する。
 2. Album内容表示のAlbumArt表示時、画像をクリックでArtListに遷移を止め、Closeする。ArtListに遷移機能はボタンにした。
     設定変更:<Additional_Func><FindArt><FindArt{n}>
     携帯端末で触れると画面が変わり鬱陶しいための設定変更
 3. File内容表示のAlbumArt表示時、画像をクリックでArtListに遷移を止め、Closeする。ArtListに遷移機能はボタンにした。
     設定変更:<Additional_Func><FileArt><FileArt{n}>
     携帯端末で触れると画面が変わり鬱陶しいための設定変更
 4. File内容表示のHeader部「Back」ボタンを表示時,mpdweb以外からの要求で戻りURLを指定をできるようにした。
     &url=back:{Address}で指定 「back」は任意 AddressはB64/Encなどでmpdweb体系でのEncodeをする。
     関連の修正を行った。:外部からのPathでMusicDataなしの扱い。ボタンを表示ケースの調整
 5. Album内容表示で複数のDate(年)/Genreがあるときの表示方法を変更
     Header:Date(年)/Genre/Codecを数個表示
     Detail:Date(年)/Genreを表示(常に表示に加えた)
     RollOver:Date(年)/Genreを数個表示
 6. mpdartlist.phpを使用にあたりmpdconfig.xmlの設定を一部拡張
     XML設定ファイル:<Additional_Func> $SelfURL$ を $B64:SelfURL$(自身URLをBase64Encode) も設定可能にした。
 7. mpdartlist.phpを使用にあたりmpdconfig.xmlの設定を一部拡張
     XML設定ファイル:<Additional_Func> $SelfURL$ を $B64:SelfURL$(自身URLをBase64Encode) も設定可能にした。
 8. NowMusic画面でArtImageクリック機能を追加した
     XML設定ファイル:<Extend_Link><image>を設定可能にした。書式は他同様に加えJspを記述できる
     未設定時は旧来の動作。配信時デフォルト設定は、画像クリックでUnloadする。
 9. AlbumArt設定方法を追加。mpdartlist.phpで改造した関数を使用した。
     関数自体の機能は増えているが、関数を使用するとき有効な機能を実装した。
     設定で、アスペクトをオリジナルで表示する設定を追加。注意は表示領域内に納めるのでエリアに余白が生じる。(設定XMLファイルではコメントにしている)
     XML設定ファイル:<DispImage><ImageRatio_{Func}>{RatieMin},{RatieMax},{Size},{correct(補正率)|noclip|aspect}
     correct(補正率)|aspectを設定すると画像ファイルから取得するので明細行など件数が多くなる部分では使用しないことが望ましい。
10. mpd動作 localhostの判定で定数定義の誤りを修正。

※mpdartlist.php/mpdclock.phpは参考版なので修正履歴はなし
現在の問題点
・mpdclock.php:Windowsで使用時、標準のフォントサイズを変えているとき、Clockのフレームにスクロールバーがでる。設定で修正することはできる。

2018年10月18日木曜日

mpdweb 1.29 修正/設定変更....

2018-10-13:Ver1.29 修正/設定変更....
今回のバージョンアップは、外部モジュールと連携に対して、起動方法の追加と調整とイメージなど共通ルーチンとしたい部分をバージョンアップためmpdwebにも反映が主となっている。
1. Search機能 AlbumのFunctionで「Add This Search」/「Add and replace」/「Add and replace and play」の単位をQueryからAlbumにした。
   今まではQuery(Input条件)を含めていたが、対象がAlbumなので修正。List時は従来同様
    XML設定ファイル:<Additional_Func><SearchAlbum>
       パラメータを変更し修正機能と同じにした。従来の機能をコメントとして残す
2. <html lang=ja>が固定となっていたので設定できるように修正
   XML設定ファイル:<Html_config><lang>jp</lang>
3. Album Art表示の関数を強化した。現在作成中のディレクトリのイメージファイル表示での仕様を取り入れた。
   各Album Artは、ほとんどがサムネイル的な表示なので、正方形として1:1で表示することを基本にしている。
   ・速度の点で使用するかになるが、正方形でない(設定で比率範囲外)と判断した場合、縦横比をキープし、クリップできるようにした。
    各機能ヘッダに表示する場合は気休め程度にはなる。
   ・NowMusicディテール部の設定はヘッダと共通にしていたが分離した。
   ・画面が崩れるような設定でもプログラム中でFixモードを内部的に設けた。
      NowMusicの外部起動設定の画像表示、Album内容、File機能Musicヘッダ以外は、強制的にイメージサイズを固定してる。
      固定したことで縦横比をオリジナル表示にはできなくした。(クリップし縦横比をオリジナルにすることは可能)
   ・NowMusicの外部起動設定の画像表示Album内容、File機能Musicヘッダの画像表示は、縦横比をオリジナルにしてもボタン位置が正常に配置できるようになった。
      XML設定ファイル:<DispImage><ImageRatio>0.80,1.13,{correct} :correctクリップ時の比率を新設(縦横比をオリジナルを崩す比率)
      <ImageRatio_Current_detail>NowMusicディテール部の設定を新設
      ※配布用XML設定ファイル<DispImage>は今回用に張り替えて使用が望ましい。
4. Album内容表示,File機能ミュージックファイルヘッダのボタン下の背景色を半透明にした。
5. NowMusicの外部起動設定の変数設定を増やした。
      XML設定ファイル:<Extend_Link>変数追加
          %dirname% : MusicFileのDirectory
          %SelfURL% : 自URLL (urlencode済:URLパラメータで使用し戻りを渡す前提)
          <href>{URL},urlencode|"",{Name} <Link>同様 : 同じウィンドウタブに表示
          <frame>{URL} position={position} style={style} position:表示位置 ,urlencode|"",{Name} : (疑似)Frame表示
          <Link>{URL},urlencode|"",{Name}            : 別ウィンドウタブに表示Closeで閉じる
          ※ <Extend_Link>と<Additional_Func>で若干設定方法が異なることに注意
          <Extend_Link>はPostで再生ポイントをトレース&外部情報にリンク、またスライドショー的に使うことに対し
          <Additional_Func>は機能追加に使用する目的となっている。
6. Add Function機能に変数設定を増やした。Album内容、File機能ヘッダにボタンを追加設定できるようにした。
       XML設定ファイル:<Additional_Func>変数追加
          $SelfURL$     : 自URL (urlencode済:URLパラメータで使用し戻りを渡す前提)
          %dirname%     : MusicFileのDirectory(Find)
          <Find_Hd>     : Album内容表示のヘッダ部上段ボタン
          <File_Hd>     : File機能ヘッダヘッダ部ボタン
           <File_AlbumHd>: File機能ミュージックヘッダ部上段ボタン
          ※作成中のディレクトリー内画像ファイル表示にリンクするポイントを確保のため。
7. Album内容機能からList機能に戻るときポジショニングできなかったので修正
8. Album内容機能のヘッダにRoolOverを追加
9. 有効な設定でテストモジュール名となっていた行を修正
          XML設定ファイル:<Additional_Func><CommonPL>Clear onclick=RequestByPost($SERVERMD$...にした
10. Test版となるが追加モジュール
    ・mpdartlist.php : Directory Art List : 画像ファイル表示として作成中
    ・mpdclock.php   : Digital Clock      : Frame起動のテスト用に作成
11. 配布設定での注意
    Album内容/File機能でArtをクリック時,ArtList mpdartlist.php : Directory Art Listに移行
            また各局面で画像ファイルを表示したい局面でも起動可能にしている。
    NowMusicでmpdclock.phpを起動可能にしている。

2018年9月13日木曜日

mpdweb 1.28 追加機能/修正/設定変更....

1. 共通FunctionにPHPに割り当てMemoryを表示
2. MPD D/B Update中にUpdateするとTimeoutを待ってしまうのを修正
   XML設定ファイル:<Mpd_Update><Para>ignoreでなければ、即終了。 ignore時は強制更新(Update 複数Task)
    ※sync:同期モードは完了を待つが、現プログラムは強制的にsyncにならなくしている。
3. File/DirectoryからのMPD D/B Update設定を別にした。
    短時間また、連続してUpdateを想定し'ignore'をディフォルトにする。
    UpdateしていないときもUpdateされるかも知れないので監視する。
    XML設定ファイル:<Mpd_Update><Para_File>ignore</Para_File>  : File機能でMpd D/B Update時のパラメータ
         <DISP_Config><DispUpdate>on</DispUpdate>   : HeaderにMpd D/B Updateを表示するかの設定
        <JS_Watch><Watch_UpdateIdol>60</Watch_UpdateIdol> : HeaderにMpd D/B Updateを表示する場合のUpdateしていないときの監視時間
    ※監視は避けたいが、Shared Memoryを使用する場合、クリアタイミングを作成しておく。
    UpdateしていないときEventが発生しないので監視時間を設定する
4. MPD D/B Update表示のブリンク方法を変更
    Tag<marquee>は廃止仕様ということなので style:animation にした見え方が若干変わったが機種による違いが目立たなくなった。
    5. File表示で次階層がMusicデータないかチェックを設定でしない設定を許可した。(レスポンス改善となる)
    設定を生かすと空のディレクトリも表示される。
    XML設定ファイル:<LibConf><Lsinfo_Class>off|on (on:チェック、ディフォルト off:はチェックしないので早い)
6. 配布用設定ファイルList機能からAlbumを削除した。(Album一覧は人により、かなりな量になるため)
    XML設定ファイル:<DISP_Config><List_Comb>Artist,AlbumArtist,Date,Genre</List_Comb>
7. Playlist機能Detailsの初期表示:PlayList内で指定Music個数を超えたとき強制ArtOff (AlbumArt表示が多量になると遅いため)
    XML設定ファイル:<DISP_Config><Playlist_Force>
8. 引数なしでNowPlay機能を起動したとき、Album/List(Art)を初期設定値(<Current>list</Current>)にする。
    XML設定ファイル:<Current_First>{on|off}</Current_First>
    ※「7.Playlist機能Detailsの初期表示」同様AlbumArtが多数のとき、起動に時間がかかるので救済処置
9. 配布用設定ファイルAlbumArtの設定を変更XML設定ファイル:<Album_art><path>http://localhost/Music</path>→<path>http://volumio.local:88/Music</path>
    localhoat"に設定時,php実行サーバとPortに付け替えるので変更せずに使用できるケースが多いと判断。
    環境に合わなければ元の設定をコメントアウトしているので戻すか設定を行うようにして下さい。
10. PlayPanelのJump機能を変更。
    Artistをクリック時,Rollover表示→再生ArtistのAlbum表示にJump(同じArtistはJumpしない)
    下段Album/Titleクリック        →再生情報のRollover表示
11. 表示用日付の編集でTimeZoneを使用していなかったので設定できるようにした。"Asia/Tokyo"を固定で使用していた。
    XML設定ファイル:<LibConf><TimeZone>Asia/Tokyo</TimeZone>を追加。
12. 再生Playlistがなく「Common Function」「PlayPenel」Onの状態で各機能画面を表示し,PlayPenel」Offにするとディティールが消える不具合を修正
13. Playlist画面ListのAdd Function機能変更。未設定時,「Add」ボタンを表示していたのを止めた。
    未設定時,ボタンなしを有効にしたかったので初期表示を変更した。(最も軽いのを初期とした)
    XML設定ファイル:<Additional_Func><!--<Playlist>Add.. >--> の設定が今まで同様の設定。
14. File画面HeaderのAdd Function機能変更。未設定時,「Add」ボタンを表示していたのを止めた。
    未設定時,ボタンなしを有効にしたかったので初期表示を変更した。デザイン的にDispFileMusicHeaderと同時表示はないので未設定時、非表示にした。
    XML設定ファイル:<Additional_Func><File></File>.. の設定をしなくも良い
15. Playlist画面ListのDetailボタン表示機能を変更した。更新日時順"Modifi"を追加、タグ表示と切り替えることができる。
    XML設定ファイル:<Playlist_detail>,detail,modifi</Playlist_detail>
16. File画面のDetailボタン表示機能にモードを追加した。File表示時、dtlmod:更新日時(Sortなし)、Musicタグなし
    XML設定ファイル:<DISP_Config><File_detail>,detail,dtlmod,modifi,moddtl</File_detail>と拡張した。
17. mpd D/B Update完了後 NowPlay画面以外で "NeNew"ボタンを表示
    XML設定ファイル:<Mpd_Update><EndDisp>on|off</EndDisp><EndDisp_Current>on</EndDisp_Current>
18. Sesion_idの取得方法を変更した。(前版までは,設定があったが使用していなかった:ロジック都合より)
    変数による設定を行うようにした。%MpdHost%:MPD Host ,  %PHPHost%;PHP Server , %Client%:Reqest Client
    History,各Function(Album/Detail/Art)などをSessionで管理しているが名称を設定する際にバリエーションを可能にした。
    Mpd Serverごと/WebServer(PHP)ごと/クライアントで個別に設定できる。
    MusicData Serverが同一時または個別などでの使用を考えて考慮。
    XML設定ファイル:<php_session><sesion_id>mpdweb-%MpdHost%
19. Statusの表示方法変更。先頭を大文字にした。"play"→"Play","stop"→"Stop"....
    mpdから受信した文字列を直接表示していたが,Jspで判断するとき大文字小文字の区別をしないようにした。(スペルを変えなければOK)
20. 関数名を整理のため変更した。
    edit_albumart→mpd_editalbumart
    edit_music   →mpd_editmusic
    editstatus   →mpd_editstatus
        mpd I/Fでのみ使用できるため mpdの支援Libraryの位置づけとした。
21. Shared Memoryを使用しmpdに対する参照要求について再度要求を抑制できるようにした。
    共通Functionに「Cash Clear(Shared Memory)」を追加した。(Shared Memory有効時に選択できる)
    XML設定ファイル:<Shm_Project><Used>on</Used>
    List機能    :<List>1,/tmp,20000,43200,gzcompress,gzuncompress,9</List>
    AlbumArt参照:<Art> 2,/tmp,20000,43200,gzcompress,gzuncompress,9</Art>
    File機能    :<File>3,/tmp,20000,43200,gzcompress,gzuncompress,9</File>
    Mpd I/F機能 :<Cmd> 4,/tmp,20000,43200,gzcompress,gzuncompress,9</Cmd>
    List対象    :<ListTarget>Artist,AlbumArtist,Date,Genre</ListTarget>
    Mpd I/F対象 :<CmdTarget>list,find</CmdTarget>
    Mpd I/F除外 :<CmdExclude>list "Artist",list "AlbumArtist",list "Date",list "Genre"</CmdExclude>
    有効期限(最終参照時からの期限)までか、Updateされるまで有効。
    今回の大きい改修となる。2つの効果を期待している。
    Updateまで変わらない要求、同じ要求に対してを速度Up
    mpdに対すての負荷軽減。
    但し、phpのShared Memoryは意外と遅い。(Memory速度のRasPi2では速度Upが期待できる。)
    Mpd D/B UpdeteでShared MemoryをClearするが、他タスク,他システムでMpd D/B Updeteした場合に反映ケースがある。
    Clientからアクセス時に監視(デフォルト30秒)しているので、本早く終了した場合アクセスしていない場合は反映しない。
        手動でShared MemoryをClearするか有効期限でClearするかが必要となる。
        モジュール名に対してSharedMemoryのIDが生成されるのでモジュール名を変更した場合は手動で削除する
22. モジュールをライブラリと分けた。(今回から追加の「Module.txt」参照)
    SharedMemory未使用時は従来のモジュールをライブラリとしている。
    SharedMemory対応ライブラリも未使用設定も対応しているあが通過判定が少ないための対応としている。
    ※Ver1.27版まで機能を追加したので本版では各部をブラッシュアップした。
        ブラッシュアップ&Shared Memory使用版となったのでモジュールを分けた(Module.txt参照)
        PlaylistはShared Memory対応となっていないが考案中
        (もし対応の場合Playlist編集などで,対象のShared MemoryをClearするので効果は少ない?)
    が、本版の最終形と考える。

2018年7月3日火曜日

mpdweb 1.27 機能追加&修正

2018-07-01:Ver1.27 追加機能/修正/設定変更....
1.PlayPanelにCommonPanel Playlistを作成 List/File/Playlist/SearchでPlaypanel Status/Postionをクリックで起動する。
  XML設定ファイル:<DISP_Config><CmnPalelPL_Position>offを新設。設定がない場合のデフォルト on
  <Additional_Func><CommonPL>で拡張設定
  Post復帰後、Jsの関数を実行できるようにした。(セキュリティ的には良くないがローカル使用なので)
  これにより、
  Js内で通常のCallback&Post完了後のCallback(JsでのユーザI/F用)/PHPからのPost完了後Callback(定型処理) (初期作成モード)
  Post時目的の処理後、&cdで連続しPHP Callback(復帰し再ポストしなくてもCallbackできるのでレスポンスの短縮モード)
  Post時目的の処理後、表示処理後、HTML送信後、Js関数を実行することで待ち合わせなしで関数実行する。
  が用意できたことになる。
2.PlayPanelにCommonPanel Playlistを作成したことに伴い、NowMusicのPlaylistにAdd(追加)時もPlaylistを表示するための変更をした。
  XML設定ファイル:<Album_inf><Additional_Func>でPostPlAdd(Addを使用している場合、Callback「AddCB」を新設したため同設定を入れ替えた。
  ※ Callback名を統一していると変更時に対応し易いので合わせるようにする。
3.各機能に配置したAddボタンの機能にAlbum内容に追加。設定により、1曲のみ再生が可能になるのでより簡単に使用する設定ができる。
  XML設定ファイル:<Additional_Func><FildDtl>
  ※File機能ディテール、Playlist機能ディテール以外は実装した。この機能についてはなくても良いと考えている。
4.Search機能で、ディテールの最終位置を検出しているJsを変更した
  CurrentScrollStop()→RequestScrollStop()にすることで、CurrentScrollStop()をNowMusic専用にしロードモジュールを制限した。
5.File機能に追加/修正。使用感から修正
  ・ディレクトリ表示もファイル同様"Detaile"時、Last-Modified(最終更新日時)を表示
   FilePathのRolloverをディレクトリ切り替え後も継続する。Rolloverクリックでオフまで有効。
  ・File階層時のAlbumArtをディレクトリ時のAlbumArtと分けた
   XML設定ファイル:<DISP_Config><File_DtlArt>on|off(ディフォルト)
      <File_Interlock>on</File_Interlock> DispFileのArt ON連動モード: off|on ArtON時DtlArtもONにする
6. Album画面に「Info.」ボタンの設定を変更した。info:表示 no:非表示 none:なし
  XML設定ファイル:<DISP_Config><Album_info>info</Album_info>を追加
7. File画面に「Info.」ボタンの設定を追加した。info:表示 no:非表示 none:なし
  XML設定ファイル:<DISP_Config><File_info>info</File_info>を追加
8. File画面にAddボタンを機能拡張用としてレベルアップした
  変更、XML設定ファイル:<Additional_Func><File></File>と設定した場合ファイルヘッダから該当ボタンを表示しない。
  追加、XML設定ファイル:<Additional_Func> <File_Dir>:ディレクトリラインに機能追加
  <File_Dtl>:ファイルラインに機能追加 <File_Album>:ファイルラインヘッダに機能追加
9. File画面のDetailボタン表示機能を変更した。更新日時順"Modifi"を追加、タグ表示と切り替えることができる。
  XML設定ファイル:<DISP_Config><File_detail>,detail,modifi,moddtl</File_detail>と拡張した。
  切り替え順と、必要なボタンを設定する。
10. <Additional_Func>で$DefaultArtist$が変換しないので修正した。
11. ソート指定にディセンディングを可能にした。指定は{Filed:d|D|a|A} d,D:ディセンディング d,A省略:アセンディング
  ロジック追加において,ロジックを共通化したため設定が各所で同じ書式となった。
  XML設定ファイル:<Album_inf><Artist>%{[0]:filed}%書式:%Enc:{filed}{:A|D}%,%B64:{filed}{:A|D}% A|D:Sort方向
  追加:<Sort_Base><Sort_FieldMode>
  <Sort_Base><FieldLength>
  <Sort_List><{filed}>
  <Sort_Lsinfo><{Playlist|Directory}>
  <DISP_Config><Search_Combo>{Filed}{:}{A|D}</Search_Combo>
12. NowMusicストリーミング時の表示方法を変更。AlbumArt部にタイトルが表示できる場合に表示。
13. デバック用 TblDumpをテスト時見やすいように改善した。
14. CommonPanel Playlist、HistoryBoxでスクロールバーを非表示の設定をできるようにした。
  <Style_config><Scrollbar>off<Scrollbar>
  PC版のスクロールバーで行が崩れるのと情報が減るため。PCでは矢印キー、スクロールバー以外でマウスでの操作は可能。
  タブレットの操作は変わらない。
  方法を考案中。
  V1.27機能アップの概要
    Sortの全機能追加(作成当初は最低ロジックで作成したため)
    次期に向けての追加を全機能に追加した。(<Additional_Func>への対応)
    今後外部モジュールへのリンクもこの機能で対応する予定。