[{"data":1,"prerenderedAt":332},["ShallowReactive",2],{"project-38236198":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":36,"aspects":37,"strip":44,"post_text":46,"what":47,"said":88,"maker_in_thread":178,"shape":189,"grid":193,"attempts":294,"same_week":295,"maker_shows":323,"maker_hidden":324,"reader_version":325,"card":326},"38236198","bulk_transcribe_youtube_videos_from_playlist","Bulk Creation of Transcripts from YouTube Playlists with Whisper","title","Show HN: Bulk Creation of Transcripts from YouTube Playlists with Whisper","https:\u002F\u002Fgithub.com\u002FDicklesworthstone\u002Fbulk_transcribe_youtube_videos_from_playlist","github.com","eigenvalue",1699750636,2023,125,43,503,3109,17,"notable","ai","speech transcription","cli",[24,25,26,27,28],"whisper transcription","youtube transcript","bulk transcription","speech to text","faster-whisper","loved",0.256,{"positive":32,"neutral":33,"mixed":34,"critical":35},6,7,0,1,14,{"idea":38,"execution":40,"docs":41,"performance":42},{"positive":39,"critical":35},3,{"positive":35,"critical":34},{"positive":34,"critical":34},{"positive":43,"critical":34},2,[39,34,34,39,35,34,34,34,34,34,39,34,34,45,45,45,34,45,34,34,34,39,34,34,34,39,39,34,34,39,45,45,34,34,34,34,34,34,34,34],5,"I know there are various tools that are supposed to make this easy, but I couldn't find anything that did everything I wanted, so I made this today for fun. The web-based offerings all take forever and seem flaky, and you need to process one video at a time, with no control over the transcription settings. In contrast, my script lets you convert a whole playlist in bulk with full control over everything.\n\nIt's truly easy to use-- you can clone the repo, install to a venv, and be generating a folder full of high quality transcript text files in under 5 minutes. All you need to do is supply the ",{"problem":48,"audience":54,"pricing":59,"motivation":60,"time_to_build":59,"stack":64,"openness":85,"stage":86,"team_size":87},{"value":49,"source":50,"evidence":51},"Web transcription tools are slow, flaky, and process one video at a time without settings control.","maker",[52],{"id":53},"post",{"value":55,"source":56,"evidence":57},"People who want transcripts of many YouTube videos with control over transcription settings.","inferred",[58],{"id":53},null,{"value":61,"source":50,"evidence":62},"Made for fun because existing tools didn't do everything wanted.",[63],{"id":53},[65,72,78],{"value":66,"source":50,"evidence":67},"Python",[68,69],{"id":53},{"id":70,"by":11,"text":71},"38249570","Just install Anaconda: https:\u002F\u002Fwww.anaconda.com\u002Fdownload For windows or Mac. If you do it on Windows it’s probably easier if you let it add it to your Windows system path. Then…",{"value":28,"source":50,"evidence":73},[74,75],{"id":53},{"id":76,"by":11,"text":77},"38248608","Yes, this uses a variant of that called faster-whisper.",{"value":79,"source":50,"evidence":80},"spaCy",[81,82],{"id":53},{"id":83,"by":11,"text":84},"38239217","Thanks! I spent a decent amount of time messing around with regex nonsense before I realized Spacy could work for this. I decided to leave the regex approach in as an option…","unknown","launched","solo",{"praise":89,"objections":112,"requests":131,"questions":147,"alternatives":155},[90,105],{"value":91,"source":92,"evidence":93},"Whisper transcripts are more accurate than YouTube's auto-generated ones.","commenter",[94,98,102],{"id":95,"by":96,"text":97},"38247680","tsurba","Whisper is generally better than the one in youtube.",{"id":99,"by":100,"text":101},"38248423","kawsper","I found the YouTube one to be really bad for my voice and the way I speak - Whisper does it perfectly (using the large dataset). English is my second language, and I mumble.",{"id":103,"by":11,"text":104},"38248622","I would say that overall they are much, much better than the auto generated ones from YouTube. If the speaker speaks incredibly clearly and slowly, without slang, etc, then the…",{"value":106,"source":92,"evidence":107},"Well architected, and the spaCy integration is nice.",[108],{"id":109,"by":110,"text":111},"38238252","skeptrune","This is awesome man. We attempted to build something similar and wound up giving up and pivoting to transcripts w\u002F a punctuation model to enhance them. If this was around at the…",[113,124],{"value":114,"source":92,"evidence":115},"Speaker diarization is not solved in this tool.",[116,120],{"id":117,"by":118,"text":119},"38247381","tehlike","You might want to look into diarization also http:\u002F\u002Fgladia.io\u002F seem to be doing it well. It makes a great difference to have transcripts with speaker annotation.",{"id":121,"by":122,"text":123},"38253006","huac","to zoom out a bit, this is known as the 'cocktail party problem' and is very much considered unsolved (particularly when there is an unknown number of speakers or overlapping…",{"value":125,"source":92,"evidence":126},"Setup is hard for non-Python users.",[127],{"id":128,"by":129,"text":130},"38249487","chiefalchemist","I don't have any experience with Python. Can someone point me to definitive (and idiot-proof) tutorials for Win 10 Pro and Mac OS? Maybe using Docker? I just don't know but am…",[132,140],{"value":133,"source":92,"evidence":134},"Add speaker diarization.",[135,136],{"id":117,"by":118,"text":119},{"id":137,"by":138,"text":139},"38295567","pavel_lishin","> Turning those abstract speaker identifications into actual names would seem to require a fair bit of intelligence As someone looking for this functionality, this is the easiest…",{"value":141,"source":92,"evidence":142},"Make it a Chrome extension.",[143],{"id":144,"by":145,"text":146},"38257485","josephrmartinez","This is nice! I like how you've built upon your previous youtube transcript cleaner project and put together something really compelling. Have you thought about spinning this…",[148],{"value":149,"source":92,"evidence":150},"How does it compare to YouTube's own transcripts?",[151],{"id":152,"by":153,"text":154},"38247615","barefeg","Out of curiosity, how does it compare to YouTube’s own generated transcripts?",[156,163,167,174],{"value":157,"source":92,"evidence":158},"WhisperX",[159],{"id":160,"by":161,"text":162},"38249038","jimmySixDOF","The whisperX project has most of it covered they are integrating the new v3 model waiting for a ccp GGUF version also there is a workaround for the latest speaker diarization but…",{"value":164,"source":92,"evidence":165},"Gladia",[166],{"id":117,"by":118,"text":119},{"value":168,"source":92,"evidence":169},"Deepgram",[170],{"id":171,"by":172,"text":173},"38252161","tornato7","Deepgram is really good and around your price point too. They also have $200 free credit which should be more than enough for most hobby protects.",{"value":175,"source":92,"evidence":176},"YouTube auto-generated transcripts",[177],{"id":152,"by":153,"text":154},{"comments":179,"answered":180,"key":181},9,4,[182,185,188],{"id":183,"text":184},"38247430","Thanks, I haven’t seen an easy and reliable way to do this using open source stuff yet. Theoretically just separating out speakers seems like it wouldn’t be that hard; just…",{"id":186,"text":187},"38250094","Thanks, took a look at it. Seems quite heavy though, lots of huge dependencies like pytorch and torchaudio, and seems like the speaker diarization requires a GPU if I'm not…",{"id":83,"text":84},{"commenters":190,"max_depth":32,"maker_replies":179,"first_comment_mins":191,"lifespan_hours":192},25,416,116,[194,196,197,200,203,205,209,213,215,217,219,220,224,225,227,229,233,236,239,241,244,246,248,250,252,255,257,260,262,263,266,269,270,272,273,275,277,278,282,285,288,290,292],[117,34,39,195,118,34],"project\u002Fneutral\u002Fidea",[183,34,34,195,11,35],[198,34,34,199,118,34],"38247443","commenter\u002Fneutral\u002Fidea",[201,34,39,195,202,34],"38247486","FanaHOVA",[160,34,35,204,161,34],"project\u002Fcritical\u002Fidea",[206,34,34,207,208,34],"38249409","other\u002Fneutral\u002Fnone","noman-land",[210,34,34,211,212,34],"38249452","commenter\u002Fneutral\u002Fnone","vsnf",[214,34,34,211,208,34],"38256658",[186,34,34,216,11,35],"project\u002Fneutral\u002Fperformance",[121,34,34,218,122,34],"other\u002Fneutral\u002Fidea",[137,34,39,195,138,34],[221,34,34,222,223,34],"38248502","other\u002Fneutral\u002Fpricing","BetterWhisper",[171,34,34,222,172,34],[109,35,45,226,110,34],"maker\u002Fpositive\u002Fexecution",[83,35,34,228,11,35],"project\u002Fneutral\u002Fexecution",[230,43,45,231,232,34],"38247927","project\u002Fpositive\u002Fidea","Demcox",[234,43,45,231,235,34],"38249163","jdthedisciple",[237,43,34,207,238,34],"38269500","ldenoue",[240,43,45,231,129,34],"38249460",[242,43,34,207,243,34],"38250133","evanreichard",[245,43,34,207,235,34],"38262710",[247,43,34,207,243,34],"38263945",[128,39,39,249,129,34],"project\u002Fneutral\u002Fdocs",[70,39,34,251,11,35],"maker\u002Fpositive\u002Fdocs",[253,39,34,207,254,34],"38251535","mkmk",[256,39,34,207,129,34],"38253750",[258,180,39,195,259,34],"38248402","vfclists",[76,180,34,261,11,35],"project\u002Fneutral\u002Fnone",[144,45,39,195,145,34],[264,45,34,265,11,35],"38257947","project\u002Fneutral\u002Fdesign",[267,32,34,207,268,34],"38257124","mannyv",[152,33,39,216,153,34],[95,33,45,271,96,34],"project\u002Fpositive\u002Fperformance",[99,33,45,271,100,34],[274,33,34,207,223,34],"38248530",[276,33,34,207,145,34],"38257513",[103,33,34,271,11,35],[279,280,34,207,281,34],"38248312",8,"jfoster",[283,280,34,207,284,34],"38248991","fy20",[286,280,34,287,11,35],"38249488","other\u002Fneutral\u002Fperformance",[289,280,34,207,281,34],"38251139",[291,280,34,195,11,35],"38251390",[293,280,34,207,238,34],"38269660",[],[296,301,306,311,315,319],{"id":297,"name":298,"points":299,"category":300},"38243949","dpoint",583,"hardware",{"id":302,"name":303,"points":304,"category":305},"38230325","Spray",393,"dev_tools",{"id":307,"name":308,"points":309,"category":310},"38228788","DataSheetGrid",342,"languages",{"id":312,"name":313,"points":314,"category":310},"38202703","BabaBASIC",234,{"id":316,"name":317,"points":318,"category":305},"38230476","Flyscrape",208,{"id":320,"name":321,"points":322,"category":310},"38276430","Numbat",146,15,false,"v2",{"id":327,"name":5,"line":6,"ai":324,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":328,"top":18,"kw":329,"maker":11,"domain":10,"tier":19,"attempts":34,"strip":330,"url":9,"mix":331,"praise":91,"objection":114,"sub":21},38236198,0.26,[24,25,26,27,28],"3003100000300555050003000330035500000000",[32,33,34,35],1794036644597]