約 6,544,463 件
https://w.atwiki.jp/ddr_dp/pages/2256.html
Private Eye(楽) 曲名 アーティスト フォルダ 難易度 BPM NOTES/FA(SA) その他 Private Eye atomsoak ft. cerol X3 楽6 160 173 / 9 STREAM VOLTAGE AIR FREEZE CHAOS 33 26 10 53 0 楽譜面(6) / 踊譜面(8) / 激譜面(12) / 鬼譜面(-) 属性 地団駄 譜面 http //eba502.web.fc2.com/fumen/ddr/x3/priv_eye_8b.html 譜面動画 https //www.youtube.com/watch?v=cCx9pj5Bt0Q (x?.?, オプション不明) 解説 4分はかなり長いが、地団駄や渡りなど交互に踏みやすいX3らしい傾向が垣間見える -- 名無しさん (2016-07-23 20 38 24) 名前 コメント コメント(私的なことや感想はこちら) 名前 コメント
https://w.atwiki.jp/natsutan/pages/65.html
概要 インタープリターのトレース用 tcl/generic/tclInt.h メンバー struct ActiveInterpTrace *nextPtr; 次のアクティブコマンドトレースへのポインタ Trace *nextTracePtr; このトレースが終わった時、次にチェックする手続き int reverseScan;逆順の時true ソース /* * When an interpreter trace is active (i.e. its associated procedure is * executing), one of the following structures is linked into a list * associated with the interpreter. The information in the structure is needed * in order for Tcl to behave reasonably if traces are deleted while traces * are active. */ typedef struct ActiveInterpTrace { struct ActiveInterpTrace *nextPtr; /* Next in list of all active command traces * for the interpreter, or NULL if no more. */ Trace *nextTracePtr;/* Next trace to check after current trace * procedure returns; if this trace gets * deleted, must update pointer to avoid using * free d memory. */ int reverseScan;/* Boolean set true when traces are scanning * in reverse order. */ } ActiveInterpTrace;
https://w.atwiki.jp/diavo/pages/69.html
五十音順に並べています ver0.14で一部の装備DISCのBGMが変更 また17日のBGM変更マイナーチェンジ版から一部の装備DISCに新しいBGMが追加された。 装備した時、旧か新のどちらかがランダムで流れる。 BGMが二つあるDISCは、装備した時にどちらかの曲がランダムに流れる。 ver0.14以降のBGM ver0.14追加BGM 変更されたBGM ver0.13以前のBGM ファイル名 このページに関する情報・意見 ver0.14以降のBGM 名称(登場部) BGM T・O・T・B ワン(7部) Outkast - Tomb of the Boom チューブラー・ベルズ(7部) Mike Oldfield - Tubular Bells, Part 1 マンダム(7部) Willie Nelson - On the Road Again TATOO YOU!(7部) The Rolling Stones - Start Me Up(album[Tattoo You]) The Rolling Stones - Waiting on a Friend(album[Tattoo You]) チョコレイト・ディスコ(7部) Perfume - チョコレイト・ディスコ ?(緑の赤んぼう)(6部)(~2013年1/18ver)GGG・オブ・ホーム(6部)(2013年9/26ver~) YES - Awaken(~2013年1/18ver)Tom Jones - Green Green Grass of Home(2013年9/26ver~?) D4C(7部) AC/DC - Dirty Deeds Done Dirt Cheap ボールブレイカー&スキャン(7部) AC/DC - Ballbreaker パッショーネ(5部) Chris Rea/Shirley Bassey - Disco La Passione スケアリー・モンスターズ(7部) David Bowie - Ashes To Ashes(albam[Scary Monsters]) オー!ロンサム・ミー(7部) Don Gibson - Oh, Lonesome Me シビル・ウォー(7部) Guns N Roses - Civil War クリーム・スターター(7部) James Brown - Hot Pants スカイ・ハイ(6部) Jigsaw - Sky High リトル・フィート(5部) Little Feat - Willin イン・ア・サイレント・ウェイ(7部) Metallica - Enter Sandman 屋敷幽霊(-部) Queen - We Are The Champions C・ザ・レインボー(7部) Rainbow - Catch The Rainbow ラット(4部) Ratt - Round And Round ソフト・マシーン(5部) Soft Machine - Facelift 20th Century Boy(7部) T.Rex - 20th Century Boy B・D・ザ・ハウス(6部) Talking Heads - Burning Down the House バー(-部) Terence Trent D Arby - Sign Your Name C-MOON(6部) Paul McCartney Wings - C MOON サン(3部) Fats Domino - The Fat Man ソフト&ウェット(8部未実装) Prince - Soft and Wet ver0.14追加BGM 名称(登場部) BGM ダークブルームーン(3部) Captain Tennille - The Way I Want To Touch You アヌビス神(3部) Chaka Khan - I Feel For You クリーム(3部) Cream - Sunshine of Your Love タスク(act1/2/3)(7部) Fleetwood Mac - Tusk ザ・フール(3部) Iggy Pop - Real Wild Child ストーン・フリー(6部) Jimi Hendrix Experience - Stone Free キッス(6部) Kiss - Rock and Roll All Nite マンハッタントランスファー(6部) Manhattan Transfar - Tuxedo Junction メタリカ(5部) Metallica - Master of Puppets ムーディーブルース(5部) Moody Blues - The Story In Your Eyes オアシス(5部) Oasis - Whatever マジシャンズレッド(3部) Paula Abdul - Blowing kisses In The Wind ホルス神(3部) Petshop Boys - New York City Boy チリペッパー(4部) Red Hot Chili Peppers - By The Way クラッシュ(5部) The Clash - Should I Stay or Should I Go グレイトフル・デッド(5部) The Greateful Dead - Truckin スティッキーフィンガーズ(5部) The Rolling Stones - Wild Horses(album[Sticky Fingers]) ヘビー・ウェザー(6部) Weather Report - Palladium(albam[HEAVY WEATHER]) ホワイトスネイク(6部) White Snake - Is This Love 変更されたBGM 名称(登場部) BGM ザ・ワールド(3部/7部) DIO - I Speed At Night 亀の中(5部) Mr.President - Coco Jamboo エコーズACT2(4部) Police - Can t Stand Losing You スタープラチナ(3部/4部/6部){スタプラザワールド(3部/4部/6部){ケープ・カナベラル(6部) Ralph Rainger - If I should lose you ver0.13以前のBGM 名称(登場部) BGM ハイウェイ・トゥ・ヘル(6部) AC/DC - Highway to Hell エアロスミス(5部) Aerosmith - Walk This Way レストラン・トラサルディー(4部) Bach - Italian Concert 1st Movement バッド・カンパニー・ハウス(4部) Bad Company - Bad Company 成長したペッシ(5部) Beach Boys - Good Vibrations ペッシ(5部) Beach Boys - Surfin USA END2(-部) Ben E.King - Stand By Me ボーイⅡマン(4部) BoyzⅡMen - End of the Road ダークブルームーン(3部) Captain Tennille - Love Will Keep Us Together アヌビス神(3部) Chaka kahn - Ain t Nobody チープ・トリック(4部) Cheap Trick - Dream Police タスク(act1/2/3)(7部) Chuck Berry - Johnny B.Goode シンデレラ(4部) Cinderella - Gypsy Road クリーム(3部) Cream - Crossroads スーパーフライ(4部) Curtis Mayfield - Superfly ハイウェイ・スター(4部){モンスターハウス(-部) Deep Purple - Highway Star ハイウェイスター・ルーム(4部) Deep Purple - Speed King エボニー・デビル(3部) Devo - Beautiful World ストーン・フリー(6部) Dolly Parton - Jolene タワー・オブ・グレー(3部) Eagles - Desperado ヴェネチアホテル(5部) Eagles - Hotel California エンヤホテル(3部) Enya - Orinoco Flow フーファイターズ(6部) Foo Fighters - Everlong ヘブンズドアー(4部) Bob Dylan - Knocking on Heavens Door エンペラー(3部) Hall and Oates - Kiss on my List プッチ神父(6部) Handel - Messiah ザ・フール(3部){イギー(3部) Iggy Pop - The Passengers パープル・ヘイズ(5部) JIMI HENDRIX - Purple Haze ダンジョンデフォルト(-部) King Crimson - 21st Century Schizoid Man エピタフ(5部){To Be Continued(-部) King Crimson - Epitaph キング・クリムゾン(5部) King Crimson - RED タイトル(-部) King Crimson - The Court Of The Crimson King キッス(6部) Kiss - Detroit Rock City クラフトワーク(5部) Kraftwerk - The Model ドラゴンズドリーム(6部) Lalo Schifrin - Enter the Dragon ツェペリさん(1部) Led Zeppelin - Kashmir メイド・イン・ヘブン(6部) Led Zeppelin - Stairway to Heaven END1(-部) Louis Armstrong - What a Wonderful World 水族館(6部) Madonna - Like a Virgin マンハッタントランスファー(6部) Manhattan Transfer - Boy from New York City メタリカ(5部) Metallica - ATTITUDE マン・イン・ザ・ミラー(5部) Michael Jackson - Man in the Mirror シルバーチャリオッツ(3部/5部) Michel Polnareff - Tout tout pour ma cherie ムーディーブルース(5部) Moody Blues - I Know You re Out There Somewhere ハーヴェスト(4部) Neil Young - Heart of Gold(albam[HARVEST]) エンプレス(3部) Nena - 99 Luftballons オアシス(5部) Oasis - Wonderwall マジシャンズレッド(3部) Paula Abdul - Forever Your Girl パール・ジャム(4部) Pearl Jam - Alive ホルス神(3部) Petshop Boys - West End Girls 吉良屋敷(4部) Pink Floyd - Atom Heart Mother エコーズACT3(4部/5部) Pink Floyd - Echoes クレイジー・D(4部) Pink Floyd - Shine on You Crazy Diamond Part 1 エコーズACT1/2(4部) Police - Roxanne 杜王町ハウス(4部) Prince - 1999 G・エクスペリエンス(5部){G・E・レクイエム(5部){黄金の風(5部) Prince - Gold(album[Gold Experience]) バイツァ・ダスト(4部) Queen - Another One Bite the Dust ボヘミアンラプソディ(6部){自由人の狂想曲(6部) Queen - Bohemian Rhapsody キラー・クィーン(4部){キラータイガークイーン(4部) Queen - Killer Queen シアーハートアタック(4部) Queen - Sheer Heart Attack ザ・ワールド(3部/7部) Rainbow - Street of Dreams チリペッパー(4部) Red Hot Chili Peppers - Give It Away スピードワゴン(1部) REO Speedwagon - Keep on Lovin You セックスピストルズ(5部) Sex Pistols - Anarchy in the UK スパイスガール(5部) Spice Girls - Wannabe ラバーズ(3部) Steely Dan - Babylon Sisters ハイエロファントグリーン(3部) Sting - English Man In New York ハイエロファントエメラルド(3部) Sting - Shape Of My Heart ストレイ・キャット(4部) Stray Cats - Stray Cat Strut サバイバー(6部) Survivor - Eye of the Tiger 亀の中(5部) T.Rex - 20th Century Boy ザ・ハンド(4部) The Band - The Night They Drove Old Dixie Down ハーミットパープル(3部/4部){スタープラチナ(3部/4部/6部){スタプラザワールド(3部/4部/6部) The Beatles - Get Back イエローテンパランス(3部) The Beatles - Girl(album[RUBBER SOUL]) デス13(3部) The Beatles - Good Night ホワイトアルバム(5部) The Beatles - While My Guiter Gently Weeps クラッシュ(5部) The Clash - Rock The Casbah グレイトフル・デッド(5部) The Greatful Dead - Dark Star ファイトクラブ(6部) The Pixies - Where Is My Mind スティッキーフィンガーズ(5部) The Rolling Stones - Brown Sugar ジャンピンJフラッシュ(6部) The Rolling Stones - Jumpin Jack Flash ダイバーダウン(6部) Van Halen - Pretty Woman(album[DIVER DOWN]) ウェザーリポート(6部){ヘビー・ウェザー(6部) Weather Report - BirdlandWeather Report - Birdland(albam[HEAVY WEATHER]) ホワイトスネイク(6部) White Snake - Love Ain t No Stranger ファイル名 BGMに使用できるファイル名は次の通り。 ファイル名 アーティスト 曲名 0.mid King Crimson 21st Century Schizoid Man 0_2.mid Queen We Are The Champions 099.mid King Crimson RED 100.mid Ralph Rainger If I should lose you 101.mid Michel Polnareff Tout tout pour ma cherie 102.mid King Crimson The court of the Crimson King 103.mid Pink Floyd Echoes 104.mid The Band The Night They Drove Old Dixie Down 105.mid Red Hot Chili Peppers Give It Away 105_2.mid Red Hot Chili Peppers By The Way 106.mid Pink Floyd Shine on You Crazy Diamond 107.mid The Beatles Good Night 108.mid The Rolling Stones Brown Sugar (album[Sticky Fingers]) 108_2.mid The Rolling Stones Wild Horses (album[Sticky Fingers]) 109.mid Paula Abdul Forever Your Girl 109_2.mid Paula Abdul Blowing Kisses In The Wind 111.mid DIO I Speed At Night 112.mid Queen Killer Queen 113.mid The Clash Rock The Casbah 113_2.mid The Clash Should I Stay or Should I Go 114.mid White Snake Love Aint No Stranger 114_2.mid White Snake Is This Love 115.mid Prince Gold (album[Gold Experience]) 116.mid The Beatles Get Back 117.mid Captain Tennille Love Will Keep Us Together 117_2.mid Captain Tennille The Way I Want To Touch You 118.mid Van Halen Pretty Woman (album[DIVER DOWN]) 119.mid Spice Girls Wannabe 120.mid Dolly Parton Jolene 120_2.mid Jimi Hendrix Experience Stone Free 121.mid JIMI HENDRIX Purple Haze 122.mid Chaka Khan Aint Nobody 122_2.mid Chaka Khan I Feel for You 123.mid Cream Crossroads 123_2.mid Cream Sunshine of Your Love 124.mid Moody Blues I Know Your Out There Somewhere 124_2.mid Moody Blues The Story in Your Eyes 125.mid Little Feat Willin 126.mid Wings C MOON 127.mid Jigsaw Sky High(~2013年12/7ver) Outkast Tomb of the Boom(2014年1/24ver~) 128.mid James Brown Hot Pants 129.mid Rainbow Catch The Rainbow 130.mid Guns N Roses Civil War 131.mid Metallica Enter Sandman 132.mid AC/DC Dirty Deeds Done Dirt Cheap 133.mid David Bowie Ashes To Ashes(album [Scary Monsters]) 134.mid Perfume チョコレイト・ディスコ 135.mid Don Gibson OH, Lonesome Me 136.mid AC/DC Ballbreaker 137.mid The Rolling Stones Start Me Up(album[Tattoo You]) 137_2.mid The Rolling Stones Waiting on a Friend(album[Tattoo You]) 138.mid Willie Nelson On the Road Again 139.mid Yes Awaken(~2013年1/18ver) Tom Jones Green Green Grass of Home(2013年9/26ver~?) 142.mid Prince Soft and Wet 143.mid Fats Domino The Fat Man 200.mid Curtis Mayfield Superfly 201.mid The Beatles Girl (album[RUBBER SOUL]) 202.mid The Beatles While My Guiter Gentry Weeps 203.mid Iggy Pop The Passengers 203_2.mid Iggy Pop Real Wild Child 204.mid Queen Sheer Heart Attack 205.mid Kraftwerk The Model 206.mid OASIS Whatever 206_2.mid OASIS Wonderwall 207.mid The Grateful Dead Dark Star 207_2.mid The Grateful Dead Truckin 208.mid T.Rex 20th Century Boy 300.mid Pearl jam Alive 301.mid Neil Young Heart of Gold (album[HARVEST]) 302.mid AC/DC Highway To Hell 303.mid Lalo Schifrin Enter the Dragon 304.mid Weather Report Teen Town 305.mid Cinderella Gypsyroad 306.mid Manhattan Transfer Boy from NewYork City 306_2.mid Manhattan Transfer Tuxedo Junction 308.mid Devo Beautiful World 309.mid Soft Machine Facelift 310.mid Nena 99 luftballons 310_2.mid Nena 99 luftballons 311.mid Cheap Trick Dream Police 312.mid Aerosmith Walk This Way 313.mid Deep Purple Highway Star 314.mid Stray Cats Stray Cat Strut 315.mid King Crimson Epitaph 316.mid Survivor Eye of the Tiger 317.mid Kiss Detroit Rock City 317_2.mid Kiss Rock and Roll All Nite 318.mid The Rolling Stones Jumpin Jack Flash 319.mid BoyzⅡMen End of the Road 320.mid Metallica ATTITUDE 320_2.mid Metallica Master of Puppets 321.mid Talking Heads Burning Down The House 395.mid Queen Another One Bite the Dust 396.mid Led Zeppelin Stairway To Heaven 397.mid Weather Report Birdland (album[HEAVY WEATHER]) 397_2.mid Weather Report Palladium (album[HEAVY WEATHER]) 400.mid Sting English Man In New York 401.mid Foo Fighters Everlong 402.mid Hall and Oates Kiss on my List 403.mid Sex Pistols Anarchy in the UK 404.mid Pet Shop Boys West End Girls 404_2.mid Pet Shop Boys New York City Boy 405.mid Police Can t Stand Losing You 406.mid Police Roxanne 407.mid Sting Shape of My Heart 408.mid Michael Jackson Man in the Mirror 409.mid Steely Dan Babylon Sisters 410.mid Ratt Round And Round 411.mid Eagles Desperado 412.mid Bob Dylan Knocking on Heavens Door 413.mid Jigsaw Sky High 414.mid Chuck Berry Johnny B. Goode 415.mid Fleetwood Mac Tusk 417.mid Mike Oldfield Tubular Bells, Part 1 973.mid SOUL d OUT VOODOO KINGDOM 974.mid Elvis Presley Jailhouse Rock 975.mid Chris Rea/Shirley Bassey Disco La Passione 976.mid Terence Trent D Arby Sign Your Name 978.mid Pink Floyd Atom Heart Mother 980.mid The Pixies Where Is My Mind 981.mid Madonna Like a Virgin 985.mid Deep Purple Speed King 986.mid ENYA Orinoco Flow 987.mid Bach Italian Concert 1st Movement 988.mid Eagles Hotel California 989.mid Mr.President Coco Jamboo 990.mid Queen Bohemian Rhapsody 991.mid Beach Boys Surfin USA 992.mid Beach Boys Good Vibrations 993.mid REO Speedwagon Keep On Loving You 994.mid Led Zeppelin Kashmir 995.mid Handel Messiah 996.mid Prince 1999 997.mid Ben E King Stand by Me 998.mid Bad Company Bad Company 999.mid Louis Armstrong What a Wonderful World このページに関する情報・意見 吉良屋敷なくね? - 名無しさん 2012-04-16 03 26 21 リトルフィートもないです - 名無しさん 2012-04-30 11 22 19 ↑↑、↑ 吉良屋敷とリトルフィートの曲名およびバンド名わかりますか? - 名無しさん 2012-05-04 08 54 33 ↑ 追加しておきました。間違い等があったら修正お願いします。 - 名無しさん 2012-07-09 01 01 55 aint nobodyが流れるときに早送りになったんだが仕様? - 名無しさん 2012-07-17 22 37 33 オアシス装備したときにwanderwallとwhateverが流れたんだけどランダムなのかな? - 名無しさん 2013-03-28 18 11 16 BGMが二つあるDISCは、装備した時にランダムでどちらかの曲がかかります。 - 名無しさん 2013-03-31 23 08 59 Queen Another One Bite the Dust - 名無しさん 2013-10-23 17 01 27 じゃなくてQueen Another One Bite『s』 the Dustですね。s抜けてる。 - 名無しさん 2013-10-23 17 03 47 TOTBワンは127.mid、射撃スカイハイには413.midが割り当てられているようです - 名無しさん 2014-02-17 02 53 47 名前
https://w.atwiki.jp/bfgmatome/pages/729.html
ゲーム情報(登録されているタグ) シリーズ>Antique Road Trip ジャンル>アイテム探し 製作会社>不明 言語>英語 コメント欄へ移動 ゲーム配布ページ 英語 http //www.bigfishgames.com/download-games/12086/antique-road-trip-2-homecoming/index.html 日本語 紹介文 James and Grace Anderson take a vacation from their antiques business, only to find themselves the new owners of another shop! Help them save the store by collecting treasures and selling them for a tidy profit. Explore lush scenes from Montana, Wisconsin Louisiana and solve new, unique puzzles in this challenging Hidden Object game! Fun gameplay Exciting puzzles Open up another antiques shop! Play Antique Road Trip USA 画像 « » var ppvArray_0_5f5c3134c0f9804ff374af8ada9a0f01 = new Array(); ppvArray_0_5f5c3134c0f9804ff374af8ada9a0f01[0] = http //w.atwiki.jp/bfgmatome/?cmd=upload&act=open&page=Antique+Road+Trip+2%3A+Homecoming&file=en_antique-road-trip-2-homecoming-screen1.jpg ; window.onload=function(){ ppvShow_0_5f5c3134c0f9804ff374af8ada9a0f01(0); }; function ppvShow_0_5f5c3134c0f9804ff374af8ada9a0f01(n){ if(!ppvArray_0_5f5c3134c0f9804ff374af8ada9a0f01[n]){ alert( 画像がありません ); return; } ppv_0_5f5c3134c0f9804ff374af8ada9a0f01$( ppv_img_0_5f5c3134c0f9804ff374af8ada9a0f01 ).src=ppvArray_0_5f5c3134c0f9804ff374af8ada9a0f01[n]; ppv_0_5f5c3134c0f9804ff374af8ada9a0f01$( ppv_link_0_5f5c3134c0f9804ff374af8ada9a0f01 ).href=ppvArray_0_5f5c3134c0f9804ff374af8ada9a0f01[n]; ppv_0_5f5c3134c0f9804ff374af8ada9a0f01$( ppv_prev_0_5f5c3134c0f9804ff374af8ada9a0f01 ).href= javascript ppvShow_0_5f5c3134c0f9804ff374af8ada9a0f01( +(n-1)+ ) ; ppv_0_5f5c3134c0f9804ff374af8ada9a0f01$( ppv_next_0_5f5c3134c0f9804ff374af8ada9a0f01 ).href= javascript ppvShow_0_5f5c3134c0f9804ff374af8ada9a0f01( +(n+1)+ ) ; } function ppv_0_5f5c3134c0f9804ff374af8ada9a0f01$(){ var elements = new Array(); for (var i = 0; i arguments.length; i++){ var element = arguments[i]; if (typeof element == string ) element = document.getElementById(element); if (arguments.length == 1) return element; elements.push(element); } return elements; } videoプラグインエラー 正しいURLを入力してください。 備考 レス一覧 コメント コメント すべてのコメントを見る トップページに戻る
https://w.atwiki.jp/0x0b/pages/89.html
ハイパーテキスト転送プロトコル RFC 2616 WebブラウザとWebサーバの間でHTMLなどのコンテンツの送受信に用いられる通信プロトコル リクエスト-レスポンス型 トランスポート・プロトコルとして通常TCPを使用 基本的な考え方は非常に単純であり「何を」「どうして」ほしいのかを相手に要求する。「何を」に当たるのがURL、「どうして」がメソッドにあたる。 World Wide WebにおけるWebページなどのリソースは、Uniform Resource Identifierによって指定される。 ポート番号80をデフォルトとして使用する(送信時は8080)。 TLSで暗号化され、セキュリティを確保したHTTPは、HTTPSと呼ばれる(httpsは実際にはURIスキームの1つであり、実際のプロトコルにはHTTP over SSL/TLSが用いられる)。 HTTP は基本的にサーバが状態を保持しない (stateless) プロトコルだが、データベースなどを使用するWebアプリケーションにおいては状態保持が必要だったため、そのためにいわゆる Cookie とよばれる機構が Netscape Communications Corporation によって導入された。Cookie を使用することによって状態を管理し、"セッション" を維持することが可能になる。 HTTPの拡張プロトコルとしてWebDAVがある。 UPnPでは、HTTPをUDP上で使用するHTTPUや、マルチキャストで使用するHTTPMUが規定された。 HTTP/0.9 URLのみの簡単なやりとり HTTP/1.0 NNTPやSMTPのような各種ヘッダが定義 HTTP_Cookieなどの利用 HTTP/1.1 複数データを転送するためのキープアライブ(keep-alive)機能やプロキシなどの利用も想定された仕様 バーチャルホストをサポートした。インターネット人気に伴い多くの企業がWebサイトを持ち始めたが、当時ではまだまだ企業が自前のWebサーバを運用するのは人員、効率の問題で難しかったためISPのサーバでホスティングをしていた。当時はまだ一社ごとに専用サーバを用意するほどのことでもないため一台のサーバで複数のWebサイトを運用していた。 しかしバーチャルホストには問題がある。例えばある1台のサーバに foo.example.com と bar.example.com という二つの仮想Webサーバがあるとする。ここではクライアントは http //foo.example.com/index.html にアクセスしたいとする。そのためにはまず foo.example.com をIPアドレスに解決するためDNSサーバに問い合わせ、そのサーバにアクセスし GET index.html を要求する。しかしサーバ側のIPアドレスは foo.example.com と bar.example.com 共におなじIPアドレスである。もし foo.example.com にも bar.example.com にも index.html というファイルが存在すればクライアントはどちらのサーバにアクセスしたのかわかるすべがない。 これを解決するにはそれぞれにIPアドレスを付与することで解決できるが、IPv4の資源を無駄にすることになる。 HTTP/1.1ではこれを解決するためにHostヘッダを追加した。 HTTP/1.0のヘッダ GET /index.html HTTP/1.0 HTTP/1.1のヘッダ GET /index.html HTTP/1.1 Host foo.example.com 動作 通信の開始 他のプロトコル同様クライアント側とサーバ側ではHTTPの役割が大きく異なる。HTTP通信を開始できるのはクライアント側のみである。 クライアント側はサーバにリクエストを送り、サーバはクライアントにレスポンスを返すのが最も典型的なHTTPのやりとりである。 接続 システム間でメッセージをやりとりするにはTCP接続を確立させる必要がある。 HTTP/0.9ではクライアントのリクエストごとにTCP接続を確立させる必要があったが、これは当時のWebサイトがシンプルなテキストベースであることが多かったためである。近年ではJavaScriptやアニメーション画像など、多数のオブジェクトが埋め込まれたWebサイトが一般的となってきているが、これら全てのオブジェクトを取得するたびにTCP接続を確立するのはサーバやネットワークに大きな負担を強いるため、HTTP/1.1では持続的接続がサポートされることとなった。ただしこの機能が利用できるのはサーバ側がその要求を許可した場合のみである。 パイプライン クライアントは前のリクエストに対するサーバの応答を待たずに別のリクエストを発行できる。 メソッド HTTPでは8つのメソッドが定義されている。ただし実際のHTTP通信ではGETとPOSTメソッドだけで殆どを占める。 HTTPメソッドの一覧 メソッド HTTP/0.9 HTTP/1.0 HTTP/1.1 GET ○ ○ ○ POST ○ ○ PUT △ ○ HEAD ○ ○ DELETE △ ○ OPTION ○ TRACE ○ CONNECT ○ GET 指定されたURIのリソースを取り出す。HTTPの最も基本的な動作で、HTTP/0.9では唯一のメソッド。 POST GETとは反対にクライアントがサーバにデータを送信するメソッドである。Webフォームや電子掲示板、Wikiなどに投稿する。GETの場合と同じくサーバはクライアントにデータを返すことができる。 PUT 指定したURIにリソースを保存する。URIが指し示すリソースが存在しない場合は、サーバはそのURIにリソースを作成する。画像のアップロードなどが代表的。 DELETE 指定したURIのリソースを削除する。 OPTION サーバを調査するメソッド。例えばサーバがサポートしているHTTPのバージョンなどを調査できる。 HEAD GETと似ているがサーバはHTTPヘッダのみ返す。クライアントはWebページを取得せずともそのWebページが存在するかどうかを知ることが出来る。例えばWebページのリンク先が生きているか検証するときなどにリンク先のデータを全て取得することなく調査することが出来る。 TRACE サーバまでのネットワーク経路をチェックできる。サーバは受け取ったメッセージのそれ自体をレスポンスのデータにコピーして応答する。WindowsのTracertやUNIXのTracerouteとよく似た動作。 CONNECT 暗号化したメッセージをプロキシで転送する際に用いる。 サーバの連携 バーチャルホスト リダイレクト 301 MovedというステータスコードとURIを受け取りクライアントはこの受け取ったURIに再度GETを送る。 クッキー(HTTP_Cookie) HTTPメッセージ クライアントからのHTTPリクエストは3つの要素から構成される。それぞれメソッド、URI、HTTPのバージョンでありスペースで区切られている。 下にもっとも単純な、クライアントとサーバ(www.google.co.jp 80)とのHTTPプロトコルのやり取りの例を挙げる。 クライアントのリクエスト GET / HTTP/1.0 GETがメソッド、URIは / 、バージョンはHTTP/1.0であることを示す。 URIは/でルートリソースを対象にしたリクエストであることを示している。TRACEなど特定のサーバを対象としないリクエストの場合には*が表示される。 サーバのレスポンス HTTP/1.0 200 OK Cache-Control private Content-Type text/html Set-Cookie PREF=ID=72c1ca72230dea65 LD=ja TM=1113132863 LM=111 3132863 S=nNO7MIp W2o7Cqeu_; expires=Sun, 17-Jan-2038 19 14 07 GMT; path=/; domain=.google.co.jp Server GWS/2.1 Date Sun, 10 Apr 2005 11 34 23 GMT Connection Close html head meta http-equiv="content-type" content="text/html; charset=Shift_JI S" title Google /title style !-- ・・・以下省略 上のリクエストのGETにあたる部分をメソッドといい、 HTTP/1.0では、GET, HEAD, PUT, POST, DELETE, LINK, UNLINK、 HTTP/1.1ではさらに、OPTIONS, TRACEがある。 GETメソッドのレスポンスにはヘッダ情報のあとに改行が挟まれ、コンテンツ本体が送られる。 HEADメソッドのレスポンスにはコンテンツサイズや更新日時などの情報を含むヘッダのみが送られる。 また、リクエストの2行目以降はヘッダを送る。 HTTPヘッダフィールド ヘッダの各要素は フィールド名 内容 のペアで構成される。 ブラウザの情報を表すUser-Agent、使用候補言語を表すAccept-Language、他ページへのリンクを辿った場合にそのリンク元ページのURLを表すRefererなどが代表的なフィールドである。 なお、リクエスト時のHostヘッダはHTTP/1.1では必須であるが、HTTP/1.0では無くても良い。 但し、サーバがバーチャルホストを利用している場合は、Hostヘッダが無いとリソース取得に失敗するので、たとえHTTP/1.0を使用していてもHostヘッダを付加しなければならない。 HTTPヘッダフィールドの一覧 リクエストヘッダ ヘッダ概要HTTP/0.9HTTP/1.0HTTP/1.1 Acceptクライアントの受け入れ可能コンテンツタイプを示す○○ Accept-Charsetクライアントの受け入れ可能文字セットを示す○○ Accept-Encodingクライアントの受け入れ可能文字エンコーディングを示す○○ Accept-Languageクライアントの受け入れ可能言語を示す○○ Authorizationクライアントの認証情報を示す○○ Cookieクライアントの状態管理情報をサーバに返す Cookie2HTTP/1.1のSet-Cookie2ヘッダの受け入れ可能をサーバに知らせる Expectクライアントがサーバに期待する動作を示す○ Fromリクエスト発行者個人の情報を示す。一般的に電子メールアドレスを使用する○○ Host要求しているオブジェクトがあるホストを示す○ If-Matchif文を用い条件が真の場合のみリクエストを処理するようサーバに要求する○ If-Modified-Since指定日及び指定時刻以降にオブジェクトが変更されている場合のみリクエストを処理するよう要求する○○ If-None-MatchIf-Matchの逆で条件が真でない場合のみリクエストを処理する要求○ If-Range条件が真の場合のみ指定したオブジェクトの範囲を返すようサーバに要求する○ If-Unmodified-SinceIf-Modified-Sinceの逆で真でないときのみ実行する○ Max-Forwardsリクエストの中間システム経由数を最大いくつまでかを指定する○ Proxy-Authorizationクライアントがプロキシサーバに対して自身の認証を行う○ Rangeオブジェクト全体でなくリソースの一部を要求する○ Refererリクエストの出所を示す。一般的にはユーザの辿ったWebページのURLが用いられる。○○ TEレスポンスの受け入れ可能転送エンコーディングを示す○ レスポンスヘッダ ヘッダ概要HTTP/0.9HTTP/1.0HTTP/1.1 Accept-Rangesオブジェクトの一部に対するリクエストをサーバが受け入れ可能か示す○ Ageオブジェクトの経過時間を秒単位で返す○ AllowオブジェクトがサポートするHTTPメソッドを示す○○ ETagオブジェクトのエンティティタグ値を示す○ Locationオブジェクトの場所を示す○○ Proxy-Authenticateプロキシサーバがクライアントに認証を要求するときに用いる○ Retry-Afterリクエストの再試行をいつ行うかをクライアントに通知する○○ Serverサーバのベンダー名、バージョン番号を占めす○○ Set-Cookie2サーバがクライアントにCookieを送信するときに用いる Varyサーバのレスポンス内容を決定する際にリクエストURI以外に使用したHTTPヘッダのリストを示す○ WWW-Authenticateクライアントに対してリクエストの再発行を要求する。認証情報も含まれる○○ 一般ヘッダ ヘッダ概要HTTP/0.9HTTP/1.0HTTP/1.1 Cache-Controlメッセージの経由する中間キャッシュの動作を指示する○ Connection中間システムが転送すべきでないヘッダのリストを示す○○ Dateメッセージの作成日時を示す○○ Pragmaメッセージに関する追加情報を示す○○ Trailerメッセージボディの後に追加のヘッダーが表れることを示す○ Transfer-Encodingクライアントの転送を目的としたオブジェクトのエンコーディングを示す○ Upgrade通信相手に別のプロトコルにアップデートするよう要求する○ User-AgentクライアントのWebブラウザなどの情報を示す○○ Warningメッセージに関する追加情報を示す。通常はキャッシュの問題を警告するときに使われる○ エンティティヘッダ ヘッダ概要HTTP/0.9HTTP/1.0HTTP/1.1 Content-Encodingオブジェクトのエンコーディングを示す○○ Content-Languageオブジェクトの言語(人間の言語)を示す○○ Content-Lengthオブジェクトのサイズをバイト単位で示す○○ Content-Locationオブジェクトの場所を示す○ Content-MD5オブジェクトのメッセージダイジェストを運ぶ○ Content-Rangeメッセージボディで運ばれるオブジェクトの範囲を示す○ Content-Typeオブジェクトのタイプを示す○○ Expiresオブジェクトの有効期限の日時を示す○○ Last-Modifiedオブジェクトが最後に変更された日時を示す○○ Accept サーバのレスポンスに含まれるメッセージボディで受け入れることが出来るコンテンツタイプと各コンテンツタイプの相対的な優先度を指定するリクエストヘッダ。指定できるコンテンツタイプはIANAによって定義されている。 Accept text/plain; q=0.5, text/html, text/x-dvi; q=0.8, text/x-c 上記のようにAcceptヘッダには行をわけて複数のコンテンツタイプを指定できる。上記の例はいずれの4のコンテンツタイプのいずれも受け入れ可能であることを示す。0.5や0.8といった数字は品質係数で0~1の範囲の数値である。数値の指定がなければ1.0となる。 text/plain; q=0.5 text/html text/x-dvi; q=0.8 text/x-c Accept-Charset レスポンスで返されるメッセージボディの文字コードを指定するリクエストヘッダ。Acceptと同じく複数指定でき品質係数も設定できる。定義済み文字セットはIANAが管理している。 Accept-Charset unicode, *; q=0.8 この例だとクライアントはUnicode文字セットを優先的に希望しているが他の文字セットとの相対優先度0.8で受け入れている。ただしサーバからのレスポンスのHTTPヘッダそのものの文字コードは常にISO-8859-1である。 Accept-Encoding Accept-Language レスポンスの言語(人間の言語)に対する優先度を指定する。言語コードはISO-639の2文字の省略コードを用いる。書き方は他のAccept-群と変わらず。 Accept-Language en-gb, en; q=0.8 上記の例はまずイギリス英語を要求し、利用できない場合はその他の英語を要求する。 Accept-Ranges Acceptで始まる他のヘッダフィールドと違いレスポンスヘッダーである。現在の仕様では2つの指定方法しかない。 Age リソースの推定経過時間を表示するレスポンスヘッダ。キャッシュサーバーはAgeヘッダの値からキャッシュしたリソースが有効かどうかを判定する。 Allow Authentication-info ユーザ認証のやりとりの最後で用いられる、成功したレスポンスのサーバが含めることの出来るレスポンスヘッダー。 Authorization サーバに対するクライアント自身の認証を行うことが出来る。 Cache-Control キャッシングの動作を指定するためのマスターヘッダ。 Connection Content-Encoding Content-Language リソースを英語などの自然言語で示すのに使われる。言語の指定はAccept-Languageヘッダと同じ。 Content-Length Content-Location Content-MD5 メッセージボディが変更されず宛先に届くことを保証する。MD5アルゴリズムを実行する。ただし悪意の改ざんに対しては当然MD5も改ざんされるのであまり機能はしない。どちらかといえば偶発的な変更の保証をしている。 Content-Range ダウンロードの再開に用いられる。 Content-Type メッセージボディに含まれるオブジェクトタイプを示す。次の例はリソースがテキストファイル、文字セットはISO-8859-4を使用していることを示している。 Content-Type text/plain; Charset=ISO-8859-4 Cookie クライアントがHTTP状態管理を望む場合にサーバから受け取ったクッキーを以後のリクエストに次の例のようなヘッダーを付加する。 Cookie $Version="1"; NAME="VALUE"; $Path="/shopping"; $domain="www.shop.com"+ $Port="80" $VersionはHTTPのバージョン、NAMEはクッキーの名前である。$から始まるクッキー名は使用が禁止されている。 Cookie2 基本的にCookieヘッダーとCookie2ヘッダーは別物である。 Date サーバがメッセージを生成した日時を示す。リソースの時間を示すLast-Modifiedヘッダーとは区別する必要がある。 HTTP/1.1では次のような形式を用いるようRFC1123で定義されている。 Date Sun, 06, Nov 1994 08 49 37 GMT HTTP仕様ではレスポンスにDateヘッダーを含めることを求めている。ただしレスポンスのステータスがサーバエラーの場合にはDateヘッダーは返らない。 ETag 主にキャッシングのパフォーマンスを向上する目的で使われる。 Expect サーバに対して特定の動作の期待を知らせる。用途としてはクライアントがサーバに対して100 Continueステータスを返すことを期待する場合に使われる。 Expect 100-continue サーバが期待に応じれない場合は417 Expectation Failedを返す。クライアントがいくつかのプロキシ経由で通信している場合、各プロキシサーバはExpectヘッダの一切の修正を許されない。 Expires オブジェクトの有効期限を示す。このヘッダで指定された日時までキャッシュはレスポンスのコピーを保持し、リクエストに対するレスポンスとして返すことが出来る。サーバがオブジェクトのキャッシュを望まない場合にはExpiresヘッダに過去の日時を設定することが多い。また、HTTP仕様では1年以上先の日時は設定できない。 Expires Thu, 28 Aug 2010 16 00 00 GMT Cache-Controlヘッダのmax-ageディレクティブはExpiresヘッダより優先されるため注意が必要である。 From リクエストを発行したユーザを特定することが出来る。1990年代では電子メールアドレスを設定することが多かったが、迷惑メールの問題もあり現在では殆ど使われていない。 From hoge@hogehoge.com Host 主にレンタルサーバのサポートを目的としてHTTP/1.1で導入された。現在ではHostヘッダを利用できない場合レンタルサーバのウェブサイトとまともな通信が出来ないと言ってよい(詳細はHTTP#歴史を参照)。 If-Match クライアントのリクエストを条件付きのリクエストにするために使われる。サーバは一定の条件が真であった場合のみリクエストを受け入れることが出来る。例えばウィキペディアを編集する際、記事のソースを取得し、書き換える際の間に別のユーザが既に編集していないかを判断するときなどに用いられる。 「if文」も参照 利用者:HogeがHTTPの記事を取得。ETagは1234 利用者:HageがHTTPの記事を取得。ETagは1234 利用者:HogeがHTTPのETagを再度取得。先ほど取得したETag 1234と現在のETag 1234が一致。 利用者:HogeがHTTPの記事を編集。ETagは1256になる。 利用者:HageがHTTPのETagを再度取得。先ほど取得したETagと現在のETagはマッチせず。 サーバは利用者:Hageの書き込みを拒否。 If-Modified-Since このヘッダーで指定された日時以降にオブジェクトが変更されている場合のみリクエストに応答するようサーバに要求する。リソースの削減に効果がある。 If-None-Match If-Matchと逆で条件が真でない場合のみリクエストを処理するよう要求する。 If-Range クライアントがキャッシュにオブジェクトの一部分を持っている場合にパフォーマンスを向上できる。 If-Unmodified-Since If-Modified-Sinceの逆の働きをする Last-Modified サーバオブジェクトの最終更新日時を示す。クライアントはこのヘッダを利用しIf-Modified-Sinceヘッダ等と組み合わせることによって効果を発揮する。 Location サーバがクライアントにリダイレクト先URLを知らせる際に用いられる。一般的にステータスコードが3xx代のレスポンスと共に使われるが201 Createdのレスポンスでも使うことが出来る。Content-Locationヘッダと名前が似ているが全く関係のない別のヘッダであるため注意。 Max-Forwards プロキシサーバ等を経由する際の最大ホップ数を指定する。二重ループなどでサーバから応答が得られない場合の問題解決の際、OPTIONメソッドやTRACEメソッドと共に用いられる。 HTTPステータスコード ステータスコードはクライアントのリクエストが成功したかどうかを示した上で追加情報を提供するいずれも3桁の数字から成る。具体的には100-199が情報提供、200-299が成功を示す。300-399はリダイレクト、400-499はエラーを示す。 セキュリティ技術 Basic認証 HTTP/1.1でBasic認証が定義されており最も単純なセキュリティ技術である。しかし仕様書を読むと定義を書いた著者自身が認証技術に疎いことがよくわかる。『HTTPプロトコル セキュア&スケーラブルなWeb開発』の著者は「基本認証を用いるくらいならなにも使わない方がまし」と著書に書いている。通常サーバは401ステータスコードで応答する。 行末文字はWindowsと同じCRLF。 RFC 2818 - HTTP Over TLS RFC 2817 - Upgrading to TLS Within HTTP/1.1 RFC 2616 - HTTP/1.1 ハイパーテキスト転送プロトコル -- HTTP/1.1 RFC 2068 - HTTP/1.1(初版,RFC 2616 によって obsolete) TS X 0085 2004 - ハイパテキスト転送プロトコル HTTP/1.1 標準仕様書(TS) RFC 1945 - HTTP/1.0 HttpTea Freeware HTTP Logger Studying HTTP
https://w.atwiki.jp/magham/pages/24.html
Voting Exclusion ※ exclusion voting is prohibited in principle. Try to cast a vote only to expel nuisance Voting method View the list of squad members in the Start button, select the player you want to vote ○ The "expulsion vote" can be selected in a vote (the vote and two votes to enter Squad Leader). Cancellation of the vote After voting, re-vote "boycott", select "No" to cancel the vote can be cast by selecting the. Exclusion criteria of HAM Voting has been subject to exclusion actions bother squad. APC firing The employee has a firing squad machine gun / gun under any circumstances the APC also has cast a vote to boycott. See Also About APC Captain nonindicating The length of the Furago 出Sanai squad has cast a vote to boycott. See also Squad Leader for instructions Use the command platoon leader (precision bombing strafe) has to throw the vote to boycott. Without the command of Captain (eg jamming) has to throw the vote to boycott. Intentional team kill(TK) TK on purpose (I can shoot a friend) comes to the employee and the squad is trying to expulsion vote. Bug Use Bug dressing, a certified dive squad has been building a bug trying to expulsion vote. Moreover, even if subject to the exclusion of the following vote accordingly. Do not have a resuscitation (CPR does not have a level 3 or higher) Useless noob VC is too noisy and demand (meaning unknown persistent request, that noisy VC, such that with music by VC) Notes Circumstances have not received instructions not to vote should not be jamming Down the length of expulsion or captain for the squad, but after the vote was unaware of ⇒ situation Squad Leader in the middle, becomes 0 Votes vote to cancel, you can call attention Such as foam APC, while not being aware of the act of exclusion we have contact with other clan members of TC · VC (and vote for the APC firing ○ ○, etc.) After freezing, exclusion of members to join the clan can not join the game is not allowed in the occupied
https://w.atwiki.jp/abwiki/pages/452.html
前回は素のwaveファイルお再生しました。 これを使えばほかのものでも応用ができます。 今回はmp3をやります。 mp3はデコーダやプレイやがあって今さらですけど、 ABでもできるんですよ。 今回使うのは定番のmpglib.dllです。 mpglib.dllのある場所http //mpesch3.de1.cc/misc.html こいつはABから使うことを想定していないしドキュメントも不親切です だから元となったmpg123というライブラリも調べてみるといいかもしれませんね。 まずこのDLLは3つの関数しかないので、簡単ですけど、便利な昨日がないので 自分で作ります。 ID3V2も自力で読み飛ばさないといけません。 abmpglib.abp Const AUDIOBUFSIZE = 16384Const SBLIMIT = 32Const SSLIMIT = 18Const SCALE_BLOCK = 12 /* Layer 2 */Const MPG_MD_STEREO = 0Const MPG_MD_JOINT_STEREO = 1Const MPG_MD_DUAL_CHANNEL = 2Const MPG_MD_MONO = 3Const MAXFRAMESIZE = 1792Const MP3_ERR = -1Const MP3_OK = 0Const MP3_NEED_MORE = 1Type al_tablebits As Wordd As WordEnd TypeType framestereo As Longjsbound As Longsingle As Longlsf As Longmpeg25 As Longheader_change As Longlay As Longerror_protection As Longbitrate_index As Longsampling_frequency As Longpadding As Longextension As Longmode As Longmode_ext As Longcopyright As Longoriginal As Longemphasis As Longframesize As Long /* computed framesize */II_sblimit As Long /* Layer 2 */alloc As *al_table /* Layer 2 */do_layer As VoidPtr /* Layer 2 */End TypeType mpglib_bufpnt As *Bytesize As Longpos As Longpnext As *mpglib_bufprev As *mpglib_bufEnd TypeType framebufbuf As *mpglib_bufpos As Longpnext As *frameprev As *frameEnd TypeType mpstrhead As *mpglib_buftail As *mpglib_bufbsize As Longframesize As Longfsizeold As Longfr As framebsspace[ELM(2*(MAXFRAMESIZE+512))] As Byte /* MAXFRAMESIZE */hybrid_block[ELM(2*2*SBLIMIT*SSLIMIT)] As Singlehybrid_blc[ELM(2)] As Longheader As DWord bsnum As Longsynth_buffs[ELM(2*2* h110)] As Singlesynth_bo As LongEnd TypeType ID3V2ID3[2] As Bytemajorversion As Byterevision As Byteflag As Bytesize[3] As ByteEnd TypeDeclare Function InitMP3 CDECL Lib"mpglib.dll" Alias "_InitMP3" (mp As *mpstr) As LongDeclare Sub ExitMP3 CDECL Lib"mpglib.dll" Alias "_ExitMP3" (mp As *mpstr)Declare Function decodeMP3 CDECL Lib"mpglib.dll" Alias "_decodeMP3" (mp As *mpstr, inmemory As *Byte, inmemsize As Long, outmemory As *Byte, outmemsize As Long, done As *Long) As LongDim br_tbl[1,14] = [[ 0, 32, 40, 48, 56, 64, 80, 96,112,128,160,192,224,256,320],[ 0, 8, 16, 24, 32, 40, 48, 56, 64, 80, 96,112,128,144,160]] As LongDim rate_tbl[9] = [44100, 48000, 32000, 22050, 24000, 16000 , 11025 , 12000 , 8000, 0] As Long'ID3V2のサイズを詰めるFunction unpack_sint28 (ptr As *Byte) As DWordDim value As DWordIf (ptr[0] And h80) Then Exit Functionvalue = value Or (ptr[0] And h7f)value = (value 7) Or (ptr[1] And h7f)value = (value 7) Or (ptr[2] And h7f)value = (value 7) Or (ptr[3] And h7f)unpack_sint28 = valueEnd FunctionType ABMP3DEC_CTXmp As mpstrbuf[AUDIOBUFSIZE] As BytehF As HANDLErate As Longch As Longpcmb As DWordstartpos As DWordmore As Longstatus As LongEnd TypeDim mc As ABMP3DEC_CTX'mp3ファイルを開いてデコード準備Function OpenMp3(mp3file As *Byte) As LongDim size As LongDim out[8192] As ByteDim len As LongDim ret As LongDim id3 As ID3V2If mc.status = TRUE Then Exit FunctionZeroMemory(VarPtr(mc), SizeOf(ABMP3DEC_CTX))mc.hF = CreateFile(mp3file, GENERIC_READ, FILE_SHARE_READ, ByVal 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0)If mc.hF = INVALID_HANDLE_VALUE Then Exit Function'ID3V2ReadFile(mc.hF, VarPtr(id3), SizeOf(ID3V2), VarPtr(len), ByVal 0)If strstr(id3.ID3, "ID3") ThenIf Not (id3.size[0] And h80) Then mc.startpos = unpack_sint28(id3.size)+10 End IfSetFilePointer(mc.hF, mc.startpos, 0, FILE_BEGIN)InitMP3(VarPtr(mc.mp))'一度読み込んでフォーマットを取得If ReadFile(mc.hF, mc.buf, 1024, VarPtr(len), ByVal 0) = FALSE Or len = 0 Then'読み込みエラーEnd Ifret = decodeMP3(VarPtr(mc.mp), mc.buf, len, out, 8192, VarPtr(size))If ret MP3_OK Then'デコードエラーEnd Ifmc.rate = rate_tbl[mc.mp.fr.sampling_frequency]mc.ch = mc.mp.fr.stereo'リセットSetFilePointer(mc.hF, mc.startpos, 0, FILE_BEGIN)ExitMP3(VarPtr(mc.mp))InitMP3(VarPtr(mc.mp))mc.status = TRUEOpenMp3 = TRUEEnd Function'サンプリングレート、チャンネル数を得るFunction GetFormat(rate As *Long, ch As *Long) As LongIf mc.status = FALSE Then Exit FunctionSetDWord(rate, mc.rate)SetDWord(ch, mc.ch)End Function'デコードし、そのサイズを返す。Function ReadMp3(pcm As *Byte, buflen As Long) As DWordDim pos As DWordDim len As DWordDim siz As DWordDim ret As LongIf mc.status = FALSE Then Exit Functionpos = 0siz = 0Do If mc.more = FALSE Thenret = ReadFile(mc.hF, mc.buf, 16384, VarPtr(len), ByVal 0)If ret = FALSE Or len = 0 Then *JUMPret = decodeMP3(VarPtr(mc.mp), mc.buf, len, VarPtr(pcm[pos]), 8192, VarPtr(siz))If ret = MP3_OK Then mc.more = TRUEEnd IfWhile (ret = MP3_OK)pos = pos + sizIf pos+8192 buflen Then *JUMPret = decodeMP3(VarPtr(mc.mp), NULL, 0, VarPtr(pcm[pos]), 8192, VarPtr(siz))Wendmc.more = FALSE'次に読み込みが必要Loop While pos+8192 buflen*JUMPReadMp3 = posmc.pcmb = mc.pcmb + posEnd Function'終わりFunction CloseMp3() As LongIf mc.status = FALSE Then Exit FunctionCloseHandle(mc.hF)ExitMP3(VarPtr(mc.mp))mc.status = FALSEEnd Function つぎに再生部 #include api_mmsys.sbp #include "abmpglib.abp"Declare Function waveOutOpen Lib "winmm" (phwo As *HWAVEOUT, uDeviceID As DWord, pwfx As *WAVEFORMATEX, dwCallback As DWord, dwInstance As DWord, fdwOpen As DWord) As MMRESULTDeclare Function waveOutClose Lib "winmm" (hwo As HWAVEOUT) As MMRESULTDeclare Function waveOutPrepareHeader Lib "winmm" (hwo As HWAVEOUT, pwh As *WAVEHDR, cbwh As DWord) As MMRESULTDeclare Function waveOutUnprepareHeader Lib "winmm" (hwo As HWAVEOUT, pwh As *WAVEHDR, cbwh As DWord) As MMRESULTDeclare Function waveOutWrite Lib "winmm" (hwo As HWAVEOUT, pwh As *WAVEHDR, cbwh As DWord) As MMRESULTDeclare Function waveOutPause Lib "winmm" (hwo As HWAVEOUT) As MMRESULTDeclare Function waveOutRestart Lib "winmm" (hwo As HWAVEOUT) As MMRESULTDeclare Function waveOutReset Lib "winmm" (hwo As HWAVEOUT) As MMRESULTDeclare Function waveOutGetPosition Lib "winmm" (hwo As HWAVEOUT, pmmt As *MMTIME, cbmmt As DWord) As MMRESULTDeclare Function MulDiv Lib "kernel32" (nNumber As Long, nNumerator As Long, nDenominator As Long) As LongConst WAVE_MAPPER = (-1)Const CALLBACK_FUNCTION = H00030000lConst WOM_OPEN = H3BBConst WOM_CLOSE = H3BCConst WOM_DONE = H3BDConst WHDR_DONE = H00000001Const WHDR_PREPARED = H00000002Const WHDR_BEGINLOOP = H00000004Const WHDR_ENDLOOP = H00000008Const WHDR_INQUEUE = H00000010Const TIME_MS = H0001Const TIME_SAMPLES = H0002Const TIME_BYTES = H0004Const TIME_SMPTE = H0008Const TIME_MIDI = H0010Const TIME_TICKS = H0020TypeDef MMRESULT = DWordTypedef HWAVEOUT = VoidPtrType WAVEHDR lpData As *Byte dwBufferLength As DWord dwBytesRecorded As DWord dwUser As DWord dwFlags As DWord dwLoops As DWord lpNext As *WAVEHDR reserved As *DWord End TypeType MMTIMEwType As DWordu As DWordu2 As DWordEnd TypeClass Mp3PlayerPrivatebuffer[2] As *Bytehwo As HWAVEOUTwfe As WAVEFORMATEXswitch As LongFunction GetMp3Header() As LongDim head[3] As ByteDim r As DWordDim c As DWordGetFormat(VarPtr(r), VarPtr(c))wfe.wFormatTag = 1wfe.nChannels = cwfe.nSamplesPerSec = rwfe.wBitsPerSample = 16wfe.cbSize = Sizeof(WAVEFORMATEX)wfe.nBlockAlign = wfe.nChannels * wfe.wBitsPerSample/8wfe.nAvgBytesPerSec = wfe.nSamplesPerSec * wfe.nBlockAlignGetMp3Header = 1End FunctionSub waveOutProc(hwo As HWAVEOUT, uMsg As DWord, dwInstance As *DWord, dwParam1 As DWord, dwParam2 As DWord)Dim x As *Mp3Playerx = dwInstanceSelect Case uMsgCase WOM_CLOSECase WOM_DONEx- wh[1].dwUser = x- wh[1].dwUser - 1If x- wh[0].dwUser = 0 Then x- read(hwo)Case WOM_OPENEnd SelectEnd SubPublicwh[2] As WAVEHDRSub read(hwo As HWAVEOUT)Dim r As DWordIf hwo = NULL Or wh[0].dwUser = 1 Or wh[1].dwUser 1 Then Exit SubwaveOutUnprepareHeader(hwo, VarPtr(wh[switch]), SizeOf(WAVEHDR))r = ReadMp3(buffer[switch], wfe.nAvgBytesPerSec)wh[switch].lpData = buffer[switch]wh[switch].dwBufferLength = rIf r = 0 Then wh[0].dwUser = 1'これ以上再生しませんwaveOutPrepareHeader(hwo, VarPtr(wh[switch]), SizeOf(WAVEHDR))waveOutWrite(hwo, VarPtr(wh[switch]), SizeOf(WAVEHDR))wh[1].dwUser = wh[1].dwUser + 1switch = switch + 1If switch = 2 Then switch = 0End SubFunction play(infile As *Byte) As LongIf hwo NULL Then Exit FunctionIf OpenMp3(infile) = FALSE Then Exit FunctionIf GetMp3Header() = 0 ThenCloseMp3()Exit FunctionEnd Ifbuffer[0] = malloc(wfe.nAvgBytesPerSec)buffer[1] = malloc(wfe.nAvgBytesPerSec)waveOutOpen( VarPtr(hwo), WAVE_MAPPER, VarPtr(wfe), AddressOf(waveOutProc) ,VarPtr(this), CALLBACK_FUNCTION)read(hwo)Sleep(500)read(hwo)play = 1End FunctionSub stop() As LongIf hwo = NULL Then Exit Subwh[0].dwUser = 1waveOutReset(hwo)While wh[1].dwUser 0Sleep(1)WendwaveOutUnprepareHeader(hwo, VarPtr(wh[0]), SizeOf(WAVEHDR))waveOutUnprepareHeader(hwo, VarPtr(wh[0]), SizeOf(WAVEHDR))free(buffer[0])free(buffer[1])waveOutClose(hwo)CloseMp3()hwo = NULLEnd SubFunction state(t As *DWord) As Longstate = wh[1].dwUserIf t = NULL Then Exit FunctionDim mmt As MMTIMEmmt.wType = TIME_SAMPLESwaveOutGetPosition(hwo, VarPtr(mmt), SizeOf(MMTIME))SetDWord(t,MulDiv(mmt.u , 1000, wfe.nSamplesPerSec))End FunctionEnd Class#define SELFTEST#ifdef SELFTEST#N88BASICDim wp As Mp3PlayerDim time As DWordPrint "再生"wp.play("test.mp2")While wp.state(VarPtr(time))Locate 4,1Print time\1000;"sec"Sleep(1000)Wendwp.stop()Print "停止"#endif ファイル名は好きに変えるようにして、 美しい音楽が聴こえてくるはずです。
https://w.atwiki.jp/mydefrag_jp/pages/17.html
FileBoolean FileBoolean (...) All Archive AverageFragmentSize Compressed CreationDate Directory DirectoryName DirectoryPath Encrypted FileLocation FileName FragmentCount Fragmented FullPath Hidden ImportListFromFile ImportListFromProgramHints Largest LargestFragmentSize LastAccess LastAccessEnabled LastChange NOT NotToBeIndexed Offline OR Readonly SelectNtfsSystemFiles Size SmallestFragmentSize Sparse System Temporary Virtual 原文 http //www.mydefrag.com/Scripts-FileBoolean.html 更新日 2010/12/12 (ここで取り扱っている内容の原文をコピーした日付です) (...) Combine file booleans into a single boolean. Syntax ( FILEBOOLEAN ) Example FileSelect Size(10000000,0) and ( Name("-.zip") or Name("-.arj") ) FileActions ... FileEnd See also FileSelect FileBoolean FileActions All Select all the items (files, directories) that have not yet been placed in a previous zone. Syntax all Example FileSelect All FileActions ... FileEnd See also FileSelect FileBoolean FileActions Archive Select all the items that have the "archive" attribute set (yes) or not set (no). Applications use this attribute to mark files for backup or removal. Syntax Archive(yes) Archive(no) Example FileSelect # Select all the items that have the "archive" attribute. Archive(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions AverageFragmentSize Select all the items that have an average number of bytes per fragment between the minimum (first number) and the maximum (second number). If the second number is zero then the maximum is infinity. For example, if an item is 300 bytes in size and has 3 fragments then it has an average fragment size of 100 bytes. Syntax AverageFragmentSize(NUMBER , NUMBER) Example FileSelect # Select all the items that have an average fragment size between 100 and 1000 bytes. AverageFragmentSize(100,1000) FileActions .... FileEnd See also FileSelect FileBoolean FileActions Compressed Select all the items that have the "compressed" attribute set (yes) or not set (no). For a file the attribute indicates if the file is compressed by the build-in Windows compression. For directories the attribute is the default for new files (directories by themselves cannot be compressed). Syntax Compressed(yes) Compressed(no) Example FileSelect # Select all the items that are compressed with the built-in Windows compression. Compressed(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions CreationDate Select all the items that were created between the minimum time (first parameter) and the maximum time (second parameter). If the first parameter is empty then the minimum time is the beginning of time. If the second parameter is empty then the maximum time is infinity. - The creation date can be newer than the last-changed date, for example when a file was downloaded, or unpacked from an archive (such as zip or arj). Syntax CreationDate(DATETIME , DATETIME) Example FileSelect # Select all the items that were created less than 10 days ago. CreationDate(10 days ago,now) FileActions .... FileEnd See also FileSelect FileBoolean FileActions Directory Select all the directories (yes) or all the other files (no). Please note that this boolean does not select the files in a directory, but the directory itself. Directories and files are separate entities. Directories cannot be moved (defragmented, optimized) on FAT32 volumes. This is a known limitation of the Windows defragmentation API and not a bug in MyDefrag. Moving directories is slower than moving files of the same size, presumably because Windows has to update indexes and links in the MFT. Syntax Directory(yes) Directory(no) Example FileSelect # Select all the directories. Directory(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions DirectoryName STRINGにマッチする名前を持つディレクトリをすべて選択し、そのディレクトリ以下にあるすべてのファイルとサブディレクトリを選択します。 STRINGにはワイルドカードとして"*"(0文字以上の任意の文字)と"?"(1文字の任意の文字)を選択できます STRINGにはスラッシュ・バックスラッシュ(および\マーク)を含めないでください。これはすべてのファイルのファイル名について比較しますが、このファイル名には(ファイルパスではないので)スラッシュなどが含まれていません。 この関数はすべてのハードリンク ファイル名を一つのアイテム(二つ名を持ち、同時に違う場所に存在するが、その実体は同じファイル)として扱います。ログファイルには最初に見つかった名前が載ります, so it may appear as if the function has selected some wrong items. この関数はソフトリンク(ジャンクション・シンボリックリンク)を追従しません。 Syntax DirectoryName(STRING) Example FileSelect # Select everything in the "Program Files" directory. DirectoryName("Program Files") FileActions .... FileEnd See also DirectoryPath FileName FullPath FileSelect FileBoolean FileActions DirectoryPath STRINGにマッチするフルパスを持つディレクトリをすべて選択します、そしてそのディレクトリ以下にあるすべてのファイルとサブディレクトリを選択します。STRINGにはワイルドカードとして"*"(0文字以上の任意の文字)と"?"(1文字の任意の文字)を選択できます。 この条件構文はDirectoryName()とよく似ていますが、これはディレクトリ名ではなくフルパスで比較するために多少遅いです。 STRINGはディレクトリのフルパスと比較され、マッチするでしょう。(The STRING is compared with and must match the full path of the directories.) ドライブレターにマッチするようなマスクを確認してください。ディレクトリパスというのは"c \windows\System32"といったような物のことです。バックスラッシュの追跡はしないことを覚えておいてください。(訳注 自信がないのでエロイ人お願いします。) この関数はすべてのハードリンク ファイル名を一つのアイテム(二つ名を持ち、同時に違う場所に存在するが、その実体は同じファイル)として扱います。ログファイルには最初に見つかった名前が載ります, so it may appear as if the function has selected some wrong items. この関数はソフトリンク(ジャンクション・シンボリックリンク)を追従しません。 Syntax DirectoryPath(STRING) Example FileSelect # Select everything in the "? \Program Files" directory. DirectoryPath("? \Program Files") FileActions .... FileEnd See also DirectoryName FileName FullPath FileSelect FileBoolean FileActions Encrypted Select all the items that have the "encrypted" attribute set (yes) or not set (no). For a file the attribute indicates if the file is encrypted by the build-in Windows encryption. For directories the attribute is the default for new files (directories by themselves cannot be encrypted). Syntax Encrypted(yes) Encrypted(no) Example FileSelect # Select all the items that have the "encrypted" attribute. Encrypted(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions 原文 http //www.mydefrag.com/Scripts-FileBoolean.html 更新日 2010/12/12 (ここで取り扱っている内容の原文をコピーした日付です) FileLocation Select the items (files, directories) that are located in a specified area on the disk. The ARGUMENT specifies one of several options to choose from, the first NUMBER is the beginning of the area and the second NUMBER the end, both in LCN (Logical Cluster Number). If the first NUMBER is zero then the area begins at the beginning of the disk. If the second NUMBER is zero then the area ends at the end of the disk. Syntax FileLocation(ARGUMENT , NUMBER , NUMBER) Argument Possible values for ARGUMENT BeginOfFile Select files if the beginning of the file is inside the area. EndOfFile Select files if the end of the file is inside the area. EntireFile Select files that have all their data inside the area. AnyPart Select files if any of their data is inside the area. AnyCompleteFragment Select files if at least 1 complete fragment is inside the area. Example # Highlight files from the beginning of the disk up to LCN=10000. SetFileColor(FileLocation(EntireFile,0,10000),all,255,255,255) See also FileSelect FileBoolean FileActions FileName STRINGにマッチするファイル名を持つファイルやディレクトリといったアイテムすべてを選択します。 STRINGにはワイルドカートとして*と?(ry)を含められます。 STRINGにはスラッシュやバックスラッシュ(および\円マーク)を含めないでください。すべてのファイル名について比較しますが、このファイル名にはスラッシュなどは含まれません。 この関数はすべてのハードリンク ファイル名を一つのアイテム(二つ名を持ち、同時に違う場所に存在するが、その実体は同じファイル)として扱います。ログファイルには最初に見つかった名前が載ります, so it may appear as if the function has selected some wrong items. この関数はソフトリンク(ジャンクション・シンボリックリンク)を追従しません。 Syntax FileName(STRING) Example FileSelect FileName("*.mp3") FileActions .... FileEnd See also DirectoryPath DirectoryName FullPath FileSelect FileBoolean FileActions FragmentCount Select all the items that have a number of fragments between the minimum (first number) and the maximum (second number). If the second number is zero then the maximum is infinity. Syntax FragmentCount(NUMBER , NUMBER) Example FileSelect # Select all the items that have at least 3 fragments and at most 10 fragments. FragmentCount(3,10) FileActions .... FileEnd See also FileSelect FileBoolean FileActions Fragmented Select all the items that are fragmented(yes) or not fragmented(no). Syntax Fragmented(yes) Fragmented(no) Example FileSelect # Select all the fragmented items. Fragmented(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions FullPath STRING1にマッチするフルパスを持つディレクトリをすべて選択します。また、そのディレクトリ以下でSTRING 2にマッチするすべてのディレクトリとサブディレクトリが選択されます。 STRING1/2にはワイルドカード"*" "?" (ry)が使用できます。 ドライブレターにもマッチするようにディレクトリマスクを書いてください。 ディレクトリパスとは "c \windows\System32"のような物のことです。ノート バックスラッシュは追跡しません。ただしルート(たとえば"C \")に限りバックスラッシュを持ちます。 "*"(star)ワイルドカードはディレクトリデリミタの"\"(backslash)もマッチします。(訳注 ちょっと自信ないです)、The "*" (star) wildcard will also match the "\" (backslash) character, so it span s directories. サブディレクトリにあるファイルもまた選択されます。たとえば 「FullPath("c \Windows","*.exe")」というコマンドはWindowsフォルダの中の.exeファイルだけを選択しますが、"Windows\System32"フォルダやWindows以下のすべてのサブフォルダの.exeファイルも処理されます。 この関数はすべてのハードリンク ファイル名を一つのアイテム(二つ名を持ち、同時に違う場所に存在するが、その実体は同じファイル)として扱います。ログファイルには最初に見つかった名前が載ります, so it may appear as if the function has selected some wrong items. この関数はソフトリンク(ジャンクション・シンボリックリンク)を追従しません。 Syntax FullPath(STRING1 , STRING2) Example FileSelect // Select all *.mp3 files in all "music" folders and subfolders. FullPath("*\music","*.mp3") FileActions .... FileEnd // How to include files in a directory but not it s subdirectories. FullPath("c \windows","*") and not (FullPath("c \windows\*","*")) See also FileName DirectoryName DirectoryPath FileSelect FileBoolean FileActions Hidden Select all the items that have the "hidden" attribute set (yes) or not set (no). Hidden items are not included by Windows in an ordinary directory listing. Syntax Hidden(yes) Hidden(no) Example FileSelect # Select all the items that have the "hidden" attribute. Hidden(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions ImportListFromBootOptimize Select the files that are listed in the "%SystemRoot%\Prefetch\Layout.ini" file. Windows XP and Vista create a list of items (files, directories, streams, etc.) that are accessed when the computer boots. MyDefrag can use that list to place the items in a zone. If used in conjunction with the * SortByImportSequence function it will place the items in the order in which they are loaded when booting. * If an item was already placed in a previous zone then it will not be selected and will not be moved. For example, the default Optimize scripts first place the MFT, then the directories, and then the items used when booting. The MFT and the directories are used when booting, but are not moved to the boot optimization zone because they have already been placed in a previous zone. * If you have a multiboot environment then the disk(s) will be optimized for the currently booted Windows. * Boot optimization is not limited to the volume where Windows is installed. If Windows uses items on other volumes, then those other volumes will also be boot optimized. Syntax ImportListFromBootOptimize() Example # Optimize the disks for faster booting. FileSelect ImportListFromBootOptimize() FileActions SortByImportSequence(Ascending) FileEnd Changing the list The "layout.ini" file is a standard Unicode text file and you can look at it with for example the Windows Notepad text editor. Microsoft (and I) feel that booting is finished when the desktop is visible and all programs have been started. The "layout.ini" file therefore lists all items that are used by Windows itself and by the first 32 programs that run after booting. The list is automatically updated by Windows, look at the date/time of the file to see when it was updated last. You can force an update with the following commandline. Rundll32.exe advapi32.dll,ProcessIdleTasks The list can contain some surprising items, files that you were not expecting to be accessed while booting. For example, Windows seems to scan lot s of folders when booting, perhaps it is looking for drivers or DLL s. The folders are listed in the layout.ini file, but the contents of the folders is not. Another example is that many programs contain their icon inside the main executable program. The executable will therefore be listed, not because the program was run when booting but because Windows needed to show the icon on the desktop. The same applies for other kinds of files, for example a big movie may end up in the list because you have a media player that is started in the background that does a quick check to see if the last played file is still there. Other background programs can do similar things. It s possible to change the list in several ways. The easiest way is to use the standard MyDefrag scripting commands. For example, to exclude all files larger than 100 megabytes you can do this # Create zone with files that are used while booting and are smaller than 100Mb. FileSelect ImportListFromBootOptimize() and Size(0,100MB) FileActions SortByImportSequence(Ascending) FileEnd Another way to change the list is by making a copy of the file, editing the file, and then using the MyDefrag * ImportListFromFile fileboolean to import the file. The advantage is that you will get a MyDefrag zone that changes very little. The disadvantage is that you have to do it all over again when something changes on the computer, for example when you install a new driver. See also SortByImportSequence FileSelect FileBoolean FileActions ImportListFromFile Select the items (files, directories) that are listed in the listfile. The STRING is the full path to an item on disk. The listfile is a flat text file, Unicode, UTF-8, or ASCII. The listfile must contain a list of full paths, 1 path per text line. For example C \WINDOWS\SYSTEM32\NTOSKRNL.EXE C \WINDOWS\SYSTEM32\PSHED.DLL C \WINDOWS\SYSTEM32\KDCOM.DLL C \WINDOWS\SYSTEM32\CLFS.SYS Paths that do not exist (or invalid paths) are quietly ignored. Folders are entities by themselves. If the listfile contains the name of a folder then only the folder will be selected, not the items in that folder or subfolders. If the listfile contains the name of an item that has already been processed (placed in a previous zone) then the item will not be selected (ignored). This is a fileboolean function and it only selects items. The FileActions will process the selected items, for example sort by name. The * SortByImportSequence fileaction will order the items in the same sequence in which they are listed in the listfile. Syntax ImportListFromFile(STRING) Example # Select and sort items exactly how I want it. FileSelect ImportListFromFile("c \users\jeroen\MyOptimizeList.txt") FileActions SortByImportSequence(Ascending) FileEnd See also SortByImportSequence FileSelect FileBoolean FileActions ImportListFromProgramHints Select the files that are listed in the "%SystemRoot%\Prefetch\*.pf" files. Windows XP and Vista create a logfile for every program that is started, containing (amongst other things) a list of items (files, directories, streams, etc.) that are accessed during the first 10 seconds of program startup. The logfiles are called "hint" files and are used by the Windows prefetcher to optimize disk access. MyDefrag can analyze the hint files and create a zone that contains all the referenced files. The zone will by default be sorted so that the most used program is first in the zone, with it s files in the order in which they are accessed. The STRING argument specifies which hint file(s) must be imported. Default is all the files in the "%SystemRoot%\Prefetch" folder. You can specify a wildcard "*" to match any character or "?" to match a single character. If the STRING contains a backslash ("\") then it is assumed to be a full path to a folder, to be used instead of the Windows prefetch folder. Hint files older than 30 days are ignored (skipped). The zone is sorted by how often programs have been started, the most started program first. This number is one of the statistics available in the hint files. Please note that a high number of startups does not necessarily mean that a program is important to the user. If a file was already placed in a previous zone then it will not be selected and will not be moved. For example, the default Optimize scripts first place the MFT, then the directories, and then the items used when booting. The MFT and the directories are used when starting a program, but are not moved to the program-hints zone because they have already been placed in a previous zone. The hint files do not list all files that belong to a program. Only the files that are accessed during the first 10 seconds of program startup. Program hints are not limited to the volume where Windows is installed. If a program uses files on other volumes then those other volumes will also be optimized. If you have a multiboot environment then the disk(s) will be optimized for the currently booted Windows. The hint files change a lot. A zone based on these files therefore also changes a lot. Syntax ImportListFromProgramHints(STRING) Example # Optimize the disk for faster program startup. FileSelect ImportListFromProgramHints("*") FileActions SortByImportSequence(Ascending) FileEnd See also SortByImportSequence FileSelect FileBoolean FileActions Largest Select the largests items (size in bytes). The argument is the number of items to be selected. Syntax Largest(NUMBER) Example FileSelect # Select the 10 largest files on the disk. Largest(10) FileActions .... FileEnd See also Smallest FileSelect FileBoolean FileActions LargestFragmentSize Select all the items that have a largest fragment with a size (in bytes) between the minimum (first number) and the maximum (second number). If the second number is zero then the maximum is infinity. Syntax LargestFragmentSize(NUMBER , NUMBER) Example FileSelect # Select all the items that have a largest fragment between 100 and 1000 bytes in size. LargestFragmentSize(100,1000) FileActions .... FileEnd See also FileSelect FileBoolean FileActions LastAccess Select all the items that have a last access time between the minimum time (first parameter) and the maximum time (second parameter). If the first parameter is empty then the minimum time is the beginning of time. If the second parameter is empty then the maximum time is infinity. * See the * LastAccessEnabled fileboolean to test if Windows is configured to record (update) the last access times. * Some improperly programmed utilities cause a change in the last access time of all items on the disk when they scan the disk. Examples are virus scanners, backup programs, text indexers. * On FAT volumes the resolution of the last access time is 1 day. NTFS delays updates to the last access time by up to one hour. Syntax LastAccess(DATETIME , DATETIME) Example FileSelect # Select all the items that were accessed less than 10 days ago. LastAccessEnabled(yes) and LastAccess(10 days ago,now) FileActions .... FileEnd See also LastAccessEnabled FileSelect FileBoolean FileActions LastAccessEnabled Select the items if Windows is configured to record (update) the last access times. This fileboolean is designed to be used together with the * LastAccess fileboolean. Windows XP and Vista have a setting to enable/disable the recording (updating) of the last access times of files. On Vista the default setting is not to record the last access times. You can enable or disable the Windows setting from a commandline with the "fsutil" command See current setting fsutil behavior query disablelastaccess Enable recording of last access time fsutil behavior set disablelastaccess 0 Disable recording of last access time fsutil behavior set disablelastaccess 1 Syntax LastAccessEnabled(yes) LastAccessEnabled(no) Example FileSelect # Select all the items that were accessed less than 10 days ago. LastAccessEnabled(yes) and LastAccess(10 days ago,now) FileActions .... FileEnd See also LastAccess FileSelect FileBoolean FileActions LastChange Select all the items that were changed between the minimum time (first parameter) and the maximum time (second parameter). If the first parameter is empty then the minimum time is the beginning of time. If the second parameter is empty then the maximum time is infinity. * The last-changed date can be older than the creation date, for example when a file was downloaded, or unpacked from an archive (such as zip or arj). Syntax LastChange(DATETIME , DATETIME) Example FileSelect # Select all the items that were changed less than 10 days ago. LastChange(10 days ago,now) FileActions .... FileEnd See also FileSelect FileBoolean FileActions 原文 http //www.mydefrag.com/Scripts-FileBoolean.html 更新日 2010/12/12 (ここで取り扱っている内容の原文をコピーした日付です) NOT Logically negate (invert) a file boolean. If the boolean is true then the result is false, and if the boolean is false then the result is true. Syntax not ( FILEBOOLEAN ) Example FileSelect not ( Name("*.zip") or Name("*.arj") ) FileActions ... FileEnd See also FileSelect FileBoolean FileActions NotToBeIndexed Select all the items that have the "NotToBeIndexed" attribute set (yes) or not set (no). This attribute is used by the Windows content indexing service and indicates that the item is not to be indexed. Syntax NotToBeIndexed(yes) NotToBeIndexed(no) Example FileSelect # Select all the items that have the "NotToBeIndexed" attribute. NotToBeIndexed(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions Offline Select all the items that have the "offline" attribute set (yes) or not set (no). This attribute is used by the Windows Remote Storage service and indicates that the file data is physically moved to offline storage. Syntax Offline(yes) Offline(no) Example FileSelect # Select all the items that do not have the "Offline" attribute. Offline(no) FileActions .... FileEnd See also FileSelect FileBoolean FileActions OR Logical OR of two file booleans. The result is true if at least 1 of the booleans is true. Syntax FILEBOOLEAN or FILEBOOLEAN FILEBOOLEAN | FILEBOOLEAN FILEBOOLEAN || FILEBOOLEAN Example FileSelect Size(10000000,0) or LastAccess("","1 month ago") FileActions ... FileEnd See also FileSelect FileBoolean FileActions Readonly Select all the items that are read-only (yes) or not read-only (no). Syntax Readonly(yes) Readonly(no) Example FileSelect # Select all the items that are read-only. Readonly(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions SelectNtfsSystemFiles Select all the NTFS system files. These files are usually not visible, but they exist on all NTFS disks. The function selects all the files that are in the root directory of the volume and have a name that begins with "$" (dollar sign), except for "$RECYCLE.BIN", and all files in the $Extend folder and it s subfolders. * This function is intended to be used together with the * PlaceNtfsSystemFiles fileaction. Inode Filename Description 0 $MFT Master File Table - An index of every file. 1 $MFTMirr A backup copy of the first 4 records of the MFT. 2 $LogFile Transactional logging file. 3 $Volume Serial number, creation time, dirty flag. 4 $AttrDef Attribute definitions. 6 $Bitmap Contains volume s cluster map (in-use vs. free). 7 $Boot Boot record of the volume. 8 $BadClus Lists bad clusters on the volume. 9 $Quota [Windows NT only] Quota information. 9 $Secure Security descriptors used by the volume. 10 $UpCase Table of uppercase characters used for collating. 11 $Extend A directory for $ObjId, $Quota, $Reparse, $UsnJrnl. $Extend\$ObjId Unique Ids given to every file. $Extend\$Quota Quota information. $Extend\$Reparse Reparse point information. $Extend\$UsnJrnl USN Journal. $Extend\$RmMetadata Transactional data. Syntax SelectNtfsSystemFiles(yes) SelectNtfsSystemFiles(no) Example FileSelect # Select all the NTFS system files. SelectNtfsSystemFiles(yes) FileActions # Place the selected files, sorted by their full path. PlaceNtfsSystemFiles(Ascending,MftSize * 0.1) FileEnd See also PlaceNtfsSystemFiles ReclaimNtfsReservedAreas Size Select all the items that have a size in bytes between the minimum (first number) and maximum (second number). If the second number is zero then the maximum is infinity. * Sparse files can have a larger size than what they are actually using on the disk. Syntax Size(NUMBER , NUMBER) Example FileSelect # Select all files with a size up to 10 gigabyte. Size(0,10000000000) FileActions .... FileEnd See also FileSelect FileBoolean FileActions Smallest Select the smallest items (size in bytes). The argument is the number of items to be selected. Syntax Smallest(NUMBER) Example FileSelect # Select the 10 smallest files on the disk. Smallest(10) FileActions .... FileEnd See also Largest FileSelect FileBoolean FileActions SmallestFragmentSize Select all the items that have a smallest fragment with a size (in bytes) between the minimum (first number) and the maximum (second number). If the second number is zero then the maximum is infinity. Syntax SmallestFragmentSize(NUMBER , NUMBER) Example FileSelect # Select all the items that have a smallest fragment between 100 and 1000 bytes in size. SmallestFragmentSize(100,1000) FileActions .... FileEnd See also FileSelect FileBoolean FileActions Sparse Select all the items that are sparse (yes) or not sparse (no). Syntax Sparse(yes) Sparse(no) Example FileSelect # Select all the items that are sparse. Sparse(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions System Select all the items that have the "system" attribute set (yes) or not set (no). This attribute is used by Windows to indicate items that are part of Windows, or that are used exclusively by Windows. This definition includes files such as the pagefile, "desktop.ini" files, just about everything in the Windows folder (including infrequently used stuff), temporary files, files in the recycle bin, and lot s of other stuff. Syntax System(yes) System(no) Example FileSelect # Select all the items that have the "System" attribute. System(yes) FileActions .... FileEnd Tip You can get a list of all the system files on the C disk with the following Windows commandline dir /A S /S c See also FileSelect FileBoolean FileActions Temporary Select all the items that have the "temporary" attribute set (yes) or not set (no). This attribute is used by Windows to indicate temporary items. The file system will attempt to keep all of the data in memory for quick access, rather than flushing it back to mass storage. Syntax Temporary(yes) Temporary(no) Example FileSelect # Select all the items that have the "Temporary" attribute. Temporary(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions Unmovable Select all the items that MyDefrag could not move. MyDefrag initially assumes that all items on disk are movable. Only after the Windows defragmentation API has refused to move an item will an item be "unmovable". Syntax Unmovable(yes) Unmovable(no) Example FileSelect # Select all the items that have the "Unmovable" attribute. Unmovable(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions Virtual Select all the items that have the "virtual" attribute set (yes) or not set (no). Syntax Virtual(yes) Virtual(no) Example FileSelect # Select all the items that have the "Virtual" attribute. Virtual(yes) FileActions .... FileEnd See also FileSelect FileBoolean FileActions
https://w.atwiki.jp/usb_audio/pages/35.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 36 4 Descriptors The following sections describe the standard and class-specific USB descriptors for the Audio Interface Class. 4.1 Device Descriptor Because audio functionality is always considered to reside at the interface level, this class specification does not define a specific audio device descriptor. For audio-only devices, the device descriptor must indicate that class information is to be found at the interface level. Therefore, the bDeviceClass field of the device descriptor must contain zero so that enumeration software looks down at the interface level to determine the Interface Class. The bDeviceSubClass and bDeviceProtocol fields must be set to zero. All other fields of the device descriptor must comply with the definitions in Section 9.6.1, “Descriptor” of the USB Specification. There is no class-specific device descriptor. 4.2 Configuration Descriptor In analogy to the device descriptor, an audio configuration descriptor is applicable only in the case of audio-only devices. It is identical to the standard configuration descriptor defined in Section 9.6.2, “Configuration” of the USB Specification. There is no class-specific configuration descriptor. 4.3 AudioControl Interface Descriptors The AudioControl (AC) interface descriptors contain all relevant information to fully characterize the corresponding audio function. The standard interface descriptor characterizes the interface itself, whereas the class-specific interface descriptor provides pertinent information concerning the internals of the audio function. It specifies revision level information and lists the capabilities of each Unit and Terminal. 4.3.1 Standard AC Interface Descriptor The standard AC interface descriptor is identical to the standard interface descriptor defined in Section 9.6.3, “Interface” of the USB Specification, except that some fields have now dedicated values. Table 4-1 Standard AC Interface Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 9 1 bDescriptorType 1 Constant INTERFACE descriptor type 2 bInterfaceNumber 1 Number Number of interface. A zero-based value identifying the index in the array of concurrent interfaces supported by this configuration. 3 bAlternateSetting 1 Number Value used to select an alternate setting for the interface identified in the prior field. |4|bNumEndpoints|1|Number|Number of endpoints used by this interface (excluding endpoint 0). This number is either 0 or 1 if the optional status interrupt endpoint is present.| USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 37 Offset Field Size Value Description 5 bInterfaceClass 1 Class AUDIO. Audio Interface Class code (assigned by the USB). See Section A.1, “Audio Interface Class Code.” 6 bInterfaceSubClass 1 Subclass AUDIOCONTROL. Audio Interface Subclass code. Assigned by this specification. See Section A.2, “Audio Interface Subclass Codes.” 7 bInterfaceProtocol 1 Protocol Not used. Must be set to 0. 8 iInterface 1 Index Index of a string descriptor that describes this interface. dummy 4.3.2 Class-Specific AC Interface Descriptor The class-specific AC interface descriptor is a concatenation of all the descriptors that are used to fully describe the audio function, i.e. all Unit Descriptors (UDs) and Terminal Descriptors (TDs). The total length of the class-specific AC interface descriptor depends on the number of Units and Terminals in the audio function. Therefore, the descriptor starts with a header that reflects the total length in bytes of the entire class-specific AC interface descriptor in the wTotalLength field. The bcdADC field identifies the release of the Audio Device Class Specification with which this audio function and its descriptors are compliant. The bInCollection field indicates how many AudioStreaming and MIDIStreaming interfaces there are in the Audio Interface Collection to which this AudioControl interface belongs. The baInterfaceNr() array contains the interface numbers of all the AudioStreaming and MIDIStreaming interfaces in the Collection. The bInCollection and baInterfaceNr() fields together provide all necessary information to determine which interfaces together constitute the entire USB interface to the audio function, i.e. describe the Audio Interface Collection. The order in which the Unit and Terminal descriptors are reported is not important because every descriptor can be identified through its bDescriptorType and bDescriptorSubtype field. The bDescriptorType field identifies the descriptor as being a class-specific interface descriptor. The bDescriptorSubtype field further qualifies the exact nature of the descriptor. The following table defines the class-specific AC interface header descriptor. Table 4-2 Class-Specific AC Interface Header Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 8+n 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant HEADER descriptor subtype. 3 bcdADC 2 BCD Audio Device Class Specification Release Number in Binary-Coded Decimal. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 38 Offset Field Size Value Description 5 wTotalLength 2 Number Total number of bytes returned for the class-specific AudioControl interface descriptor. Includes the combined length of this descriptor header and all Unit and Terminal descriptors. 7 bInCollection 1 Number The number of AudioStreaming and MIDIStreaming interfaces in the Audio Interface Collection to which this AudioControl interface belongs n 8 baInterfaceNr(1) 1 Number Interface number of the first AudioStreaming or MIDIStreaming interface in the Collection. … … … … … 8+(n-1) baInterfaceNr(n) 1 Number Interface number of the last AudioStreaming or MIDIStreaming interface in the Collection. This header is followed by one or more Unit and/or Terminal Descriptors. The layout of the descriptors depends on the type of Unit or Terminal they represent. There are seven types of Unit and Terminal Descriptors possible. They are summarized in the following sections. The first four fields are common for all Unit and Terminal Descriptors. They contain the Descriptor Length, Descriptor Type, Descriptor Subtype, and Unit or Terminal ID. Each Unit and Terminal within the audio function is assigned a unique identification number, the Unit ID (UID) or Terminal ID (TID), contained in the bUnitID or bTerminalID field of the descriptor. The value 0x00 is reserved for undefined ID, effectively restricting the total number of addressable Entities in the audio function (both Units and Terminals) to 255. Besides uniquely identifying all addressable Entities in an audio function, the IDs also serve to describe the topology of the audio function; i.e. the bSourceID field of a Unit or Terminal descriptor indicates to which other Unit or Terminal this Unit or Terminal is connected. 4.3.2.1 Input Terminal Descriptor The Input Terminal descriptor (ITD) provides information to the Host that is related to the functional aspects of the Input Terminal. The Input Terminal is uniquely identified by the value in the bTerminalID field. No other Unit or Terminal within the same alternate setting of the AudioControl interface may have the same ID. This value must be passed in the TerminalID field of each request that is directed to the Terminal. The wTerminalType field provides pertinent information about the physical entity that the Input Terminal represents. This could be a USB OUT endpoint, an external Line In connection, a microphone, etc. A complete list of Terminal Type codes is provided in a separate document, USB Audio Terminal Types, that is considered part of this specification. The bAssocTerminal field is used to associate an Output Terminal to this Input Terminal, effectively implementing a bi-directional Terminal pair. If the bAssocTerminal field is used, both associated Terminals must belong to the bi-directional Terminal Type group. If no association exists, the bAssocTerminal field must be set to zero. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 39 The Host software can treat the associated Terminals as being physically related. In many cases, one Terminal can not exist without the other. A typical example of such a Terminal pair is an Input Terminal, which represents the microphone, and an Output Terminal, which represents the earpiece of a headset. The bNrChannels, wChannelConfig and iChannelNames fields together constitute the cluster descriptor. They characterize the cluster that leaves the Input Terminal over the single Output Pin (‘downstream’ connection). For a detailed description of the cluster descriptor, see Section 3.7.2.3, “Audio Channel Cluster Format.” An index to a string descriptor is provided to further describe the Input Terminal. The following table presents an outline of the Input Terminal descriptor. Table 4-3 Input Terminal Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 12 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant INPUT_TERMINAL descriptor subtype. 3 bTerminalID 1 Constant Constant uniquely identifying the Terminal within the audio function. This value is used in all requests to address this Terminal. 4 wTerminalType 2 Constant Constant characterizing the type of Terminal. See USB Audio Terminal Types. 6 bAssocTerminal 1 Constant ID of the Output Terminal to which this Input Terminal is associated. 7 bNrChannels 1 Number Number of logical output channels in the Terminal’s output audio channel cluster. 8 wChannelConfig 2 Bitmap Describes the spatial location of the logical channels. 10 iChannelNames 1 Index Index of a string descriptor, describing the name of the first logical channel. 11 iTerminal 1 Index Index of a string descriptor, describing the Input Terminal. 4.3.2.2 Output Terminal Descriptor The Output Terminal descriptor (OTD) provides information to the Host that is related to the functional aspects of the Output Terminal. The Output Terminal is uniquely identified by the value in the bTerminalID field. No other Unit or Terminal within the same alternate setting of the AudioControl interface may have the same ID. This value must be passed in the UnitID field of each request that is directed to the Terminal. The wTerminalType field provides pertinent information about the physical entity the Output Terminal represents. This could be a USB IN endpoint, an external Line Out connection, a speaker system etc. A USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 40 complete list of Terminal Type codes is provided in a separate document, USB Audio Terminal Types that is considered part of this specification. The bAssocTerminal field is used to associate an Input Terminal to this Output Terminal, effectively implementing a bi-directional Terminal pair. If the bAssocTerminal field is used, both associated Terminals must belong to the bi-directional Terminal Type group. If no association exists, the bAssocTerminal field must be set to zero. The Host software can treat the associated Terminals as being physically related. In many cases, one Terminal can not exist without the other. A typical example of such a Terminal pair is an Input Terminal, which represents the microphone, and an Output Terminal, which represents the earpiece of a headset. The bSourceID field is used to describe the connectivity for this Terminal. It contains the ID of the Unit or Terminal to which this Output Terminal is connected via its Input Pin. The cluster descriptor, describing the logical channels entering the Output Terminal is not repeated here. It is up to the Host software to trace the connection ‘upstream’ to locate the cluster descriptor pertaining to this audio channel cluster. An index to a string descriptor is provided to further describe the Output Terminal. The following table presents an outline of the Output Terminal descriptor. Table 4-4 Output Terminal Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 9 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant OUTPUT_TERMINAL descriptor subtype. 3 bTerminalID 1 Constant Constant uniquely identifying the Terminal within the audio function. This value is used in all requests to address this Terminal. 4 wTerminalType 2 Constant Constant characterizing the type of Terminal. See USB Audio Terminal Types. 6 bAssocTerminal 1 Constant Constant, identifying the Input Terminal to which this Output Terminal is associated. 7 bSourceID 1 Constant ID of the Unit or Terminal to which this Terminal is connected. 8 iTerminal 1 Index Index of a string descriptor, describing the Output Terminal. 4.3.2.3 Mixer Unit Descriptor The Mixer Unit is uniquely identified by the value in the bUnitID field of the Mixer Unit descriptor (MUD). No other Unit or Terminal within the same alternate setting of the AudioControl interface may have the same ID. This value must be passed in the UnitID field of each request that is directed to the Mixer Unit. 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集
https://w.atwiki.jp/touhoukashi/pages/1383.html
【登録タグ A C-CLAYS Vivace -ヴィヴァーチェ- 厄神様の通り道 ~ Dark Road 小峠 舞 曲】 【注意】 現在、このページはJavaScriptの利用が一時制限されています。この表示状態ではトラック情報が正しく表示されません。 この問題は、以下のいずれかが原因となっています。 ページがAMP表示となっている ウィキ内検索からページを表示している これを解決するには、こちらをクリックし、ページを通常表示にしてください。 /** General styling **/ @font-face { font-family Noto Sans JP ; font-display swap; font-style normal; font-weight 350; src url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/10/NotoSansCJKjp-DemiLight.woff2) format( woff2 ), url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/9/NotoSansCJKjp-DemiLight.woff) format( woff ), url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/8/NotoSansCJKjp-DemiLight.ttf) format( truetype ); } @font-face { font-family Noto Sans JP ; font-display swap; font-style normal; font-weight bold; src url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/13/NotoSansCJKjp-Medium.woff2) format( woff2 ), url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/12/NotoSansCJKjp-Medium.woff) format( woff ), url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2972/11/NotoSansCJKjp-Medium.ttf) format( truetype ); } rt { font-family Arial, Verdana, Helvetica, sans-serif; } /** Main table styling **/ #trackinfo, #lyrics { font-family Noto Sans JP , sans-serif; font-weight 350; } .track_number { font-family Rockwell; font-weight bold; } .track_number after { content . ; } #track_args, .amp_text { display none; } #trackinfo { position relative; float right; margin 0 0 1em 1em; padding 0.3em; width 320px; border-collapse separate; border-radius 5px; border-spacing 0; background-color #F9F9F9; font-size 90%; line-height 1.4em; } #trackinfo th { white-space nowrap; } #trackinfo th, #trackinfo td { border none !important; } #trackinfo thead th { background-color #D8D8D8; box-shadow 0 -3px #F9F9F9 inset; padding 4px 2.5em 7px; white-space normal; font-size 120%; text-align center; } .trackrow { background-color #F0F0F0; box-shadow 0 2px #F9F9F9 inset, 0 -2px #F9F9F9 inset; } #trackinfo td ul { margin 0; padding 0; list-style none; } #trackinfo li { line-height 16px; } #trackinfo li nth-of-type(n+2) { margin-top 6px; } #trackinfo dl { margin 0; } #trackinfo dt { font-size small; font-weight bold; } #trackinfo dd { margin-left 1.2em; } #trackinfo dd + dt { margin-top .5em; } #trackinfo_help { position absolute; top 3px; right 8px; font-size 80%; } /** Media styling **/ #trackinfo .media th { background-color #D8D8D8; padding 4px 0; font-size 95%; text-align center; } .media td { padding 0 2px; } .media iframe nth-of-type(n+2) { margin-top 0.3em; } .youtube + .nicovideo, .youtube + .soundcloud, .nicovideo + .soundcloud { margin-top 0.75em; } .media_section { display flex; align-items center; text-align center; } .media_section before, .media_section after { display block; flex-grow 1; content ; height 1px; } .media_section before { margin-right 0.5em; background linear-gradient(-90deg, #888, transparent); } .media_section after { margin-left 0.5em; background linear-gradient(90deg, #888, transparent); } .media_notice { color firebrick; font-size 77.5%; } /** Around track styling **/ .next-track { float right; } /** Infomation styling **/ #trackinfo .info_header th { padding .3em .5em; background-color #D8D8D8; font-size 95%; } #trackinfo .infomation_show_btn_wrapper { float right; font-size 12px; user-select none; } #trackinfo .infomation_show_btn { cursor pointer; } #trackinfo .info_content td { padding 0 0 0 5px; height 0; transition .3s; } #trackinfo .info_content ul { padding 0; margin 0; max-height 0; list-style initial; transition .3s; } #trackinfo .info_content li { opacity 0; visibility hidden; margin 0 0 0 1.5em; transition .3s, opacity .2s; } #trackinfo .info_content.infomation_show td { padding 5px; height 100%; } #trackinfo .info_content.infomation_show ul { padding 5px 0; max-height 50em; } #trackinfo .info_content.infomation_show li { opacity 1; visibility visible; } #trackinfo .info_content.infomation_show li nth-of-type(n+2) { margin-top 10px; } /** Lyrics styling **/ #lyrics { font-size 1.06em; line-height 1.6em; } .not_in_card, .inaudible { display inline; position relative; } .not_in_card { border-bottom dashed 1px #D0D0D0; } .tooltip { display flex; visibility hidden; position absolute; top -42.5px; left 0; width 275px; min-height 20px; max-height 100px; padding 10px; border-radius 5px; background-color #555; align-items center; color #FFF; font-size 85%; line-height 20px; text-align center; white-space nowrap; opacity 0; transition 0.7s; -webkit-user-select none; -moz-user-select none; -ms-user-select none; user-select none; } .inaudible .tooltip { top -68.5px; } span hover + .tooltip { visibility visible; top -47.5px; opacity 0.8; transition 0.3s; } .inaudible span hover + .tooltip { top -73.5px; } .not_in_card span.hide { top -42.5px; opacity 0; transition 0.7s; } .inaudible .img { display inline-block; width 3.45em; height 1.25em; margin-right 4px; margin-bottom -3.5px; margin-left 4px; background-image url(https //img.atwikiimg.com/www31.atwiki.jp/touhoukashi/attach/2971/7/Inaudible.png); background-size contain; background-repeat no-repeat; } .not_in_card after, .inaudible .img after { content ; visibility hidden; position absolute; top -8.5px; left 42.5%; border-width 5px; border-style solid; border-color #555 transparent transparent transparent; opacity 0; transition 0.7s; } .not_in_card hover after, .inaudible .img hover after { content ; visibility visible; top -13.5px; left 42.5%; opacity 0.8; transition 0.3s; } .not_in_card after { top -2.5px; left 50%; } .not_in_card hover after { top -7.5px; left 50%; } .not_in_card.hide after { visibility hidden; top -2.5px; opacity 0; transition 0.7s; } /** For mobile device styling **/ .uk-overflow-container { display inline; } #trackinfo.mobile { display table; float none; width 100%; margin auto; margin-bottom 1em; } #trackinfo.mobile th { text-transform none; } #trackinfo.mobile tbody tr not(.media) th { text-align left; background-color unset; } #trackinfo.mobile td { white-space normal; } document.addEventListener( DOMContentLoaded , function() { use strict ; const headers = { title アルバム別曲名 , album アルバム , circle サークル , vocal Vocal , lyric Lyric , chorus Chorus , narrator Narration , rap Rap , voice Voice , whistle Whistle (口笛) , translate Translation (翻訳) , arrange Arrange , artist Artist , bass Bass , cajon Cajon (カホン) , drum Drum , guitar Guitar , keyboard Keyboard , mc MC , mix Mix , piano Piano , sax Sax , strings Strings , synthesizer Synthesizer , trumpet Trumpet , violin Violin , original 原曲 , image_song イメージ曲 }; const rPagename = /(?=^|.*