[{"data":1,"prerenderedAt":1155},["ShallowReactive",2],{"navigation":3,"\u002Fguides\u002Fstable-caption-ui":220,"\u002Fguides\u002Fstable-caption-ui-surround":1150},[4,28,64,92,124,152,192],{"title":5,"path":6,"stem":7,"children":8,"icon":27},"Start","\u002Fstart","1.start\u002F1.index",[9,11,15,19,23],{"title":10,"path":6,"stem":7},"Overview",{"title":12,"path":13,"stem":14},"Quickstart","\u002Fstart\u002Fquickstart","1.start\u002F2.quickstart",{"title":16,"path":17,"stem":18},"Authentication","\u002Fstart\u002Fauthentication","1.start\u002F3.authentication",{"title":20,"path":21,"stem":22},"SDKs","\u002Fstart\u002Fsdks","1.start\u002F4.sdks",{"title":24,"path":25,"stem":26},"Choose an API","\u002Fstart\u002Fchoose-an-api","1.start\u002F5.choose-an-api","i-lucide-rocket",{"title":29,"path":30,"stem":31,"children":32,"icon":63},"Realtime","\u002Frealtime","2.realtime\u002F1.index",[33,35,39,43,47,51,55,59],{"title":34,"path":30,"stem":31},"Realtime Overview",{"title":36,"path":37,"stem":38},"Realtime Quickstart","\u002Frealtime\u002Fquickstart","2.realtime\u002F2.quickstart",{"title":40,"path":41,"stem":42},"Connection Lifecycle","\u002Frealtime\u002Fconnection-lifecycle","2.realtime\u002F3.connection-lifecycle",{"title":44,"path":45,"stem":46},"Audio Input","\u002Frealtime\u002Faudio-input","2.realtime\u002F4.audio-input",{"title":48,"path":49,"stem":50},"Transcript Lifecycle","\u002Frealtime\u002Ftranscript-lifecycle","2.realtime\u002F5.transcript-lifecycle",{"title":52,"path":53,"stem":54},"Realtime Translation","\u002Frealtime\u002Frealtime-translation","2.realtime\u002F6.realtime-translation",{"title":56,"path":57,"stem":58},"Session Configuration","\u002Frealtime\u002Fsession-configuration","2.realtime\u002F7.session-configuration",{"title":60,"path":61,"stem":62},"Handling Interruptions & Silence","\u002Frealtime\u002Finterruptions-silence","2.realtime\u002F8.interruptions-silence","i-lucide-radio",{"title":65,"path":66,"stem":67,"children":68,"icon":91},"Recorded","\u002Frecorded","3.recorded\u002F1.index",[69,71,75,79,83,87],{"title":70,"path":66,"stem":67},"Recorded Overview",{"title":72,"path":73,"stem":74},"Transcribe Audio","\u002Frecorded\u002Ftranscribe-audio","3.recorded\u002F2.transcribe-audio",{"title":76,"path":77,"stem":78},"Timestamps & Speakers","\u002Frecorded\u002Ftimestamps-speakers","3.recorded\u002F3.timestamps-speakers",{"title":80,"path":81,"stem":82},"Subtitles","\u002Frecorded\u002Fsubtitles","3.recorded\u002F4.subtitles",{"title":84,"path":85,"stem":86},"Recorded Translation","\u002Frecorded\u002Ftranslation","3.recorded\u002F5.translation",{"title":88,"path":89,"stem":90},"Structured Results","\u002Frecorded\u002Fstructured-results","3.recorded\u002F6.structured-results","i-lucide-file-audio",{"title":93,"path":94,"stem":95,"children":96,"icon":123},"Concepts","\u002Fconcepts","4.concepts\u002F1.index",[97,99,103,107,111,115,119],{"title":98,"path":94,"stem":95},"Voice Context Layer",{"title":100,"path":101,"stem":102},"Stable vs. Partial Text","\u002Fconcepts\u002Fstable-vs-partial-text","4.concepts\u002F2.stable-vs-partial-text",{"title":104,"path":105,"stem":106},"StableStream","\u002Fconcepts\u002Fstablestream","4.concepts\u002F3.stablestream",{"title":108,"path":109,"stem":110},"Context-Aware Processing","\u002Fconcepts\u002Fcontext-aware-processing","4.concepts\u002F4.context-aware-processing",{"title":112,"path":113,"stem":114},"Understanding Latency","\u002Fconcepts\u002Flatency","4.concepts\u002F5.latency",{"title":116,"path":117,"stem":118},"Live Translation","\u002Fconcepts\u002Flive-translation","4.concepts\u002F6.live-translation",{"title":120,"path":121,"stem":122},"Trinity Engine","\u002Fconcepts\u002Ftrinity-engine","4.concepts\u002F7.trinity-engine","i-lucide-brain",{"title":125,"path":126,"stem":127,"children":128,"icon":151},"Guides","\u002Fguides","5.guides\u002F1.index",[129,131,135,139,143,147],{"title":130,"path":126,"stem":127},"Browser Live Captions",{"title":132,"path":133,"stem":134},"Server-side Streaming","\u002Fguides\u002Fserver-side-streaming","5.guides\u002F2.server-side-streaming",{"title":136,"path":137,"stem":138},"Build a Stable Caption UI","\u002Fguides\u002Fstable-caption-ui","5.guides\u002F3.stable-caption-ui",{"title":140,"path":141,"stem":142},"Build Live Translation","\u002Fguides\u002Flive-translation","5.guides\u002F4.live-translation",{"title":144,"path":145,"stem":146},"Save a Transcript","\u002Fguides\u002Fsave-transcript","5.guides\u002F5.save-transcript",{"title":148,"path":149,"stem":150},"Reconnect a Live Session","\u002Fguides\u002Freconnection","5.guides\u002F6.reconnection","i-lucide-book-open",{"title":153,"path":154,"stem":155,"children":156,"icon":191},"Reference","\u002Fapi-reference","6.api-reference\u002F1.index",[157,159,163,167,171,175,179,183,187],{"title":158,"path":154,"stem":155},"API Reference Overview",{"title":160,"path":161,"stem":162},"Realtime API","\u002Fapi-reference\u002Frealtime-api","6.api-reference\u002F2.realtime-api",{"title":164,"path":165,"stem":166},"Client Messages","\u002Fapi-reference\u002Fclient-messages","6.api-reference\u002F3.client-messages",{"title":168,"path":169,"stem":170},"Server Events","\u002Fapi-reference\u002Fserver-events","6.api-reference\u002F4.server-events",{"title":172,"path":173,"stem":174},"Transcription API","\u002Fapi-reference\u002Ftranscription","6.api-reference\u002F5.transcription",{"title":176,"path":177,"stem":178},"Languages & Models","\u002Fapi-reference\u002Flanguages","6.api-reference\u002F6.languages",{"title":180,"path":181,"stem":182},"Errors","\u002Fapi-reference\u002Ferrors","6.api-reference\u002F7.errors",{"title":184,"path":185,"stem":186},"Rate Limits","\u002Fapi-reference\u002Frate-limits","6.api-reference\u002F8.rate-limits",{"title":188,"path":189,"stem":190},"Admin API","\u002Fapi-reference\u002Fadmin","6.api-reference\u002F9.admin","i-lucide-code",{"title":193,"path":194,"stem":195,"children":196,"icon":219},"Production","\u002Fproduction","7.production\u002F1.index",[197,199,203,207,211,215],{"title":198,"path":194,"stem":195},"Production Checklist",{"title":200,"path":201,"stem":202},"Reconnection & Retries","\u002Fproduction\u002Freconnection-retries","7.production\u002F2.reconnection-retries",{"title":204,"path":205,"stem":206},"Latency Best Practices","\u002Fproduction\u002Flatency-best-practices","7.production\u002F3.latency-best-practices",{"title":208,"path":209,"stem":210},"Security & Privacy","\u002Fproduction\u002Fsecurity-privacy","7.production\u002F4.security-privacy",{"title":212,"path":213,"stem":214},"Data Retention","\u002Fproduction\u002Fdata-retention","7.production\u002F5.data-retention",{"title":216,"path":217,"stem":218},"Changelog","\u002Fproduction\u002Fchangelog","7.production\u002F6.changelog","i-lucide-server",{"id":221,"title":136,"body":222,"description":1144,"extension":1145,"links":1146,"meta":1147,"navigation":313,"path":137,"seo":1148,"status":1146,"stem":138,"__hash__":1149},"docs\u002F5.guides\u002F3.stable-caption-ui.md",{"type":223,"value":224,"toc":1133},"minimark",[225,229,234,237,245,249,254,552,556,805,809,828,832,835,1022,1026,1107,1111,1129],[226,227,228],"p",{},"How to consume realtime transcription events and build a caption UI that doesn't jitter.",[230,231,233],"h2",{"id":232},"the-problem-with-naive-approaches","The problem with naive approaches",[226,235,236],{},"A naive live caption UI might try to update text on every event. With partial-text systems, this causes visible jitter as words are repeatedly replaced.",[226,238,239,240,244],{},"LansonAI's StableStream eliminates this: each ",[241,242,243],"code",{},"conversation.item.input_audio_transcription.completed"," event contains final, stable text.",[230,246,248],{"id":247},"recommended-render-strategy","Recommended render strategy",[250,251,253],"h3",{"id":252},"append-only-display","Append-only display",[255,256,261],"pre",{"className":257,"code":258,"language":259,"meta":260,"style":260},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","const captions = document.getElementById('captions');\n\nws.onmessage = (event) => {\n  const data = JSON.parse(event.data);\n\n  if (data.type === 'conversation.item.input_audio_transcription.completed') {\n    \u002F\u002F Append directly — text is final, no replacement needed\n    const p = document.createElement('p');\n    p.dataset.utterance = data.utterance_index;\n    p.textContent = data.text;\n    captions.appendChild(p);\n    captions.scrollTop = captions.scrollHeight;\n  }\n};\n","typescript","",[241,262,263,308,315,344,377,382,414,421,451,478,499,518,540,546],{"__ignoreMap":260},[264,265,268,272,276,280,283,286,290,293,296,300,302,305],"span",{"class":266,"line":267},"line",1,[264,269,271],{"class":270},"spNyl","const",[264,273,275],{"class":274},"sTEyZ"," captions ",[264,277,279],{"class":278},"sMK4o","=",[264,281,282],{"class":274}," document",[264,284,285],{"class":278},".",[264,287,289],{"class":288},"s2Zo4","getElementById",[264,291,292],{"class":274},"(",[264,294,295],{"class":278},"'",[264,297,299],{"class":298},"sfazB","captions",[264,301,295],{"class":278},[264,303,304],{"class":274},")",[264,306,307],{"class":278},";\n",[264,309,311],{"class":266,"line":310},2,[264,312,314],{"emptyLinePlaceholder":313},true,"\n",[264,316,318,321,323,326,329,332,336,338,341],{"class":266,"line":317},3,[264,319,320],{"class":274},"ws",[264,322,285],{"class":278},[264,324,325],{"class":288},"onmessage",[264,327,328],{"class":278}," =",[264,330,331],{"class":278}," (",[264,333,335],{"class":334},"sHdIc","event",[264,337,304],{"class":278},[264,339,340],{"class":270}," =>",[264,342,343],{"class":278}," {\n",[264,345,347,350,353,355,358,360,363,366,368,370,373,375],{"class":266,"line":346},4,[264,348,349],{"class":270},"  const",[264,351,352],{"class":274}," data",[264,354,328],{"class":278},[264,356,357],{"class":274}," JSON",[264,359,285],{"class":278},[264,361,362],{"class":288},"parse",[264,364,292],{"class":365},"swJcz",[264,367,335],{"class":274},[264,369,285],{"class":278},[264,371,372],{"class":274},"data",[264,374,304],{"class":365},[264,376,307],{"class":278},[264,378,380],{"class":266,"line":379},5,[264,381,314],{"emptyLinePlaceholder":313},[264,383,385,389,391,393,395,398,401,404,406,408,411],{"class":266,"line":384},6,[264,386,388],{"class":387},"s7zQu","  if",[264,390,331],{"class":365},[264,392,372],{"class":274},[264,394,285],{"class":278},[264,396,397],{"class":274},"type",[264,399,400],{"class":278}," ===",[264,402,403],{"class":278}," '",[264,405,243],{"class":298},[264,407,295],{"class":278},[264,409,410],{"class":365},") ",[264,412,413],{"class":278},"{\n",[264,415,417],{"class":266,"line":416},7,[264,418,420],{"class":419},"sHwdD","    \u002F\u002F Append directly — text is final, no replacement needed\n",[264,422,424,427,430,432,434,436,439,441,443,445,447,449],{"class":266,"line":423},8,[264,425,426],{"class":270},"    const",[264,428,429],{"class":274}," p",[264,431,328],{"class":278},[264,433,282],{"class":274},[264,435,285],{"class":278},[264,437,438],{"class":288},"createElement",[264,440,292],{"class":365},[264,442,295],{"class":278},[264,444,226],{"class":298},[264,446,295],{"class":278},[264,448,304],{"class":365},[264,450,307],{"class":278},[264,452,454,457,459,462,464,467,469,471,473,476],{"class":266,"line":453},9,[264,455,456],{"class":274},"    p",[264,458,285],{"class":278},[264,460,461],{"class":274},"dataset",[264,463,285],{"class":278},[264,465,466],{"class":274},"utterance",[264,468,328],{"class":278},[264,470,352],{"class":274},[264,472,285],{"class":278},[264,474,475],{"class":274},"utterance_index",[264,477,307],{"class":278},[264,479,481,483,485,488,490,492,494,497],{"class":266,"line":480},10,[264,482,456],{"class":274},[264,484,285],{"class":278},[264,486,487],{"class":274},"textContent",[264,489,328],{"class":278},[264,491,352],{"class":274},[264,493,285],{"class":278},[264,495,496],{"class":274},"text",[264,498,307],{"class":278},[264,500,502,505,507,510,512,514,516],{"class":266,"line":501},11,[264,503,504],{"class":274},"    captions",[264,506,285],{"class":278},[264,508,509],{"class":288},"appendChild",[264,511,292],{"class":365},[264,513,226],{"class":274},[264,515,304],{"class":365},[264,517,307],{"class":278},[264,519,521,523,525,528,530,533,535,538],{"class":266,"line":520},12,[264,522,504],{"class":274},[264,524,285],{"class":278},[264,526,527],{"class":274},"scrollTop",[264,529,328],{"class":278},[264,531,532],{"class":274}," captions",[264,534,285],{"class":278},[264,536,537],{"class":274},"scrollHeight",[264,539,307],{"class":278},[264,541,543],{"class":266,"line":542},13,[264,544,545],{"class":278},"  }\n",[264,547,549],{"class":266,"line":548},14,[264,550,551],{"class":278},"};\n",[250,553,555],{"id":554},"with-optional-status-indicators","With optional status indicators",[255,557,559],{"className":257,"code":558,"language":259,"meta":260,"style":260},"ws.onmessage = (event) => {\n  const data = JSON.parse(event.data);\n\n  if (data.type === 'input_audio_buffer.speech_started') {\n    showIndicator(data.utterance_index, 'listening');\n  }\n\n  if (data.type === 'input_audio_buffer.speech_stopped') {\n    showIndicator(data.utterance_index, 'processing');\n  }\n\n  if (data.type === 'conversation.item.input_audio_transcription.completed') {\n    hideIndicator(data.utterance_index);\n    appendCaption(data.utterance_index, data.text);\n  }\n};\n",[241,560,561,581,607,611,636,663,667,671,696,721,725,729,753,770,795,800],{"__ignoreMap":260},[264,562,563,565,567,569,571,573,575,577,579],{"class":266,"line":267},[264,564,320],{"class":274},[264,566,285],{"class":278},[264,568,325],{"class":288},[264,570,328],{"class":278},[264,572,331],{"class":278},[264,574,335],{"class":334},[264,576,304],{"class":278},[264,578,340],{"class":270},[264,580,343],{"class":278},[264,582,583,585,587,589,591,593,595,597,599,601,603,605],{"class":266,"line":310},[264,584,349],{"class":270},[264,586,352],{"class":274},[264,588,328],{"class":278},[264,590,357],{"class":274},[264,592,285],{"class":278},[264,594,362],{"class":288},[264,596,292],{"class":365},[264,598,335],{"class":274},[264,600,285],{"class":278},[264,602,372],{"class":274},[264,604,304],{"class":365},[264,606,307],{"class":278},[264,608,609],{"class":266,"line":317},[264,610,314],{"emptyLinePlaceholder":313},[264,612,613,615,617,619,621,623,625,627,630,632,634],{"class":266,"line":346},[264,614,388],{"class":387},[264,616,331],{"class":365},[264,618,372],{"class":274},[264,620,285],{"class":278},[264,622,397],{"class":274},[264,624,400],{"class":278},[264,626,403],{"class":278},[264,628,629],{"class":298},"input_audio_buffer.speech_started",[264,631,295],{"class":278},[264,633,410],{"class":365},[264,635,413],{"class":278},[264,637,638,641,643,645,647,649,652,654,657,659,661],{"class":266,"line":379},[264,639,640],{"class":288},"    showIndicator",[264,642,292],{"class":365},[264,644,372],{"class":274},[264,646,285],{"class":278},[264,648,475],{"class":274},[264,650,651],{"class":278},",",[264,653,403],{"class":278},[264,655,656],{"class":298},"listening",[264,658,295],{"class":278},[264,660,304],{"class":365},[264,662,307],{"class":278},[264,664,665],{"class":266,"line":384},[264,666,545],{"class":278},[264,668,669],{"class":266,"line":416},[264,670,314],{"emptyLinePlaceholder":313},[264,672,673,675,677,679,681,683,685,687,690,692,694],{"class":266,"line":423},[264,674,388],{"class":387},[264,676,331],{"class":365},[264,678,372],{"class":274},[264,680,285],{"class":278},[264,682,397],{"class":274},[264,684,400],{"class":278},[264,686,403],{"class":278},[264,688,689],{"class":298},"input_audio_buffer.speech_stopped",[264,691,295],{"class":278},[264,693,410],{"class":365},[264,695,413],{"class":278},[264,697,698,700,702,704,706,708,710,712,715,717,719],{"class":266,"line":453},[264,699,640],{"class":288},[264,701,292],{"class":365},[264,703,372],{"class":274},[264,705,285],{"class":278},[264,707,475],{"class":274},[264,709,651],{"class":278},[264,711,403],{"class":278},[264,713,714],{"class":298},"processing",[264,716,295],{"class":278},[264,718,304],{"class":365},[264,720,307],{"class":278},[264,722,723],{"class":266,"line":480},[264,724,545],{"class":278},[264,726,727],{"class":266,"line":501},[264,728,314],{"emptyLinePlaceholder":313},[264,730,731,733,735,737,739,741,743,745,747,749,751],{"class":266,"line":520},[264,732,388],{"class":387},[264,734,331],{"class":365},[264,736,372],{"class":274},[264,738,285],{"class":278},[264,740,397],{"class":274},[264,742,400],{"class":278},[264,744,403],{"class":278},[264,746,243],{"class":298},[264,748,295],{"class":278},[264,750,410],{"class":365},[264,752,413],{"class":278},[264,754,755,758,760,762,764,766,768],{"class":266,"line":542},[264,756,757],{"class":288},"    hideIndicator",[264,759,292],{"class":365},[264,761,372],{"class":274},[264,763,285],{"class":278},[264,765,475],{"class":274},[264,767,304],{"class":365},[264,769,307],{"class":278},[264,771,772,775,777,779,781,783,785,787,789,791,793],{"class":266,"line":548},[264,773,774],{"class":288},"    appendCaption",[264,776,292],{"class":365},[264,778,372],{"class":274},[264,780,285],{"class":278},[264,782,475],{"class":274},[264,784,651],{"class":278},[264,786,352],{"class":274},[264,788,285],{"class":278},[264,790,496],{"class":274},[264,792,304],{"class":365},[264,794,307],{"class":278},[264,796,798],{"class":266,"line":797},15,[264,799,545],{"class":278},[264,801,803],{"class":266,"line":802},16,[264,804,551],{"class":278},[230,806,808],{"id":807},"what-you-do-not-need-to-do","What you do NOT need to do",[810,811,812,816,819,822,825],"ul",{},[813,814,815],"li",{},"❌ No partial → final text replacement mapping",[813,817,818],{},"❌ No waiting for \"stabilization\" (received text is already stable)",[813,820,821],{},"❌ No text rollback or undo",[813,823,824],{},"❌ No debounce or jitter elimination",[813,826,827],{},"❌ No re-rendering of previously shown text",[230,829,831],{"id":830},"scrolling-behavior","Scrolling behavior",[226,833,834],{},"For long sessions, manage scroll behavior:",[255,836,838],{"className":257,"code":837,"language":259,"meta":260,"style":260},"function appendCaption(index, text) {\n  const p = document.createElement('p');\n  p.textContent = text;\n\n  \u002F\u002F Auto-scroll if user is near bottom\n  const isNearBottom =\n    captions.scrollHeight - captions.scrollTop - captions.clientHeight \u003C 100;\n\n  captions.appendChild(p);\n\n  if (isNearBottom) {\n    captions.scrollTop = captions.scrollHeight;\n  }\n}\n",[241,839,840,862,888,903,907,912,922,957,961,978,982,995,1013,1017],{"__ignoreMap":260},[264,841,842,845,848,850,853,855,858,860],{"class":266,"line":267},[264,843,844],{"class":270},"function",[264,846,847],{"class":288}," appendCaption",[264,849,292],{"class":278},[264,851,852],{"class":334},"index",[264,854,651],{"class":278},[264,856,857],{"class":334}," text",[264,859,304],{"class":278},[264,861,343],{"class":278},[264,863,864,866,868,870,872,874,876,878,880,882,884,886],{"class":266,"line":310},[264,865,349],{"class":270},[264,867,429],{"class":274},[264,869,328],{"class":278},[264,871,282],{"class":274},[264,873,285],{"class":278},[264,875,438],{"class":288},[264,877,292],{"class":365},[264,879,295],{"class":278},[264,881,226],{"class":298},[264,883,295],{"class":278},[264,885,304],{"class":365},[264,887,307],{"class":278},[264,889,890,893,895,897,899,901],{"class":266,"line":317},[264,891,892],{"class":274},"  p",[264,894,285],{"class":278},[264,896,487],{"class":274},[264,898,328],{"class":278},[264,900,857],{"class":274},[264,902,307],{"class":278},[264,904,905],{"class":266,"line":346},[264,906,314],{"emptyLinePlaceholder":313},[264,908,909],{"class":266,"line":379},[264,910,911],{"class":419},"  \u002F\u002F Auto-scroll if user is near bottom\n",[264,913,914,916,919],{"class":266,"line":384},[264,915,349],{"class":270},[264,917,918],{"class":274}," isNearBottom",[264,920,921],{"class":278}," =\n",[264,923,924,926,928,930,933,935,937,939,941,943,945,948,951,955],{"class":266,"line":416},[264,925,504],{"class":274},[264,927,285],{"class":278},[264,929,537],{"class":274},[264,931,932],{"class":278}," -",[264,934,532],{"class":274},[264,936,285],{"class":278},[264,938,527],{"class":274},[264,940,932],{"class":278},[264,942,532],{"class":274},[264,944,285],{"class":278},[264,946,947],{"class":274},"clientHeight",[264,949,950],{"class":278}," \u003C",[264,952,954],{"class":953},"sbssI"," 100",[264,956,307],{"class":278},[264,958,959],{"class":266,"line":423},[264,960,314],{"emptyLinePlaceholder":313},[264,962,963,966,968,970,972,974,976],{"class":266,"line":453},[264,964,965],{"class":274},"  captions",[264,967,285],{"class":278},[264,969,509],{"class":288},[264,971,292],{"class":365},[264,973,226],{"class":274},[264,975,304],{"class":365},[264,977,307],{"class":278},[264,979,980],{"class":266,"line":480},[264,981,314],{"emptyLinePlaceholder":313},[264,983,984,986,988,991,993],{"class":266,"line":501},[264,985,388],{"class":387},[264,987,331],{"class":365},[264,989,990],{"class":274},"isNearBottom",[264,992,410],{"class":365},[264,994,413],{"class":278},[264,996,997,999,1001,1003,1005,1007,1009,1011],{"class":266,"line":520},[264,998,504],{"class":274},[264,1000,285],{"class":278},[264,1002,527],{"class":274},[264,1004,328],{"class":278},[264,1006,532],{"class":274},[264,1008,285],{"class":278},[264,1010,537],{"class":274},[264,1012,307],{"class":278},[264,1014,1015],{"class":266,"line":542},[264,1016,545],{"class":278},[264,1018,1019],{"class":266,"line":548},[264,1020,1021],{"class":278},"}\n",[230,1023,1025],{"id":1024},"styling-for-readability","Styling for readability",[255,1027,1031],{"className":1028,"code":1029,"language":1030,"meta":260,"style":260},"language-css shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","#captions p {\n  margin: 0.25em 0;\n  padding: 0.25em 0.5em;\n  border-radius: 4px;\n  transition: opacity 0.2s;\n}\n","css",[241,1032,1033,1045,1062,1076,1088,1103],{"__ignoreMap":260},[264,1034,1035,1038,1040,1043],{"class":266,"line":267},[264,1036,1037],{"class":278},"#",[264,1039,299],{"class":953},[264,1041,429],{"class":1042},"sBMFI",[264,1044,343],{"class":278},[264,1046,1047,1051,1054,1057,1060],{"class":266,"line":310},[264,1048,1050],{"class":1049},"sqsOY","  margin",[264,1052,1053],{"class":278},":",[264,1055,1056],{"class":953}," 0.25em",[264,1058,1059],{"class":953}," 0",[264,1061,307],{"class":278},[264,1063,1064,1067,1069,1071,1074],{"class":266,"line":317},[264,1065,1066],{"class":1049},"  padding",[264,1068,1053],{"class":278},[264,1070,1056],{"class":953},[264,1072,1073],{"class":953}," 0.5em",[264,1075,307],{"class":278},[264,1077,1078,1081,1083,1086],{"class":266,"line":346},[264,1079,1080],{"class":1049},"  border-radius",[264,1082,1053],{"class":278},[264,1084,1085],{"class":953}," 4px",[264,1087,307],{"class":278},[264,1089,1090,1093,1095,1098,1101],{"class":266,"line":379},[264,1091,1092],{"class":1049},"  transition",[264,1094,1053],{"class":278},[264,1096,1097],{"class":274}," opacity ",[264,1099,1100],{"class":953},"0.2s",[264,1102,307],{"class":278},[264,1104,1105],{"class":266,"line":384},[264,1106,1021],{"class":278},[230,1108,1110],{"id":1109},"related","Related",[810,1112,1113,1119,1124],{},[813,1114,1115,1118],{},[1116,1117,104],"a",{"href":105}," — the stability contract",[813,1120,1121,1123],{},[1116,1122,100],{"href":101}," — concept",[813,1125,1126,1128],{},[1116,1127,130],{"href":126}," — full browser setup",[1130,1131,1132],"style",{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sqsOY, html code.shiki .sqsOY{--shiki-light:#8796B0;--shiki-default:#B2CCD6;--shiki-dark:#B2CCD6}",{"title":260,"searchDepth":267,"depth":310,"links":1134},[1135,1136,1140,1141,1142,1143],{"id":232,"depth":310,"text":233},{"id":247,"depth":310,"text":248,"children":1137},[1138,1139],{"id":252,"depth":317,"text":253},{"id":554,"depth":317,"text":555},{"id":807,"depth":310,"text":808},{"id":830,"depth":310,"text":831},{"id":1024,"depth":310,"text":1025},{"id":1109,"depth":310,"text":1110},"Consume StableStream events without manufacturing caption jitter.","md",null,{},{"title":136,"description":1144},"MiZs-oIVTpu2TBcT4Iy-p6MYIPbxGHezaqqteO4KpXc",[1151,1153],{"title":132,"path":133,"stem":134,"description":1152,"children":-1},"Backend pushes an audio stream to LansonAI.",{"title":140,"path":141,"stem":142,"description":1154,"children":-1},"Bilingual \u002F translated caption UI.",1787340798074]