News for hackers. Stuff that matters.
Re:How to Run a Live Coding Stream on Twitch Using OBS by wtallis on Tuesday July 14, 2020 @02:13PM (#23835552)
Does anyone know of a good presentation system that does not consist of compressing raw pixels and sending that to the audience? It's a huge waste of bandwidth that I'd rather see used to provide reliable low-latency audio.

I'd love to be able to teach programming in a way that lets the students explore the live state of my working directory and follow along with file edits, but rendered locally on their machines at native resolution and with at least some degree of interactivity. Most collaborative editors I'm aware of are ill-suited for code, or don't seem to work well for more than one file at a time. Ideally, I'd like students to be able to open a read-only view of my entire IDE workspace, but exporting it over a network filesystem isn't quite live enough even with a short auto-save interval.

Re:How to Run a Live Coding Stream on Twitch Using OBS by rustyconover on Tuesday July 14, 2020 @02:22PM (#23835678)
I think you'd be surprised how efficient video codecs with regards to bandwidth used, nobody sends raw pixels at all. Also with HLS latency can be very short with the right settings.

A few tips for coding screencasting:

For coding screencasts you should make sure that chroma subsampling isn't enabled when you're doing the encode of the video otherwise it may look worse with highly contrasting areas.

Decrease the encoding frame rate if its primarily going to be just a screencast without a lot of motion on the screen. At the expense longer mpeg segments (and more latency) you may want to increase the group-of-picture size.

There shouldn't be a reason that the encoded screencast looks worse then how it appeared to you unless the encoder you are using is just mashing the quality down.

Re:How to Run a Live Coding Stream on Twitch Using OBS by formerly_proven on Tuesday July 14, 2020 @07:40PM (#23839460)
> For coding screencasts you should make sure that chroma subsampling isn't enabled when you're doing the encode of the video otherwise it may look worse with highly contrasting areas.

What platforms support 4:4:4 video? Youtube, Twitch, Vimeo, ... all don't.

Re:How to Run a Live Coding Stream on Twitch Using OBS by rustyconover on Tuesday July 14, 2020 @10:24PM (#23840520)
I'd just build my own HLS setup with Cloudfront and one of those encoders with MediaLive.
Re:How to Run a Live Coding Stream on Twitch Using OBS by wtallis on Tuesday July 14, 2020 @03:18PM (#23836449)
> I think you'd be surprised how efficient video codecs with regards to bandwidth used, nobody sends raw pixels at all. Also with HLS latency can be very short with the right settings.

We've all had enough experience with Zoom, Google Meet, Skype for Business, etc. in recent months to know that this is not something that works well out of the box. And that's before we get into issues like the fact that I'm using a 34" ultrawide monitor, and most streaming systems will have to downscale my desktop before encoding it, and the result won't look at all good for a viewer trying to watch on a 1080p laptop.

Re:How to Run a Live Coding Stream on Twitch Using OBS by Shorel on Wednesday July 15, 2020 @02:36PM (#23849626)
These systems are not OBS. You can pan and zoom as required to match your stream resolution, and it doesn't need to be the same as your desktop resolution.
Re:How to Run a Live Coding Stream on Twitch Using OBS by zaxu on Tuesday July 14, 2020 @03:49PM (#23836875)
At the same time, moving video coming from a camera is a lot different than a stream of what is essentially a 95% a still image.
Re:How to Run a Live Coding Stream on Twitch Using OBS by wtallis on Tuesday July 14, 2020 @04:23PM (#23837333)
I was referring primarily to the screen sharing features of the aforementioned services. In general, they're barely adequate for slideshow presentations, but the transitions are still going to be rough. And even when everybody in the virtual conference has a solid internet connection, the user experience is still a lot worse than when a PDF of the slides is emailed out before the meeting starts.

I find it simply amazing that all these "collaboration" tools aspire to little more than emulating the use-cases of broadcast television or a large lecture hall, and there a so few tools that try to enhance the experience in ways that are only possible when every participant has their own screen and computer.

Re:How to Run a Live Coding Stream on Twitch Using OBS by formerly_proven on Tuesday July 14, 2020 @07:41PM (#23839471)
Their badness is unrelated to the abilities of e.g. x264 compressing a screencast, because it really is quite good at that (near-losless quality at about one Megabit/s).
Re:How to Run a Live Coding Stream on Twitch Using OBS by nfrmatk on Tuesday July 14, 2020 @02:23PM (#23835698)
I think that you can do something like this with VS Code's Live Share[1] feature. And I think it's possible to do read-only sessions as well. Been a while since I looked at that feature though, so I'm not certain.

[1]: https://docs.microsoft.com/en-us/visualstudio/liveshare/use/...

Re:How to Run a Live Coding Stream on Twitch Using OBS by wtallis on Tuesday July 14, 2020 @03:25PM (#23836542)
That seems to be pretty much what I was looking for. Thanks!
Re:How to Run a Live Coding Stream on Twitch Using OBS by mprev on Tuesday July 14, 2020 @02:26PM (#23835751)
What you’re looking for sounds like Skypix, an Amiga based system for creating BBS UIs.

But, honestly, if your intention is to reach an audience rather than simply to geek out over an elegant technical solution (no harm in that!), then just go with streaming. It’s not your bandwidth, after all, if you’re using Twitch et al.

I guess, though, that streaming has the problem of not letting you copy the code, not being meaningfully interactive, etc.

Re:How to Run a Live Coding Stream on Twitch Using OBS by wtallis on Tuesday July 14, 2020 @03:20PM (#23836478)
> if your intention is to reach an audience rather than simply to geek out over an elegant technical solution

I'm not looking for a broadcasting solution along the lines of Twitch, so much as a solution to use with a specific audience of maybe a dozen students, that I want to be able to interact with to some degree.

Re:How to Run a Live Coding Stream on Twitch Using OBS by tedyoung on Thursday July 16, 2020 @03:41PM (#23863028)
Besides VSCode's LiveShare that was already mentioned, there are several tools that allow folks to collaboratively edit code: Floobits[1] and CodeTogether[2] are a couple that I've used successfully (I'm an IntelliJ IDEA fan, so like to stay in my IDE).

[1] https://floobits.com/ [2] https://www.codetogether.com/

Re:How to Run a Live Coding Stream on Twitch Using OBS by iudqnolq on Tuesday July 14, 2020 @02:30PM (#23835812)
Scrimba pretty effectively (at least in terms of tech implementation) does this for frontend programming. I think the actual course content is relatively middling.

https://scrimba.com/