H.264/AVC code tracing REPORT Group 1. no 1 942015 Tsao.

Slides:



Advertisements
Similar presentations
FCU, Department of ECE, IC Design Research Lab. TEL: # 4945 Pre-SIm , Post-Sim.
Advertisements

第三講 Recode、missing value、假設檢定與信賴區間
布林代數的應用--- 全及項(最小項)和全或項(最大項)展開式
Introduction to Java Programming Lecture 13 Classes I OO Programming.
: A-Sequence 星級 : ★★☆☆☆ 題組: Online-judge.uva.es PROBLEM SET Volume CIX 題號: Problem D : A-Sequence 解題者:薛祖淵 解題日期: 2006 年 2 月 21 日 題意:一開始先輸入一個.
1 Q10276: Hanoi Tower Troubles Again! 星級 : ★★★ 題組: Online-judge.uva.es PROBLEM SET Volume CII 題號: Q10276: Hanoi Tower Troubles Again! 解題者:薛祖淵 解題日期: 2006.
3Com Switch 4500 切VLAN教學.
如何將數字變成可用之資訊 現代化資料處理與應用概念. 如何將數字變成可用之資訊 人最容易接受的訊息是圖像化資訊。 在一堆數字中,要進行比較分析,一般會使用表格形 式計算與分析。 所以一般我們會將數字依關聯性, 轉換成表格計算與分析。 此表格一般稱試算表或稱表格。 再將結果轉換為圖表,進行比較與分析。
BY OX. 檢視表與資料表的差異性 查詢 (query) 檢視表 (View) 的紀錄,是經由查詢 (query) 而來,而檢 視表的資料來源可以是單一資料表或是多資料表,甚 至其他檢視表 但檢視表中的紀錄只存在資料表中.
五小專案 黃詩晴 章乃云. 目錄 計算機 智慧盤 拼圖 記憶大挑戰 數學題庫 心得 參考文獻.
: OPENING DOORS ? 題組: Problem Set Archive with Online Judge 題號: 10606: OPENING DOORS 解題者:侯沛彣 解題日期: 2006 年 6 月 11 日 題意: - 某間學校有 N 個學生,每個學生都有自己的衣物櫃.
JAVA 程式設計與資料結構 第二章 JAVA 程式基本概念及操作. 第一個程式 /* * 這是第一個程式 (FirstP.java) */ class FirstP{ public static void main(String args[]){ System.out.println("Whatever.
Chapter 3 Growth of Functions Asymptotic notation Θ-notation: f(n) = Θ(g(n)) , g(n) is an asymptotically tight bound for f(n) 。 Θ(g(n)) = {f(n)|
STAT0_sampling Random Sampling  母體: Finite population & Infinity population  由一大小為 N 的有限母體中抽出一樣本數為 n 的樣 本,若每一樣本被抽出的機率是一樣的,這樣本稱 為隨機樣本 (random sample)
1. 假設以下的敘述為一未提供 “ 捷徑計算 ” 能力的程式段,試用程 式設計的技巧,使此敘述經此改 寫的動作後,具有與 “ 捷徑計算 ” 之 處理方法相同之處理模式。 if and then E1 else E2 endif.
JAVA 程式設計與資料結構 第十四章 Linked List. Introduction Linked List 的結構就是將物件排成一列, 有點像是 Array ,但是我們卻無法直接經 由 index 得到其中的物件 在 Linked List 中,每一個點我們稱之為 node ,第一個 node.
MATLAB 程式設計 第 11 章 多維陣列 多維陣列的定義 在 MATLAB 的資料型態中,向量可視為 一維陣列,矩陣可視二維陣列,對於維 度 (Dimensions) 超過 1 的陣列則均可視 為「多維陣列」 (Multidimesional Arrays , 簡稱 N-D Arrays)
JAVA 程式設計與資料結構 第十章 GUI Introdution III. File Chooser  File Chooser 是一個選擇檔案的圖形介面, 無論我們是要存檔還是要開啟檔案,使 用這個物件都會讓我們覺得容易且舒適。
Introduction to Java Programming Lecture 17 Abstract Classes & Interfaces.
:Problem D: Bit-wise Sequence ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10232: Problem D: Bit-wise Sequence 解題者:李濟宇 解題日期: 2006 年 4 月 16.
24-6 設定開始與結束場景中的 程式 最後我們要替這個遊戲收個尾, 幫它把開始 的等待畫面跟結束畫面處理一下。
計算機概論 - 排序 1 排序 (Sorting) 李明山 編撰 ※手動換頁.
3-3 使用幾何繪圖工具 Flash 的幾何繪圖工具包括線段工具 (Line Tool) 、橢圓形工具 (Oval Tool) 、多邊星形 工具 (Rectangle Tool) 3 種。這些工具畫出 來的幾何圖形包括了筆畫線條和填色區域, 將它們適當地組合加上有技巧地變形與配 色, 不但比鉛筆工具簡單,
Matlab Assignment Due Assignment 兩個 matlab 程式 : Eigenface : Eigenvector 和 eigenvalue 的應用. Fractal : Affine transform( rotation, translation,
: Fast and Easy Data Compressor ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10043: Fast and Easy Data Compressor 解題者:葉貫中 解題日期: 2007 年 3.
Department of Air-conditioning and Refrigeration Engineering/ National Taipei University of Technology MATLAB 操作與 系統動態模擬 SIMULINK 李達生.
選舉制度、政府結構與政 黨體系 Cox (1997) Electoral institutions, cleavage strucuters, and the number of parties.
各種線上電子資源的特異功能 SwetsWise 的 alert, TOC alert 與 Favorites 2003/4/28 修改.
第三章 自動再裝載運用篇 使用時機:裝載計劃完成時,尚有剩餘空 間的情形,維持已固定計劃而繼續做裝載 最佳化。以支持次日裝載計劃而提前調整 作業模式。 裝載物品設定和裝載容器設定如前兩章介 紹,於此不再重複此動作,直接從裝載計 劃設定開始,直接從系統內定的物品和容 器選取所需.
Chapter 2 Getting Started Insertion Sort: 能有效率地排序小數字的演算法 範例 :
1 單元四 個人化服務 Web of Science 利用指引. 2 個人化服務 Sign In 登入 My EndNote Web 使用 EndNote Web 者可登入 My Citation Alert 查看或修改先前設定的引用通告 My Saved Searches 查看或更改先前儲存過的檢索.
第十章 再論結構. 指標與結構的關係 /* File name: ex10-1a.c */ #include int main() { struct student { char *name; int score; }; struct student st= {"Brian", 97}; struct.
: Ahoy, Pirates! ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11402: Ahoy, Pirates! 解題者:李重儀 解題日期: 2008 年 8 月 26 日 題意:有一個海盜島有 N 個海盜,他們的編號 (id)
: Count DePrimes ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11408: Count DePrimes 解題者:李育賢 解題日期: 2008 年 9 月 2 日 題意: 題目會給你二個數字 a,b( 2 ≦ a ≦ 5,000,000,a.
Fugacity Coefficient and Fugacity
: Multisets and Sequences ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11023: Multisets and Sequences 解題者:葉貫中 解題日期: 2007 年 4 月 24 日 題意:在這個題目中,我們要定義.
從此處輸入帳號密碼登入到管理頁面. 點選進到檔案管理 點選「上傳檔案」上傳資料 點選瀏覽選擇電腦裡的檔案 可選擇公開或不公開 為平台上的資料夾 此處為檔案分類,可顯示在展示頁面上,若要參加 MY EG 競賽,做品一律上傳到 “ 98 MY EG Contest ” 點選此處確定上傳檔案.
資料結構實習-一 參數傳遞.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2008.
: Beautiful Numbers ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11472: Beautiful Numbers 解題者:邱經達 解題日期: 2011 年 5 月 5 日 題意: 若一個 N 進位的數用到該.
1 Web of Science 利用指引 逢甲大學圖書館 參考服務組 單元六 個人化服務.
Teacher : Ing-Jer Huang TA : Chien-Hung Chen 2015/6/25 Course Embedded Systems : Principles and Implementations Weekly Preview Question CH 2.4~CH 2.6 &
JAVA 程式設計與資料結構 第二十章 Searching. Sequential Searching Sequential Searching 是最簡單的一種搜尋法,此演 算法可應用在 Array 或是 Linked List 此等資料結構。 Sequential Searching 的 worst-case.
資料結構實習-二.
演算法 8-1 最大數及最小數找法 8-2 排序 8-3 二元搜尋法.
2010 MCML introduction 製作日期: 2010/9/10 製作人 : 胡名霞.
: Automatic correction of misspellings ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11048: Automatic correction of misspellings 解題者:陳宜佐 解題日期:
: Expect the Expected ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11427: Expect the Expected 解題者:李重儀 解題日期: 2008 年 9 月 21 日 題意:玩一種遊戲 (a game.
Chapter 3 Entropy : An Additional Balance Equation
逆向選擇和市場失調. 定義  資料不對稱 在交易其中,其中一方較對方有多些資料。  逆向選擇 出現在這個情況下,就是當買賣雙方隨意在 市場上交易,與比較主動交易者作交易為佳 。
845: Gas Station Numbers ★★★ 題組: Problem Set Archive with Online Judge 題號: 845: Gas Station Numbers. 解題者:張維珊 解題日期: 2006 年 2 月 題意: 將輸入的數字,經過重新排列組合或旋轉數字,得到比原先的數字大,
: Function Overloading ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11032:Function Overloading 解題者:許智祺 解題日期: 2007 年 5 月 8 日 題意:判對輸入之數字是否為.
演算法課程 (Algorithms) 國立聯合大學 資訊管理學系 陳士杰老師 Course 7 貪婪法則 Greedy Approach.
Probability Distribution 機率分配 汪群超 12/12. 目的:產生具均等分配的數值 (Data) ,並以 『直方圖』的功能計算出數值在不同範圍內出現 的頻率,及繪製數值的分配圖,以反應出該 機率分配的特性。
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2009.
5 重複迴圈 5.1 增減運算符號 增量運算符號 減量運算符號
Quiz #3. 6.Show the final output of the program execution given in Fig.1. public class A{ int x=1;  實體變數 public int m01(int y){ int x = 3;  區域變數 return.
冷凍空調自動控制 - 系統性能分析 李達生. Focusing here … 概論 自動控制理論發展 自控系統設計實例 Laplace Transform 冷凍空調自動控制 控制系統範例 控制元件作動原理 控制系統除錯 自動控制理論 系統穩定度分析 系統性能分析 PID Controller 自動控制實務.
: Problem E Antimatter Ray Clearcutting ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11008: Problem E Antimatter Ray Clearcutting 解題者:林王智瑞.
Distribute Video Coding 林明德. Lossless Compression 不考慮 X 和 Y 的相關性,直接傳送 X 和 Y 各需要使用 3bits ,總共傳出 的 bit 數為 6bits 。 (1) 考慮 X 和 Y 的相關性 (2) 將 Y 直接傳出,使用 3bits.
函式 Function 東海大學物理系‧資訊教育 施奇廷. 函式簡介 當程式越來越大、越複雜時,程式的維護、 除錯會變得更困難,此時必須引入函式來 簡化程式或將程式分段,將程式重複的部 分改寫為函式,將程式「模組化」 這種作法有下列優點:節省程式發展的時 間、邏輯容易瞭解、程式容易除錯、可分 工合作完成程式.
Visual C++重點複習.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2010.
: SAM I AM ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11419: SAM I AM 解題者:李重儀 解題日期: 2008 年 9 月 11 日 題意: 簡單的說,就是一個長方形的廟裡面有敵人,然 後可以橫的方向開砲或縱向開砲,每次開砲可以.
Microsoft Excel.
Regression 相關 –Cross table –Bivariate –Contingency Cofficient –Rank Correlation 簡單迴歸 多元迴歸.
著作權所有 © 旗標出版股份有限公司 第 14 章 製作信封、標籤. 本章提要 製作單一信封 製作單一郵寄標籤.
McGraw-Hill/Irwin © 2003 The McGraw-Hill Companies, Inc.,All Rights Reserved. 肆 資料分析與表達.
Group 2 Block 胡貴蓉 Project 2 JMVC code tracing.
Presentation transcript:

H.264/AVC code tracing REPORT Group 1. no 1 942015 Tsao

Overview 1.encode_one_frame 2.encode_enhancement_layer Main encode_one_redundant_frame Encode_enhancement_layer

encode_one_frame YES NO NO YES replace_top_pic_with_frame START initialization 依之前選擇FIELD_CODING 與 ADAPTIVE_CODING的取向, store_picture_in_dpb (decode picture buffer) or replace_top_pic_with_frame YES Field picture編碼 FIELD_CODING NO writeout picture Frame picture編碼 收尾 NO ADAPTIVE_CODING YES return Field picture編碼 比較Field picture 與Frame picture 那一個效果好, 並更新context

encode_one_frame initialization START START TIMER 1.start time ms 2.start time s PaddAutoCropBorders() 填補picture的邊界, 因為 其邊界不見得一定為 macroblock/macroblock pair size的倍數 put_buffer_frame() 把指標指向frame structure, 但注意其中不該包含field結構 設定direct mode與deblocking filter的參數 init_frame() 初始化一個new frame 的參數 有input->sp2_frame_indicator NO CalculateFrameNumber() 計算img-> & input-> 的absolute frame number YES sp2_frame_indicator=1 sp2_frame_indicator=0 ReadOneFrame() 利用buf2img() 從file裡讀取一個frame read_SP_coefficients() 讀取SP frames的係數 initialization 結束

encode_one_frame YES NO NO YES replace_top_pic_with_frame START initialization 依之前選擇FIELD_CODING 與 ADAPTIVE_CODING的取向, store_picture_in_dpb (decode picture buffer) or replace_top_pic_with_frame YES Field picture編碼 FIELD_CODING NO writeout picture Frame picture編碼 收尾 NO ADAPTIVE_CODING YES return Field picture編碼 比較Field picture 與Frame picture 那一個效果好, 並更新context

encode_one_frame : Field Encoding START if ( input->RCEnable ) generic_RC->FieldControl=1 img->field_picture = 1 field_picture (top_pic, bottom_pic) 利用top與bottom field, encode a field picture img->fld_flag = 1 field encoding完成, set flag Field Encoding 結束

encode_one_frame :NOT Field Encoding updateQP() 以rc mode決定updateQP的type 會影響each frame的quantization parameter START if ( input->RCEnable ) generic_RC->FieldControl=0 frame_picture () encode a frame picture if if (input->MbInterlace) mb_adaptive = 1 rdPictureCoding() 對同一個picture在不同狀態下, 執行multi-pass encoding else img->field_picture = 0 encode a frame picture if output_SP_coefficients() 如果是SP slice的話, output 其coefficients if(input->RCEnable) 依input->RDPictureDecision可能執行 copy_rc_jvt( quadratic_RC_init, quadratic_RC ) 與copy_rc_generic( generic_RC_init, generic_RC ) to copy jvt(joint video team) rate control objects else if (input->MbInterlace) mb_adaptive = 0 如果待會要進行 field code, 要把MB level field/frame coding flag turn off rc_init_pict() initialize one picture NOT Field Encoding 結束

encode_one_frame :Adaptive Encoding START if ( input->RCEnable ) generic_RC->FieldControl=1 img->write_macroblock = 0 img->bot_MB = 0 encode field, img->field_picture = 1 update_field_frame_contexts (img->fld_flag) 決定要set的是frame context or field context if (input-> RCEnable) 以fld_flag決定 generic_RC->FieldFrame 0 or 1 field_picture () encode a field picture dis_fld dis_frm Adaptive Encoding結束 picture_structure_decision() 傳入frame_pic, top_pic, bottom_pic 呼叫decide_fld_frame() 決定fld_flag 0 or 1

encode_one_frame YES NO NO YES replace_top_pic_with_frame START initialization 依之前選擇FIELD_CODING 與 ADAPTIVE_CODING的取向, store_picture_in_dpb (decode picture buffer) or replace_top_pic_with_frame YES Field picture編碼 FIELD_CODING NO writeout picture Frame picture編碼 收尾 NO ADAPTIVE_CODING YES return Field picture編碼 比較Field picture 與Frame picture 那一個效果好, 並更新context

encode_one_frame:output START img->fld_flag field mode frame mode field_mod_buffer() 設定field mode buffer frame_mod_buffer() 設定frame mode buffer writeout picture() 輸入top_pic, bottom_pic 輸出buffer內的encoded picture writeout picture() 根據rd_pass的值 write out a picture free_slice_list() 把buffer清空 if(input->RCEnable) rc_update_pict_frame() 更新rate control 參數 END

encode_one_frame YES NO NO YES replace_top_pic_with_frame START initialization 依之前選擇FIELD_CODING 與 ADAPTIVE_CODING的取向, store_picture_in_dpb (decode picture buffer) or replace_top_pic_with_frame YES Field picture編碼 FIELD_CODING NO writeout picture Frame picture編碼 收尾 NO ADAPTIVE_CODING YES return Field picture編碼 比較Field picture 與Frame picture 那一個效果好, 並更新context

encode_one_frame:收尾1 如果是frame_coding find_snr () redundant pictures UpdateDecoders() 模擬packet loss的狀態 UpdatePixelMap() find_snr () Calculate PSNR for Y, U and V. redundant pictures save reconstruction to calculate SNR and replace reference picture stop 2 timers

encode_one_frame:收尾2 如果是adaptive_coding else store_picture_in_dpb() store bottom field in decoded picture buffer free_storable_picture() 將picture清掉 或replace_top_pic_with_frame () replace top pic with frame else store_picture_in_dpb (frame 或 bottom pics, 端看rd_pass) free_storable_picture() Report( I_SLICE or SP_SLICE or B_SLICE ) UpdateRCModel

Overview 1.encode_one_frame 2.encode_enhancement_layer Main encode_one_redundant_frame Encode_enhancement_layer

encode_enhancement_layer-功能 以HierarchicalCoding決定 1.encoding order 2.自訂的encoding order order決定完成, Encoding B frames

encode_enhancement_layer-hierarchicalCoding(1) create_hierarchy() 1.

encode_enhancement_layer-hierarchicalCoding(2)

encode_enhancement_layer-hierarchicalCoding(3) User decides.

encode_enhancement_layer- Code Structure if(input->HierarchicalCoding) set the parameter delta_pic_order_cnt[0] encode_one_frame() else

encode_enhancement_layer- important variables IMG_NUMBER: #define IMG_NUMBER (img->number - start_frame_no_in_this_IGOP) <global.h> img->number:current image number to be encoded input->sucessive_Bframe: number of B frame will be used

input->BRefPictures:B coded reference pictures replace P pictures (0: not used, 1: used) input->NumFramesInELSubSeq number of frames in the Enhanced Scalability Layer. 0 (default) means that no Enhancement Layer is used.

encode_enhancement_layer- setting values img->frame_num 該frame的編號 img->nal_reference_idc 標示其會不會被refernce到 img->bottompoc pic order count of bottom field of a frame img->b_frame_to_code 被encode的b frame編號 img->b_interval

setting values NALU_PRIORITY_HIGH

encode_enhancement_layer-example

encode_enhancement_layer-other ordering principle 對每一個intra_period,通知client decoder去 清空buffer