This version comes with a small technical challenge that we're proud to have overcome! This new feature won't be as visible as a graphical change, but...
Not if you have a consensus algorithm and the machines all return a hash of the video they encoded. If they build IPFS support then the encoding machine could upload the file there, return the IPFS content address and the server can then pick an agreed upon address.
I’m not OP, but if transcoding is happening on user CPUs, it’s theoretically possible to modify or inject stuff into the transcoded video. There’d need to be some way of validating a transcode matches the original, which is non-trivial.
A consensus algorithm could work, but that would massively increase the required compute. I’m not even sure things like NVENC vs CPU ffmpeg are deterministic in how tbey compress video. Different encoders could very likely end up with visually identical transcodes, but the hashes wouldn’t always match.
Maybe someone else has a better idea for validating transcodes?
Sometime it’s better to let it happen and let the user find out the person who mis-transcode video maliciously and get that malicious person banned from the instance. Many instances are invite-only, so it works out in a way that the benefit outweigh the risk.
The average YouTube user is not going to understand any of that. If they’re watching a video and something unexpected comes up in the video, they’re going to blame the person who uploaded the video.
For live transcoding, I would suggest the broadcaster to purchase a good GPU and have it transcode the broadcast. While they are trying to suggest CPU-based solution, i would argue that they should explore the GPU based solution which can be much better optimized for this scenario.
It’s a nice idea but it sounds easily to abuse.
Not if you have a consensus algorithm and the machines all return a hash of the video they encoded. If they build IPFS support then the encoding machine could upload the file there, return the IPFS content address and the server can then pick an agreed upon address.
How? Can you explain
I’m not OP, but if transcoding is happening on user CPUs, it’s theoretically possible to modify or inject stuff into the transcoded video. There’d need to be some way of validating a transcode matches the original, which is non-trivial.
A consensus algorithm could work, but that would massively increase the required compute. I’m not even sure things like NVENC vs CPU ffmpeg are deterministic in how tbey compress video. Different encoders could very likely end up with visually identical transcodes, but the hashes wouldn’t always match.
Maybe someone else has a better idea for validating transcodes?
Sometime it’s better to let it happen and let the user find out the person who mis-transcode video maliciously and get that malicious person banned from the instance. Many instances are invite-only, so it works out in a way that the benefit outweigh the risk.
The average YouTube user is not going to understand any of that. If they’re watching a video and something unexpected comes up in the video, they’re going to blame the person who uploaded the video.
I suppose although the documentation does point it out that the offender can modify such content with ease.
For live transcoding, I would suggest the broadcaster to purchase a good GPU and have it transcode the broadcast. While they are trying to suggest CPU-based solution, i would argue that they should explore the GPU based solution which can be much better optimized for this scenario.
Reference on Support Matrix for Encoding/Decoding support on GPU for Nvidia
Information for Transcoding on Nvidia GPU