This code makes me feel like I'm not even a real software engineer, I'm just a guy playing with kiddie languages working on kiddie problems. Anyone else think that after reading it?
Apple ProRes codec reverse engineered
11–20 of 27 posts
Re: Apple ProRes codec reverse engineered
#12This code makes me feel like I'm not even a real software engineer, I'm just a guy playing with kiddie languages working on kiddie problems. Anyone else think that after reading it?
val = SHOW_UBITS(re, gb, bits) - (1
and you just don't have a clue what it really means (I don't--even though I can easily read the line of code) because the answer is buried in the details of the codec design.But trust me--if you go through a complicated spec and implement it yourself, you'll end up with a lot of similar stuff as this guy did, with his mighty-fine-looking piece of work.
Re: Apple ProRes codec reverse engineered
#13This code makes me feel like I'm not even a real software engineer, I'm just a guy playing with kiddie languages working on kiddie problems. Anyone else think that after reading it?
I also quite often draw the distinction between "programmers" and "software engineers", with "computer scientists" sometimes being their own category, and sometimes a subset of the first two.
Re: Apple ProRes codec reverse engineered
#14This is a great development for decoding ProRes with non-OSX OSes. What are the legal implications? Will ffmpeg need to pay to license the ProRes codec from Apple? Does Apple even offer a license for the codec?
Re: Apple ProRes codec reverse engineered
#15This code makes me feel like I'm not even a real software engineer, I'm just a guy playing with kiddie languages working on kiddie problems. Anyone else think that after reading it?
Codecs are complicated and mathy and optimized for speed. So you might find a line of code that says something like: val = SHOW_UBITS(re, gb, bits) - (1 and you just don't have a clue what it really means (I don't--even though I can easily read the line of code) because the answer is buried in the details of the codec design. But trust me--if you go through a complicated spec and implement it yourself, you'll end up…
I will say, building an encoder based solely on the reverse-engineered decoder (didn't want to reverse out the encoder as well -- total mess) is a really fun challenge. Good way to dive into codec work.
Re: Apple ProRes codec reverse engineered
#16This is a great development for decoding ProRes with non-OSX OSes. What are the legal implications? Will ffmpeg need to pay to license the ProRes codec from Apple? Does Apple even offer a license for the codec?
Re: Apple ProRes codec reverse engineered
#17 author Elvis Presley Re: Apple ProRes codec reverse engineered
#18but the patent licences fees still apply.
(Do folks realize that ffmpeg has never paid such fees intentionally and as a matter of philosophy?)
Re: Apple ProRes codec reverse engineered
#19but the patent licences fees still apply.
It's been over a decade since they haven't paid mpeg fees, so apple shouldn't hold its breath. (Do folks realize that ffmpeg has never paid such fees intentionally and as a matter of philosophy?)
Re: Apple ProRes codec reverse engineered
#20From http://en.wikipedia.org/wiki/ProRes_422 : ProRes 422 is a standard-definition and high-definition lossy video compression format developed by Apple Inc. for use in post production. It was introduced in 2007 with Final Cut Studio 2 [1] and is comparable to Avid's DNxHD codec which has the same purpose and uses similar bit rates.
I believe ffmpeg has been able to decode ProRes 422 for a while now. It is ProRes 4444 that there hasn't been any decoding available for. It looks like this adds support for it.