{"id":190,"date":"2006-01-15T21:06:00","date_gmt":"2006-01-16T05:06:00","guid":{"rendered":"http:\/\/multimedia.cx\/eggs\/?p=190"},"modified":"2006-01-15T21:07:53","modified_gmt":"2006-01-16T05:07:53","slug":"profiles-in-multimedia-hacking","status":"publish","type":"post","link":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/","title":{"rendered":"Profiles In Multimedia Hacking"},"content":{"rendered":"<p>Kudos to Reimar D\u00f6ffinger for a new, clean implementation of the LZO lossless coding algorithm for the <a href=\"http:\/\/ffmpeg.sf.net\">FFmpeg project<\/a>. This means that there is one less external package that multimedia players have to rely on since there is an equivalent capability in FFmpeg.<\/p>\n<p>I wanted to highlight this because it is useful when someone undertakes to re-implement a decoder from another package as another FFmpeg module. This has happened a number of times already, in the cases of Vorbis, FLAC, and VP3, for example. Remember, reverse engineering also applies to understanding bodies of code written in higher level languages than ASM and re-implementing them based on your newfound understanding.<\/p>\n<p>For eye candy, check out Reimar&#8217;s <a href=\"http:\/\/www.stud.uni-karlsruhe.de\/~uvhe\/LZODraw_bw.png\">&#8220;show your work&#8221; handwritten notes<\/a> for understanding the LZO decoder. The original LZO decoder seemed to have so many labels and goto statements that it might as well have been written in straight ASM.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Meet Reimar D\u00c3\u00b6ffinger&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,4],"tags":[],"class_list":["post-190","post","type-post","status-publish","format-standard","hentry","category-open-source-multimedia","category-reverse-engineering"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"Meet Reimar D\u00c3\u00b6ffinger...\" \/>\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\/profiles-in-multimedia-hacking\/\" \/>\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=\"Profiles In Multimedia Hacking | Breaking Eggs And Making Omelettes\" \/>\n\t\t<meta property=\"og:description\" content=\"Meet Reimar D\u00c3\u00b6ffinger...\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2006-01-16T05:06:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2006-01-16T05:07:53+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Profiles In Multimedia Hacking | Breaking Eggs And Making Omelettes\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Meet Reimar D\u00c3\u00b6ffinger...\" \/>\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\\\/profiles-in-multimedia-hacking\\\/#article\",\"name\":\"Profiles In Multimedia Hacking | Breaking Eggs And Making Omelettes\",\"headline\":\"Profiles In Multimedia Hacking\",\"author\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/author\\\/multimedia-mike\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/#organization\"},\"datePublished\":\"2006-01-15T21:06:00-08:00\",\"dateModified\":\"2006-01-15T21:07:53-08:00\",\"inLanguage\":\"en-US\",\"commentCount\":3,\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/profiles-in-multimedia-hacking\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/profiles-in-multimedia-hacking\\\/#webpage\"},\"articleSection\":\"Open Source Multimedia, Reverse Engineering\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/profiles-in-multimedia-hacking\\\/#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\\\/profiles-in-multimedia-hacking\\\/#listItem\",\"name\":\"Profiles In Multimedia Hacking\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/profiles-in-multimedia-hacking\\\/#listItem\",\"position\":3,\"name\":\"Profiles In Multimedia Hacking\",\"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\\\/profiles-in-multimedia-hacking\\\/#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\\\/profiles-in-multimedia-hacking\\\/#webpage\",\"url\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/profiles-in-multimedia-hacking\\\/\",\"name\":\"Profiles In Multimedia Hacking | Breaking Eggs And Making Omelettes\",\"description\":\"Meet Reimar D\\u00c3\\u00b6ffinger...\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/profiles-in-multimedia-hacking\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/author\\\/multimedia-mike\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/multimedia.cx\\\/eggs\\\/author\\\/multimedia-mike\\\/#author\"},\"datePublished\":\"2006-01-15T21:06:00-08:00\",\"dateModified\":\"2006-01-15T21:07:53-08: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":"Profiles In Multimedia Hacking | Breaking Eggs And Making Omelettes","description":"Meet Reimar D\u00c3\u00b6ffinger...","canonical_url":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/#article","name":"Profiles In Multimedia Hacking | Breaking Eggs And Making Omelettes","headline":"Profiles In Multimedia Hacking","author":{"@id":"https:\/\/multimedia.cx\/eggs\/author\/multimedia-mike\/#author"},"publisher":{"@id":"https:\/\/multimedia.cx\/eggs\/#organization"},"datePublished":"2006-01-15T21:06:00-08:00","dateModified":"2006-01-15T21:07:53-08:00","inLanguage":"en-US","commentCount":3,"mainEntityOfPage":{"@id":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/#webpage"},"isPartOf":{"@id":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/#webpage"},"articleSection":"Open Source Multimedia, Reverse Engineering"},{"@type":"BreadcrumbList","@id":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/#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\/profiles-in-multimedia-hacking\/#listItem","name":"Profiles In Multimedia Hacking"},"previousItem":{"@type":"ListItem","@id":"https:\/\/multimedia.cx\/eggs#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/#listItem","position":3,"name":"Profiles In Multimedia Hacking","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\/profiles-in-multimedia-hacking\/#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\/profiles-in-multimedia-hacking\/#webpage","url":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/","name":"Profiles In Multimedia Hacking | Breaking Eggs And Making Omelettes","description":"Meet Reimar D\u00c3\u00b6ffinger...","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/multimedia.cx\/eggs\/#website"},"breadcrumb":{"@id":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/#breadcrumblist"},"author":{"@id":"https:\/\/multimedia.cx\/eggs\/author\/multimedia-mike\/#author"},"creator":{"@id":"https:\/\/multimedia.cx\/eggs\/author\/multimedia-mike\/#author"},"datePublished":"2006-01-15T21:06:00-08:00","dateModified":"2006-01-15T21:07:53-08: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":"Profiles In Multimedia Hacking | Breaking Eggs And Making Omelettes","og:description":"Meet Reimar D\u00c3\u00b6ffinger...","og:url":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/","article:published_time":"2006-01-16T05:06:00+00:00","article:modified_time":"2006-01-16T05:07:53+00:00","twitter:card":"summary","twitter:title":"Profiles In Multimedia Hacking | Breaking Eggs And Making Omelettes","twitter:description":"Meet Reimar D\u00c3\u00b6ffinger..."},"aioseo_meta_data":{"post_id":"190","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:48:37","updated":"2025-12-31 18:24:38","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\tProfiles In Multimedia Hacking\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":"Profiles In Multimedia Hacking","link":"https:\/\/multimedia.cx\/eggs\/profiles-in-multimedia-hacking\/"}],"_links":{"self":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/190","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=190"}],"version-history":[{"count":0,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/190\/revisions"}],"wp:attachment":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/media?parent=190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/categories?post=190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/tags?post=190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}