This app was mentioned in 12 comments, with an average of 1.67 upvotes
There is an app you can get called BubbleUPnP so you can stream it using your phone. Here is a nice tutorial. Only downside it that it costs a few bucks, but is well worth it.
Edit Linked to the wrong tutorial
I use Bubble UPnP and it works great.
It doesn't require root or anything and can stream music and video to Xbox.
If you want to do WiFi streaming, install $3.50 BubbleUPnP on the phone and use the Windows 10 built-in DLNA streaming. If you're on Ubuntu you can install pulseaudio-dlna and use it as output from sound settings. I'm sure there's something for Mac as well.
For USB, what you're looking for is called a USB DAC. If you're really strapped for cash and don't have fancy tastes in sound quality, or quality headphones, then one of these $5-7 puppies will take care of it. Quality is touch and go, some may be DOA and need replacing, but they'll get the job done. You can also go for a $20 Signstek (PCM2704), but I wouldn't recommend more expensive ones without knowing what headphones you're using and what you want from them.
If you do, I can recommend the $40 FiiO K1, $65 SMSL SD793-II or $75 FiiO E10K, but if you do that you should also look into putting $50-200 into decent headphones and you're probably not looking for that.
Whatever you do DO NOT get USB headphones. Decent ones are expensive, cheap ones are absolute crap. A $5 DAC like above and a $25 pair of Sennheiser HD202 will be better and can be replaced separately or even taken apart and repaired if they break.
So far, I haven't been able to screen mirror. If you're running into the same problem with casting that I was ( where the Fire TV wasn't appearing as a castable option) I remedied this by purchasing and downloading licensed apps that allowed the connection. I have the link below. Bubble UPnP with licences https://play.google.com/store/apps/details?id=com.bubblesoft.android.bubbleupnp.unlocker https://play.google.com/store/apps/details?id=com.bubblesoft.android.bubbleupnp
All Screen and AllCast are both decent free apps with a wide variety of connectivity options that I use for casting sites like Putlockers and 123 movies https://play.google.com/store/apps/details?id=com.toxic.apps.chrome https://play.google.com/store/apps/details?id=com.koushikdutta.cast
Cast to TV by InShot are two separate apps made by the same developer four different specific casting options. These are also free. https://play.google.com/store/apps/details?id=castwebbrowsertotv.castwebvideo.webvideocaster https://play.google.com/store/apps/details?id=cast.video.screenmirroring.casttotv
But all in all, no I haven't figured out the screen mirroring yet 😭.
BubbleUPnP > Windows Media Player works for me.
https://i.imgur.com/BFrzIf9.png
https://i.imgur.com/PF6Rvci.jpg