Stream into the abyss.
In case you have no-script enabled or for some reason cannot see the title video on this website. I have provided direct links for these videos.
- AV1 - Link - Unlike our tutorial videos this will only come in AV1 due to its sheer size of recording 4 hours of video.
To whom it may concern:
In order to be a reasonably competent blogger one must try new experiences. On this page, we challenge ourselves and ask if we can be a good streamer. Now, most who jump into the business of online streaming, especially what I'm doing which is video games do it just to chill with their friends with the hopes and dreams of eventually being compensated for what they love to do which is to play video games while talking to people. For those who are making it and living the dream then congratulations to you.
We are here at the s-config stream for a more scientific approach. One of the things that you do when you press that magical record button is that eventually, you must hit the playback button. Try not to cringe at hearing your voice echo back into your skull through the modulated baud-cast net cyberium. Listening to one previous recording turns into a pivotal moment of education. Why are people only tuning into your stream for a few seconds and running for the hills? Pressing that play button on what you've already recorded now places you in the listener/watcher's shoes. If you were a watcher would you tolerate this hot mess?
In essence, WE become the "Stream Coach." not some bizarre Ponzi scheme provider.
Now for those who have read these blogs. We're not necessarily big fans of Twitch or YouTube. But we have not found a good way to stream our gaming experiences on this domain (At least not yet.) So, until we get our shit together with the mad scripting we suppose we should start off like every other "schlub" on the web and just go to Twitch and smash that record button. But why not use the recorded videos button you may ask? Well, there are a few reasons for that!
- We use "How to Stream" Wiki and manuals a lot like toilet paper. We have no standards as to when we stream. We do not amass thousands of followers on social networks and tell them when we stream because we think that's a little on the creepy side. I do not "aspire" towards anything. The only spam we put out is for articles and those are only done once. We play our streaming career a lot like a pirate radio station. Flip the switch, sit back, and enjoy the subculture.
- Like YouTube, Twitch has a music detection algorithm going. To the point where even if the video game developers give you complete and total permission to stream the music industry will still mute and block your recordings. Now don't think the digital age is when the music industry fucked up things. All you have to do is look at the movie "Heavy Metal" for how a music industry could take a film and block it for almost a generation before it was finally forgiven. Decentralization makes it harder for a bunch of lawyers to come at a mass of people instead of just cherry-picking the two largest streaming platforms on the net. So in a sense, we're doing a favor for ourselves and a favor for Twitch by NOT using their per-recorded streaming service.
- For those who hate Twitch for their obsessive insertion of commercials, I shall post my latest streams right here on my website which does not monitor you or fill you with terrible ads. Now, if you DO wish to support my link is right here. But you don't have to! I'm totally fine! If you wish to tune into any Twitch user stream without seeing too many stupid ads then we would recommend UBlock Origin and Privacy Badger. It's not going to stop everything from Twitch but it will stop a lot!
- Branding is everything. That means if you want to see a pre-recorded stream of mine guess what? You're going to have to come here. Over time we may choose a video service to dump our
table-scrapsarchives onto. But until then this is the only place you can go to see my stream. Not on a third-party service that can control the way you think and the way you act.
S-Config's Streaming hardware:
As I'm not a pro gamer but instead a blogger and repair tech. Many of you will probably laugh at the rig. But here goes:
- ASUS Motherboard
- AMD FX-8350 8-core processor
- Noctua Fan for silence.
- Geforce 1050ti with 4GB of DDR5 ram
- 16GB of ram
- 500GB Samsung SSD Drive
- Creative Audigy 5rx card
- Corsair K70 keyboard
- Corsair M65 mouse
- 24" Samsung monitor
- ArduinoDECK - Me? Actually, using my own DIY gear? You betcha!
- Windows 7
- Neewer NW-800 condenser microphone
- Behringer Xenix1204 mixer deck to provide phantom power to the microphone
- Never going to happen. Sorry. Maybe FaceRig just to annoy the shit out of people. But that's about it.
Now, for streaming, I went a little on the aggressive side and chose to output 6Mbs streaming because we're blasting out at 1080p and at 60 frames per second. Upload stream is probably the biggest roadblock to a lot of streamers and until we can get some hardware encoding for VP9 support this roadblock will be around for a long time. Going down to just 4Mbs caused the high-action scene to block out badly.
Since we were streaming at 60fps 1080p it's only fair we should adjust our recording settings to suit. Now, when we streamed a long time ago we left the recording format in MP4. That was a big mistake. While MP4 is great for recording short bursts like how some of our tutorial videos operated on the network. The MP4s corrupt during long recording sessions. Especially streaming because there's a game that is eating up almost all of the resources plus streaming plus you're recording at the same time. Phew! That is a lot of shit for a poor GeForce 1050Ti card to perform! But I do like my 1050Ti because it's dead quiet and it's 75 watts so we'll take the hit in frame drops.
FLV is a more suitable format to work in because even if frames start to drop the recording does not corrupt. (update: We have switched to MKV now)
Now, we had to edit this video because there was a critical mistake in streaming especially with GTA5. Which is you're supposed to load the game BEFORE you hit the stream button! For those who never play GTA5 the network mode is the most maddening experience because it can take up to 15 minutes in order for you to join a server with a handful of people running around the city. During this time we're effectively recording a slide show of GTA characters. This probably drove people away from my stream but it doesn't have to drive people away from the recorded video!
For some post-production, i used the Openshot video. Which is perfectly fine for importing FLV files. However, it was given me trouble with the FLV causing my editor to lock in mid-edit which means I had to convert the file to something a little more usable.
A little bit of FFmpeg action was needed.
ffmpeg -y -hwaccel nvdec -i "stream-MASTER.mp4" -c:v h264_nvenc -vsync 0 -profile:v high -preset slow -b:v 25000k -maxrate 50000k -bufsize 5000k -threads 0 -pass 1 -an -y -f mp4 NUL ffmpeg -y -hwaccel nvdec -i "stream-MASTER.mp4" -c:v h264_nvenc -vsync 0 -profile:v high -preset slow -b:v 25000k -maxrate 50000k -bufsize 5000k -threads 0 -pass 2 -codec:a aac -b:a 320k -f mp4 ruggable-complete.mp4 del ffmpeg2pass-0.log del ffmpeg2pass-0.log.mbtree pause
With a little bit of help from our 75-watt little GPU that could we were able to re-encode this video to MP4 in about 30 minutes even in two-pass mode. In the future, we're going to try lossless to see if that improves our video quality on the final render.
We really only edited the beginning of the stream when nothing was happening (or there was a point where we were trying to get our motorbike for 20 minutes. Ugh!) beyond that the footage thereafter was completely raw.
Afterward, I re-save the edited video as a 25Mbs master. Now, we do not feel that because the video size is still around 24GB in size for just under 2 hours of video.
Upload to server.
We need to make it smaller. I passed a similar command to the one above in FFMpeg.
ffmpeg -y -hwaccel nvdec -i "stream-MASTER.mp4" -c:v h264_nvenc -vsync 0 -profile:v high -preset slow -b:v 4000k -maxrate 8000k -bufsize 10000k -threads 0 -pass 1 -an -y -f mp4 NUL ffmpeg -y -hwaccel nvdec -i "stream-MASTER.mp4" -c:v h264_nvenc -vsync 0 -profile:v high -preset slow -b:v 4000k -maxrate 8000k -bufsize 10000k -threads 0 -pass 2 -codec:a aac -b:a 320k -f mp4 ruggable-complete.mp4 del ffmpeg2pass-0.log del ffmpeg2pass-0.log.mbtree pause
Unfortunately, it resulted in a file size of about 4.7GB. More drastic measures had to be taken.
Code for Twitch Stream 03-23-2020 WebM
ffmpeg -i stream-OBS-Stream.mp4 -c:v libvpx-vp9 -b:v 3000k -c:a libvorbis -b:a 96k -pass 1 -threads 0 -y -f webm NUL ffmpeg -i stream-OBS-Stream.mp4 -c:v libvpx-vp9 -b:v 3000k -c:a libvorbis -b:a 96k -pass 2 -threads 0 stream2.webm del ffmpeg2pass-0.log del ffmpeg2pass-0.log.mbtree
2.2GB isn't great but acceptable to upload given that it's almost two hours long. But holy hell that took almost 5 days to encode! Guys, if you know of a better way of doing hardware encoding with VP9 drop it into the contact us area. We would love to know!
Code for Twitch Stream 05/02/2020 WebM
ffmpeg -i OBS-Stream.mp4 -vf scale=1920x1080 -b:v 3000k -minrate 1500k -maxrate 4350k -tile-columns 2 -g 240 -threads 4 -quality good -crf 31 -c:v libvpx-vp9 -c:a libopus -pass 1 -speed 4 Stream.webm NUL ffmpeg -i OBS-Stream.mp4 -vf scale=1920x1080 -b:v 3000k -minrate 1500k -maxrate 4350k -tile-columns 3 -g 240 -threads 4 -quality good -crf 31 -c:v libvpx-vp9 -c:a libopus -pass 2 -speed 4 -y Stream.webm
Okay! I changed gears on how I encode WebM because we were getting artifacts in our render process. So after a little bit of reading Google managed to publish their test results on how to encode video similar to how YouTube does things. We have to say the flags they presented for 1080p 60fps are really solid and worked awesomely for encoding this. During this publication, we're experimenting with -quality best to see if it really does anything in terms of performance and bandwidth. Also, we're probably going to re-add the -b:a 96k to libopus since most modern browsers can handle libopus with ease.
To those who voted on my Twitter. Thank you so much for your overwhelming positivity. For the 22.2% that wanted chocolate sauce. I have not forgotten about you.
For those people on Mastodon hey! We tried with you guys! We really did! We thought we followed and built a decent community there. Guess we were wrong.
Overall, we're not terribly worried about the size because usually, people don't watch pre-recorded streams that often. The only time they're watched is to get a good idea what kind of streamer a person is. So for those who were wondering and lasted this long through my diatribes of text
I would also like to Thank FunkyJoe for allowing us to record the discord stream. Just me when I say that next time we'll try to adjust the volume so you can hear those guys better.
Until next time, may server protect you.
+++END OF LINE