[{"data":1,"prerenderedAt":347},["ShallowReactive",2],{"project-36707877":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":28,"sentiment":29,"stance_mix":30,"scored_comments":34,"aspects":35,"strip":41,"post_text":43,"what":44,"said":83,"maker_in_thread":176,"shape":186,"grid":191,"attempts":310,"same_week":311,"maker_shows":37,"maker_hidden":339,"reader_version":340,"card":341},"36707877","Free Music Demixer","Free AI-based music demixing in the browser","title","Show HN: Free AI-based music demixing in the browser","https:\u002F\u002Fsevag.xyz\u002Ffree-music-demixer\u002F","sevag.xyz","sevagh",1689249816,2023,190,45,295,3109,10,"notable","creative","music source separation","web_app",[21,24,25,26,27],"stem separation","open-unmix","webassembly","vocal remover","debated",0.167,{"positive":31,"neutral":31,"mixed":32,"critical":33},7,1,5,20,{"execution":36,"idea":38,"performance":40},{"positive":37,"critical":33},2,{"positive":39,"critical":39},0,{"positive":32,"critical":39},[32,39,33,39,42,39,42,39,39,39,39,39,39,39,39,32,39,39,33,39,39,39,33,33,42,39,33,33,42,42,32,32,39,42,39,42,42,39,39,42],3,"Hi all,\n\nI've spent some time working on music demixing or music source separation algorithms, which take in a mixed song and output estimates of isolated components (e.g. vocals, drums, bass, other).\n\nI took a popular PyTorch model with good performance (Open-Unmix, UMX-L weights), reimplemented the inference steps in C++, and compiled it to WebAssembly for a free client-side music demixer.",{"problem":45,"audience":51,"pricing":52,"motivation":56,"time_to_build":51,"stack":63,"openness":80,"stage":81,"team_size":82},{"value":46,"source":47,"evidence":48},"Separates a mixed song into isolated components such as vocals, drums, bass and other","maker",[49],{"id":50},"post",null,{"value":53,"source":47,"evidence":54},"free",[55],{"id":50},{"value":57,"source":47,"evidence":58},"Reimplementing PyTorch inference in C++ and compiling to WebAssembly for a free client-side demixer",[59,60],{"id":50},{"id":61,"by":11,"text":62},"36717222","Good question! So, I wasn't even thinking about WASM to begin with. When I saw llama.cpp and whisper.cpp on the front page of HN, I found the idea exciting - instead of neural…",[64,68,72,76],{"value":65,"source":47,"evidence":66},"C++",[67],{"id":61,"by":11,"text":62},{"value":69,"source":47,"evidence":70},"WebAssembly",[71],{"id":50},{"value":73,"source":47,"evidence":74},"Open-Unmix (UMX-L) model",[75],{"id":50},{"value":77,"source":47,"evidence":78},"Eigen",[79],{"id":61,"by":11,"text":62},"open_source","launched","unknown",{"praise":84,"objections":105,"requests":124,"questions":139,"alternatives":147},[85],{"value":86,"source":87,"evidence":88},"Impressive separation quality and useful client-side WASM approach","commenter",[89,93,97,101],{"id":90,"by":91,"text":92},"36713948","comex","Haven’t tried this demo, but in my experience these open-source models that split music into four components work absolutely fantastically. Not quite perfectly — if you remove…",{"id":94,"by":95,"text":96},"36714075","gnabgib","Gave it a shot - as the webpage warns, it does take a bit off time. The results are indeed impressive, although the separation isn't perfect.. each division (drum\u002Fbass\u002Fvocals)…",{"id":98,"by":99,"text":100},"36715460","potatoman22","I like your site. WebAssembly has opened up client side ML inference and it's a really convenient way for devs to serve certain models now. Out of curiosity, why did you…",{"id":102,"by":103,"text":104},"36714217","xnx","Nice job. I love this trend of fully client-side WASM utilities.",[106,120],{"value":107,"source":87,"evidence":108},"Processing stalls or fails in some browsers and at around 7.5 percent progress",[109,113,116],{"id":110,"by":111,"text":112},"36715044","henriquecm8","I tried 2 different files, a .flac and a .mp3, both around 3 minutes and half, and the demixing stopped at 7.5% on both files.",{"id":114,"by":111,"text":115},"36715091","I tried on Firefox now, it also stopped at 7.5%, my previous attempts were on Edge Chromium.",{"id":117,"by":118,"text":119},"36714608","humanistbot","I couldn't get this to work on Firefox 115, but could in Chrome. Does this require Chrome?",{"value":121,"source":87,"evidence":122},"Separation has bleed between stems",[123],{"id":94,"by":95,"text":96},[125,132],{"value":126,"source":87,"evidence":127},"Command line version",[128],{"id":129,"by":130,"text":131},"36715590","zzzeek","wow i always thought Spleeter was the only game in town. I've been not that satisfied with its results. is there a command line version of this tool ?",{"value":133,"source":87,"evidence":134},"npm package",[135],{"id":136,"by":137,"text":138},"36717893","dyscrete","This is cool, would love to see an npm package for this! VirtualDJ[0] software lets you do this with their Stems feature in real time and works really well, and it's free I…",[140],{"value":141,"source":87,"evidence":142},"How does it differ from Moises.ai",[143],{"id":144,"by":145,"text":146},"36717614","nylonstrung","Does this work differently than moises.ai? Been really enjoying that one",[148,155,161,165,172],{"value":149,"source":87,"evidence":150},"Spleeter",[151],{"id":152,"by":153,"text":154},"36717250","uguuo_o","I tried to use it but I had some issues as others in the thread. I have tried many sources and method over the years and settled on spleeter [0]. Works well even for 10+ minute…",{"value":156,"source":47,"evidence":157},"Demucs",[158],{"id":159,"by":11,"text":160},"36717412","You can always run higher quality models than Spleeter, for example Demucs or the real Open-Unmix UMX-L, in their full PyTorch glory, as long as you have a computer that supports…",{"value":162,"source":87,"evidence":163},"VirtualDJ stems",[164],{"id":136,"by":137,"text":138},{"value":166,"source":87,"evidence":167},"djay",[168],{"id":169,"by":170,"text":171},"36714557","kbouck","this already exists in the djay app (paid add-on feature). even runs on a smartphone! performs about the same as the app this thread is about.",{"value":173,"source":87,"evidence":174},"Moises.ai",[175],{"id":144,"by":145,"text":146},{"comments":177,"answered":33,"key":178},9,[179,180,183],{"id":159,"text":160},{"id":181,"text":182},"36717374","I've thought about this problem before (but I have so many projects going on that I axed it). Hypothetically, this is how I would approach it. I would start by forking Open-Unmix…",{"id":184,"text":185},"36714434","OK, so, tangentially related: I tried to do something once - I took small chunks of songs generated by SampleRNN in an attempt to stitch together the ones that sounded the most…",{"commenters":187,"max_depth":188,"maker_replies":177,"first_comment_mins":189,"lifespan_hours":190},31,4,331,101,[192,194,196,199,203,207,208,210,214,215,218,220,223,224,226,229,232,236,239,242,245,247,249,252,255,258,261,263,265,267,270,272,275,277,281,283,284,287,291,293,295,297,299,302,304,306],[152,39,32,193,153,39],"project\u002Fcritical\u002Fexecution",[159,39,39,195,11,32],"maker\u002Fneutral\u002Fperformance",[197,39,33,198,153,39],"36717576","maker\u002Fpositive\u002Fnone",[200,39,39,201,202,39],"36746962","commenter\u002Fneutral\u002Fnone","itsTyrion",[204,32,42,205,206,39],"36716199","project\u002Fneutral\u002Fidea","tiahura",[181,32,39,205,11,32],[209,37,42,205,170,39],"36713661",[211,37,39,212,213,39],"36714227","other\u002Fneutral\u002Fnone","jareklupinski",[184,37,39,212,11,32],[216,37,39,212,217,39],"36714516","tristanc",[219,37,39,212,170,39],"36714974",[221,37,39,212,222,39],"36714333","holoduke",[169,37,39,212,170,39],[225,37,39,201,170,39],"36714624",[227,37,39,212,228,39],"36715388","crtasm",[230,37,39,212,231,39],"36723002","ragazzina",[233,37,39,234,235,39],"36721839","other\u002Fneutral\u002Fidea","Gordonjcp",[237,42,32,193,238,39],"36715071","wackget",[240,42,39,201,241,39],"36716328","code51",[243,42,39,244,11,32],"36717417","project\u002Fneutral\u002Fexecution",[98,188,33,246,99,39],"project\u002Fpositive\u002Fexecution",[61,188,39,248,11,32],"maker\u002Fneutral\u002Fnone",[250,33,39,212,251,39],"36714617","nanidin",[253,33,39,212,254,39],"36715594","rasjani",[256,33,39,212,257,39],"36717785","bredren",[102,259,33,260,103,39],6,"project\u002Fpositive\u002Fnone",[90,31,33,262,91,39],"project\u002Fpositive\u002Fperformance",[94,31,42,264,95,39],"project\u002Fmixed\u002Fperformance",[266,31,39,212,11,32],"36714189",[268,31,39,212,269,39],"36761178","jononor",[136,271,33,246,137,39],8,[273,177,33,260,274,39],"36712959","pcthrowaway",[144,18,42,276,145,39],"project\u002Fneutral\u002Fnone",[278,18,42,279,280,39],"36718013","project\u002Fneutral\u002Fperformance","krat0sprakhar",[110,282,32,193,111,39],11,[114,282,32,193,111,39],[285,282,39,286,11,32],"36717237","maker\u002Fneutral\u002Fexecution",[288,289,33,260,290,39],"36714870",12,"chaosprint",[117,292,32,193,118,39],13,[294,292,39,244,11,32],"36714675",[296,292,42,244,118,39],"36715046",[129,298,42,276,130,39],14,[300,298,39,212,301,39],"36716394","noman-land",[303,298,39,244,11,32],"36717280",[305,298,42,205,130,39],"36723422",[307,308,39,212,309,39],"36748931",15,"leoradovey1993",[],[312,317,322,326,331,335],{"id":313,"name":314,"points":315,"category":316},"36750083","Automorphic",174,"ai",{"id":318,"name":319,"points":320,"category":321},"36754366","youpay",143,"infrastructure",{"id":323,"name":324,"points":325,"category":321},"36788210","Infisical",131,{"id":327,"name":328,"points":329,"category":330},"36786239","gmi100",91,"dev_tools",{"id":332,"name":333,"points":334,"category":321},"36758292","Peeng",84,{"id":336,"name":337,"points":338,"category":330},"36738295","PikaTorrent",65,false,"v2",{"id":342,"name":5,"line":6,"ai":339,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":343,"top":18,"kw":344,"maker":11,"domain":10,"tier":19,"attempts":39,"strip":345,"url":9,"mix":346,"praise":86,"objection":107,"sub":21},36707877,0.17,[21,24,25,26,27],"1050303000000001005000553055331103033003",[31,31,32,33],1794036638398]