int encoder::encode(const x265_picture* pic_in, x265_picture* pic_out)
frame *inframe;
x265_param* p = (m_reconfigure || m_reconfigurerc) ? m_latestparam : m_param;
if (m_dpb->m_freelist.empty()){
如果dpb的中沒有free狀態的frame,就會去建立。freelist是乙個frame的pool,這樣可以節約記憶體。
inframe = new frame;
frame主要包括編碼完成的資料,重建幀的yuv資料和要編碼的yuv資料。
inframe->m_encodestarttime = x265_mdate();
這一幀的開始時間單位是ms。
if (inframe->create(p, pic_in->quantoffsets)){
主要是建立了要儲存編碼yuv資料的picyuvÿ
在linux下原始碼編譯x265
將原始碼放入linux目錄下,注意,若是虛擬機器的話要放到linux系統的真實目錄下,而不是windows的共享資料夾,否則會有很多問題。libx265是用cmake編譯的,故先下cmake,我是centos系統,命令 yum install cmake y 進入目錄.x265 1.9 build ...
Qt原始碼解析 1
本文 感謝原創者分享 如果你閱讀了 qt 的源 你會看到一堆奇奇怪怪的巨集,例如 q d,q q。我們的qt原始碼之旅就從理解這些巨集說起。下面先看乙個c 的例子。cpp class person person string name void setname string name int age...
jquery原始碼解析1
學了很久的js也寫了很長時間的jquery了,這裡來以學習的態度來看大牛的思想和架構。使用的是當前最新版本 3.1.1 就不考慮煩人的ie 6 7 8了,輕鬆愉快。其實一上來不知所措,這都是啥?function global,factory return factory w else typeof ...