Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

So in the future Firefox / Servo will implement decoders in Rust too?


The decoders in Firefox now are third-party libraries (like Google's VP9), so I don't think Mozilla will rewrite them in Rust. Perhaps Mozilla will write the official Daala decoder in Rust?


One of the Daala developers here. The official reference Daala codebase is implemented in C89 - this is to ensure the widest possible compatibility with all sorts of weird platforms. In addition, the tooling for assembly and intrinsics are mature.

Of course, this is only the reference implementation - once the bitstream is stable, it'd be great to try writing a decoder in Rust.

An easier starting point might be audio or image codecs, where speed is not as critical and the formats are well defined. For example, here is a pure Rust image codec library: https://github.com/PistonDevelopers/image


By the way, do you know if Daala will be renamed to NetVC or not? I don't really like these names like NetVC/ HEVC which sound like some infections. May be it can be kept as Daala? After all Opus wasn't named "NetAC".


Opus's contributing codecs were called CELT and SILK. The IETF working group name was just "CODEC". The name "Opus" was chosen at the end. I imagine a similar procedure will happen in the NETVC working group.


You mean you expect other major codecs to be merged with Daala and out of respect for the contribution there will be a change of name?


That's some of it, but also it's just to see if we can come up with a better name than Daala. We also have to check trademarks, etc. There hasn't really been any major discussion around the name yet on the netvc mailing list [1]. The first netvc working group meeting will be in July at IETF 93.

[1] https://mailarchive.ietf.org/arch/search/?email_list=video-c...


Thanks for the pointer, I'll keep an eye on it. I think Daala is a good sounding name, but if trademarks are a problem, that's a different story.


Daala decoder in Rust would be neat.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: