11 पॉइंट द्वारा GN⁺ 2024-04-22 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Windrecorder एक ओपन सोर्स ऐप है जो Windows स्क्रीन रिकॉर्ड को लोकल में जमा करता है ताकि बाद में उसे रिवाइंड और सर्च किया जा सके; यह Rewind/Copilot Recall के विकल्प के काफ़ी करीब एक व्यक्तिगत मेमोरी टूल है
  • स्क्रीन को ffmpeg या लगातार अंतराल पर लिए गए screenshots के ज़रिए 15 मिनट के टुकड़ों वाली फ़ाइलों में सहेजा जाता है, और Windows लोकल OCR API तथा image embeddings से index किया जाता है
  • लोकल Web UI में window title, text keywords और image descriptions के आधार पर पुरानी स्क्रीनें खोजी जा सकती हैं, और कुछ खास programs या screen regions को रिकॉर्डिंग से बाहर रखा जा सकता है
  • डेटा प्रोसेसिंग बिना cloud के केवल यूज़र के कंप्यूटर पर होती है, और Python-आधारित होने की वजह से इसकी संरचना को देखना और बदलना आसान है, हालांकि performance धीमी हो सकती है
  • फ़िलहाल repository में unencrypted local structure है, LLM फीचर्स सीमित हैं, और रोज़ाना title overview व search ही इसका व्यावहारिक उपयोग-क्षेत्र है

स्क्रीन रिकॉर्डिंग और रिवाइंड सर्च

  • Windrecorder एक व्यक्तिगत स्क्रीन मेमोरी टूल है, जिसका मकसद ऐसी जानकारी को फिर से ढूँढना है जिसे यूज़र ने देखा था लेकिन बाद में ढूँढना मुश्किल हो जाता है, जैसे webpages, videos और chat messages
  • इसकी मुख्य प्रेरणा Mac ऐप Rewind और Black Mirror S1E3 “The Entire History of You” हैं
  • स्क्रीन रिकॉर्डिंग का तरीका सरल है
    • ffmpeg या लगातार अंतराल वाले screenshots का उपयोग होता है
    • स्क्रीन को 15 मिनट के chunk files में सहेजा जाता है
    • Windows लोकल OCR API और image embeddings से रिकॉर्ड को index किया जाता है
  • यूज़र तय कर सकते हैं कि किन programs या screen ranges को रिकॉर्ड नहीं करना है
  • लोकल Web UI में नीचे दिए गए संकेतों के आधार पर पुरानी स्क्रीन को रिवाइंड और सर्च किया जा सकता है
    • window title
    • text keywords
    • image descriptions
  • अतिरिक्त फीचर्स में दैनिक/आवधिक screen usage time, circadian summaries, और monthly lightbox generation शामिल हैं

लोकल-फर्स्ट डिज़ाइन और मौजूदा सीमाएँ

  • सारा प्रोसेसिंग केवल यूज़र के कंप्यूटर पर होता है और cloud storage या subscription को आधार नहीं मानता
  • यह Python में कई फीचर्स को जोड़कर बनाई गई संरचना है, इसलिए इसकी अंदरूनी कार्यप्रणाली पारदर्शी है और यूज़र के लिए इसे सीधे संशोधित करना आसान है
    • लेकिन इसके बदले performance धीमी हो सकती है
  • डेवलपर पेशेवर डेवलपर नहीं है; यह टूल व्यक्तिगत रुचि और अपने उपयोग के लिए बनाया गया था
    • कुछ समय तक इस्तेमाल करने के बाद इसे पर्याप्त परिपक्व और मज़बूत माना गया
    • issues उठाने, discussion करने और contribution देने का स्वागत है
  • अभी इसकी कमियाँ भी साफ़ हैं
    • डेटा स्टोरेज पारदर्शी और unencrypted है
    • यूज़र structured local data का खुलकर उपयोग कर सकते हैं, लेकिन उसकी सुरक्षा पर भी ध्यान देना चाहिए
  • LLM फीचर्स को बड़े स्तर पर शामिल नहीं किया गया है
    • फ़िलहाल LLM फीचर्स मुख्य रूप से यूज़र intent के अनुसार API calls तय करने और search results को समायोजित करने तक सीमित हैं
    • यह अभी उस स्तर तक नहीं पहुँचा है जहाँ यह सारे डेटा को खुद समझे, विश्लेषित करे, याद रखे और यूज़र intent के अनुसार काम करे
    • अभी उपलब्ध daily title overview और search फीचर्स ही Windrecorder में व्यावहारिक रूप से संभव दायरा हैं

1 टिप्पणियां

 
GN⁺ 2024-04-22
Hacker News पर राय
  • करीब 20 साल पहले ही कुछ ऐसा बनाया गया था, और इसमें अतीत के किसी खास समय पर rewind करके वहीं से execution फिर शुरू करने की सुविधा भी शामिल थी
    http://www.cs.columbia.edu/~orenl/papers/sosp07-dejaview.pdf
    DejaView एक personal virtual computer recorder था जो पूरे desktop usage experience को रिकॉर्ड करके replay, browse, search और restore कर सकता था। यह screen output, application/file system state checkpoints, और context सहित दिखने वाले text को साथ में store और index करता था
    इसने applications, window system या operating system kernel में बदलाव किए बिना display/operating system/file system virtualization को जोड़ा, और नतीजा यह निकला कि वास्तविक desktop apps में users को performance degradation महसूस कराए बिना continuous recording और interactive search/replay संभव था

    • जानना चाहता हूं कि इसे सच में बनाया गया था या सिर्फ paper लिखा गया था। यह भी जानना चाहूंगा कि इसे कहां से download किया जा सकता है
    • पक्का नहीं कि URL सही है या नहीं। खोलने पर कहता है कि file नहीं मिल सकती
  • macOS के लिए भी ऐसा ही एक open source project है
    https://rem.ing
    https://github.com/jasonjmcghee/rem
    developer ने इसे 3 महीने पहले HN पर post किया था, और उस पर काफी अच्छी discussion भी हुई थी
    https://news.ycombinator.com/item?id=38787892

    • rem बनाने वाला मैं ही हूं। अगर आप development में साथ contribute करें तो अच्छा होगा
      यह MIT license के तहत है, और Rust में बना cross-platform version https://github.com/jasonjmcghee/xrem भी शुरू किया है, लेकिन अभी शुरुआती stage में है इसलिए और मदद की जरूरत है
    • जानना चाहता हूं कि क्या किसी ने इसे लंबे समय तक इस्तेमाल किया है। असल में यह मददगार है या नहीं, यह जानना चाहता हूं
    • Mac पर ऐसा कुछ काफी देर तक खोजा, फिर हार मानकर खुद एक script बनाई जो हर 10 सेकंड में screenshot लेती है, और दूसरी script जो उन्हें ffmpeg से video में जोड़ती है
      contribute करना चाहूंगा, लेकिन Swift बिल्कुल नहीं जानता; मैंने जो बनाया था वह सब launchd पर चलने वाली bash scripts थीं
    • इसी तरह का काम करने वाली एक company http://rewind.ai भी है
  • ऐसा कुछ बनाना शानदार होगा: Meta Smart Glasses हर 2 सेकंड में photo लें, images को cloud server पर भेजें, OCR और object detection/labeling चलाएं, और फिर past को search करने या उससे chat करने वाला app दें
    तब LLM से “मैंने wallet कहां रखा?”, “क्या कल restaurant में payment के बाद मेरा credit card वापस मिला था?”, “आज मेरी बेटी की नई T-shirt पर क्या लिखा था?” जैसी बातें पूछी जा सकेंगी
    इसमें audio recording और transcription भी जुड़ जाए तो meeting में तय deadline, park में मिले व्यक्ति का phone number, आज मिले investor का नाम भी पूछा जा सकेगा; और अगर phone calls तक access करके सामने वाले की बातों को transcribe और index किया जाए तो और भी अच्छा होगा
    Black Mirror का “The Entire History of You” episode याद आता है: https://en.wikipedia.org/wiki/The_Entire_History_of_You

    • आम तौर पर Black Mirror episodes ऐसे भविष्य के रूप में नहीं बनाए जाते जिन्हें follow करना चाहिए
    • restaurant को credit card आपकी नजरों से बाहर ले जाने की इजाजत कभी नहीं होनी चाहिए। सच तो यह है कि staff को card छूने की जरूरत भी नहीं; निकलते समय checkout terminal पर खुद swipe करना सही है
    • Brilliant Labs का Frame ऐसे data को user-friendly और काफी unobtrusive तरीके से realistically उपलब्ध करा सकने वाले hardware के करीब पहुंच रहा है
      मैंने पहले ही pre-order कर दिया है
    • यही तो बहुत आलोचना झेल चुके Humane AI Pin का काम है
  • जानना चाहता हूं कि OCR की जगह, या OCR के साथ-साथ accessibility API इस्तेमाल करके किसी ने ऐसा कुछ बनाया है या नहीं
    accessibility API से text सीधे लिया जा सकता है, इसलिए सब कुछ OCR करना waste जैसा लगता है
    यह LLM को UI से connect करने का अच्छा तरीका भी हो सकता है, और ऐसे tools के लिए training data इकट्ठा करने का तरीका भी हो सकता है

    • Dragon NaturallySpeaking “OK click” जैसे voice commands support करता है और सच में उसी हिसाब से react करता है
      Microsoft Office अपने widgets खुद render करता था, उस समस्या को OCR से widgets और buttons का text पढ़कर labels पहचानने के तरीके से हल किया गया
      जितना सोचा था, उससे कहीं ज्यादा बार इस तरीके की जरूरत पड़ती है। developers अक्सर उम्मीद तोड़ते हैं और दिए गए API का इस्तेमाल नहीं करते
    • screen search वाला Loom जैसा screen recorder बनाते हुए दोनों को थोड़ा-थोड़ा इस्तेमाल किया, लेकिन OS-independent बनाना हो तो Mac और Windows की accessibility API differences काफी बड़े हैं, और Windows में भी हर app का implementation अलग-अलग है, इसलिए user ने वास्तव में क्या “देखा” यह तय करना मुश्किल है
      कुछ apps जरूरी data छोड़ देते हैं या गलत implement करते हैं। लगा था accessibility आसान होगी, लेकिन असल में कई बार OCR ज्यादा आसान निकला
    • screen history वाला एक workflow recorder MVP बनाया था
      मुझे लगा कि अगर यह approach सच में काम की है, तो Microsoft या Apple इसे Copilot के हिस्से के रूप में OS में default शामिल करेंगे, जो सब कुछ याद रखकर user knowledge में मदद करेगा
      मैंने जो screen history बनाई थी, वह यहां बताए गए app जितनी advanced नहीं थी, और मैं खुद भी उसे इस्तेमाल नहीं करता था
    • अच्छा होगा अगर foreground में मौजूद app की जानकारी metadata के रूप में साथ में store की जा सके
  • Notion में “JavaScript must be enabled in order to use Notion” और “Please enable JavaScript to continue” वाला blocking screen दिखता है, लेकिन NoScript इस्तेमाल करने पर इस blocking तरीके की वजह से असल में site पर JavaScript enable ही नहीं किया जा सकता
    काश static page पर redirect न किया जाता। उस page पर case-by-case allow करने के लिए कोई JavaScript नहीं है, और redirect इतना तेज है कि main page पर JavaScript enable करने का मौका भी नहीं मिलता
    सिर्फ notion.so को allow करने से भी यह block bypass नहीं होता

    • यह सच में बहुत खराब है। जो चीज ठीक से इस्तेमाल हो सकती थी, उसे सबसे खराब तरीके से इस्तेमाल कर दिया गया
      यह भी हैरानी की बात है कि HTML बिना JavaScript के redirect allow करता है
  • Windows पर TimeSnapper भी है। यह open source नहीं है, लेकिन इसके developer कभी-कभी Hacker News पर दिखते हैं
    https://timesnapper.com/

    • screenshot-आधारित time tracking और window titles, कभी-कभी खुले documents पर आधारित advanced tagging के लिए ManicTime भी है। हालांकि लगता है इसमें OCR नहीं है
      https://www.manictime.com/
  • ऐसे कुछ projects याद हैं। पहली बार 2014 में Savant Recall देखा था, जो YC में चुना नहीं गया और फिर open source के रूप में जारी कर दिया गया
    बाद में Napster के co-founder Ritter ने इसे लिया, इसका नाम Atlas Recall किया, नया UI जोड़ा और 20 मिलियन डॉलर की funding जुटाई
    लेकिन 1 साल बाद यह अचानक बंद हो गया, और LinkedIn पर लिखा है कि “Xinova ने acquire किया”। एक और नाम जो सुना था, वह 2019 का Apse था

  • यह https://apse.io/ से काफी मिलता-जुलता लगता है। वह भी OCR के जरिए screen पर देखी गई हर चीज को searchable index में बदलता है
    windrecorder का open source होना मुझे पसंद है

  • GitHub README के हिसाब से video लगभग 100–200GB प्रति वर्ष है, इसलिए यह इतना बुरा नहीं है

    • जिज्ञासा है कि यह रोज़ औसतन कितने घंटों के आधार पर है। यह भी जानना चाहूंगा कि movies या games जैसे बिना text वाले scenes को delete करता है या नहीं
  • अगर आपके पास “ऐसी app क्यों नहीं है?” जैसा कोई idea है, तो उसे इस तरह खुद अच्छी तरह implement कर देना सबके लिए प्रेरणा बनता है

    • X करने वाली app खोजने का सबसे आसान तरीका है कि खुद एक नई बना दें, उसे HN पर डालें और comments देखें
    • rewind.ai भी ऐसा ही एक example है; हाल में उन्होंने इस data को cloud-only storage में shift कर दिया और नाम बदलकर limitless.ai कर लिया, इसलिए ऐसा open source सामने आना अच्छा लगता है
      अच्छा है कि cloud storage के लिए मजबूर नहीं होना पड़ेगा, और यह बात मैं शायद जल्द ही paid customer छोड़ने वाले व्यक्ति के रूप में कह रहा हूं