diff --git a/assets/sass/post.scss b/assets/sass/post.scss index dc3e0fb..9d62838 100644 --- a/assets/sass/post.scss +++ b/assets/sass/post.scss @@ -79,4 +79,19 @@ .tectonics-readout-name-container { grid-template-rows: repeat(13, auto); /* This number is very specific to 39 names, adjust as needed */ } +} + +.page-content figure { + margin-bottom: 24px; +} + +.page-content figure:has(> figcaption) .highlight { + margin-bottom: 10px; +} + +.page-content figure figcaption { + font-size: 14px; + color: #666; + text-align: center; + margin-bottom: 10px; } \ No newline at end of file diff --git a/content/en/blog/2024-09-09-porting-c-to-rust-for-AV1.md b/content/en/blog/2024-09-09-porting-c-to-rust-for-AV1.md new file mode 100644 index 0000000..c5a343c --- /dev/null +++ b/content/en/blog/2024-09-09-porting-c-to-rust-for-AV1.md @@ -0,0 +1,195 @@ +--- +author: Stephen Crane +date: 2024-09-09T00:00:00Z +title: "Porting C to Rust for a Fast and Safe AV1 Media Decoder" +slug: porting-c-to-rust-for-AV1 +excerpt: "We ported the ```dav1d``` AV1 decoder to Rust. Here’s how we did it and what we learned." +--- + + +
+ ++++AV1 is an increasingly important video format and it needs a memory safe, high performance decoder. We worked with the team at Immunant to develop
+ +rav1d
, a Rust-based port ofdav1d
, a C decoder. This is the first of two blog posts about how the team approached this effort.