{"id":129,"date":"2005-10-06T17:22:07","date_gmt":"2005-10-06T23:22:07","guid":{"rendered":"http:\/\/multimedia.cx\/eggs\/?p=129"},"modified":"2010-06-03T14:06:09","modified_gmt":"2010-06-03T21:06:09","slug":"hooking-up-the-smpte-vc-1-decoder-in-ffmpeg","status":"publish","type":"post","link":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/","title":{"rendered":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg"},"content":{"rendered":"<blockquote><p>\n<em>Update, Jan-16-2008:<\/em> I should have posted this update a long time ago. Readers should be advised that these instructions are obsoleted by the fact that FFmpeg already includes a native (and much faster) VC-1 decoder.\n<\/p><\/blockquote>\n<p>Some people have asked me for my code to make the <a href=\"http:\/\/smpte-vc1.org\/\">SMPTE VC-1<\/a> reference decoder work with <a href=\"http:\/\/ffmpeg.sf.net\">FFmpeg<\/a>, slow though it may be. I suppose I could make a patch. But the official version of FFmpeg is whatever happens to be in CVS at the current moment. So any patch I could produce would work for maybe a day. So get ready to do a little editing on your local FFmpeg CVS tree. The steps:<\/p>\n<p><!--more--><\/p>\n<ol>\n<li>procure the VC1_reference_decoder_release6.zip file from the <a href=\"http:\/\/smpte-vc1.org\/\">main site<\/a> and unzip the tree somewhere<\/li>\n<li>have a copy of <a href=\"http:\/\/ffmpeg.sourceforge.net\/download.php\">FFmpeg&#8217;s CVS tree<\/a> handy; the rest of these instructions will assume that you are sitting in the root of the FFmpeg tree<\/li>\n<li>create a directory called libavcodec\/libvc1<\/li>\n<li>copy all of the *.c and *.h files from VC1_reference_decoder_release6\/decoder\/ into libavcodec\/libvc1\/<\/li>\n<li>copy all of the *.c and *.h files from VC1_reference_decoder_release6\/shared\/ into libavcodec\/libvc1\/<\/li>\n<li>place the <a href=\"\/eggs\/libvc1-makefile.txt\">libvc1-makefile.txt<\/a> into libavcodec\/libvc1\/Makefile<\/li>\n<li>change directory into libavcodec\/libvc1 and type &#8216;make&#8217;<\/li>\n<li>change directory back to the FFmpeg root<\/li>\n<li>place the <a href=\"\/eggs\/smpte-vc1.c\">smpte-vc1.c file<\/a> into libavcodec\/<\/li>\n<li>edit libavcodec\/vc9.c, go the very end of the file, and add #if 0\/#endif around the wmv3_decoder AVCodec structure; this will keep it from conflicting with the new SMPTE WMV3 decoder\n<\/li>\n<li>edit libavcodec\/Makefile and add smpte-vc1.o to the end of the OBJS list<\/li>\n<li>edit the top-level Makefile and add &#8220;-L.\/libavcodec\/libvc1 -lvc1&#8221; (without the quotes) to FFLIBS<\/li>\n<li>run &#8216;.\/configure&#8217; at the top level if you have not already done so for this tree<\/li>\n<li>run &#8216;make&#8217; at the top level<\/li>\n<\/ol>\n<p>That should be all there is to it. If FFmpeg declines to acknowledge the ability to decode WMV3 data run &#8216;.\/ffmpeg -formats | grep wmv3&#8217; and make sure you see (after the versioning info): &#8221; D V    wmv3&#8243;.<\/p>\n<p>Remember, the performance of the SMPTE VC-1 decoder is, as they say, &#8220;nothing to write home about&#8221;. It&#8217;s dog slow. It&#8217;s not meant to be fast. And it will not be optimized. Ever. Eventually, we will create our own decoder that leverages optimized VLC decoding functions, transforms, filters, etc. But in the meantime, if you want to experiment with the reference decoder, this should work for you.<\/p>\n<blockquote><p>\n<em>Update, Feb-16-2006:<\/em> Thanks to <a href=\"http:\/\/www.richardgoodwin.com\/wp\/2006\/02\/15\/building-ffmpeg-to-support-windows-media-files\/\">Richard Goodwin<\/a> for pointing out step 12.5: edit libavcodec\/allcodecs and remove the comment blocks around &#8220;register_avcodec(&#038;wmv3_decoder);&#8221;. Sometime between the original post and now, this was commented out due to the fact that the native WMV3 decoder is not classified as &#8220;working&#8221; yet.\n<\/p><\/blockquote>\n<blockquote><p>\n<em>Psssst&#8230;<\/em> Do you need a copy of vc1_reference_decoder_release6.zip? <a href=\"http:\/\/www.multimedia.cx\/VC1_reference_decoder_release6.zip\">Try here.<\/a> Remember&#8211; slow as all get out. If you&#8217;re going to use it, may it be for the purpose of creating a free and fast implementation.\n<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>So you want SMPTE VC-1 support in FFmpeg?<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-129","post","type-post","status-publish","format-standard","hentry","category-open-source-multimedia"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"So you want SMPTE VC-1 support in FFmpeg?\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Multimedia Mike\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Breaking Eggs And Making Omelettes | Topics On Multimedia Technology and Reverse Engineering\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Hooking Up The SMPTE VC-1 Decoder In FFmpeg | Breaking Eggs And Making Omelettes\" \/>\n\t\t<meta property=\"og:description\" content=\"So you want SMPTE VC-1 support in FFmpeg?\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2005-10-06T23:22:07+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2010-06-03T21:06:09+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Hooking Up The SMPTE VC-1 Decoder In FFmpeg | Breaking Eggs And Making Omelettes\" \/>\n\t\t<meta name=\"twitter:description\" content=\"So you want SMPTE VC-1 support in FFmpeg?\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/#article\",\"name\":\"Hooking Up The SMPTE VC-1 Decoder In FFmpeg | Breaking Eggs And Making Omelettes\",\"headline\":\"Hooking Up The SMPTE VC-1 Decoder In FFmpeg\",\"author\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/author\\\/multimedia-mike\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/#organization\"},\"datePublished\":\"2005-10-06T17:22:07-07:00\",\"dateModified\":\"2010-06-03T14:06:09-07:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/#webpage\"},\"articleSection\":\"Open Source Multimedia\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/multimedia.cx\\\/eggs\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/category\\\/open-source-multimedia\\\/#listItem\",\"name\":\"Open Source Multimedia\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/category\\\/open-source-multimedia\\\/#listItem\",\"position\":2,\"name\":\"Open Source Multimedia\",\"item\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/category\\\/open-source-multimedia\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/#listItem\",\"name\":\"Hooking Up The SMPTE VC-1 Decoder In FFmpeg\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/#listItem\",\"position\":3,\"name\":\"Hooking Up The SMPTE VC-1 Decoder In FFmpeg\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/category\\\/open-source-multimedia\\\/#listItem\",\"name\":\"Open Source Multimedia\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/#organization\",\"name\":\"Breaking Eggs And Making Omelettes\",\"description\":\"Topics On Multimedia Technology and Reverse Engineering\",\"url\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/author\\\/multimedia-mike\\\/#author\",\"url\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/author\\\/multimedia-mike\\\/\",\"name\":\"Multimedia Mike\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/2eb93f7cada658f7986b5092062849fa255779eada3342c8f6b9a40764b95fdd?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Multimedia Mike\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/#webpage\",\"url\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/\",\"name\":\"Hooking Up The SMPTE VC-1 Decoder In FFmpeg | Breaking Eggs And Making Omelettes\",\"description\":\"So you want SMPTE VC-1 support in FFmpeg?\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/author\\\/multimedia-mike\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/author\\\/multimedia-mike\\\/#author\"},\"datePublished\":\"2005-10-06T17:22:07-07:00\",\"dateModified\":\"2010-06-03T14:06:09-07:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/#website\",\"url\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/\",\"name\":\"Breaking Eggs And Making Omelettes\",\"description\":\"Topics On Multimedia Technology and Reverse Engineering\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg | Breaking Eggs And Making Omelettes","description":"So you want SMPTE VC-1 support in FFmpeg?","canonical_url":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/#article","name":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg | Breaking Eggs And Making Omelettes","headline":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg","author":{"@id":"https:\/\/multimedia.cx\/eggs\/author\/multimedia-mike\/#author"},"publisher":{"@id":"https:\/\/multimedia.cx\/eggs\/#organization"},"datePublished":"2005-10-06T17:22:07-07:00","dateModified":"2010-06-03T14:06:09-07:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/#webpage"},"isPartOf":{"@id":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/#webpage"},"articleSection":"Open Source Multimedia"},{"@type":"BreadcrumbList","@id":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/multimedia.cx\/eggs#listItem","position":1,"name":"Home","item":"https:\/\/multimedia.cx\/eggs","nextItem":{"@type":"ListItem","@id":"https:\/\/multimedia.cx\/eggs\/category\/open-source-multimedia\/#listItem","name":"Open Source Multimedia"}},{"@type":"ListItem","@id":"https:\/\/multimedia.cx\/eggs\/category\/open-source-multimedia\/#listItem","position":2,"name":"Open Source Multimedia","item":"https:\/\/multimedia.cx\/eggs\/category\/open-source-multimedia\/","nextItem":{"@type":"ListItem","@id":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/#listItem","name":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg"},"previousItem":{"@type":"ListItem","@id":"https:\/\/multimedia.cx\/eggs#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/#listItem","position":3,"name":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg","previousItem":{"@type":"ListItem","@id":"https:\/\/multimedia.cx\/eggs\/category\/open-source-multimedia\/#listItem","name":"Open Source Multimedia"}}]},{"@type":"Organization","@id":"https:\/\/multimedia.cx\/eggs\/#organization","name":"Breaking Eggs And Making Omelettes","description":"Topics On Multimedia Technology and Reverse Engineering","url":"https:\/\/multimedia.cx\/eggs\/"},{"@type":"Person","@id":"https:\/\/multimedia.cx\/eggs\/author\/multimedia-mike\/#author","url":"https:\/\/multimedia.cx\/eggs\/author\/multimedia-mike\/","name":"Multimedia Mike","image":{"@type":"ImageObject","@id":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/2eb93f7cada658f7986b5092062849fa255779eada3342c8f6b9a40764b95fdd?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Multimedia Mike"}},{"@type":"WebPage","@id":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/#webpage","url":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/","name":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg | Breaking Eggs And Making Omelettes","description":"So you want SMPTE VC-1 support in FFmpeg?","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/multimedia.cx\/eggs\/#website"},"breadcrumb":{"@id":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/#breadcrumblist"},"author":{"@id":"https:\/\/multimedia.cx\/eggs\/author\/multimedia-mike\/#author"},"creator":{"@id":"https:\/\/multimedia.cx\/eggs\/author\/multimedia-mike\/#author"},"datePublished":"2005-10-06T17:22:07-07:00","dateModified":"2010-06-03T14:06:09-07:00"},{"@type":"WebSite","@id":"https:\/\/multimedia.cx\/eggs\/#website","url":"https:\/\/multimedia.cx\/eggs\/","name":"Breaking Eggs And Making Omelettes","description":"Topics On Multimedia Technology and Reverse Engineering","inLanguage":"en-US","publisher":{"@id":"https:\/\/multimedia.cx\/eggs\/#organization"}}]},"og:locale":"en_US","og:site_name":"Breaking Eggs And Making Omelettes | Topics On Multimedia Technology and Reverse Engineering","og:type":"article","og:title":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg | Breaking Eggs And Making Omelettes","og:description":"So you want SMPTE VC-1 support in FFmpeg?","og:url":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/","article:published_time":"2005-10-06T23:22:07+00:00","article:modified_time":"2010-06-03T21:06:09+00:00","twitter:card":"summary","twitter:title":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg | Breaking Eggs And Making Omelettes","twitter:description":"So you want SMPTE VC-1 support in FFmpeg?"},"aioseo_meta_data":{"post_id":"129","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2020-12-31 21:46:36","updated":"2025-12-31 18:19:39","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/multimedia.cx\/eggs\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/multimedia.cx\/eggs\/category\/open-source-multimedia\/\" title=\"Open Source Multimedia\">Open Source Multimedia<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tHooking Up The SMPTE VC-1 Decoder In FFmpeg\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/multimedia.cx\/eggs"},{"label":"Open Source Multimedia","link":"https:\/\/multimedia.cx\/eggs\/category\/open-source-multimedia\/"},{"label":"Hooking Up The SMPTE VC-1 Decoder In FFmpeg","link":"https:\/\/multimedia.cx\/eggs\/hooking-up-the-smpte-vc-1-decoder-in-ffmpeg\/"}],"_links":{"self":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/129","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/comments?post=129"}],"version-history":[{"count":1,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/129\/revisions"}],"predecessor-version":[{"id":2513,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/129\/revisions\/2513"}],"wp:attachment":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/media?parent=129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/categories?post=129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/tags?post=129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}