intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Graphic-Multimedia part 13

Chia sẻ: Dqwdasdasd Qwdasdasdasd | Ngày: | Loại File: PDF | Số trang:6

85
lượt xem
7
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mỗi macroblock(16x16 block)của P-frame có thể được encode độc lập hay được bổ xung từ frame đến trước nó Graphic-Multimedia part 13

Chủ đề:
Lưu

Nội dung Text: Graphic-Multimedia part 13

  1. trước nó và chỉ định cho B-frame và P-frame sau nó trong một nhóm frame(GOP- Group of pictures).Mỗi macroblock(16x16 block)của P-frame có thể được encode độc lập hay được bổ xung từ frame đến trước nó. - B-frame- Bi-Directionally Predictively Coded Frame-cũng như P-frame,không phải là một frame hoàn chỉnh,nó chỉ mang thông tin khác biệt giữa nó và 2 frame đứng cạnh nó(trước và sau).B-frame cũng được dự đoán(predict) bới 2 frame này.Bởi vì có sự liên kết,tham khảo với cả 2 frame trước và sau nên tên của loại frame này là "Bidirectional-frame" hay frame 2 chiều. Cách hoạt động:đầu tiên ta có một nhóm picture(GOP-Group of pictures),ở đầu mỗi nhóm này là một I-frame lưu đầy đủ giữ liệu của một hình ảnh.Các P-frame và B-frame đứng sau I-frame này và lưu các giữ liệu thể hiện sự khác nhau giữa các frame đứng trước hay sau chúng,mặt khác chúng cũng liên kết với I-frame trong nhóm để tìm thông tin cần thiết. Ví dụ:ta có 1 GOP như sau:IBBPBBBPBBBPBBP,trong GOP này,I sẽ là frame đứng đầu nhóm và P sẽ là frame kết thúc nhóm,sau P chắc chắn sẽ là một I-frame để bắt đầu GOP tiếp theo.Cụ thể hơn,nếu ta có một đoạn film quay cảnh một chiếc xe hơi đang di chuyển từ phải qua trái,đầu tiên,I-frame sẽ lưu lại đầy đủ hình ảnh của chiếc xe khi nó ở bên phải,sau đó,các B hay P frame thay vì tiếp tục lưu những hình ảnh hoàn chỉnh của chiếc xe sẽ chỉ nhận ra những điểm khác ở thời điểm xảy ra frame đó với I-frame đầu nhóm,rốt cuộc hình ảnh chiếc xe khi nó ở bên trái màn hình thực chất ra không phải là một hình ảnh theo đúng nghĩa,frame ở vị trí đó sẽ chỉ làm nhiệm vụ là di chuyển chiếc xe từ phía bên phải qua bằng cách chỉ ra tọa độ để đặt chiếc xe vào đó(trên thực tế mọi việc diễn ra phúc tạp hơn) Với cách phân chia như vậy,I-frame là frame có dung lượng lớn nhất(thường là gấp hơn 5 lần so với B-frame với các setting và matrix tôi hay sử dụng),P-frame có dung lượng lớn hơn B-frame nhưng đa số vẫn nhỏ hơn so với I-frame.Trong một file mpeg,số lượng I-frame là ít nhất,chúng đóng vai trò là hình ảnh đầu tiên mỗi khi chuyển cảnh,nhiều hơn là P-frame và nhiều nhất là b-frame.Khi kéo thanh trượt trên chương trình playback mpeg,những hình ảnh mà chúng ta có thể truy cập tới chính là những I-frame,đó cũng là một lý do loại frame này được gọi là key frame.
  2. B-VOPs-là tùy chọn dành cho những người đã đọc qua phần trên Max consecutive BVOPs:số B-frame giới hạn được phép đứng liền nhau.Như tôi đã trình bày ở trên,càng nhiều B-frame có nghĩa là video càng thể hiện đại khái(bởi nó không lưu những hình ảnh hoàn chỉnh và cũng không đóng vai trò liên kết,tiên đoán như P-frame).Nhưng điểm mạnh của B-frame là kích thước rất nhỏ,do đó dung lượng file nén sẽ nhỏ và thời gian sẽ không lâu như khi dùng nhiều I-frame hơn.Để tham khảo thêm,bạn nên biết DivX codec chỉ đặt hệ số này là 1.Và bạn không nên đặt quá 3 nếu không muốn thu được 1 kết quả tồi.Cá nhân tôi thường đặt 3 khi encode VCD và đặt 2 với DVD. Quantizer ratio chỉ định độ nén của B-frame là hơn bao nhiêu so với P-frame(đơn vị tính theo quantizer),bình thường hệ số này là 1,5. Quantizer offset là một hệ sô được bù thêm vào mỗi quantizer. Lấy một ví dụ để bạn hiểu rõ hơn về hai hệ số này:có hai B-frame,một p-frame đứng giữa hai b-frame này.P-frame có quantizer là 2,vậy khi ta set ratio và offset là 1,các B-frame kể trên sẽ mang quantizer là 3. Packet bitstream sẽ nhóm các B và P-frame cạnh nhau vào một bitstream.Ví dụ:[i][PB][b][trống][PB][b][trống][P].Dạng đóng gói như thế này sẽ cho phép encoding không bị trì hoãn. Closed GOV (trong hình mà tôi dùng để minh họa không có tùy chọn này,nếu phiên bản của bạn dùng có closed GOV,nó sẽ hiện cùng dòng với packet bitstream.Closed GOV sẽ tạo ra những closed GOP-là GOV có frame cuối cùng là P-frame.Điều này đồng nghĩa với việc trước mỗi I-frame sẽ là một P-frame.Tác dụng của closed GOP là sẽ tạo ra những file mpeg có thể chỉnh sửa được(trái ngược với một fiel mpeg dùng open GOP sẽ không thể chỉnh sửa được). Level Ta chuyển qua Tab level,ở đây không có gì để bạn chỉnh sửa ngoài việc chọn level(công việc mà chúng ta đã làm ngay từ đầu).Đây có thể coi là phần tham khảo thêm để bạn thực sự hiểu rõ mỗi profile @ level sẽ tương ứng với những “cấu hình” nào cho file tạo thành.
  3. Aspect Ratio(AR) Pixel AR : XviD theo mặc định sẽ giữ tỉ lệ pixel là 1:1(ngang x dọc) để đảm bảo tương thích.Điều đó có nghĩa là pixel mặc định của XviD sẽ là hình vuông.Ta cũng có thể chỉnh pixel AR tương ứng với tỷ lệ của file gốc. Display AR :có thể hiểu đây là tỷ lệ khung hình,hay tỉ lệ giữa chiều dài và chiều rộng. Ở một số codec,chiều dài phải chia hết cho một số nhất định nào đó,chiều rộng cũng vậy,ví dụ như trong DivX6,chiều dài phải chia hết cho 4-chiều rộng phải chia hết cho 2,ở 3ivx chiều dài và chiều rộng phải chia hết cho 2.Chiều dài x chiều rộng của XviD encode không bị giới hạn bởi bất kỳ điều kiện nào cả.Nhưng một lời khuyên chung cho mpeg4 là bạn nên để chiều dài và chiều rộng chia hết cho 16 để chắc chắn quá trình giải mã không gặp vấn đề rắc rối(có thể dẫn tới không thể giải mã nổi file).Nếu không hài lòng với việc chọn Pixel AR,bạn có thể sử dụng tùy chọn này.Nhưng hãy nhớ chỉ chọn tỉ lệ khi bạn hiểu rõ khung hình mình thu được trông sẽ ra sao.Trong quá trình encode mpeg4 của mình,tôi thường đặt phần AR này ở cấu hình mặc định và kết quả thu được là rất tốt mà không cần bận tâm gì cả. Nhấn OK để quay trở ra màn hình chính,bây giờ là lúc xem xét hình thức encode. Encoding Type Bạn cần quyết định mình sẽ chọn loại mã hóa nào.Sau đây là các trường hợp thường thấy:
  4. -Bạn có ít thời gian chạy máy tính,máy tính của bạn không có tốc độ tốt lắm cho việc encode video,bạn chỉ cần những file mpeg4 có chất lượng tạm chấp nhận được…vậy thì bạn rất thích hợp để chọn Single pass.Đặc điểm của single pass là bạn chỉ encode một lần,sau đó thu được kết quả ngay,và chất lượng thu được thì không thể coi là tốt đặc biệt là ở bitrate thấp. -Bạn có một chiếc máy tính với khả năng xử lý không tồi,bạn đặc biệt yêu thích video chất lượng cao và sẵn sàng dành nhiều thời gian cho sở thích này,chắc chắn bạn phải encode Twopass rồi.So với single pass thì loại encode này sẽ lấy đi của bạn khoảng thời gian gần gấp đôi cho cùng một file encode,chất lượng thu được thì rất tốt vì ngoài một bước dựng hình(pass 2) ta đã có thêm một bước phân tích(pass 1) Vậy bình thường nên chọn type nào?dĩ nhiên tôi sẽ khuyên bạn luôn encode 2 pass,bởi vì bạn chỉ encode một lần thôi trong khi video đó bạn chắc chắn sẽ xem nhiều hơn một lần,vì vậy đã làm thì phải đến nơi đến chốn.Nhưng hãy suy nghĩ lại nếu bạn có một chiếc máy tính quá yếu.Tưởng tượng rằng processor của bạn có tốc độ 500 Mhz và bạn chỉ có 64MB RAM,encode một bộ film dài khoảng 2 tiếng chắc chắn sẽ ngốn của bạn khoảng 10 giờ/1pass,vậy là nếu bạn dùng 2 pass,bạn sẽ mất cả ngày trời bật máy chạy liên tục mà không làm được gì cả ngoài việc chờ đợi nó nén xong film(thật là cực hình)… Tuy nhiên,hãy kiên nhẫn đọc đến phần cuối cùng,tôi sẽ mách cho bạn vài thủ thuật để sự việc trở nên đơn giản hơn. Cách setting cho các pass Single pass Không cần phải bận tâm về những setting với dạng encode này lắm,một khi ban đã chọn single pass,không thể hy vọng sẽ thu được chất lượng cao trừ khi bạn nâng bitrate lên đáng kể. Chất lượng hình ảnh sẽ được quyết định qua Target bitrate hay Target Quantizer Từ khi bắt đầu tới giờ,chúng ta đã nói nhiều về thuật ngữ Quantizer,vậy nó là gì?Thực ra câu hỏi này rất khó trả lời ngắn gọn,nhất là khi để hiểu trọn vẹn nó cần
  5. phải trải qua một khóa học căn bản khá dài.Nhưng hãy hiểu đơn giản rằng Quantizer ở đây nghĩa là hệ số nén,hệ số nén càng cao-tất nhiên-file xuất ra sẽ càng nhỏ và chất lượng sẽ càng giảm sút.Ngược lại,đối với hệ số nhỏ,chất lượng file càng cao và kích thước cũng lớn hơn.Có 31 mức Quatizer trong XviD(từ 1 đến 31),chọn độ nén mà bạn muốn.Với tôi,encode 1 DVD dưới 2 giờ vào 1 CD thỉ quantizer thường là từ 3 tới 5.Vấn đề bitrate thì có lẽ đã quá quen thuộc,chỉ cần nhớ là tốt hơn cả nên đặt bitrate từ 700kbps trở lên(cũng không cần thiết đặt cao quá-cho nhu cầu xem phim thông thường thì tới 2000kbps là đủ). Dùng nút calc… để tính toán cụ thể hơn tùy từng trường hợp.Xin lưu ý là việc tính toán kích thước file xuất ra ở single pass không hoàn toàn chính xác. Twopass XviD chỉ cung cấp cho người encode video 2 pass encode thay vì multiple pass như một số codec khác cho quá trình encode video chất lượng cao.Thực sự thì cũng chỉ cần tới 2 pass là chất lượng đã gần như hoàn thiện,3 pass sẽ thu được thêm một chút hiệu quả nữa(chất lượng hơn+nén tốt hơn),còn từ sau 3 pass trở đi thì xem ra không hiệu quả cao và tốn quá nhiều thời gian.Xu hướng phổ biến nhất trên thế giới hiện nay là encode 2 pass và XviD team có lý khi chỉ đưa ra twopass encode.(tuy vậy tôi sẽ thích XviD hơn nữa nếu codec này có multiple pass) Twopass-1st pass Đây là pass phân tích file video gốc nhập vào,không có tiến trình encode thành mpeg4 có thể xem được,vì vậy không cần phải chọn thông số cho file video xuất.(1st pass sẽ luôn sử dụng quantizer là 2).Những thông tin về các frame sẽ được 1st pass ghi lại dưới một file log dạng txt và bạn có thể quyết định đường dẫn tới file này. Không đánh dấu Full quality first pass ,nó không hề cải thiện chất lượng file ở 2nd pass. Đánh dấu Discard first pass,nếu không 1st pass sẽ ghi thêm một file mpeg4 vô dụng và làm chậm quá trình encode.
  6. Twopass 2nd pass Lấy thông tin từ file log của 1st pass,tiến hành so sánh đồng thời encode file video.Đối với phần thiết lập thông số cho file xuất,ta vẫn có Target bitrate như ở Single pass nhưng Target Quantizer được thay bằng Target size.Lý do ta không thể set hệ số nén được là vì hệ số này cũng phụ thuộc vào các phân tích ở 1st pass. Ở cửa sổ nhập thêm tham biến cho 2nd pass,ta có thể chọn đường dẫn tới log file do 1st pass tạo ra. Intra-frames tuning là khung điều chỉnh I-frame. -I-frame boost sẽ xác định I-frame sẽ được cung cấp thêm bao nhiêu phần trăm bit so với tính toán ban đầu của quá trình chạy encode.Bình thường thì chỉ số này là 10% -I-frames closer than…are reduced by… trái ngược với tùy chọn trên,dùng để giảm bitrate cho I-frame. Trong ô “…” thứ nhất xác định điểm để bắt đầu thực hiện giảm bitrate,ô thứ 2 xác định % bitrate sẽ được giảm.Ví dụ ở mặc định,nếu I-frame gần nhau hơn 1 frame thì quá trình encode sẽ tiến hành giảm bitrate của nó xuống 20%.  
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2