Canvas 2D · getUserMedia · luminance → glyph
วิดีโอเป็นตัวอักษร
แปลงภาพจากเว็บแคมเป็น ASCII แบบ real-time. หลักการคือ ย่อภาพลงเหลือตารางเล็ก ๆ (เช่น 120 คอลัมน์) แล้วแต่ละช่องดูความสว่าง — สว่างน้อยใส่ตัวอักษรโปร่ง สว่างมากใส่ตัวอักษรทึบ. เริ่มด้วยภาพ plasma จำลอง กด เปิดกล้อง เพื่อใช้วิดีโอจริง (ต้องเปิดผ่าน https หรือ localhost)
plasma · — fps
ชุดตัวอักษร
สี
คอลัมน์มาก = ละเอียดแต่หนักขึ้น · กล้องเปิดได้เฉพาะหน้าเว็บที่เป็น https (หน้านี้บน Pages ใช้ได้)
วิธีทำงาน: วาดเฟรมวิดีโอลง canvas เล็ก ๆ ขนาด
cols × rows (drawImage ย่อให้เอง)
แล้ว getImageData() อ่านสีทุกช่อง. คำนวณความสว่าง 0.299R + 0.587G + 0.114B
แมปเข้าช่วงดัชนีของ "แถบตัวอักษร" (ramp) ที่เรียงจากโปร่ง→ทึบ แล้ว fillText() ลงจอจริง.
โหมด plasma ใช้ผลรวมของคลื่น sine หลายเส้นแทนภาพกล้อง — ไม่ต้องขออนุญาตอะไร.