2009年8月21日 星期五

trace h.264 in ffmpeg

目前算是看完(ffmpeg top)/libavcodec/h264pred.c跟h264pred.h這兩個檔
這兩個檔主要是做h.264中的 intra prediction的部份
雖然我大致上知道會有哪些prediction mode 但是不知道為什麼ffmpeg中的居然比spec還多
可能是最新的spec吧 我的spec是200901的 最新的是200903的樣子 這code是200903的
這邊的話 我有看過最初的spec跟200901的spec
我發現新的spec在chrominance的部份 由四個intra prediction變成8個
那我想luminance變多也是有可能的
大概是最新 這兩檔就這樣先結束

接下來我看了有關variable length code的部份
這部份的code在(ffmpeg top)/libavcodec/bitstream.c跟bitstream.h
這邊適用於所有的codec 是一種generic的vlc

我在這邊一直看到av_log2的function 我一直以為這是要建log檔
結果才發現這是取log然後2為底
這個function在(ffmpeg top)/libavutil/common.h

看到一個sei的東西 但是我不知道這是什麼

我發現了av_log這個function 在這裡我發現沒錯的話 這是真的在做log
他的實做在(ffmpeg top)/libavutil/log.c

以上是我看完decode_init的部份 但是還有一大堆是不懂的

沒有留言:

張貼留言