The non-wool equivalent of spit-splice?I think I have discovered a way only having to weave in 1 end per piece, and it doesn't matter what your fibre content is!!!
You know how when you join a new ball of yarn, you knit the first stitch with both yarns held together, then knit that double stranded stitch together on the next row? Well that was my inspiration. By the way, I am presuming here that you are working in flat non-striped stockinette, but it can be easily adapted.
Let's call the new yarn Albert and the old yarn Boswell (because why not?). Hold together Albert and Boswell, leaving a long tail of Albert, just as you would regularly to weave in the end. Knit 5 stitches with both Albert and Boswell, treating them as if they are one strand. Drop Boswell. Knit the rest of the row with Albert. Purl the next row, treating the stitches with both Albert and Boswell as if they had only one strand (as if you were doing p2tog, but with only 1 stitch).
At the beginning of the next row, where you will be knitting, do the same 5-stitch double-strand knitting as you did before, except this time you will be doing it with two strands of Albert. Then, when you come back to them the next time, treat them like 1 strand as before. Then continue on your merry way!
Voila: no ends to weave in. You get the exact same look as if you had weaved in your ends using duplicate stitch (as shown in the Knitty tutorial on weaving in ends). Those 5 stitches will be a little chunkier, but still only as much as with duplicate stitch (and possibly less). You can also get rid of your cast-on tail like this - but not your bind-off tail. For the same reason, when changing colours, you can get rid of the new Albert tail, but not the old Boswell tail, because you'd be able to see the yellow (for example) of Boswell in the blue section of Albert. But I have done this with striping sock yarn and it's not that noticeable. If the stripes are very narrow (i.e. less than 3 rows or 2 rounds), it's going to be noticable.
When working in the round, you can do this in only 2 rounds, instead of 3 rows, because there's no need to purl back.
I hope this works for you! It's also great for when you discover a %^&*ing knot in your yarn. Just tink back 5 stitches!