約 5,666,717 件
https://w.atwiki.jp/kojiro/pages/19.html
これらの関数のいくつかはマクロシートでしか使えません。 A1.R1C1 行と列の表示形式をA1 形式とR1C1 形式で切り替えます。 ABSREF ACTIVATE ACTIVATE.NEXT 次のウィンドウを表示します。 ACTIVATE.PREV 前のウィンドウを表示します。 ACTIVE.CELL ACTIVE.CELL.FONT ADD.ARROW ADD.BAR ADD.CHART.AUTOFORMAT ADD.COMMAND ADD.MENU ADD.OVERLAY ADD.TOOL ADD.TOOLBAR ADDIN.MANAGER ALERT ALIGNMENT ANOVA1 ANOVA2 ANOVA3 APP.ACTIVATE.MICROSOFT APP.ACTIVATE APP.MAXIMIZE APP.MINIMIZE APP.MOVE APP.RESTORE APP.SIZE APP.TITLE APPLY.NAMES APPLY.STYLE ARGUMENT ARRANGE.ALL ASSIGN.TO.OBJECT ASSIGN.TO.TOOL ATTACH.TEXT ATTACH.TOOLBARS AUTO.OUTLINE AXES BEEP BORDER BREAK BRING.TO.FRONT オブジェクトを前面に移動します。 CALCULATE.DOCUMENT CALCULATE.NOW CALCULATION CALLER CANCEL.COPY CANCEL.KEY CELL.PROTECTION CHANGE.LINK CHART.ADD.DATA CHART.TREND CHART.WIZARD グラフ作成ウィザードを起動します。 CHECK.COMMAND CLEAR CLEAR.OUTLINE CLEAR.ROUTING.SLIP CLOSE CLOSE.ALL COLOR.PALETTE COLUMN.WIDTH 列の幅を設定します。 COMBINATION CONSOLIDATE CONSTRAIN.NUMERIC COPY コピーします。 COPY.CHART グラフをコピーします。 COPY.PICTURE オブジェクトをコピーします。 COPY.TOOL CREATE.NAMES 名前を定義します。 CREATE.OBJECT CREATE.PUBLISHER CUSTOM.REPEAT CUSTOM.UNDO CUT 切り取ります。 DATA.DELETE DATA.FIND DATA.FIND.NEXT DATA.FIND.PREV DATA.FORM DATA.LABEL DATA.SERIES DEFINE.NAME 名前の定義ダイアログボックスを開きます。 DEFINE.STYLE セルのスタイルを定義します。 DELETE.ARROW 矢印を削除します。 DELETE.BAR DELETE.CHART.AUTOFORMAT DELETE.COMMAND DELETE.FORMAT DELETE.MENU DELETE.NAME 定義した名前を削除します。 DELETE.OVERLAY オーバレイを削除します。 DELETE.STYLE スタイルを削除します。 DELETE.TOOL DELETE.TOOLBAR DEMOTE DEREF DESCR DIALOG.BOX DIRECTORY DISABLE.INPUT DISPLAY DOCUMENTS DUPLICATE ECHO EDIT.COLOR EDIT.DELETE セル、行、列を削除します。 EDIT.OBJECT EDIT.REPEAT EDIT.SERIES EDIT.TOOL EDITION.OPTIONS ELSE ELSE.IF EMBED ENABLE.COMMAND ENABLE.TIPWIZARD ENABLE.TOOL END.IF ENTER.DATA ERROR ERRORBAR.X ERRORBAR.Y EVALUATE EXEC EXECUTE EXPON EXTEND.POLYGON EXTRACT FCLOSE FILE.CLOSE FILE.DELETE FILL.AUTO FILL.DOWN FILL.GROUP FILL.LEFT FILL.RIGHT FILL.UP FILTER オートフィルタを使います。 FILTER.ADVANCED FILTER.SHOW.ALL FIND.FILE FONT フォントダイアログボックスを開きます。 FONT.PROPERTIES FORMAT.AUTO FORMAT.CHART FORMAT.CHARTTYPE FORMAT.FONT FORMAT.LEGEND FORMAT.MAIN FORMAT.MOVE FORMAT.NUMBER FORMAT.OVERLAY FORMAT.SHAPE FORMAT.SIZE FORMAT.TEXT FORMULA.FILL FORMULA.FIND 検索します。 FORMULA.FIND.NEXT 次の検索候補を表示します。 FORMULA.FIND.PREV 前の検索候補を表示します。 FORMULA.GOTO FORMULA.REPLACE FREEZE.PANES ウィンドウ表示を固定します。 FULL FULL.SCREEN FUNCTION.WIZARD GALLERY.3D.AREA GALLERY.3D.BAR GALLERY.3D.COLUMN GALLERY.3D.LINE GALLERY.3D.PIE GALLERY.3D.SURFACE GALLERY.AREA GALLERY.BAR GALLERY.COLUMN GALLERY.CUSTOM GALLERY.DOUGHNUT GALLERY.LINE GALLERY.PIE GALLERY.RADAR GALLERY.SCATTER GOAL.SEEK GRIDLINES GROUP オブジェクトをグループ化します。 HIDE HIDE.OBJECT HLINE HPAGE HSCROLL INSERT セル、行、列を挿入します。 INSERT.PICTURE オブジェクトを挿入します。 INSERT.TITLE JUSTIFY 均等揃えにします。 LEGEND LINK.FORMAT LINKS LIST.NAMES 定義された名前の一覧を表示します。 INSERT MAIL.ADD.MAILER MAIL.DELETE.MAILER MAIL.EDIT.MAILER MAIL.FORWARD MAIL.LOGOFF MAIL.LOGON MAIL.NEXT.LETTER MAIL.REPLY MAIL.REPLY.ALL MAIN.CHART MAIN.CHART.TYPE MENU.EDITOR MERGE.STYLES MOVE NEW 新しいファイルを作成します。 NEW.WINDOW 新しいウィンドウを開きます。 NOTE OBJECT.PROPERTIES オブジェクトの書式設定を行います。 OBJECT.PROTECTION OPEN ファイルを開きます。 OPEN.LINKS OPEN.MAIL OPEN.TEXT OPTIONS.CALCULATION OPTIONS.CHART OPTIONS.EDIT OPTIONS.GENERAL OPTIONS.LISTS.ADD OPTIONS.LISTS.DELETE OPTIONS.TRANSITION OPTIONS.VIEW OUTLINE OVERLAY PAGE.SETUP ページ設定を行います。 PARSE PASTE 貼り付けます。 PASTE.LINK PASTE.PICTURE 絵を貼り付けます。 PASTE.PICTURE.LINK 絵をリンクつきで貼り付けます。 PASTE.SPECIAL 形式を選択して貼り付けます。 PATTERNS パターンを設定します。 PIVOT.ADD.DATA ピボットテーブルにデータを追加します。 PIVOT.ADD.FIELDS ピボットテーブルにフィールドを追加します。 PIVOT.FIELD PIVOT.FIELD.GROUP PIVOT.FIELD.PROPERTIES PIVOT.FIELD.UNGROUP PIVOT.ITEM.PROPERTIES PIVOT.ITEM PIVOT.REFRESH PIVOT.SHOW.PAGES PIVOT.TABLE.WIZARD PLACEMENT PRECISION PREFERRED PRINT 印刷します。 PRINT.PREVIEW 印刷プレビューを表示します。 PRINTER.SETUP 印刷設定をします。 PROMOTE PROTECT.DOCUMENT ファイルを保護します。 QUERY.GET.DATA QUERY.REFRESH QUIT Excel を終了します。 REMOVE.PAGE.BREAK 改ページ設定を解除します。 RENAME.OBJECT REPLACE.FONT REPORT.DEFINE REPORT.DELETE レポートを削除します。 REPORT.PRINT レポートを印刷します。 RESUME ROUTE.DOCUMENT ROUTING.SLIP ROW.HEIGHT 行の高さを設定します。 RUN マクロを開始します。 SAMPLE SAVE ファイルを保存します。 SAVE.AS ファイルを別名をつけて保存します。 SAVE.COPY.AS SAVE.WORKBOOK SAVE.WORKSPACE SCALE SCENARIO.ADD SCENARIO.CELLS SCENARIO.DELETE シナリオを削除します。 SCENARIO.EDIT SCENARIO.SHOW SCENARIO.SHOW.NEXT SCENARIO.SUMMARY SELECT セル、列、行、オブジェクトを選択します。 SELECT.ALL 全てを選択します。 SELECT.CHART グラフを選択します。 SELECT.END SELECT.LAST.CELL 最後のセルを選択します。 SELECT.PLOT.AREA SELECT.SPECIAL SEND.MAIL SEND.TO.BACK SERIES SERIES.AXES SERIES.ORDER SERIES.X SERIES.Y SET.PAGE.BREAK 改ページ位置を挿入します。 SET.PREFERRED SET.PRINT.AREA 印刷範囲を設定します。 SET.PRINT.TITLES 印刷タイトルを設定します。 SHORT.MENUS SHOW.ACTIVE.CELL SHOW.BAR SHOW.CLIPBOARD SHOW.DETAIL SHOW.INFO SHOW.LEVELS SHOW.TOOLBAR SIZE SLIDE.COPY.ROW SLIDE.CUT.ROW SLIDE.DEFAULTS SLIDE.DELETE.ROW SLIDE.EDIT SLIDE.PASTE SLIDE.PASTE.ROW SLIDE.SHOW SOLVER.ADD SOLVER.CHANGE SOLVER.DELETE SOLVER.FINISH SOLVER.LOAD SOLVER.OK SOLVER.OPTIONS SOLVER.RESET SOLVER.SAVE SOLVER.SOLVE SORT 並べ替えます。 SOUND.NOTE SOUND.PLAY SPELLING スペルチェックを行います。 SPLIT 画面を分割します。 STANDARD.FONT STANDARD.WIDTH STYLE SUBTOTAL.CREATE SUBTOTAL.REMOVE SUMMARY.INFO TABLE TEXT.BOX テキストボックスを挿入します。 TEXT.TO.COLUMNS TRACER.CLEAR TRACER.DISPLAY TRACER.ERROR TRACER.NAVIGATE UNDO 直前の操作を取り消します。 UNGROUP グループを解除します。 UNHIDE UNLOCKED.NEXT UNLOCKED.PREV UPDATE.LINK リンクを更新します。 VBA.INSERT.FILE VBA.MAKE.ADDIN VIEW.3D VIEW.DEFINE VIEW.DELETE VIEW.SHOW VLINE VPAGE VSCROLL WINDOW.MAXIMIZE ウィンドウを最大サイズで表示します。 WINDOW.MINIMIZE ウィンドウを最小サイズで表示します。 WINDOW.MOVE ウィンドウを移動します。 WINDOW.RESTORE WINDOW.SIZE ウィンドウのサイズを変更します。 WORKBOOK.ACTIVATE WORKBOOK.ADD WORKBOOK.COPY WORKBOOK.DELETE WORKBOOK.HIDE WORKBOOK.INSERT WORKBOOK.MOVE WORKBOOK.NAME WORKBOOK.NEW WORKBOOK.NEXT WORKBOOK.OPTIONS WORKBOOK.PREV WORKBOOK.PROTECT WORKBOOK.SCROLL WORKBOOK.SELECT WORKBOOK.TAB.SPLIT WORKBOOK.UNHIDE WORKGROUP WORKSPACE ZOOM ズーム表示を行います。
https://w.atwiki.jp/yurina0106/pages/4292.html
タグ 2009年 ETERNAL 作品名N Nega0(ネガゼロ) 初回限定版 曲名 歌手名 作詞 作曲 ジャンル カラオケ OP ネガティブゼロ・パラダイス 有栖川みや美 砂守岳央 四十万行道 電波 OP Blue flame 有栖川みや美 砂守岳央 四十万行道 かっこいい ED Sweet Machine 安芸らら 砂守岳央 四十万行道 電波 ED みもざのはな さくらはづき 浦沢環 四十万行道 感動
https://w.atwiki.jp/androidnetrunner/pages/214.html
imageプラグインエラー ご指定のURLはサポートしていません。png, jpg, gif などの画像URLを指定してください。 #58 Cyber Exodus (サイバーラッシュ) #59 #60 Neutral (中立) Asset (アセット) Transaction (取引) Rez Cost (レゾコスト) 3 Trash Cost (トラッシュコスト) 5 Influence Value (影響値) 0 Card Text Place 14[Credits] from the bank on Private Contracts when it is rezzed. When there are no credits left on Private Contracts, trash it. [Click] Take 2[Credits] from Private Contracts. カードテキスト (日本語) 個人契約のレゾ時、バンクから14[クレジット]を上に置く。個人契約の上にクレジットが残っていない時、これをトラッシュする。 [クリック] 個人契約から2[クレジット]を得る。 Illus. (イラストレーター) Mauricio Herrera
https://w.atwiki.jp/fft_cheat/pages/92.html
BATTLE.BIN127D50~14F8E0 オフセット +19ED50h 14C37CからEFFECTフォルダ内のファイル情報 1ファイルにつき8バイト使用、内訳は 4バイト、読込開始ブロック 4バイト、読込サイズ(2048バイト単位) ※どちらもリトルエンディアン値 数値それぞれがeffectフォルダのファイルに 対応している 詳しくはEFFECTフォルダEFFECTフォルダ 名前 コメント
https://w.atwiki.jp/taptitans2/pages/16.html
新機能 Brand new skill tree featuring all-new, customizable character classes for you to choose from. And that s not all - below is a list of other exciting content for you to explore 2 artifacts 2 backgrounds 20 new equipment 41 new Titans 1000 more stages to play through (with more to come!) Brand new skill tree with 34 skills to unlock More stages! The stage capacity will be increased to 5000 at the launch of v2.0. This will allow you to use your new skills coming from the skill tree to improve your powers and push further than you ve ever had before. Once you have got the hang of the new skill tree, we plan on increasing it even more within a few weeks time. So make sure you put those skill points to good use, as there will be more stages to conquer! New, expansive class-inspired skill tree replacing the current skill trees. Knight - 9 Skills (Tier 1) Knight’s Valor – Multiplies Tap Damage (Tier 2) Chivalric Order - Increases Tap Damage from Heroes (Tier 2) Pet Evolution - Increases Pet Damage and at greater levels reduces taps required (Tier 2) Heart of Midas - Generates Gold from Pet and at great levels reduces generation cooldown (Tier 3) Cleaving Strike - Multiplies Maximum Critical Damage while reducing Critical Chance (Tier 3) Summon Golem - Multiplies Fire Sword Damage (Tier 3) Lightning Burst - Multiplies Pet Damage per Burst and increases max splash count (Tier 4) Barbaric Fury - Multiply Active Tap Damage and adds bonus tap per second (Tier 4) Flash Zip - Multiply Pet Damage per Zip Tap and at greater levels reduce cooldown Warlord - 8 Skills (Tier 1) Master Commander - Multiplies All Hero Damage (Tier 2) Spoils of War - Multiply Chesterson Gold and increase Chesterson chance (Tier 2) Heroic Might - Multiply War Cry Damage and increase inspired hero count (Tier 2) Aerial Assault - Multiply Clan Based Damage and increases maximum splash count (Tier 3) Tactical Insight -Increase Hero Unlockable Skill Multiplier and Increase Skill Bonuses (Tier 3) Coordinated Offensive - Multiply Active All Hero Damage and at greater levels reduce cooldown (Tier 4) Astral Awakening - Multiply All Hero Damage per Tap and at greater level reduces cooldown (Tier 4) Anchoring Shot - Stuns Titans, multiply Stun Damage and increases stun duration Sorcerer - 10 Skills (Tier 1) Limit Break - Increases Mana capacity and increases mana regeneration (Tier 2) Manni Mana - Increases Mana replenished and increases spawn chance (Tier 2) Heavenly Strike - Multiplies Heavenly Strike Damage and at greater levels increases splash skip (Tier 2) Phantom Vengeance - Multiplies Shadow Clone Damage and increases attacks per second (Tier 3) Fairy Charm - Increases Multiple Fairy Chance spawn and reduce spawn cooldown (Tier 3) Mana Siphon - Recovers a percentage of Mana capacity (Tier 3) Eternal Darkness - Increases Shadow Clone duration and reduces cooldown (Tier 4) Midas Ultimate - Multiplies Hand of Midas gold and Fairy gold (Tier 4) Lightning Strike - Deals a percentage of Titan Health as damage and increases chance of occurrence. (Tier 4) Dimensional Shift - Multiplies Primary Active skill effects and decrease boss timer tick down rate Rogue - 7 Skills (Tier 1) Master Thief - Multiplies All gold earned and inactive gold earned (Tier 2) Assassinate - Multiplies Deadly Strike Damage and increase Deadly Strike chance (Tier 2) Silent March - Advances to a percentage of your max prestige while offline (Tier 2) Ambush - Increases Multi-spawn chance (Tier 3) Twilight s Veil - Increases Inactive Pet Damage and Multiply Pet Deadly Strike Damage (Tier 3) Ghost Ship - Increase Inactive Clan Ship Damage and Multiply Clan Deadly Strike Damage (Tier 3) Shadow Assassin - Increases Inactive Clone Damage and Multiply Clone Deadly Strike Damage Moved out of the skill tree and turned into a passive is Intimidating Presence, and below are the required skill points in order unlock the passive skill and reduce number of Titans up to 18. Unlock requirements are shown in-game and will not be required to unlock the passive after each prestige. This passive skill will be able to go up to and reduce the number of Titans by up to 62. Each stage will continue to require 1 Titan before having to defeat a Boss Titan to advance to the next stage. IP123456789101112131415161718 Cost41323334557708397112127143160177196214234254 Please note that this only shows the cost of the first 18 IP levels, and that all values are subject to change at anytime. We have added 20 new pieces of equipment that you ll see as you begin your rebooted journey. Most notable changes that come to equipment are that we changed some of the current Tap Damage slash equipment into Clan Ship Damage, as a means to make these items relevant again. Along with Clan Ship Damage, we have added some help for the Shadow Clone in the form of slash equipment as well. Selling of Rare and Legendary equipment have been increased from the previous value of 2 diamonds 3 diamonds to 5 diamonds 25 diamonds, respectively, so those looking to get rid of some of your older finds can now do so with added reward. Visually you will notice 2 new backgrounds coming to the Tap Titans 2 world, along with 41 new Titans to battle against on your journey towards the max stage. We have added 2 new artifacts that will come and support the damage types we have recently added into the game. Influencer Elixir - Increases Clan Ship Damage Royal Toxin - Increases Deadly Strike Damage Tournaments have been changed to promote progression as brackets will no longer be determined by your max prestige but your max potential prestige. Players will be placed into brackets with other players that have similar potential for example, if you are a player who prestiges only at 1800 as to stay in the bracket but have similar or identical artifact levels, pet levels and equipment as a player who has prestiged at 4000, then you will be placed in the same bracket even though you never prestiged at 4000 because your potentials will be determined as equal. This is in efforts to balance the tournaments further and increase the likeliness for new players to be placed into brackets with other new players, in addition for more advanced players to be match against each other. Players who attempt to circumvent the max potential prestige brackets by leaving a clan before joining a tournament to decrease their potential (and then joining a clan again) will not be placed in a weaker tournament bucket. This value is hidden, only known on the server, which determines the damage and stage you are capable of reaching. We have added a little more incentive for players to advance in the brackets as well - we have added a bonus rank that will award more prizes if a player is the highest in their tournament and no tie is found. Meaning that if you are in a race to your highest potential stage and you win a tournament as the one and only champion, you will receive an Undisputed Champion prize bonus! And as announced in the game, there will be server maintenance at 13 00 UTC for at least 5 hours on Wednesday, September 27th, to ensure that the update is rolled out smoothly and successfully. We really appreciate your patience and understanding with this - we’re itching to get v.2.0 out just as much as you are! Tap On! ⚔
https://w.atwiki.jp/ddrspwiki2nd/pages/204.html
曲名 アーティスト フォルダ 難易度 BPM NOTES/FREEZE(SHOCK) CaptivAte ~誓い~ DJ YOSHITAKA feat.A/I SuperNOVA2 激13 160 420/15 譜面 http //eba502.web.fc2.com/fumen/ddr/sn2/captiv_c_4m.html 動画 http //www.youtube.com/watch?v=olfkDh7-qBA (x2.0,NOTE) 解説 音合わせの16分配置が多い。部分的に忙しい所も割と見られる。 序盤に裏拍が軸になる8分踏みがある。リズム意識をしっかりと。 終盤で一気に難化、音合わせのスキップが大量に来る。あらかじめ曲を聴いてリズムを覚えておくと良い。 DDRでの初出はAC版SN2だが、当時は足8だった。 名前 コメント コメント(感想など) 等速だと終盤はリズムが取りづらい・・・。あの部分だけ足14だと思う。 -- 名無しさん (2011-02-28 00 07 18) 中盤のリズムがちょくちょく変わるから今一つスコアが出ない -- 名無しさん (2012-01-27 17 24 16) 名前 コメント
https://w.atwiki.jp/todo314/pages/200.html
Influence Maximization in Social Networks When Negative Opinions May Emerge and Propagate Wei Chen, Alex Collins, Rachel Cummings, Te Ke, Zhenming Liu, David Rincon, Xiaorui Sun, Yajun Wang, Wei Wei, Yifei Yuan SDM 2011 概要 商品の質が低かったらdisる人も出るよねーをモデル化 質をパラメータに含めたNegative Opinion付き positiveな人数が目的関数ならsubmodularは保たれる 速い手法を作って実験してみたよ Independent Cascade Model with Negative Opinions 状態は3つ,inactive,positive,negative 最初にシードをactiveにして,確率qでpositive,1-qでnegative positiveが近傍をactivateするときには,確率qでpositive,1-qでnegative negativeが近傍をactivateするときには,常にnegative activeになったら状態は変わらない かなり悲観的な設定 目的関数はpositiveな頂点数の期待値 シチュエーション ネガティブな意見は強い 商品に欠点があったらネガティブになる ネットワーク科学的な根拠を色々と持ちだしている 悲観的な感じなら納得 性質 monotoneかつsubmodular かなり非自明に感じる とりあえずO(knmR)貪欲はできる 提案手法ではMIAを拡張している Quality Sensitivity in Influence Maximization "universally good enough"なquality factor q*はあるか? 無い この辺は正直良くわからん O(√n/k)とからしい… 実験 設定とかは普通 qを変えると線形より早くσが上昇する感じ 主張 質=qを高く保つのが大事だね モデルの拡張 quality factorを頂点毎 伝播確率をpositive / negativeで変える 遅延 目的関数を変える, e.g., positiveとnegativeの差とか比 まとめ 手法は例のごとく謎だが,他は割りと面白い? SDM influence maximization modeling 2014-03-15 05 48 43 (Sat)
https://w.atwiki.jp/0x0b/pages/55.html
Syntax Pattern Disjunction Disjunction Alternative Alternative | Disjunction Alternative [empty] Alternative Term Term Assertion Atom Atom Quantifier Assertion ^ $ \ b \ B Quantifier QuantifierPrefix QuantifierPrefix ? QuantifierPrefix * ? { DecimalDigits } { DecimalDigits , } { DecimalDigits , DecimalDigits } Atom PatternCharacter . \ AtomEscape CharacterClass ( Disjunction ) ( ? Disjunction ) ( ? = Disjunction ) ( ? ! Disjunction ) PatternCharacter SourceCharacter but not any of ^ $ \ . * + ? ( ) [ ] { } | AtomEscape DecimalEscape CharacterEscape CharacterClassEscape CharacterEscape ControlEscape c ControlLetter HexEscapeSequence UnicodeEscapeSequence IdentityEscape ControlEscape one of f n r t v ControlLetter one of a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z IdentityEscape SourceCharacter but not IdentifierPart DecimalEscape DecimalIntegerLiteral [lookahead ( DecimalDigit] CharacterClassEscape one of d D s S w W CharacterClass [ [lookahead ∉ {^} ] ClassRanges ] [ ^ ClassRanges ] ClassRanges [empty] NonemptyClassRanges NonemptyClassRanges ClassAtom ClassAtom NonemptyClassRangesNoDash ClassAtom - ClassAtom ClassRanges NonemptyClassRangesNoDash ClassAtom ClassAtomNoDash NonemptyClassRangesNoDash ClassAtomNoDash - ClassAtom ClassRanges ClassAtom ClassAtomNoDash ClassAtomNoDash SourceCharacter but not one of \ ] - \ ClassEscape ClassEscape DecimalEscape b CharacterEscape CharacterClassEscape 表記法(Notation) **変数$ Input[n] InputLength NCaputuringParens IgnoreCase Multiline 内部データ構造 Charset State (endIndex, captures) @(Int, NCaputuringParens) Index+1 undefined MatchResult state/特殊トークン failure Continuation関数 内部クロージャ (すなわち、引数が既に値に結合されている内部関数) 1state MatchResult Matcher関数 state continuation MatchResult AssersionTester関数 state true/false EscapeValue エスケープシーケンス(シークエンス) 文字ch 捉括弧集合の後方参照 Pattern Disjunction 正規表現演算子 | は 2 個の代替を区切る /a|ab/.exec("abc") は結果 "a" を返し、 "ab" は返さない。もっと言えば /((a)|(ab))((c)|(bc))/.exec("abc") は以下の配列 ["abc", "a", "a", undefined, "bc", undefined, "bc"] を返し、 ["abc", "ab", undefined, "ab", "c", "c", undefined] は返さない。 Alternative Term /a[a-z]{2,4}/.exec("abcdefghi") が "abcde" を返すことに較べて、 /a[a-z]{2,4}?/.exec("abcdefghi") は "abc" を返す。 また、 /(aa|aabaac|ba|b|c)*/.exec("aabaac") 上の順の選択点による正規表現は ["aaba", "ba"] という配列を返し、 ["aabaac", "aabaac"] ["aabaac", "c"] とはならない。 上記の選択点の順序は、2 数の最大公約数(単項表記で表す)を算出する正規表現の記述にも使用できる。次の例は、10 と 15 の最大公約数を算出する "aaaaaaaaaa,aaaaaaaaaaaaaaa".replace(/^(a+)\1*,\1+$/,"$1") これは単項表記の最大公約数 "aaaaa" を返す。 ステップ 4 の RepeatMatcher は、 Atom が繰り返されるたびに Atom の captures をクリアする。 これは次の正規表現の振る舞いに見ることができる /(z)((a+)?(b+)?(c))*/.exec("zaacbbbcac") これは次の配列を返し ["zaacbbbcac", "z", "ac", "a", undefined, "c"] 次のようなものではない。 ["zaacbbbcac", "z", "ac", "a", "bbb", "c"] 最も外側の * の各反復が、この場合 2 番目, 3 番目, 4 番目である捕捉文字列を含む、数量化された Atom に含まれていた全ての捕捉された文字列をクリアするためである。 ステップ 1 の RepeatMatcher のクロージャ d は、一旦最小反復数が満たされたらそれ以上空文字列にマッチする Atom の展開を更に反復するために考えないことを宣言する。これは正規表現エンジンがパターンの無限ループに陥ることを防いでおり、次のような正規表現は /(a*)*/.exec("b") また若干複雑には次のようなものは /(a*)b\1+/.exec("baaaac") これらは次の配列を返す ["b", ""] Asertion ^ $ \b \B 内部補助関数 IsWordChar 63 a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 _ Quantifier QuantifierPrefix? min, max, true 0, infinite 1, infinite ? 0, 1 { DecimalDigits } i, i { DecimalDigits, } i infinite { DecimalDigits, DecimalDigits } i, j Atom 行終端文字 LF , CR , LS , PS 以外の文字集合 \ AtomEscape CharacterClass ( Disjunction ) ( ? Disjunction ) ( ? ! Disjunction ) 内部補助関数 CharacterSetMatcher 内部補助関数 Canonicalize 参考情報解説 ( Disjunction ) 形式の括弧は、 Disjunction パターンのグループ成分とともに、マッチ結果の保存を提示する。結果は後方参照 (\ に 0 以外の10進数が続くもの)、置換文字列内での参照に用いられ、また正規表現マッチ関数から配列の一部を返される。括弧の捕捉の振る舞いの抑制には、代わりに (? Disjunction ) 形式を用いる。 (?= Disjunction ) 形式は、 0 文字幅の肯定の先読みを指定する。成功するためには Disjunction 内部のパターンは現在位置においてマッチしなければならないが、後続のマッチングの前に現在位置は前進しない。 Disjunction が現在位置におけるマッチに何通りかある場合は、最初のものだけが検査される。他の正規表現演算子とは異なり、 (?= 形式内への後方参照は存在しない (この独特の振る舞いは Perl から継承される)。 Disjunction が捕捉括弧とその捕捉への後方参照を含む後続のパターンで構成されるとき、このことが重要になる。 例えば、 /(?=(a+))/.exec("baaabac") は、 1 個目の b の直後の空文字列にマッチし、それゆえ次の配列を返す ["", "aaa"] 先読みへ後方参照の不足の例として、次を考えてみる /(?=(a+))a*b\1/.exec("baaabac") この式が返すのは次であり ["aba", "a"] 次のようにはならない ["aaaba", "a"] (?= Disjunction ) 形式は、 0 文字幅の否定の先読みを指定する。成功するためには Disjunction 内部のパターンは現在位置においてマッチに失敗しなければならない。現在位置は後続のマッチングの前に前進しない。 Disjunction には捕捉括弧を含められるが、それらへの後方参照は Disjunction 自身内部からの場合ものみ意味を持つ。パターン内の他の場所からのこれらの捕捉括弧への後方参照は、パターンに否定の先読みが成功してはならないため、常に undefined を返す。例えば /(.*?)a(?!(a+)b\2c)\2(.*)/.exec("baaabaac") は、ある正の数 n 個の a, 1 個の b, 他の n 個の (1 個目の \2 で指定される) a, 1 個の c, が直後に続かないような 1 個の a を検索する。 2 個目の \2 は否定の先読みの外部であり、したがって undefined に対してマッチするので常に成功する。式全体は次の配列を返す ["baaabaac", "ba", undefined, "abaac"] 文字ケースを区別しないマッチでは、全ての文字は比較の直前に暗黙に大文字に変換される。しかし、大文字への変換が 1 個以上の文字に展開される場合("ß" (\u00DF) から "SS" に変換など)は、代わりに文字はそのまま残される。 ASCII 文字でなくても、大文字への変換がその文字を ASCII 文字にする場合、その文字は残される。これは /[a-z]/i のような ASCII 文字のマッチのみを意図した正規表現のマッチから、\u0131 \u017F のような Unicode 文字を遮る。なお、これらの変換が許可される場合、 /[^\W]/i は a, b, ..., h, にはマッチするが i や s にはマッチしない。 AtomEscape CharacterEscape CharacterClassEscape 参考情報解説 \ に 0 以外の10進数 n の続く形式のエスケープシーケンスは、捕捉括弧の n 番目の集合 (セクション 15.10.2.11) の結果にマッチする。正規表現中の捕捉括弧が n 個未満である場合はエラーである。正規表現が n 個以上の捕捉括弧を持つが n 番目が何も捕捉されず undefined である場合、その後方参照は常に成功する。 CharacterEscape ControlEscape ControlEscape Unicode Value Name Symbol t \u0009 horizontal tab HT n \u000A line feed (new line) LF v \u000B vertical tab VT f \u000C form feed FF r \u000D carriage return CR c ControlLetter HexEscapeSequence UnicodeEscapeSequence IdentityEscape DecimalEscape i NUL 文字(Unicode値 0000) 参考情報解説 最初の数字が0以外である10進数 n が \ に続く場合、そのエスケープシーケンスは後方参照として考える。正規表現全体の左捕捉括弧の総数よりも n が大きい場合はエラーである。 \0 は NUL 文字を表し、10進数字を後に続けることはできない。 CharacterClassEscape d 0-9 D 0-9以外 s WhiteSpace, LineTerminatorを含む文字集合 S s以外 w 63 a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 _ CharacterClass [ [lookahead ∉ {^}] ClassRanges ] charset, boolean(false) [ ^ ClassRanges ] charset, boolean(true) ClassRanges [empty] 空のCharset NonemptyClassRanges charset NonemptyClassRanges ClassAtom charset ClassAtom NonemptyClassRangesNoDash ClassAtom - ClassAtom ClassRanges NoemptyClassRangesNoDash ClassAtom charset ClassAtomNoDash NonemptyClassRangesNoDash ClassAtomNoDash - ClassAtom ClassRanges 参考情報解説 ClassRanges は、単一の ClassAtom そして/または ダッシュで区切られた 2 個の ClassAtom の範囲に展開してよい。文字ケースについては、 ClassRanges は 1 つ目の ClassAtom と 2 つ目の ClassAtom までの間の全ての文字を含む。 ClassAtom が単一の文字を表さない (例えば、一方が \w) ならば、また 1 つ目の ClassAtom のコードポイント値が 2 つ目の ClassAtom のコードポイント値より大きいならば、エラーが発生する。 パターンが文字ケースを区別しないとしても、範囲の両端の文字ケースは、文字の範囲への所属判定において重要である。たとえば、パターン /[E-F]/i は文字 E, F, e, f にのみマッチするのに対して、パターン /[E-f]/i は大文字小文字含めた ASCII 文字だけでなく記号 [, \, ], ^, _, ` にもマッチする。 文字 - は文字通りに扱われうるか、範囲を示せるかである。 - が文字通りに扱われるのは、それが ClassRanges の最初または最後の文字である場合、範囲指定の先頭または末尾である場合、直後に範囲指定が続く場合である。 ClassAtom ClassAtomNoDash ClassEscape 関数として呼出される RegExp コンストラクタ patternClass プロパティが "RegExp" であるオブジェクト R で、かつ flags が undefined ならば、 R を返す それ以外はRegExp コンストラクタ呼出、引数 pattern と flags を渡しコンストラクタに構築されたオブジェクトを返す RegExp コンストラクタ new式の一部で呼出されたらコンストラクタ 生成されるオブジェクトを初期化 new RegExp(pattern, flags) pattern が Class プロパティが "RegExp" である オブジェクト R で、かつ flags が undefined ならば、 P を R の構築に用いる pattern とし、 F を R の構築に用いる flags とする。 pattern が Class プロパティが "RegExp" である オブジェクト R で、かつ flags が undefined でないならば、 例外 TypeError を投げる。 そうでなければ、 P を pattern が undefined ならば空文字列、そうでなければ ToString(pattern) とし、 F を flags が undefined ならば空文字列、そうでなければ ToString(flags) とする。 新規に構築されたオブジェクトの global プロパティは、 F が文字 "g" を含めば true, そうでなければ false である Boolean 値に設定される。 新規に構築されたオブジェクトの ignoreCase プロパティは、 F が文字 "i" を含めば true, そうでなければ false である Boolean 値に設定される。 新規に構築されたオブジェクトの multiline プロパティは、 F が文字 "m" を含めば true, そうでなければ false である Boolean 値に設定される。 F が "g", "i", "m" 以外の文字を含むならば、また一旦出現したものと同じものを含むならば、例外 SyntaxError を投げる。 P の文字が書式 Pattern を持たないならば、例外 SyntaxError を投げる。そうでなければ、新規に構築されたオブジェクトに Pattern の評価 ("compiling") により得られる Match プロパティを持たせる。 Pattern の評価が例外 SyntaxError を投げてもよいことに注意。 (Note pattern が StringLiteral ならば、 文字列が RegExp によって処理される前に、通常のエスケープシーケンスの変換が実行される。 RegExp によって認識されるエスケープシーケンスを pattern に含めなければならないならば、 StringLiteral の内容の形成時に削除されることを防ぐために、 StringLiteral 内の文字 "\" はエスケープされなければならない。) 新規に構築されたオブジェクトの source プロパティは、 P に基づくPattern の書式の実装依存の文字列値に設定される。 新規に構築されたオブジェクトの lastIndex プロパティは、 0 に設定される。 新規に構築されたオブジェクトの Prototype プロパティは、 RegExp.prototype の初期値であるオリジナルの RegExp プロトタイプオブジェクトに設定される。 新規に構築されたオブジェクトの Class プロパティは、 "RegExp" に設定される RegExp コンストラクタのプロパティ RegExp コンストラクタのの内部 Prototype プロパティの値は、 Function プロトタイプオブジェクト 内部プロパティと length プロパティ (値は 2) の他に、 RegExp コンストラクタは次のプロパティを持つ RegExp.prototype RegExp.prototype の初期値は RegExp プロトタイプオブジェクト RegExp プロトタイプオブジェクトのプロパティ RegExp プロトタイプオブジェクトの内部 Prototype プロパティの値は、 Object プロトタイプである。 RegExp プロトタイプオブジェクトの内部 Class プロパティの値は、 "Object" である。 RegExp プロトタイプオブジェクトは、独自の valueOf プロパティを持たない; しかしながら、 valueOf プロパティを Object プロトタイプオブジェクトから継承する。 RegExp プロトタイプオブジェクトのプロパティである関数の以下の説明において、フレーズ "この RegExp オブジェクト" は、関数呼出しの this 値であるオブジェクトを参照する; this 値 が内部 Class プロパティが "RegExp" のオブジェクトでない場合は、例外 TypeError が投げられる。 RegExp.prototype.constructor RegExp.prototype.constructor の初期値は、組込み RegExp コンストラクタである。 RegExp.prototype.exec(string) 正規表現に対して string の正規表現マッチを行い、マッチの結果を含む Array オブジェクト、また文字列にマッチしなかった場合は null を返す。 文字列 ToString(string) は、次のように正規表現パターンの発生を検索される RegExp.prototype.test(string) 式 RegExp.prototype.exec(string) != null と同様である。 RegExp.prototype.toString() src を現在の正規表現を表す Pattern の書式の文字列とする。 src は、 source プロパティまた RegExp コンストラクタに供給されるソースコードと同一であってもなくてもよい; ただ、 src が現在の正規表現の flags を伴って RegExp コンストラクタに供給されたならば、結果の正規表現は、現在の正規表現と同様に振るまわなければならない。 toString は、文字列 "/", src, "/" の連結で形成される文字列を返す; global プロパティが true ならば "g"、 ignoreCase プロパティが true ならば "i"、 multiline プロパティが true ならば "m" を、連結する文字列に追加する。 NOTE 実装は、 src 内の特殊文字をエスケープするために、 RegExp コンストラクタへ渡されるソースと異なることを許可されている src の利用を選択してよい。例えば、 new RegExp("/") から得られる正規表現において、 src は、数ある可能性の中から、 "/" または "\/" でありえる。後者は、書式 RegularExpressionLiteral を持つ toString 呼出しの完全な結果 ("/\//") を許可する。 RegExp インスタンスのプロパティ RegExp インスタンスは、上記に指定されるその Prototype オブジェクトからプロパティを継承し、また次のプロパティを持つ。 source source プロパティの値は、 現在の正規表現をあらわす Pattern の書式の文字列値である。このプロパティは、属性 { DontDelete, ReadOnly, DontEnum } を持つべきである。 global global プロパティの値は、 flags が文字 "g" を含むかどうかを示す Boolean 値である。このプロパティは、属性 { DontDelete, ReadOnly, DontEnum } を持つべきである。 ignoreCase ignoreCase プロパティの値は、 flags が文字 "i" を含むかどうかを示す Boolean 値である。このプロパティは、属性 { DontDelete, ReadOnly, DontEnum } を持つべきである。 multiline multiline プロパティの値は、 flags が文字 "m" を含むかどうかを示す Boolean 値である。このプロパティは、属性 { DontDelete, ReadOnly, DontEnum } を持つべきである。 lastIndex lastIndex プロパティの値は、文字列の次のマッチを開始する位置を特定する整数である。このプロパティは、属性 { DontDelete, DontEnum } を持つべきである。
https://w.atwiki.jp/kobapan/pages/35.html
概要 aaa aaa bbb 引数 c 実装 (defun grass-out-function (c) (unless (eq (grass-primitive-type c) char) (error "grass-out-function error not a character")) (let ((ch (grass-primitive-value c))) ;; Decode Shift-JIS Encoding Character (if grass-out-prev-char (setq ch (condition-case nil (decode-sjis-char (+ (* grass-out-prev-char 256) ch)) (error (string-to-char "※"))) grass-out-prev-char nil) (if (and ( ch 127) grass-out-decode-sjis) (if (or (and ( = ch ?\x81) ( = ch ?\x9f)) (and ( = ch ?\xe0) ( = ch ?\xfc))) (setq grass-out-prev-char ch) (setq ch (condition-case nil (decode-sjis-char ch) (error (setq grass-out-prev-char ch))))))) ;; Output the Character (unless grass-out-prev-char (condition-case nil (write-char ch) (error (princ "※"))) ;; Update the Screen Intermittently (unless noninteractive (let ((outbuf (get-buffer grass-evaluation-buffer-name))) (when outbuf (with-current-buffer outbuf (set-window-point (get-buffer-window outbuf) (point))) (when (integerp grass-out-update-cycle) (setq grass-out-counter (1+ grass-out-counter)) (when (or (and ( grass-out-update-cycle 0) (= grass-out-counter grass-out-update-cycle)) (eq ch 10)) (sit-for 0) (setq grass-out-counter 0)))))))) c) ;; Return Value 呼出元 コメント 履歴 作者:kobapan 日付:2009/01/03 対象: 更新日 更新者 更新内容 コメント 名前 コメント
https://w.atwiki.jp/usb_audio/pages/63.html
原文:Audio Devices Rev. 2.0 Spec and Adopters Agreement(ZIP) Universal Serial Bus Device Class Definition for Audio Data Formats Release 2.0 May 31, 2006 16 Offset Field Size Value Description 5 bBitResolution 1 Number The number of effectively used bits from the available bits in an audio subslot. 2.3.1.7 Type I Supported Formats The following paragraphs list all currently supported Type I Audio Data Formats. The bit allocations in the bmFormats field of the class-specific AS interface descriptor for the different Type I Audio Data Formats can be found in Appendix A.2.1, “Audio Data Format Type I Bit Allocations.” 2.3.1.7.1 PCM Format The PCM (Pulse Coded Modulation) format is the most commonly used audio format to represent audio data streams. The audio data is not compressed and uses a signed two’s-complement fixed point format. It is left-justified (the sign bit is the Msb) and data is padded with trailing zeros to fill the remaining unused bits of the subslot. The binary point is located to the right of the sign bit so that all values lie within the range [-1, +1). 2.3.1.7.2 PCM8 Format The PCM8 format is introduced to be compatible with the legacy 8-bit wave format. Audio data is uncompressed and uses 8 bits per sample (bBitResolution = 8). In this case, data is unsigned fixed-point, left-justified in the audio subslot, Msb first. The range is [0,255]. 2.3.1.7.3 IEEE_FLOAT Format The IEEE_FLOAT format is based on the ANSI/IEEE-754 floating-point standard. Audio data is represented using the basic single-precision format. The basic single-precision number is 32 bits wide and has an 8-bit exponent and a 24-bit mantissa. Both mantissa and exponent are signed numbers, but neither is represented in two s-complement format. The mantissa is stored in sign magnitude format and the exponent in biased form (also called excess-n form). In biased form, there is a positive integer (called the bias) which is subtracted from the stored number to get the actual number. For example, in an eight-bit exponent, the bias is 127. To represent 0, the number 127 is stored. To represent -100, 27 is stored. An exponent of all zeroes and an exponent of all ones are both reserved for special cases, so in an eight-bit field, exponents of -126 to +127 are possible. In the basic floating-point format, the mantissa is assumed to be normalized so that the most significant bit is always one, and therefore is not stored. Only the fractional part is stored. Denormalized (exponent = 0) values are considered to be zero. The 32-bit IEEE-754 floating-point word is broken into three fields. The most significant bit stores the sign of the mantissa, the next group of 8 bits stores the exponent in biased form, and the remaining 23 bits store the magnitude of the fractional portion of the mantissa. For further information, refer to the ANSI/IEEE-754 standard. The data is conveyed over USB using 32 bits per sample (bBitResolution = 32; bSubslotSize = 4). 2.3.1.7.4 ALaw Format and μLaw Format Starting from 12- or 16-bits linear PCM samples, simple compression down to 8-bits per sample (one byte per sample) can be achieved by using logarithmic companding. The compressed audio data uses 8 bits per sample (bBitsPerSample = 8). Data is signed fixed point, left-justified in the subslot, Msb first. The compressed range is [-128,128]. The difference between Alaw and μLaw compression lies in the formulae used to achieve the compression. Refer to the ITU G.711 standard for further details. Universal Serial Bus Device Class Definition for Audio Data Formats Release 2.0 May 31, 2006 17 2.3.1.7.5 Type I Raw Data This audio format is included to allow transport of data (audio or other) over a USB AudioStreaming interface in the form of PCM-like audio slots when the actual format or even the meaning of the transported data is unknown. The USB pipe simply acts as a pass-through. As a consequence, such data can never be interpreted inside the audio function and can only be routed from an Input Terminal to one or more Output Terminals. From a USB standpoint, the data is packed as if it were Type I formatted audio data, but the data is never to be interpreted as being audio data. 2.3.2 Type II Formats Type II formats are used to transmit non-PCM encoded audio data into bit streams that consist of a sequence of encoded audio frames. 2.3.2.1 Encoded Audio Frames An encoded audio frame is a sequence of bits that contains an encoded representation of one or more physical audio channels. The encoding takes place over a fixed number of audio slots. Each encoded audio frame contains enough information to entirely reconstruct the audio samples (albeit not lossless), encoded in the encoded audio frame. No information from adjacent encoded audio frames is needed during decoding. The number of audio slots used to construct one encoded audio frame depends on the encoding scheme. (For MPEG, the number of slots per encoded audio frame (nf) is 384 for Layer I or 1152 for Layer II. For AC-3, the number of slots is 1536.) In most cases, the encoded audio frame represents multiple physical audio channels. The number of bits per encoded audio frame may be variable. The content of the encoded audio frame is defined according to the implemented encoding scheme. Where applicable, the bit ordering shall be MSB first, relative to existing standards of serial transmission or storage of that encoding scheme. An encoded audio frame represents an interval longer than the USB (micro)frame. This is typical of audio compression algorithms that use psycho-acoustic or vocal tract parametric models. cite(Note} It is important to make a clear distinction between a USB frame and an encoded audio frame. The overloaded use of the term frame could cause confusion. Therefore, this specification will always use the qualifier ‘encoded audio’ to refer to MPEG or AC-3 encoded audio frames. 2.3.2.2 Audio Bit Streams An encoded audio bit stream is a concatenation of a potentially very large number of encoded audio frames, ordered according to ascending time. Subsequent encoded audio frames are independent and can be decoded separately. 2.3.2.3 USB Packets Encoded audio bit streams are packetized when transported over an isochronous pipe. Each virtual frame packet potentially contains only part of a single encoded audio frame. Packet sizes are determined according to the short-packet protocol. The encoded audio frame is broken down into a number of packets, each containing wMaxPacketSize bytes except for the last packet, which may be smaller and contains the remainder of the encoded audio frame. If the MaxPacketsOnly bit D7 in the bmAttributes field of the class-specific endpoint descriptor is set, the last (short) packet must be padded with zero bytes to wMaxPacketSize length. No virtual frame packet may contain bits belonging to different encoded audio frames. If the encoded audio frame length is not a multiple of 8 bits, the last byte in the last packet is padded with zero bits. The decoder must ignore all padded extra bits and bytes. Consecutive encoded audio frames are separated by at least one Transfer Delimiter. A Transfer Delimiter must be sent in all virtual frames until the next encoded audio frame is due. The above rules guarantee that a new encoded audio frame always starts on a virtual frame packet boundary. Universal Serial Bus Device Class Definition for Audio Data Formats Release 2.0 May 31, 2006 18 2.3.2.4 Bandwidth Allocation The encoded audio frame time tf equals the number of audio slots per encoded audio frame nf divided by the sampling rate fs of the original audio samples. ここに画像 The allocated bandwidth for the pipe must accommodate for the largest possible encoded audio frame to be transmitted within an encoded audio frame time. This should take into account the Transfer Delimiter requirement and any differences between the time base of the stream and the USB (micro)frame timer. The device may choose to consume more bandwidth than necessary (by increasing the reported wMaxPacketSize) to minimize the time needed to transmit an entire encoded audio frame. This can be used to enable early decoding and therefore minimize system latency. 2.3.2.5 Timing The timing reference point is the beginning of an encoded audio frame. Therefore, the USB packet that contains the first bits (usually the encoded audio frame sync word) of the encoded audio frame is used as a timing reference in USB space. This USB packet is called the reference packet. The transmission of the reference packet of an encoded audio frame should begin at the target playback time of that frame (minus the endpoint’s reported delay) rounded to the nearest USB (micro)frame time. This guarantees that, at the receiving end, the arrival of subsequent reference packets matches the encoded audio frame time tf as closely as possible. 2.3.2.6 Type II Format Type Descriptor The Type II Format Type descriptor starts with the usual three fields bLength, bDescriptorType and bDescriptorSubtype. The bFormatType field indicates this is a Type II descriptor. The wMaxBitRate field contains the maximum number of bits per second this interface can handle. It is a measure for the buffer size available in the interface. The wSlotsPerFrame field contains the number of PCM audio slots contained within a single encoded audio frame. Table 2-3 Type II Format Type Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 8 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant FORMAT_TYPE descriptor subtype. 3 bFormatType 1 Constant FORMAT_TYPE_II. Constant identifying the Format Type the AudioStreaming interface is using. 4 wMaxBitRate 2 Number Indicates the maximum number of bits per second this interface can handle. Expressed in kbits/s. 6 wSlotsPerFrame 2 Number Indicates the number of PCM audio slots contained in one encoded audio frame. Universal Serial Bus Device Class Definition for Audio Data Formats Release 2.0 May 31, 2006 19 2.3.2.7 Rate feedback If the isochronous data endpoint needs explicit rate feedback (adaptive source, asynchronous sink), the feedback pipe must report the number of equivalent PCM audio slots. The host will accumulate this data and start transmission of an encoded audio frame whenever the current number of audio slots exceeds the number of slots per encoded audio frame. The remainder is kept in the accumulator. 2.3.2.8 Type II Supported Formats The following sections list all currently supported Type II Audio Data Formats. The bit allocations in the bmFormats field of the class-specific AS interface descriptor for the different Type II Audio Data Formats can be found in Appendix A.2.2, “Audio Data Format Type II Bit Allocations.” 2.3.2.8.1 MPEG Format Refer to the ISO/IEC 11172-3 1993 “Information technology -- Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s -- Part 3 Audio” and the ISO/IEC 13818-3 1998 “Information technology -- Generic coding of moving pictures and associated audio information -- Part 3 Audio” specifications for detailed format information. 2.3.2.8.2 AC-3 Format Refer to the Digital Audio Compression Standard (AC-3), ATSC A/52A Aug. 20, 2001 for detailed format information. 2.3.2.8.3 WMA Format This is an audio compression format from Microsoft. For technical and licensing information, contact Microsoft directly (http //www.microsoft.com/windows/windowsmedia/default.aspx). 2.3.2.8.4 DTS Format Refer to the ETSI Specification TS 102 114, “DTS Coherent Acoustics; Core and Extensions”. Available from http //webapp.etsi.org/action%5CPU/20020827/ts_102114v010101p.pdf. 2.3.2.8.5 Type II Raw Data This audio format is included to allow transport of data (audio or other) over a USB AudioStreaming interface in the form of a bit stream when the actual format or even the meaning of the transported data is unknown. The USB pipe simply acts as a pass-through. As a consequence, such data can never be interpreted inside the audio function and can only be routed from an Input Terminal to one or more Output Terminals. From a USB standpoint, the data is packed as if it were Type II formatted audio data, but the data is never to be interpreted as being audio data. 2.3.3 Type III Formats These formats are based upon the IEC61937 standard. The IEC61937 standard describes a method to transfer non-PCM encoded audio bit streams over an IEC60958 digital audio interface, together with the transfer of the accompanying “Channel Status” and “User Data.” The IEC60958 standard specifies a widely used method of interconnecting digital audio equipment with two-channel linear PCM audio. The IEC61937 standard describes a way in which the IEC60958 interface must be used to convey non-PCM encoded audio bit streams for consumer applications. The same basic techniques used in IEC61937 are reused here to convey non-PCM encoded audio bit streams over a Type III formatted audio stream. From a USB transfer standpoint, the data streaming over the interface looks exactly like two-channel 16 bit PCM audio data. Universal Serial Bus Device Class Definition for Audio Data Formats Release 2.0 May 31, 2006 20 2.3.3.1 Type III Format Type Descriptor The bFormatType field indicates this is a Type III descriptor. The bSubSlotSize field indicates how many bytes are used to transport an audio subslot. The bBitResolution field indicates how many bits of the total number of available bits in the audio subslot are truly used by the audio function to convey audio information. Table 2-4 Type III Format Type Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 6 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant FORMAT_TYPE descriptor subtype. 3 bFormatType 1 Constant FORMAT_TYPE_III. Constant identifying the Format Type the AudioStreaming interface is using. 4 bSubslotSize 1 Number The number of bytes occupied by one audio subslot. Must be set to two. 5 bBitResolution 1 Number The number of effectively used bits from the available bits in an audio subframe. 2.3.3.2 Type III Supported Formats Refer to the ISO/IEC 60958 and ISO/IEC 61937 (several parts) specifications for detailed format information. The bit allocations in the bmFormats field of the class-specific AS interface descriptor for the different Type III Audio Data Formats can be found in Appendix A.2.3, “Audio Data Format Type III Bit Allocations.” The following is a list of formats that is covered or will be covered by the above specifications. • IEC61937_AC-3 • IEC61937_MPEG-1_Layer1 • IEC61937_MPEG-1_Layer2/3 or IEC61937_MPEG-2_NOEXT • IEC61937_MPEG-2_EXT • IEC61937_MPEG-2_AAC_ADTS • IEC61937_MPEG-2_Layer1_LS • IEC61937_MPEG-2_Layer2/3_LS • IEC61937_DTS-I • IEC61937_DTS-II • IEC61937_DTS-III • IEC61937_ATRAC • IEC61937_ATRAC2/3 In addition, the WMA audio compression format as defined by Microsoft is supported. 2.3.4 Type IV Formats Type IV formats can only be used on external connections to the audio function that do not use a USB pipe for their data transport but that do need an AudioStreaming interface to control an encoder or decoder process in one or more of its Alternate Settings. A typical example of such a connection is an S/PDIF connector that is capable of handling both PCM stereo audio data streams (IEC60958) in one Alternate Release 2.0 May 31, 2006 20 1 - 6 - 11 - 16 - 21 - 26 - 31 ここを編集