{"id":510,"date":"2017-03-20T12:55:33","date_gmt":"2017-03-20T11:55:33","guid":{"rendered":"http:\/\/eocanha.org\/blog\/?p=510"},"modified":"2017-10-17T10:18:00","modified_gmt":"2017-10-17T09:18:00","slug":"media-source-extensions-upstreaming-from-wpe-to-webkitgtk","status":"publish","type":"post","link":"https:\/\/eocanha.org\/blog\/2017\/03\/20\/media-source-extensions-upstreaming-from-wpe-to-webkitgtk\/","title":{"rendered":"Media Source Extensions upstreaming, from WPE to WebKitGTK+"},"content":{"rendered":"<p>A lot of good things have happened to the Media Source Extensions support since my last post, almost a year ago.<\/p>\n<p>The most important piece of news is that the code upstreaming has kept going forward at a slow, but steady pace. The amount of code <a href=\"https:\/\/www.igalia.com\">Igalia<\/a> had to port was pretty big. <a href=\"https:\/\/blogs.igalia.com\/xrcalvar\">Calvaris (my favourite reviewer)<\/a>\u00a0and I considered that the regular review tools in WebKit bugzilla were not going to be enough for a good exhaustive review. Instead, we did a pre-review in GitHub using a <a href=\"https:\/\/github.com\/eocanha\/webkit\/pull\/1\">pull request<\/a> on my own repository. It was an interesting experience, because the change set was so large that it had to be (artificially) divided in smaller commits just to avoid reaching\u00a0GitHub diff display limits.<\/p>\n<p>394 GitHub comments later, the patches were mature enough to be submitted to bugzilla as child bugs of\u00a0<a href=\"https:\/\/bugs.webkit.org\/show_bug.cgi?id=157314\">Bug 157314 &#8211; [GStreamer][MSE] Complete backend rework<\/a>. After some comments more in bugzilla, they were finally committed during <a href=\"http:\/\/www.webengineshackfest.org\/2016\/\">Web Engines Hackfest 2016<\/a>:<\/p>\n<p><a href=\"http:\/\/eocanha.org\/blog\/wp-content\/uploads\/2017\/01\/mse-merge.png\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-511\" src=\"http:\/\/eocanha.org\/blog\/wp-content\/uploads\/2017\/01\/mse-merge-300x110.png\" alt=\"\" width=\"300\" height=\"110\" srcset=\"https:\/\/eocanha.org\/blog\/wp-content\/uploads\/2017\/01\/mse-merge-300x110.png 300w, https:\/\/eocanha.org\/blog\/wp-content\/uploads\/2017\/01\/mse-merge-768x281.png 768w, https:\/\/eocanha.org\/blog\/wp-content\/uploads\/2017\/01\/mse-merge-1024x374.png 1024w, https:\/\/eocanha.org\/blog\/wp-content\/uploads\/2017\/01\/mse-merge.png 1918w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Some unforeseen regressions in the layout tests appeared, but after a couple of <a href=\"https:\/\/bugs.webkit.org\/show_bug.cgi?id=164116\">commits<\/a> <a href=\"https:\/\/bugs.webkit.org\/show_bug.cgi?id=164022\">more<\/a>, all the mediasource WebKit tests were passing. There are also some other tests imported from W3C, but I kept them still skipped because webm support was needed for many of them. I&#8217;ll focus\u00a0again on that set of tests at its due time.<\/p>\n<p><a href=\"https:\/\/www.igalia.com\">Igalia<\/a> is proud of having brought the MSE support up to date to WebKitGTK+. Eventually, this will improve the\u00a0browser video experience for a lot of users using Epiphany and other web browsers based on that library. Here&#8217;s how it enables the usage of YouTube TV at 1080p@30fps on desktop Linux:<\/p>\n<p><iframe loading=\"lazy\" src=\"https:\/\/www.youtube.com\/embed\/qofLTJrrVKg\" width=\"560\" height=\"315\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<p>Our future roadmap includes bugfixing and webm\/vp9+opus support. This support is important for users from countries enforcing patents on H.264. The current implementation can&#8217;t be included in distros such as Fedora for that reason.<\/p>\n<p>As mentioned before, part of this upstreaming work happened during Web Engines Hackfest 2016. I&#8217;d like to thank our <a href=\"http:\/\/www.webengineshackfest.org\/2016\/#sponsors\">sponsors<\/a> for having made this hackfest possible, as well as\u00a0<a href=\"https:\/\/www.metrological.com\">Metrological<\/a> for giving upstreaming the importance it deserves.<\/p>\n<p>Thank you for reading.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A lot of good things have happened to the Media Source Extensions support since my last post, almost a year ago. The most important piece of news is that the code upstreaming has kept going forward at a slow, but steady pace. The amount of code Igalia had to port was pretty big. Calvaris (my &hellip; <a href=\"https:\/\/eocanha.org\/blog\/2017\/03\/20\/media-source-extensions-upstreaming-from-wpe-to-webkitgtk\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Media Source Extensions upstreaming, from WPE to WebKitGTK+<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[13,2,7,12],"tags":[],"_links":{"self":[{"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/posts\/510"}],"collection":[{"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/comments?post=510"}],"version-history":[{"count":9,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/posts\/510\/revisions"}],"predecessor-version":[{"id":524,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/posts\/510\/revisions\/524"}],"wp:attachment":[{"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/media?parent=510"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/categories?post=510"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/tags?post=510"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}