Trao đổi với tôi

http://www.buidao.com

11/4/13

[Video] Hướng dẫn vài điều về multimedia (P1)

Do 0 có thời gian nên viết tới đâu hay tới đó !
codec là phần cứng /phần mềm thực hiện việc giải nén/nén file (compressor/decompressor )
Có codec hình ảnh như : bmp , jpeg ,PNG
codec âm thanh như :mp3 ,mp3 pro , mp3 lame , ogg , wma , mpeg-1, mpeg-2 , AAC
codec video : wmv , ASP ,AVC
ASP là thuật giải thôi ! tức là nó chỉ là những bước ,phương pháp để nén file ,tức chỉ là trên giấy thôi ! Sau đó mới có người viết thành phần mềm ,chương trình như NEro ,DIVX cho thuật giải ASP ,cho thuật giải AVC có x264 ,Neroh264 . X264 thì free và nó là chuẩn ngon nhất hiện nay . Có lẽ mấy bạn chưa bao giờ biết nó .Nếu mấy bạn chuyển dạng file mà xài codec x264 thì sẽ bất ngờ với chất lượng của nó . File nhỏ hơn 2-3 lần nhưng có thể nói là chất lượng 0 hề giảm . Hankuk tui 0 bao giờ giảm kích thước , hay để hình ảnh lợn cợn .Nói thiệt coi Hàn Quốc là vì mê con gái Hàn Quốc .Nếu lợn-cợn , răng cưa thì mê sao được ?
Ngày xưa , ai nghĩ ra thuật giải nén thì người đó tạo ra chuẩn file đó luôn .Ví dụ bmp của mircosoft chỉ để lưu trữ hình ảnh , jpg cũng chỉ để lưu hình ảnh . Mp3 thì chỉ để lưu âm thanh .
Sau đó mới xuất hiện container như AVI ,Mp4 , mpeg . Như cái tên của nó , file AVI là thùng-chứa để chứa video,audio .Và video ,audio theo dạng nào thì tùy .Trong AVI có thể chứa âm thanh mp3 ,... nhưng 0 thể chứa AAC .MP4 là container có thể chứa âm thanh AAC và video H264 . Thực tế thì có nhiều container làm được như MP4 nhưng MP4 được hiệp hội quốc tế công nhận nên phổ biến hơn .

Mấy bạn cần phân biệt tên file và codec nhe ! Ví dụ : như mình nói đó , 1 file avi có thể khi hát lại cần codec WMV .Không hẳn file có đuôi wmv mới cần codec của Microsoft . Trong 1 file thì thường có ID, thường thì đó là byte đầu tiên của file . Mấy bạn dùng notepad mà mở file exe ra xem .Phần đầu luôn giống nhau . File bmp ,jpeg cũng vậy .
Nếu mình đổi đuôi từ .jpeg sang bmp và dùng Paint mở vẫn được .Nhưng nếu đổi .Dat sang .wmv thì Jetaudio 0 hát được mặc dù Jet có thể hát được wmv và Dat .Vì sao ? vì Paint được lập trình theo ID chứ 0 theo tên file . Tức là dù file gì đi nữa ! Nó cũng đọc ID ,coi xem kiểu gì , nếu hỗ trợ thì đọc tiếp rồi hiển thị và ngược lại . Trong khi đó Jet audio chỉ căn cứ vào tên file thôi ! mặc dù nó có thể làm việc với thông tin trong file . Tức là tên file 0 nói lên bản chất của nó . Nhiều người tên là "bé" hay "đèo " nhưng lại rất to con . Tên là wmv nhưng thông tin đâu có lưu theo kiểu wmv đâu . Ông Jet làm việc mà chỉ quan tâm tới bề ngoài
hẹn lần sau sẽ viết tiếp

Trên máy tính, cái gì cũng rời rạc hết á ! Bạn thấy 1 tấm hình liền lạc nhưng dùng kính lúp coi thì thấy màn hình máy vi tính gồm những điểm nhỏ nhưng mắt người 0 phân biệt được là do gần quá ! . Mỗi 1 điểm gọi là pixel ,picture element nghĩa là phần tử ảnh . Tức là ta đã cắt 1 hình ảnh thực thành những điểm nhỏ . Bởi vậy nói sao khi phóng to hình ảnh trên máy tính thì lại bị răng cưa, lợn cợn .
Như vậy 1 tấm ảnh trên máy vi tính thì thực ra là tập hợp nhiều điểm có màu sắc khác nhau .
*Vấn đề màu sắc của mỗi điểm . Từ ba màu cơ bản Red ,Green ,Blue người ta có thể tạo ra bất kỳ màu sắc . Đèn hình màu thường có 3 ống tia điện tử cho 3 màu Red, Green, Blue
Ta cứ cho hiện nhiều điểm với màu khác nhau thì thành 1 tấm ảnh . Giả sử tấm ảnh kích thước 640x480 , tấm ảnh có 16 triệu màu .Và khi lưu vô file, mỗi điểm sẽ được lưu thành 1 con số kích thước 3 byte ,vậy kích thước file là 640 nhân 480 nhân 3 = quá trời lớn ! Đây gọi là file raw ,dạng raw .Raw nghĩa là thô ! tên của nó đã nói lên bản chất của nó . File thô có kích thước rất lớn ,0 tiện cho việc lưu trữ ,hay phân phát nên người ta nghĩ ra "nén" . Chuẩn nén hình ảnh tốt như jpeg ,png .Nhờ nó mà file hình thường chỉ cỡ vài chục KB . Mình xin nói sơ sơ về nén . Ví dụ như có dãy 0000 0000 0001 ,thì ta sẽ ghi lại 1101 ,tức là 11 số 0 .Đây là sơ sơ về phương pháp run-length . Phương pháp của Jpeg thì phức tạp hơn . Nó sẽ biến đổi màu sắc RGB thành YUB thì phải ,(quên rồi ) rồi ). Đây là 1 cách mô-tả màu-sắc giống với cảm-nhận của con-người hơn . Sau đó người ta xem thành phần nào mà con người 0 nhạy cảm thì bỏ đi . Tức là JPeg là 1 dạng nén mất thông tin . Do cách nén như vậy mà file kết quả 0 sao giống với file gốc được .Run-lenght là giải thuật nén 0 mất thông tin , bmp là chuẩn xài phương pháp này .Tức là file bmp khi giải nén thì thu được thông tin hoàn toàn giống như cũ .
Không tin ,mấy bạn thử chụp màn hình của mình .
Sau đó lưu thành dạng jpeg và bmp để so sánh . File Jpeg sẽ xấu liền trong khi Bmp thì y như cũ nhưng kích thước của Jpeg lại nhỏ hơn .
-menu file /new ,rồi paste ,sau đó lưu ,chọn file type as
-làm tương tự để có nhiều file rồi so sánh
Nếu hình ảnh có dạng không gian thì nén JPEG là số một ,vd: gương mặt người , phong cảnh .Còn nếu có dạng đường cong ,đường thẳng , thì PNG là số một . Gương mặt người mà phẳng sao được ? đúng hôn ? có cái sống mũi lồi lên, có gò má nhô lên .Nói chung gương mặt chỉ "phẳng cục bộ" thôi ! Còn các bản vẽ cơ khí ,điện tử hay là khi chụp màn hình của mình thì rõ ràng là "phẳng " ,có ít "tính không gian" .Coi mấy tấm này ít cảm giác về không gian ,về chiều sâu . Gif cũng như PNG nhưng Gif không hỗ trợ 16 triệu màu
Nén mà mất thông tin gọi là lossy ,còn 0 mất là lossless

PCM là dạng âm thanh thô !
mp3 ,mpeg-1 ,mpeg-2, wma là những dạng nén mất thông tin .
AAC cũng là 1 dạng lossy .Do vậy nếu chuyển từ mp3 sang wma ,... thì một lần nữa làm mất thông tin nên file wma chắc cú dở hơn . Bởi vậy mình đừng chuyển qua chuyển lại nhiều lần giữa các dạng .Chỉ khi nguồn thông tin là Audio CD thì nên làm vì đĩa này lưu âm thanh thô . "Thô" ở đây như tui nói ở trên vì có sao thì lưu vậy, 0 chế biến gì cả chứ 0 phải chất lượng thô thiển
Nếu file mp3 bitrate là 64kbs, thì đừng nên chuyển sang mp3-28 kbs .Vì nguyên tắc trên máy tính là 0 có cái gì liên tục . Làm như vậy thì chỉ phí đĩa thôi ! vì mỗi giây ,nó chỉ lấy mẫu 64kbs ,và bây giờ trong file mỗi giây chỉ có 64kbs dữ liệu .Bởi vậy chuyển từ mp3 64 sang mp3-128 là phí phạm vì rõ ràng mp3-64 0 thể cung cấp gì hơn ngoài những gì nó có .Nó chỉ có 64 ki-lô bít thông tin mỗi giây thôi ! Tăng bit-rate thì chỉ lưu thông-tin giống-nhau nhiều hơn
Về bit-rate còn có khái niệm :
-CBR: constant bit-rate , tốc độ bít 0 đổi
-VBR:variable bit-rate ,tốc độ bit biến thiên
Rõ ràng VBR ưu thế hơn .Chỗ nào im lặng thì mình 0 cần nén nhiều ,0 cần lấy thông tin nhiều .Chỗ nào ồn ào sôi động thì cần phải lấy thông tin nhiều . Lấy nhiều mới phân biệt được ồn ào là do tiếng ai chứ .Do tiếng mèo ,tiếng chó ,tiếng xe ,tiếng cãi lộn .Chứ 0 thì chỉ biết ồn ào mà cũng 0 biết do gì

Để cho sinh động thêm .Tui sẽ giới thiệu 1 vài phần mềm có thể chuyển nhạc sang AAC ,mp4
Besweet http://dspguru.doom9.net/
link download http://besweet.notrace.dk/BeSweetv1.5b31.zip (link gián tiếp nhe !)
Đây là chương trình chuyển qua lại nhiều dạng file nhưng giao diện dòng lệnh .Tức là bạn phải vô cmd mà làm !.
Belight http://corecodec.org/projects/belight/ .Đây là chương trình giao diện cho Besweet .Tức là khi xài Belight mình sẽ chỉ cần click chuột thôi ! Chương trình này chả làm gì cả .Bạn click chuột để chọn tập tin ,xác lập thông số , khi thực hiện nó sẽ gọi Besweet làm dùm ! .Một chương trình như vậy gọi GUI .
Bạn nên download bản exe vì nó có Besweet và Belight .Nếu bạn tải 2 món này riêng rẽ thì sau khi giải nén phải để chung 1 thư mục
http://corecodec.org/frs/download.ph...2b9_Normal.exe
Nếu muốn dùng codec AAC thì bạn cần download thêm gói plug-in http://corecodec.org/frs/download.ph...et_plugins.zip . Đây là những file dll . File dll là file chứa những chương trình con. Nó 0 có giao diện , thua besweet luôn á ! muốn xài nó bạn phải viết 1 chương-trình có sử dụng những chương-trình-con trong file dll đó . Làm như vậy thì rõ ràng ,mình chỉ cần làm 1 file dll ,sau đó ai thích thì cứ liên kết vô .Nếu bạn gộp chương trình con vô chương-trình của bạn thì rõ ràng "cái hay cái đẹp" đó chỉ được chương-trình bạn xài thôi ! Người khác muốn xài cũng 0 được .Âu đó cũng là "cái hay cái đẹp" . Đó cũng là lý do mà dll ra đời . Dll là viết tắt của dynamic link library nghĩa là thư viện liên kết động
Gói dll trên vẫn chưa đủ đâu . Nếu bạn xài Belight thì thấy có nhiều codec AAC như nero ,winamp , FAAD . Những codec này cần thêm 1 số file dll nữa !
Khi chạy thì nói nói 0 thấy file dll gì đó . Nếu xài winamp thì bạn cần cài winamp vô ,sau đó mò vô thư mục của nó thì sẽ thấy các file dll mình cần .Tương tự nếu xài nero thì cần download nero về ,cài vô , vô thư mục common\ahead\lib ,nói chung là trong thư mục common . http://www.nero.com/nerodigital/eng/...rver.php?pak=9
Codec nero cần bsn.dll ,aacenc32.dll, aac.dll, NeroIPP.dll ,MFC71.dll . File MFC71 cần bỏ thêm vô window\system32
Nói chung ,cần file nào thì cứ vô google.com ,gõ là có ngay
Đây là 1 site có nhiều file dll mà mình cần (dĩ nhiên 0 có file của nero vì có bản quyền mà ) http://www.rjamorim.com/rrw/aacenc.html
Mình giới thiệu thêm là Behappy . Anh này 0 dựa trên besweet nên dĩ nhiên 0 có lỗi của besweet . Có nhiều file nghe thì được nhưng dùng Besweet thì có lỗi "... MAXFRAMESIZE..."
http://www.gotdotnet.com/workspaces/...4-b0999e8e223e , dòm qua bên phải , kéo xuống 1 tí sẽ thấy Behappy
Chương trình này cũng rất dễ xài
Đối với mp3 thì 128kbs là tiêu chuẩn chất lượng .Tức là nếu chuyển từ file wav sang mp3 128kbs thì âm thanh có thể coi là trung thực .Đối với AAC chỉ là 48kbs thôi ! Từ bit-rate mà tính ra kích thước file đó . Kbs tức là ki-lô bít trên giây . Bit-rate nghĩa là tốc độ bit . Cứ lấy bit-rate nhân với độ dài bản nhạc thì biết kích thước file . Rõ ràng bit-rate thấp thì file nhỏ . Bit-rate cao thì có nhiều thông tin về file nhạc nên nghe sẽ rõ ràng hơn .AAC khác với Mp3 , bit-rate của AAC khác với bit-rate MP3 .
Bản nhạc bit-rate cao nghe mới "chi tiết" .Nếu bit-rate thấp thì nghe 0 phân biệt được gì hết !.Tiếng người ,tiếng máy cứ y hệt nhau . Nếu bit-rate cao thì có nhiều chi tiết hơn .Nghe 1 bản nhạc bit-rate thấp rồi chuyển sang bản nhạc có bit-rate cao thì ta mới ngỡ ngàng . Lúc này mới biết bản nhạc "thật sự" ra sao , ví dụ có thể nghe tiếng treble rất mảnh , rung lên rồi nhỏ dần . Đặc tính của file có bit-rate thấp là "phẳng" ,cái gì cũng y như cái đó .Bởi vậy sao gọi là "mịn màng " ,chi tiết được
Khi chuyển dạng file , đầu tiên chuyển sang wav (dạng thô) , sau đó mới chuyển sang dạng-cần-chuyển .
Nguyên xi --->mp3, bị mất 1 miếng ---> Wav ,wav này rõ ràng là dở so với Wav đầu tiên ----->wma , lại bị mất thông tin 1 lần nữa .
Khi hát ,player sẽ chuyển wma thành wav rồi chuyển ra sound card . Do vậy wav này lại càng xa với wav ban đầu
Kinh nghiệm của mình là mp3 192kbs thì với AAC 56kbs ,tối đa là 64kbs thì file thu được sẽ có chất lượng tương đương với mp3 192kbs .

" Chuyển dạng" là từ mô tả đúng nghĩa đúng bản chất của vấn đề . Nó khác với việc nén của Winzip ,Winrar . Giả sử ,ta có file A .Qua tay của Winzip, ta có file B .Sau đó cho qua Winrar , thực sự nó sẽ tiến hành nén file B ,0 hề giải nén thành file A rồi mới nén thành file C.
Tới đây ,bạn thấy sự khác biệt so với việc "nén" file nhạc . "Nén" làm cho ta có ý nghĩ là kích thước sẽ nhỏ hơn nhưng rõ ràng không phải vậy đối với file nhạc .Thật sự chỉ là "chuyển mã " ,transcoding . Bung ra dữ-liệu-thô ,sau đó nén dữ-liệu thô đó theo kiểu khác . Từ file thô sang Mp3 ,AAC thì mình dùng từ "nén" được
Nếu chuyển từ mpeg-1 sang mpeg-2 thì kết quả sẽ 0 tốt vì trình độ nén của 2 ông này là ngang nhau .Mà mấy bạn biết rồi ,cả hai đều là lossy ,mất .Bởi vậy chuyển qua thì dở thêm thôi ! Còn khi chuyển Mp3 sang AAC thì hơi khác do trình độ nén của AAC cao hơn MP3 nhiều . Nếu MP3 128kbs tương đương với AAC 48kbs , nên nhớ cái này có được là lấy file WAv làm gốc:
-nếu chọn AAC 48kbs thì rõ ràng sẽ mất thông tin 1 lần nữa
-bởi vậy chọn cao hơn 48 kbs ,chẳng hạn 52 54 kbs thì file AAC có thể coi như là dạng-lossless của file-WAV mà MP3 vừa tạo ra (.Câu này hơi dài ,có thể khó hiểu ,ngắt giọng trúng thì mới hiểu ý tui được).Nói chung , ban nên chuyển chuyển vài cái rồi nghe thử xem sao
Việc cũng tương tự nếu ta chuyển Div 3 hay MS mpeg-3 sang x264 . Việc kích thước file nhỏ đi không phải vì giảm kích thước hay để hình ảnh răng cưa mà do khả năng nén của x264 cao hơn các chuẩn kia .Chính xác hơn là "khả năng nén dữ liệu thô "
Các link mà mình nói có 1 số 0 phải là link trực tiếp bởi vậy có thể 0 xài ngay với flashget hay IDM
Các chương trình mình giới thiệu đều là chương trình miễn phí .Do vậy nó có thể 0 ổn định và ít khi nào có "all in one" .Do vậy có thể mình phải kết hợp nhiều chương trình lại mới đạt được ý muốn . Tuy miễn phí nhưng đừng nghĩ nó dở nhe ! nhiều chương trình mua bằng tiền nhưng lại 0 hỗ trợ "món ngon " . Mà mua bằng tiền thì mình cũng xài crack thôi ! Hơn nữa , YAN hiện nay cũng hạn chế xài phần mềm bẻ khóa mà xài crack thì các phần mềm tui đã xài như aurora ,.. làm ăn chả ngon lành gì . Họ còn cho mã nguồn nữa bởi vậy ai mà mê lập trình thì có thể đem về mà sửa, chế biến lại .
Có gì thì bình tĩnh nhe ! Tra từ điển xem coi nó nói gì .Xong ! hãy tự giải quyết xem sao .Tui nghĩ như vậy mới giỏi được và sau này mới giúp người khác được . Tui nghĩ lại và thấy nhiều vấn đề hỏi là do 0 đọc thông báo ,ngại đọc tiếng Anh . Tiếng Anh thì dùng Lạc Việt , trên mạng có http://vdict.com
Nếu 0 được thì vô đây hỏi http://forum.doom9.org/forumdisplay....e=2&order=desc

Mình xin giới thiệu vài phần mềm rip CD sang Wav ,.. từ wav ,ta sẽ cho sang aac .
http://www.free-codecs.com/download/CDex.htm . Các bạn kéo xuống dưới ,thấy còn nhiều món nữa !
AAC thì Jet 0 chịu hát nhưng Media classic player hất tuốt . Ta có thể dùng chương trình đưa file AAC vô thùng chứa MP4 .Khi này có thể hát bằng Jet , phải chịu thêm vài KB cho phần header
chương trình mux là mp4box .Gui cho nó là YAMB http://yamb.unite-video.com/download.html

bạn này đúng là 0 đọc kỹ . ! bạn hãy xài thử x264 . Bạn có cài k-lite codec pack hay không ? .
Bạn có thể cài lại k-lite ,
--khi tới phần VFW ,chọn x264 ,
--tới phần gì đó có CoreAAC ,nhớ chọn đây là decompressor âm thanh cho AAC
Xivx và Divx thì tui 0 rành . Mỗi 1 codec có 1 con số duy nhất gọi là fccs .Cái này quốc tế á ! Nhưng tui thấy Xivx ,Divx bèo quá nên 0 tìm hiểu thêm .Trong K-lite có chương trình cho bạn chuyển fccs .theo tui hiểu là mình nén xài compressor Divx nhưng khi coi thì lại xài decompressor của Xivx
Có thể máy bạn 0 có decompressor cho Xivx .
Codec nào cũng vậy ! Thường bạn phải xác định cho các thông số nữa ! Nếu chọn 0 đúng thì kết quả 0 tốt đâu ! Divx ,Xivx đều là codec kiểu ASP .Còn X264 thuộc kiểu AVC . Nhóm phát triển AVC cũng là nhóm đã từng đưa ra chuẩn MPEG-1 ,MPEG-2 ,tức là chuẩn VCD, DVD hiện nay . AVC được xem là chuẩn DVD thế hệ kế tiếp đó . Nhóm này cũng là nhóm đưa ra chuẩn ASP luôn ! .Nhưng mới nhất (dĩ nhiên ngon nhất) là AVC .Thực tình thì tui cũng thử transcoding xài Xvid và thấy nỏ dở thiệt , được cái là nhanh hơn .Hiện đĩa cứng tui sắp hết rồi ! Bởi vậy làm sao mà nhỏ và đẹp là ưu tiên hàng đầu .Tui thường lập lịch rồi mở máy chạy liên tục .Tui tắt màn hình nên chả tốn điện bao nhiêu .Máy tui vẫn chưa hư nhe !

Bạn đang xài Virtual-Dub ? bạn hãy chọn Video /compression ,chọn x264 ,click nút configure để chọn cấu hình cho nó . Đây là tài liệu tiếng Anh hướng dẫn . Thực tình codec cũng chỉ là máy thôi bạn ạ ! Nôm na cuối cùng thì mình phải xem video cần chuyển trước .Khi biết thông tin về video đó rồi mới cấu hình cho codec .
http://gabe.5000megs.com/DeathTheSheepAVCguide.pdf
Mình có kinh nghiệm này : phần "max reference frames" ,bạn chọn 16 đi .
Nếu bạn muốn xem hướng dẫn về Xvid thì qua www.updatesofts.com , vô Tutorial , vô "hướng dẫn biên tập, chuyển dạng ...." của anh denise . Muốn coi tiếng Anh thì cứ vô forum http://forum.doom9.org


Mong muốn tới của tui là có thể dịch các hướng dẫn sang tiếng Anh thật dễ hiểu rồi đem sang các forum nước ngoài .Từ đây họ biết nén sang file mp4 thật nhỏ gọn nên mình download sướng hơn

Nói chung khi muốn chuyển dạng hình ảnh :
- phải có codec . Nếu xài chương trình mua bằng tiền thì có thể họ sẽ tự cài codec . Ở đây do xài dạng miễn phí nên ta phải tự làm . Codec như mình nói ở bài trên, sơ sơ thôi mà đã quá trời .Đúng ! codec nhiều lắm ! nếu phải cài từng cái thì quá bất tiện .Do vậy mà người cho nó vô chung 1 gói duy nhất , tiếng Anh là codec pack . Vô www.free-codecs.com , down và chạy K-lite codec pack
-Muốn chuyển dạng xài x264 thì dĩ nhiên khi cài phải chọn x264 . Thường cái này là mặc định nhưng cũng phải coi 1 lần xem sao khi cài k-lite ,sẽ có giai đoạn nó hỏi mình cài gì , đừng lo , nó 0 độc đoán đâu
- x264 chỉ là compressor video thôi !
-Muốn nghe âm thanh AAC thì phải chọn CoreAAC

Bữa nay, mình xin giới thiệu sơ sơ về Virtualdub
link download http://virtualdub.sourceforge.net/ .Xài phần mềm miễn phí thì mình sẽ gặp sourceforge dài dài .
VD mpeg 2 http://fcchandler.home.comcast.net/stable/ .Các bản Vd đều có ở free-codecs .
Chương trình này dễ ẹc hà ! Ai có xài máy vi tính thì chuyện nhỏ thôi !
Đầu tiên thì mở file thôi ! vô File/open file . Chọn 1 file wmv ,.. VD sẽ nói là 0 biết chương trình nào giải nén cho wmv . Đó ! phải giải nén thì mới chuyển mã được .Các bạn vô menu Start ,mò tới FFDshow , chọn codec , ở chỗ wmv ,hiện nó đang disable , chọn cái khác để có FFDshow giải mã cho wmv . Chỗ này hình như là do vấn đề bản quyền ! virtualdub 0 dám lấy chương trình giải mã của Mircosoft
Chọn codec cho việc chuyển mã :
--menu video / compression , 1 cửa sổ nhỏ hiện lên , bên trái ,kéo xuống , chọn x264 ,
--click nút configure để cấu hình . Tức x264 0 phải là 1 codec màu nhiệm ,tự biết nên làm gì mà mình phải sai bảo nó
---Mình chỉ nói cách nén npass thôi ! nén quantizer thì đơn giản ,các bạn coi file pdf ở post trên thì có hiểu được . Đầu tiên, bạn chọn multipass- 1 pass , xác định đường dẫn cho stats file . Khi chạy 1-pass , nó sẽ khảo sát file video rồi ghi vào stats file .
---Bây giờ vô file / run analyse pass . Bạn thấy phần audio là 0kbs ,tức lúc này nó chỉ làm việc với audio thôi !
---Chạy pass thứ 2 .Cũng vô video/.... , chọn multipass-n pass ,lúc này nó đọc lại file stats và thật sự tạo ra kết quả cho ta
---menu file / save avi
---xong

Bạn thấy làm vậy thì hơi mất công ! VD có hỗ trợ lập lịch . Khi cấu hình xong codec , thay vì chọn "Run analyse pass" ,mình chọn "save avi" ,cửa sổ lưu file hiện lên , gõ tên file xuất , bên trái ,ở dưới , click vào check-box để đưa vào hàng đợi thay vì làm liền . Lặp lại công việc cho multipass-n pass . Xong 1 file .
Bây giờ ,mình cứ open file khác rồi cho vô lịch làm việc .Khi chạy pass 1 , 0 xử lý audio nếu chọn "run analyse pass " ,còn khi lập lịch thì audio vẫn được xử lý nhưng audio thì 0 cần 2 pass nên ở pass 1 mình thể chọn "no audio "
Xong ! nhấn F4 để mở cửa số hàng đợi , bạn double để thay đổi trạng thái của hàng đợi , postpone thì 0 làm việc
Menu audio dĩ nhiên dùng để xác lập thông số cho việc xử lý âm thanh . Mình thường để nguyên .Nếu âm thanh mp3 thì chả chuyển làm gì mà Virtuabl 0 thể xuất AAC ,lý do là container AVI không thể chứa âm-thanh AAC . Do vậy cứ chọn "direct copy" ,nó sẽ chép âm thanh từ file nguồn sang file đích .
( Sẽ có nhiều trường hợp 0 thể chép được ,VD 0 chịu làm . Khi đó vô menu Option/Preference , click MPEG ,chọn MPEG -2 ,chọn "allow copy ..." ,cái này là của Virtualdub mpeg-2 thôi !)

Sau đây là phần tăng tốc cho VD .Dĩ nhiên ,muốn nhanh thì máy cũng phải nhanh , nên chạy defragement cho ổ đĩa , ổ đích phải còn dư , . Đây là phần tăng tốc bên trong VD :
--menu options/ performance , tăng buffer lên , tăng pipeline lên tới 192 thôi ! máy tui có 256 MB ,chạy 256 pipeline thì hay bị lỗi .Nếu máy bạn có 1G thì thử kéo lên hết xem sao ?
VD chỉ xuất được file AVI thôi ! Muốn cho ra mp4 với x264/AAC thì dùng Megui ,download http://megui.sourceforge.net/ .Megui chỉ là 1 GUI thôi !
vô đây đọc để biết những file cần cho nó http://forum.doom9.org/showthread.php?t=106189
Megui hiện nay 0 xài Besweet để chuyển đổi âm thanh nữa ! không biết trong gói Megui có avisynth 0 ? nếu 0 thì vô đây http://sourceforge.net/projects/avisynth2/

Megui dựa trên avisynth , đầu tiên cứ tạo file avisynth , thiết lập codec video , enqueu , coi phần âm thanh ,thiết lập thông số ,enqueu .Sau khi làm xong thì chạy mp4box để mux video và âm thanh lại . Mux ở đây 0 hoàn toán có nghĩa là trộn merge đâu .Mux nghĩa là đa hợp . Ngày xưa, cứ mỗi 1 người dùng người ta nối 1 đường đây từ họ tới bưu điện . Quá tốn nên người ta nghĩ ra cách hợp nhiều đường lại thành 1 đường duy nhất rồi truyền đi nơi khác chỉ với 1 dây .Sau khi qua bên kia ,người ta mới tách ra . Hợp nhiều đường tín hiệu lại gọi là mux ,tách là gọi là demux .Các bạn thử nghĩ nếu trộn âm thanh với hình ảnh thì xuất ra màn hình coi sao được ? đúng hôn ? video và audio chỉ ở chung 1 file thôi ! 0 hề có chuyện 2 anh này hòa quyện vào nhau .

Megui lại 0 xử lí được file wmv .Do vậy ta dùng Staxrip ,có ở free-codecs luôn ! thằng này cũng phải cài tùm lum ! không sao ! down dễ lắm ! down những thứ cần ! chạy kiểm tra tương thích ,chỗ nào có mà nó nói là 0 thấy thì nút browse .


tui thấy nếu xài x264 trong gói k-lite thì hay bị lỗi crash với VD , tui down x264.exe ,chạy là hết http://x264.nl/
Để xuất video x264 trong file Avi :
-mp4box -aviraw tên-file-avi
-sẽ có 1 file đuôi h264
-có thể dùng mp4box mux sang mp4 nhưng mất công quá .chạy YAMB là được http://yamb.unite-video.com/download.html
Muốn xem thông tin như bit-rate ,.. của mp4 thì có thể xài chương trình AVIcodec ,có ở www.free-codecs.com , hoặc mp4info
http://mediainfo.sourceforge.net/en

Chời ! nói vậy là quá dễ hiểu rồi ! Anh mà giới thiệu cho tui 0 nói gì đâu ! Anh chả nói codec là chi hết ! Belight ,bi lẹt gì thì cũng phải tự tìm hiểu ,xài 1 thời gian rồi mới có kinh nghiệm đó ! . Có vẻ bạn chưa học lập trình .Không thể tham vọng làm cho mọi người điều hiểu hết được và có thể hiểu liền . Đọc nhiều lần thì mới khá hơn .Hơn nữa nếu chỉ có thể kích thích tìm hiểu về multimedia thì đó cũng là thành công . Tui 0 tham vọng nhiều !
0 coi được ? bạn thử coi bằng Media Classic Player , K-lite codec pack có đó .Bạn vô thư mục "program files/k-lite codec pack" thì sẽ thấy .Chương trình này hơi dở là 0 tạo và quản lý playlist được .Nếu muốn có playlist thì phải tạo bằng tay .Đơn giản thôi nhưng hơi tốn công .Tui dùng Jet tạo album sau đó export ra file đuôi pls .Rồi mở file pls bằng Classic Player .Đó ! chỉ dở chỗ đó thôi ! chứ các điều còn lại thì 0 ai bằng nó đâu bạn ạ !.Mà đây là cái mà người nghe nhạc cần nhất ! Ông này 0 nổi tiếng là do vậy !
Hình ảnh biến dạng ? có thể bạn đã chọn aspect-ratio 0 đúng ! thiệt thì chưa gặp trường hợp này .Bạn làm ơn mô tả kỹ hơn như file gì ?
Bạn nói cho code thì hình như bạn 0 hiểu ! Codec 0 cho code bạn ạ ! codec cho hình ảnh và âm thanh . Direct X là trình tăng tốc đồ họa ,hiện thị nhanh hơn ,hoàn toàn 0 liên quan tới việc encode multimedia
Nero ? ai cũng nghĩ nó là phần mềm ghi đĩa CD . Thực tình thì nero có rất nhiều sản phẩm .Không hẳn chỉ là ghi đĩa đâu ! Nero mà mình đưa lên thì đó chương trình chuyển dạng file video bạn ạ !
Các phần mềm transcode hình ảnh và âm thanh đều nặng máy ! Nặng ở đây là khi chạy thôi! còn dung lượng thì ít xìu ! Khi chạy nó luôn ăn 100% CPU nhưng 0 có nghĩa lúc đó bạn 0 còn có thể làm gì ! Chúng luôn có tùy chọn sẽ hoạt động ở mức nào . Trong Window ,0 phải chương trình nào cũng như nhau .Window chia thành các mức ưu tiên . Bạn nhấn ctr+alt+del để mở taskmanager ,qua tab process ,click phải chuột 1 process xem sao ! sẽ thấy có nhiều mức ưu tiên đúng hôn ?
A! hiểu rồi ! hình ảnh mập mờ ? có thể bạn đã chỉnh để FFdshow giải mã file của bạn và bạn đã chọn bộ lọc cho 1 số codec. Bạn vô menu start /program /k-ite codec pack , chọn FFdshow , bên trái là bộ lọc ,bạn hãy bỏ-chọn đi ! Bạn này làm "mang tiếng" k-lite quá !

Mình coi kĩ lại rồi ! Mấy bạn đừng tăng buffer AVi ,cũng đừng tăng pipe-line ! Vì x264 làm việc rất chậm, thời gian làm việc nó chủ yếu xử lý còn đọc đĩa thì rất ít . Cái pipe-line, AVI buffer chỉ có tác dụng nhiều khi mình chọn chế độ "direct copy stream" .
Lúc trước 0 hiểu sao mình thấy VD nhanh hơn nên dùng VD convert sang x264 .Sau đó dùng YAMb tách phần video ra . Sau đó dùng YAMB ghép file raw và file âm thanh thành MP4 . Hiện nay ,tui thấy Megui cho chỉnh nhiều nhất nhưng nó vẫn ăn nhiều bộ nhớ hơn VD khi pipe-line=4 ,AVI buffer=4MB
Trước đây khi convert file, mình thiết thông số giống nhau cho 2 pass Sau đó,mình xài staxrip thì thấy pass 1 nó chạy rất nhanh .Bây giờ mới biết nguyên nhân .Đó là do nó cài thông số cho pass 1 và pass 2 khác nhau
. Pass 1 chỉ chọn : diamond , 1 , bỏ trellis , max ref frames = 1 ,bỏ hết mấy cái như 4x4 8x8 :
--Ở tab MB&Frame của x264vfw, mình 0 chọn tất cả tùy chọn ở phần partitions, bỏ "weighted...", staxrip chọn 3 cho "Max consecutive" nhưng mình chọn 5 luôn! (theo lời của deathTheSheep ) .
--Ở tab "More...", chọn 1 cho "partion decision", chọn "Diamond search" cho phần method, chọn 1 cho "Max ref frame", bỏ trellis
Nếu các ban xài Megui thì cũng đặt tương tự .Megui nó có tips hướng dẫn ,các bạn hãy đọc .Bên đó nó đổi tên vài chỗ .Mệt ghê ! Staxrip xài tham số pyramid cho cả 2 pass . Bên x264vfw 0 có tùy chọn này, tức mình xài giá trị mặc định mà giá trị mặc định là pyramid luôn ! ^_^
Có lẽ tui sẽ dịch sơ sơ tài liệu pdf rồi sẽ gởi lên nhưng nói trước có lẽ sẽ lâu ! Do hiện nay rất bận .Các bạn nên dành thời gian đọc 1 chút thì sẽ được thôi !

Khi dùng YAMB thì mấy bạn chú ý là nó không có tùy chọn fps .Nói chung, hiện nay tui dùng nó để tạo ra câu lệnh thôi ! Sau khi có câu lệnh thì tui dán vô cửa sổ cmd .Nếu file AVI có video kiểu x264 thì tui dùng YAMB extract , nó sẽ tạo 1 file có đuôi h264 .Đây là file raw . Sau đó ,tui mux file sang mp4 . Khi này YAMB sẽ mux với fps là 25 .Nếu AVI không phải là 25 fps thì làm xong sẽ bị lệch tiếng . Khi đó ,mình chọn file ,vô option chọn "Enable import seting" . Muốn biết thông số của file AVI ,mấy bạn cứ dùng chương trình AVIcodec .
VD xài x264vfw.dll còn Megui và Staxrip xài x264.exe .Đây chỉ là 2 cách tiếp cận x264 . Không có gì khác nhau . X264 do xài giao diện dòng lệnh nên cho phép thay đổi nhiều thông số hơn .Còn x264vfw.dll xài giao diện đồ họa .Tuy vậy giao diện đồ họa chỉ để nạp thông số thôi! Nếu muốn nó transcoding thì mình vẫn phải cần 1 chương-trình trong đó có sử dụng những chương-trình-con nằm trong x264vfw.dll .Khi các bạn click nút configure ở VD thì 1 cửa sổ nhỏ hiện lên .Người biên dịch x264vfw.dll đã bớt 1 số thông-số để cho gọn và chúng được xài với giá-trị mặc định .Muốn biết các thông số của x264.exe ,mấy bạn vô cmd , cd c:\program files\x264 , gõ x264 .Mấy bạn click vào nút trái cửa sổ cmd , chọn select all ,rồi copy , dán vô cửa sổ notepad .Bây giờ tha hồ mà nghiên cứu .
Xài Megui hay VD là vì nó cho phép chỉnh sửa thông số còn các chương trình khác chả cho làm gì . Phải điều chỉnh thì convert mới hiệu quả được . .Hiện nay, nói chung máy vi tính chưa có thể tự quyết định làm việc mà cần có hướng dẫn của con người .Tứ hiện cũng chỉ ở mức "máy" thôi ! .Nó vẫn chưa có khả năng tự quyết định như con người được .Mấy cái codec cũng 0 thoát khỏi tình trạng này . Chỉ bảo rồi mà nó chạy còn chậm rì ! Cỡ như để nó tự làm thì chắc tới tết congo mới xong ^_^ Thực tình thì mình 0 muốn xài hình ảnh .Hình ảnh thì lâu quá nó mất ,0 host hoài được hơn nữa đọc chữ mà làm được thì tư duy tốt hơn . Chữ đọc thì cói khi khó hình dung nên tui cố gắng chỉ 1 cách chi tiết
Về AAC ,trước đây tui dùng Behappy chuyển dạng xài 64kbs nhưng sau đó dùng Gspot coi file AAC-vừa-được-tạo-ra thì nó nói là 93kbs lận .Vậy 192kbs MP3 sang 93kbs AAC .Nói chung đó là cảm nhận của tui thôi ! Mấy bạn nên thử nghiệm với 1 số bit-rate . Nói như trước đây thì hơi áp đặt .Mấy cái encoder Winamp ,Nero, FAAD chỉ là máy thôi ! Do cách lập trình khác nhau nên tốc độ có khác nhau .Còn nếu cùng bitrate thì các file được tạo ra có chất lượng giống nhau .FAAD là free AAC đó nhưng ông này là chậm nhất .
Mấy bạn có làm thử chưa ? dễ mà ? phải down nhiều file nhưng nhỏ mà ? toàn mấy chục kb .
À quên ! mấy cái Megui ,Staxrip phải cài net framework thì mới chạy được .Nếu 0 có thì khi cài Megui ,sẽ thông báo đại loại "hư file.."

Nói thêm về decoder cho wmv .Nếu file wmv, asf xài wmv1 thì có thể VD sẽ nói là "0 truy cập được decompressor của wmv1 ..." .Khi đó các bạn điều chỉnh để FFdshow là decoder cho wmv1 ,wmv2 ... Bạn vô menu start ,.. k-lite codec pack , FFdshow , chọn VFW á !
wmv1 là fouccs ,tức là cái ID quốc tế , tên của nó là "window media ..7" , còn wmv3 có tên là "window media ..9"

redblood hỏi :

Code:
Mình có 1 bài hat wmv (cỡ 5 phút_ 5MB) nhưng khi convert sang avi thì nó tới 60MB lận. Mình chỉ cần file avi de xem trên ĐT nên kô cần chất lượng cao lắm. TRong khi đó mình dơn mấy cái clip gale cười trên mạng ve` (file avi co~ 15') nhưng lại kô quá 15MB. Vậy các bạn cho hỏi có cách nào dể nén 1 file *.avi hay kô, hoặc là lúc convert từ wmv ==> avi thì chỉnh gì để giảm dung lượng của file output(*.avi)
trả lời:
Code:
đó là bạn chưa hiểu về "nén", convert, chuyển-mã dạng-file và codec. Có lẽ bạn bạn đã dùng 1 codec chất lượng kém hơn wmv, có thể bạn chọn dạng-thô nên kích thước file-avi sẽ lớn hơn rất nhiều so với file-gốc. Nén file nhạc, chuyển đổi file nhạc 0 giống như nén file của winrar, winzip. Thực chất đó chỉ là chuyển-dạng( transcoding), nếu codec của file đích bèo quá thì kích thước 0 những tăng mà có khi chất lượng còn kém hơn file gốc. Bạn có thể coi guide của tui để biết cụ thể. Bạn để ý cái chữ ký của tui nhe !
Giới thiệu link có nhiều phần mềm miễn phí ngon nè! http://sourceforge.net/project/showf...group_id=82303

MKV là 1 container có thể chứa video x264. Theo kinh nghiệm hiện nay thì mkv và các chương trình đi theo làm ăn tốt hơn mp4. Tuy nhiên, theo tui biết thì hiện nay chưa có cái pocket player nào hỗ trợ file nào. Bởi vậy nếu dùng nó thì chỉ có thể hát trên máy vi tính thôi!
Gần đây mới biết thì đừng nên convert video sang x264 với Virtualdub. Vì VD xuất file avi. Đây là container 0 hỗ trợ VFR. Bởi vậy xài Megui hoặc Staxrip. VFR là variable frame rate ,nghĩa là tốc độ frame thay đổi. Video thật sự chỉ là gồm nhiều tấm hình thôi! Nếu cho hiện 25 tấm/giây trở lên thì mắt người 0 còn cảm nhận được sự thay đổi nữa. Do đó cho cảm giác hình ảnh liên tục. Mỗi tấm hình trong video gọi là frame(khung)

Hiện tui chưa hiểu vì sao Megui 0 mở file wmv trong khi nó dựa trên AVIsynth. Nếu muốn mở file wmv thì bạn mở notepad rồi gõ vô
DirectShowSource("c:\file.wmv", fps= 30, convertfps = true ). Dùng AVIcodec để biết file wmv có fps là bao nhiêu.Lưu file rồi đổi đuôi thành avs. Đơn giản hơn, khi lưu file, click file type và chọn all file , rồi gõ tên file với đuôi avs. (Các bạn thử 0 làm như tui nói và gõ luôn tên với đuôi avs xem sao )
Sau đó mở file avs với Megui.

Megui hiện nay hình như mở wmv được rồi! open, click file type, chọn all file,..
Phần mềm chuyển nhạc audio, miễn phí http://mediacoder.sourceforge.net/. Chưa thử!
hankuk mới nghiệm 1 điều về x264. Lâu nay, hankuk ham pro quá! x264 có chế độ constant quantizer dành cho trường hợp 0 quan tâm tới kích thước file mà chỉ quan tâm tới chất lượng. hankuk mê cái này mà 0 chịu coi. Hiện nay, mở file, .. chọn chế độ constant quantizer, chọn 26( coi tài liệu của DeathTheSheep), rồi! save AVI hay enqueue ở Megui. Kích thước nhỏ hơn 2.5-3 lần nhưng chất lượng vẫn tuyệt vời mà đơn giản, nhanh gọn. Nói chung là chế độ single pass vẫn cho kết quả tốt. Tuy nhiên, mình 0 biết kích thước file sẽ là bao nhiêu, còn sử dụng chế độ npass( 2-pass,3-pass) thì mình phải chọn bitrate cụ thể là bao nhiêu. Do đó mà xác định được kích thước file ra.
Về AAC và nén bằng Behappy, cái này .NET 1.1, cài .NET 2.0 vẫn 0 chạy được đâu! Tui thấy nén với Coding technologies + @ thì mình giữ được sample rate ,ví dụ 48khz. Tui thấy MP3 192 = AAC 93kpbs + SBR .Mình quan sát các cột tần số ở Jetaudio thì thấy nếu chọn high-bitrate ở Behappy thì phần tần số từ 10khz trở lên rất yếu trong khi file gốc lại có. Do vậy mình khuyên: đừng chọn high bit-rate
Mấy cái AVIcodec đều 0 thể cho biết chính xác thông tin về AAC. Mấy bạn hãy xài foobar . Nếu nghe nhạc thì cái này nhẹ nhất, hơn cả Winamp. Winamp hỗ trợ nhiều file hơn.
Muốn dịch quá trời nhưng 0 có thời gian. Mấy bạn cứ vô http://forum.doom.org coi đi. Nếu được bạn hãy tổng hợp và dịch ,rồi gởi vô thread này luôn!

update :
* Behappy phiên bản mới xài .NET 2.0 rồi!
* Một số file không thể convert nếu xài Belight. Lý do là các file này xài IDtags2. Mở file đó bằng Winamp, xem properties, bỏ IDtags2 là được
* Về chất lượng của các codec AAC . Như hankuk đã nói AAC ban đầu là 1 thuật giải. Thuật giải là 1 thuật ngữ tin học, ý chỉ các phương pháp, các bước để giải quyết 1 bài toán. Ví dụ: giải phương trình bậc 2
-- nhập giá trị a, b, c từ bàn phím ( nói chung là phải có giá trị của a, b, c thì mới giải được, còn lấy từ đâu thì 0 là vấn đề )
-- kiểm tra a có khác 0 hay không? nếu có thì tính delta và suy ra nghiệm, còn không thì không giải

Rõ ràng, thuật toán chỉ là "trên giấy tờ". Từ thuật toán, người ta mới viết thành các chương trình để thực hiện công việc trên. Các chương trình đó có thể là .exe hoặc là .dll. Do cách lập trình mà các codec sẽ có tốc độ làm việc khác nhau.
Gần đây, xem thảo luận kỹ hơn trên các diễn đàn nước ngoài thì mới biết thêm vài điều. Âm thanh được tạo bởi các codec cùng họ vẫn khác nhau. Cái giống nhau ở đây chính là decompressor sẽ không phân biệt compressor nào đã tạo ra. Tức là decompressor không biết file AAC này do Nero hay CT hay FAAD tạo ra. Hiện nay, theo mình biết thì codec Helix tạo ra file AAC ngon nhất ( do các thành viên trên hydrogenAudio nghe thử và bình chọn. )
Chuyện cũng tương tự cho các codec khác như AVC/H264 là x264, neroAVC,....

He-AAC là LC-AAC nhưng người ta thêm 1 phần thông tin nữa là SBR. Phần mềm nghe nhạc 0 biết HE-AAC vẫn hát được file này tuy nhiên 0 có phần tần số cao. HE-AAC v2 hay AAC plus v2 là He-AAC có thêm PS . Và muốn nghe được với Winamp thì phải vô freecodecs.com down thêm cái plug-in nghe mp4
* Theo 1 số thông tin thì mình nghĩ Megui là ngon nhất. Khi xài Megui, hãy chọn constant quality, còn cái chỗ temporal/ spatial/ auto thì hãy chọn auto.
Khi chọn chế độ constant quality thì tùy theo frame, x264 sẽ nén ít hay nhiều. Temporal thì tốt cho video "real life", theo mình hiểu là những cảnh chậm, êm đềm. Còn spatial thích hợp cho video sinh động như phim hoạt hình. Có 1 số video có lúc thì temporal, có lúc thì spatial. Bởi vậy chọn chế độ Auto là tốt nhất. x264 sẽ quyết định cái gì thích hợp nhất.
Khi chọn chế độ này thì các bạn cũng chọn mấy cái 4x4, 8x8n nhe! chọn byramid, trellis, .... chọn high profiles luôn!

* file AVI nhưng codec video là AVC. Nếu mình chuyển dạng xài Virtualdub và chọn x264 thì file tạo ra là AVI. Nếu coi file này bằng JetAudio, Window Media Player (WMP) thì hình ảnh bị lật ngược. Lý do là 2 ông này sẽ giải nén theo kiểu MS MPEG-4. Nói chung, AVI được tạo ra 0 phải để hỗ trợ AVC/H264 nhưng có thể chứa được. Tuy nhiên khi đó sẽ gặp 1 số vấn đề như tui vừa nói trên. Nhiều khi âm thanh và hình ảnh 0 khớp nhau nữa! khi đó cứ extract , rồi merge qua mp4 hoặc mkv
Muốn hết thì coi bằng Window Media Classic ( có trong bộ K-lite codec pack) hoặc là demux file AVI đó, sau đó mux thành mp4 hoặc mkv .
hãy dùng YAMb để tạo mp4, MKVmergegui để tạo mkv. Cái này vô
http://www.bunkus.org/videotools/mkvtoolnix/
http://corecodec.org/projects/mkvextractgui/
extract rồi sau đó merge (mux) thì phải chọn lại frameRate nhe!

mp4 và mkv đều có thể coi bằng Window Media Player . File/ open/, file type chọn all files, nó hỏi có cố coi file này hôn ? thì trả lời yes, đánh dấu chọn ô nhỏ để sau này không hỏi nữa khi gặp file này


* viết thêm về mp4.
mp4 là 1 dự án thiết lập các chuẩn video, audio cho thế hệ DVD tiếp theo. mp4 cũng là 1 container. Thật sự thì mpeg, dat, wmv cũng là container nhưng
-mpeg chỉ có thể chứa video mpeg, audio mpeg (mpeg1, mpeg2, mp3)
-wmv thật sự là tên khác của asf, ( đặt tên là window music video thì thân thuộc hơn 1 chút ) chỉ có thể chứa video wmv ( wmv7, wmv8, wmv9) và âm thanh wma ( 7, 8, 9 , hình như hiện nay đã có 10)

còn mp4 thì khác : có thể chứa video ASP và AVC
âm thanh thì rất nhiều loại :AAC, mp3,...

AVI cũng là container : wmv, divx, ...... do Mircosoft tạo ra
MKV cũng vậy nhưng free. MKV có thể chứa âm thanh AC3,... nhưng mp4 thì 0 thể

Ở vn mình thì như vầy! mp3 là file nén nhỏ hơn 10 lần nên đĩa Audio CD có 10 bài thì đĩa CD Mp3 có thể chứa 100 bài mà chất lượng vẫn tuyệt vời. Tuy nhiên mp3 thì có âm thanh, 0 có hình còn mp4 thì có cả hai. Mọi người cứ xem cái nào mà kích thước nhỏ mà vẫn có hình, có tiếng là mp4. Ví dụ nếu bạn vô tiệm đĩa phần mềm mua đĩa phim mp4 về coi thì dạng file có thể là wmv, avi, mp4,......
Rõ ràng mp4 chưa là gì cả! Nó chỉ là thùng-chứa để chứa hình ảnh và âm thanh. Quan trọng là hình ảnh thuộc codec nào và âm thanh thuộc codec nào. Nhiều phần mềm chuyển nhạc hay giới thiệu là tạo file mp4 nhưng thật ra là tạo file AVI. Nếu bạn chọn 1 codec 0 tốt thì tui chắc cú file tạo ra lớn hơn file gấp nhiều lần. Cái này hankuk bị rồi! file gốc chỉ có vài chục MB nhưng file gốc tạo ra có thể lên cả GB. hankuk chả hiểu vì sao đĩa còn dư mấy GB mà Window cứ thông báo là hết đĩa
Các bạn chú ý MS MPEG-4 nhe! Cái này theo hankuk là rất dở. Cái này khác với mpeg-4 của nhóm phát triển chuẩn DVD . Hankuk có 1 file 147 MB, đem chuyển qua H264 bằng x264 thì kích thước xuống 10 lần.
Nói nhiều như vậy thì có thể nhiều bạn 0 tin hankuk. Sao ngon vậy mà đĩa DVD không theo chuẩn này đi? thật sự thì cái gì cũng có giá của nó. Nén tốt thì nén/ giải nén đòi hỏi con vi xử lý phải mạnh. Nếu giá thành của các thiết bị âm thanh gia đình quá mắc thì 0 được. Như vậy thì mua máy vi tính về karaoke sao ?
Lúc trước thì mình cũng chưa rành về codec như hiện nay . Một lần khi đĩa mình sắp hết, mình thấy Hero có cái phần mềm chuyển mpeg-4 gì đó, avi gì đó và đã làm thử . Có mục compressor, hiểu chữ này nên hankuk cũng đoán mò là cái này quan trọng. Hankuk đã thử nhiều codec thì lúc đó thấy DivX 5.0 là ngon nhất! Đó cũng xưa rồi! Hiện nay phải là x264 . Sau này, hankuk vô updatedsofts coi bài của anh denise và biết H264/AVC . Anh chỉ nói nó hiệu quả thôi! nhưng kinh nghiệm của hankuk mách bảo là "món ngon đây mà". Hankuk ngày đêm down phần mềm VD về xài thử và thấy kết quả rất khả quan. Phải nói là "đáng đồng tiền bát gạo". File .DAT giảm 1.5-2 lần mà chất lượng, kích thước vẫn y nguyên. Hankuk 0 thích giảm kích thước vì down 1 file chất lượng cao rất mệt mà bây giờ phải giảm kích thước thì thiệt là uổng.
Các phần mềm mà hankuk giới thiệu rất dễ xài. Mình nghĩ khó xài thì vì 0 biết tiếng Anh thôi! tự nhiên nó hiện 1 đống chữ tiếng Anh chả biết mô tê gì nên thôi, không làm nữa! Nếu bạn 0 biết thì cứ tra từ điển. Xài lacviet hay vidict.com thì quá dễ! Tra rồi thì nó "chân phương" luôn á! mấy bạn cứ tra thử thì biết. Rất dễ!
Có thể nói Anh văn dùng để đọc thì 0 cần học nhiều ! Hankuk có bao giờ học stream line hay headway nhưng vẫn làm tốt đó thôi! Mà thiệt! nếu làm việc trên máy vi tính thì chỉ cần đọc chứ có cần nói như gió, viết như cháo làm gì ?
Một sối phần mềm convert nhạc rất đơn giản và 0 chọn gì nhiều là vì nó 0 cho điều chỉnh thông số, áp đặt thông số cho mình. Đảm bảo đơn giản kiểu đó không bao giờ có hiệu quả cao. Mấy bạn xài Megui,... cũng có phần profiles. Nếu chọn profiles thì click 1 cái là xong, 0 phải gõ để nhâp thông số hay phải chọn này nọ nhiều! Mà thật sự ngay khi 0 chọn profiles như hankuk thì mỗi lần làm cũng chả khác gì nhiều. Hankuk luôn chọn cấu hình tối đa.

x264 luôn được cập nhật liên tục. Tui thì thường hay xài bản do SharkTooth dịch. Ông này lấy bản của videolan về rồi sửa tới sửa tui cho tốt hơn.
http://forum.doom9.org/showthread.php?t=89979

Megui cũng ở x264.nl luôn ! http://x264.nl/

Do Megui xài AviSynth nên mình xin giới thiệu sơ sơ về nó. Các bạn có thể đọc tiếng Anh ở đây ! http://www.avisynth.org/mediawiki/wiki/Main_Page

AviSynth là chương trình dựa trên DirectShow của Microsoft. Nôm na Avisynth đọc file cần chuyển rồi cung cấp trực tiếp cho chương trình chuyển dạng.
Ví dụ : bạn muốn chuyển MPEG sang MP4 nhưng chương trình A nào đó của bạn 0 đọc được file MPEG mà chỉ đọc được AVI. Khi đó bạn phải dùng 1 chương trình khác chuyển MPEG sang AVI. Sau đó mới chuyển AVI sang MP4 . Chuyện coi có vẻ cũng đơn giản nhưng giả sử file AVI quá lớn, hơn 4GB thì sao ? khi đó Window 0 quản lý nổi, hoặc lớn hơn đĩa cứng thì sao ? AviSynth sẽ 0 làm như vậy mà nó cung cấp trực tiếp cho MEgui. Tức đầu ra của Avisynth được đưa thẳng tới đầu vào của Megui, 0 cần lưu xuống đĩa. Chức năng như vậy người ta gọi là Frameserver .
Avisynth dựa vào Directshow để đọc file nên tất cả những file hát được trên máy bạn thì nó đều đọc được. Điều đó có nghĩa là MEgui có thể chuyển dạng tất cả dạng file. Muốn máy hình hát đủ loại file thì cần cài Filter cho từng loại file. Mấy cái này có trong K-lite codec pack ! K-lite bao gồm rất nhiều món : codec , directshowfilter , ACM (adio compressor machine) .....

Avisynth bao hàm rất nhiều hàm bao gồm bộ lọc nội bộ (internal filter) và bộ lọc ngoại (external filter) .
Bộ lọc internal được tích hợp sẵn nên khi cài Avisynth thì xài được ngay. Còn các bộ lọc external thì phải chép thêm. Các bạn down file của filter đó rồi extract file .dll vô thư mục plugin (thư mục con của thư mục avisynth)
Bộ lọc internal http://www.avisynth.org/mediawiki/wiki/Internal_filters
Bộ lọc external http://www.avisynth.org/warpenterprises/

Nói chung, cứ đi lòng vòng trên trang wiki là có hết hà ! Muốn cập nhật tin tức thì vô forum.doom9.org vì chỗ này là chỗ hỗ trợ việc phát triển Avisynth, tức là "bảo kê" á !

Coi hình bị hột : hankuk có 1 file AVI, codec hình là DivX. Lúc trước, coi rất mịn. Tự nhiên bữa nay có hột quá trời. Hankuk mở DivX Decoder. Ở thẻ Play back, hankuk bỏ chọn "Film effect" thì hết liền

Khi biên tập video thì ta thấy các thuật ngữ như interlaced, deinterlaced, telecine, inverse telecine, TIVTC,... Hôm nay, hankuk có bài viết về các thuật ngữ này.


Kỹ thuật interlace
1 khung hình interlaced(xoắn) bao gồm 2 vùng hình (field). Mỗi vùng hình được ghi hình tại những thời điểm khác nhau. Khi hiển thị, vùng lẻ được hiển thị trước sau đó tới vùng chẵn . Vùng lẻ bao gồm các dòng quét lẻ(1, 3, 5,...) và vùng chẵn bao gồm các dòng quét chẵn (2, 4, 6....)

Màn hình camera được chia thành những ô nhỏ. Mỗi ô nhỏ là 1 cảm biến. Mỗi 1 cảm biến sẽ ghi nhận lại màu sắc tại 1 điểm của 1 khung hình. Cấu trúc camera kỹ thuật số giống y chang cấu trúc mắt người vậy thôi !
Quá trình làm việc của camera kỹ thuật số :
- ghi hình vùng 1 (dòng quét lẻ )
- ghi hình vùng 2 ( dòng quét chẵn )
- trộn 2 vùng và lưu thành khung hình 1
"hình 1"
Rõ ràng, khung hình mà camera kỹ thuật số tạo ra bao gồm 2 phần nhưng được ghi hình tại 2 thời điểm khác nhau .
Xem lại quá trình hoạt động của camera kỹ thuật số
- ghi hình vùng 1 ( dòng quét lẻ )
- ghi hình vùng 2 ( dòng quét chẵn )
- kết hợp vùng 1 và vùng 2 lại với nhau và lưu thành khung hình 1
- lặp lại quá trình trên

Dưới đây là ví dụ :
hình 2
hình 3
2 vùng tuyệt đẹp !
Kết hợp 2 vùng lại
hình 4
Bình luận: răng cưa , răng chuột !
Thoạt nhìn cứ tưởng đây là 2 tấm giống nhau. Bởi vậy không hiểu sao khi kết hợp với nhau thì lại 0 mịn mà lại bị răng cưa. Bạn để ý vị trí ngón tay cái thì thấy đây là 2 tấm khác nhau
Dưới đây là tấm hình được phóng to từ tấm hình trên !
hình 5

Bạn thấy rõ ràng, khung hình này bao gồm vùng 1 và vùng 2


TV hoạt động cũng tương tự như camera kỹ thuật số ! Có điều TV hiển thị hình ảnh thay vì ghi hình ảnh
hình 6
Tia electron sẽ quét các dòng lẻ rồi tới dòng chẵn


Tại sao mỗi lần ghi hình thì chỉ ghi 1 nửa màn hình ? chỉ ghi các dòng lẻ hoặc các dòng chẵn ? vì TV, camera có tốc độ rất chậm ! Thời mới xuất hiện nếu làm vậy thì các thiết bị sẽ rất mắc, 0 thể mua nổi. TV như vậy gọi là TV interlaced. Hiện nay, đã có thế hệ TV mà có thể vẽ nguyên khung hình trong 1 lần quét, gọi là TV progessvie(liên tục). Đó là TV LCD, TV Plasma. Chắc mọi người cũng biết hiện nay loại này giá cả ra sao.

Hiện nay, tất cả màn hình máy vi tính đều là loại progressive: CRT, LCD, Plasma. Màn hình máy vi tính kiểu CRT là kiểu mà thường thấy.

Nhược điểm của interlaced :
các bạn dòm tấm hình bàn phím ở trên thì thấy là :từng vùng hình thì 0 sao nhưng kết hợp 2 vùng hình thì bị răng cưa. Đó là trong trường hợp 2 vùng hình đều cùng 1 cảnh (scene). Nếu lúc đó có chuyển cảnh và 2 vùng hình rất khác nhau thì hiệu ứng còn ghê hơn nữa! Ta hãy xem nếu kết hợp 2 vùng hình thuộc 2 cảnh khác nhau
hình 7
hình 8
cả 2 vùng hình đều rất tuyệt đẹp !
hình 9
Y như bóng ma vậy !

Hình ảnh interlace thường có nhiều đường răng cưa. Điều đó làm cho hiệu suất nén 0 cao. Và vì nhiều lý do nữa nên khi convert hình ảnh để lưu trữ trên máy vi tính thì mình thường phải DeInterlaced : là quá trình loại bỏ những hiệu ứng do quá trình interlaced gây ra

Ở VN mình, phim là từ có 2 nghĩa :
- vật liệu bằng nhựa, có tráng bạc để lưu ảnh. Cái này là cái ta có được sau khi ta chụp hình xong! Cái này còn gọi là phim nhựa. Đây là nghĩa về hình thức, chất liệu, vật lý..
- điện ảnh ( hình ảnh được chiếu bằng điện), như phim truyền hình, phim hồng kông, phim "ngôi sao hiểu lòng tui", v..v. Tức đây là nghĩa về nội dung
Ở nước ngoài ,
--movie là từ chỉ điện ảnh,
--film là movie ở dạng phim nhựa 24 hình/ giây,
--còn video là movie 30 hình/ giây.

Bây giờ, mình xin nói về máy quay phim nhựa. Cái máy này khác với camera kỹ thuật số(máy quay phim kỹ thuật số).
Cái máy quay phim nhựa có thể xem như là cái máy chụp hình. Tuy nhiên, mỗi lần bấm nút thì nó sẽ chụp 24 pô/giây so với máy chụp hình là 1 pô/giây ( "pô" hay "bôi" hay "tấm" gì cũng vậy ! )
Thật sự thì hankuk chưa vô rạp coi phim lần nào cả! Hankuk chỉ xem truyền hình thôi ! Hankuk thấy người ta có nói tới từ "phim nhựa 35mm". Dĩ nhiên, hankuk có lần đi chụp hình rồi ! take photograph . Hankuk dĩ nhiên cũng biết tấm phim mà ông thợ chụp hình đưa cho hankuk ra sao. Rất nhiều lần hankuk xem truyền hình mà nội dung liên quan tới rạp chiếu phim thì thấy người ta có 1 cuộn phim nhựa to đùng ! Người ta có 1 máy quay để kéo nguyên cuộn phim luôn á ! Người ta có 1 đèn chiếu cực mạnh, vùng sáng vừa đủ chiếu vào 1 tấm phim. Có 1 màn ảnh hứng lấy ánh sáng này ! Nội dung sẽ được hiển thị trên màn ảnh này! Hankuk coi chương trình động vật cũng vậy! Sau khi quay xong, người ta biên soạn lại, khi đó hay thấy người ta lấy từng đoạn lên coi coi . Hankuk thấy rõ ràng đó là tấm phim mà ông thợ chụp hình đưa cho mình. Và từ đoạn văn này nữa :
Most movies destined for a movie theater audience are shot on a material similar to what we use for traditional photography. In a second 24 pictures are made from a scene. So, theoretically you can shoot a movie with your photo camera, except that you have to switch films every 1 or 1.5 seconds (and photo cameras usually don't support making 24 photos per second. When we watch these movies in the movie theater we get to see 24 pictures (also known as frames) per second. (doom9.org, video basic )

FILM is photographic material produced for the cinema. It originated at 24 frames/second and has been converted to video, or Telecined, for showing on NTSC TV's. ( doom9.org, Force Film, IVTC, and Deinterlacing - what is DVD2AVI trying to tell you and what can you do about it.)

PAL : chuẩn TV ở châu Âu, sử dụng 50 bán hình/giây hay 50 vùng hình/giây ( 50 half-frames, or fields per second)
Do vậy để hiển thị FILM trên TV PAL, người ta tăng tốc lên 25 hình/giây. Do vậy FILM ngắn đi 1 chút nhưng ít ai để ý . Cách thứ 2 là chia từng tấm FILM thành 2 vùng, sau đó cho hiện thị lại 1 số vùng để tăng tốc. Quá trình này gọi là 2:2 pull down

NTSC : chuẩn TV ở Bắc Mỹ và Nhật Bản, sử dụng 60 vùng hình/giây, hay 60 field/giây . Tức là tốc độ hình là 30 khung hình/giây. Để hiện thị FILM trên TV NTSC thì 0 thể áp dụng cách tăng tốc. Do khoảng cách là quá nhiều ! Giải pháp là người ta cho hiển thị 1 số vùng(field) 2 lần để đạt được tốc độ hình là 30 hình/giây. Quá trình như vậy gọi là Telecine 3:2 pulldown. Quá trình ngược lại tức là quá trình loại bỏ những khung hình thừa gọi là Inverse Telecine ( IVTC ).


Các DVD ở thị trường có loại: một số ở dạng interlaced và một số được chuyển trực tiếp từ FILM sang DVD, tức loại này có 25 khung hình progressive. Bởi vì TV PAL cần 50 vùng hình mỗi giây. Do đó, người ta sẽ chuyển 25 hình thành 50 vùng hình để cung cấp cho TV. Quá trình này là quá trình interlaced nhân tạo ( 0 đúng nghĩa gốc của interlaced nhưng ta cũng tạo 50 vùng hình từ 25 khung hình). Bạn nhớ lại 1 khung hình interlaced gồm 2 vùng hình được ghi ở thời điểm khác nhau. Còn ở đây, ta lấy 1 tấm hình rồi cắt ra thành 2 vùng hình. Bởi vậy, mới nói là interlaced nhân tạo

Deinterlace: là quá trình làm giảm các hiệu ứng do quá trình interlaced gây nên. Hankuk 0 nói về các phương pháp deinterlace. Có nhiều phương pháp để Deinterlace nhưng hankuk chưa hiểu hết hơn nữa nếu dùng Megui thì nó sẽ khuyên ta nên làm gì

Bài viết trên là mình đã tham khảo từ :
- doom9.org : video basics, Force Film, IVTC, and Deinterlacing - what is DVD2AVI trying to tell you and what can you do about it. Cái site này rất khùng ! các bạn vào www.doom9.org , mấy cái link bên trái 0 ăn thua đâu ! click phải chuột, copy shortcut, past vô thanh Address
- 100fps.com , rất hay, giải thích tất tần tật về interlace
- nicky guide http://nickyguides.digital-digest.com/ , rất hay
- What is Progressive scan 3-2 pulldown explained scanning help.htm





Màn hình CRT : TV, màn hình máy vi tính. Đây là loại mà ta thường thấy. CRT là viết tắt của chữ Cathode Ray Tube nghĩa là ống thủy tinh tia ca-tốt.
Màn hình LCD, Plasma cũng là loại progressive nhưng nó mắc hơn rất nhiều màn hình máy vi tính CRT vì đơn giản có thể nói là "vì đó là kỹ thuật mới thuật mới "


* Hướng dẫn sử dụng Megui ( kỹ hơn)

Lấy Megui ở http://x264.nl
Megui chỉ là 1 GUI (graphic user interface, giao tiếp đồ họa) . Thực sự việc chuyển dạng video/audio được thực hiện bởi các codec.
- xài AVC/H264 thì cần có x264.exe . Đây là 1 compressor.
- Avisynth ,
- Directshow, cài K-lite codec pack, khi cài nhớ tới phần directshow thì chọn nhiều món vô, cài thêm Real Alternative là đủ bộ
- các plug-in cần thiết cho Avisynth ]
Mấy món này nổi tiếng lắm ! Khi làm việc mà thiếu cái gì thì cứ vô google.com rồii gõ vô, hankuk dám chắc thế nào cũng tới doom9.org
....
Đầu tiên, ta phải thiết đặt đường dẫn để MEgui biết vị trí của các encoder. Menu Tools/ Settings , thẻ "Program paths" , 0 cần phải chọn tất cả. Hankuk sử dụng Megui để convert sang x264 nên chỉ cần chọn đường dẫn cho x264.exe. Còn việc convert âm thanh, hankuk xài BeLight và Behappy và mux/demux thì xài YAMB và MKVtoolnix . Ở mục "avisynth plug in", các bạn nhớ chỉ tới thư mục plugin của AviSynth . Chọn xong thì nhấn nút Save

Bây giờ, ta chọn Tools/ AviSynth Script Creator để tạo file AVS. Chọn file cần chuyển dạng.

  1. * File mpeg, mpg
chọn file này thì cửa sổ "DGIndex..." sẽ xuất hiện. Các mục trên cửa sổ này 0 có gì là khó hiểu ! Nhấn enqueu để đóng cửa sổ DGIdex . Đợi 1 lát (tùy máy) thì cửa sổ "Current position xuất hiện", cửa sổ này cho mình xem trước file. Khi đó, cửa sổ "Megui Avisynth..." sẽ được điền các thông số. (Nếu các bạn 0 thấy cửa sổ này thì hãy ra màn hình desktop, nhấn lên biểu tượng Megui ở taskbar)
Ta thấy có mục "crop ". Mục này cho phép mình cắt xén kích thước của video. Các bạn hãy xén cùng đen đi. Nhiều video mà phần có hình ảnh thật sự chả bao nhiêu, đa số mà vùng màu đen. Theo hankuk đọc được trên trang menc-feat-dvd-mpeg4-constraints thì MPEG là thuật giải rất dở nếu gặp hình ảnh có kiểu này. Nếu vùng rìa của khung hình có đường màu đen thì thuật giải MPEG sẽ có tỉ lệ nén rất thấp. Các video có vùng đen gấp đôi vùng có hình ảnh là thường thấy ! Hankuk crop xong, kích thước file thu được nhỏ hơn 30-40%, gần 1 nửa lận đó. Các bạn hãy đánh dấu chọn nút "Crop". Khi mình tăng giảm giá trị cho các vùng thì dòm sang cửa sổ "Current Position" thì sẽ thấy khung hình bị xén đi hay thêm vào.
Đó là ở thẻ "Options", hãy chuyển qua thẻ "Filters". Nếu là file MPEG thì hãy analyse. Sau bước này, Megui sẽ thông báo video của mình có Interlaced hay không ? sau đó nó đưa là lời khuyên có nên DeIntelaced hay không, cũng như có Inverse Telecine hay không. Sướng chưa ?
(Bạn dòm sang thẻ "Edit" thì thấy đoạn kịch bản Avisynth mà Megui dự định sẽ xài. Mỗi khi mình thay đổi giá trị crop, chọn/bỏ tùy chọn thì cửa sổ này cũng được thay đổi. )
Hankuk cũng thường chọn các tùy-chọn dành cho MPEG...
Xong ! Nhấn "Save" để lưu file AVS. Khi nhấn xong thì cửa sổ "Curret Position" được đóng và được mở lại. Bây giờ, các bạn hãy nhấn nút "Play" để xem thử. Các bạn xem thử có vấn đề gì hay không. Vì nhiều khi Megui phân tích 0 đúng. Lời khuyên Deinterlace hay inverse telecine không đúng. Nói chung, rất ít nhưng trên diễn đàn doom9.org đã có 1 trường hợp như vậy !

Trường hợp file .vob , hankuk mở file này ở Megui thì gặp vấn đề nhưng chạy chương trình DGIndex thì vẫn vô tư, vẫn tạo được file d2v

  1. * File WMV và các file khác

các bạn cứ làm như trên nhưng theo hankuk thì file wmv, avi khi analyse thì luôn là loại progressvie . Các bạn qua thẻ "Edit", thêm vào dòng đầu, khi đó có dạng như sau
DirectShowSource( "c:\video.wmv", fps= 30, audio = false , convertfps=true )
có cờ convertfps= true thì âm thanh và hình ảnh sẽ khớp với nhau, 0 bị lệch

Một số file WMV khi mở thì Megui nói là
" AviSynth script error :
DirectShowSource: I can't determine the frame rate of the video, you must use the "fps" parameter" .
Khi đó, các bạn cứ lưu file AVS. Sau đó, mở file WMV bằng WMP, menu view/ Statitics/ Advanced, thì biết được frame rate. Xong rồi thì dùng NotePad mở file AVS vừa lưu ở trên và thêm vào fps= x , x là giá trị vừa mới biết. Sau đó, ở thẻ Input của Megui, mở file AVS này là được
Cách thứ 2 : là xài AsfTool 3.1 để sửa file này


File AVS là file chứa những lệnh, những filter mà AviSynth sẽ thực hiện. Nó là file text thôi nhưng đuôi là AVS. Các bạn nên nhớ tên file và đuôi file 0 quyết định được bản chất dữ liệu bên trong file. Đó đơn giản chỉ là cái tên thôi. ! Nói tới đây, dĩ nhiên ta có thể dùng Notepad mà soạn rồi khi lưu, ta gõ tên và đuôi là AVS, Save As Type thì chọn là All file thì mĩnh cũng có file AVS. Nhưng rõ ràng Megui có các công trụ hỗ trợ trực quan nên công việc sẽ dễ dàng hơn so với viết bằng tay

Bây giờ nhấn nút "Config" để cấu hình cho x264.
  1. * thẻ Main:
- Ở AVC profiles, chọn high profile
- Đánh dấu mục PSNR để biết PSNR là bao nhiêu. Cái này nghĩa là tỷ số tín hiệu/nhiễu. Tỷ lệ này nói lên sự khác biệt giữa video thu được với video gốc. Cái này tùy thôi!. Nếu chọn thì tốc độ transcode sẽ chậm hơn 1 chút. Hankuk chưa đo là bao nhiêu
- Mode , chọn Constant quality , giá trị là 26. Giá trị này càng cao thì video thu được sẽ càng ít giống với video gốc.
Càng cao thì càng ít chi tiết hơn. Kinh nghiệm hankuk là khi đó màu da sẽ tối hơn, da mặt sẽ mờ mờ. Nếu video gốc có nhiều ô vuông thì ta chọn 30 luôn ! Khi đó, gương mặt sẽ phẳng hơn, ít ô vuông hơn, tức là đối với con người thì đẹp hơn. PSNR của video thu được là cao => video thành phẩm giống với video gốc, mà video gốc là xấu => như vậy tức là ô vuông. Thú vị là vậy ! Như hankuk nói ở các bài trước. Nếu cho mục đích lưu trữ thì chọn chế độ "constant quality" là tốt nhất. Chỉ chọn chế độ npass khi muốn biết chính xác kích thước video thành phẩm. Chẳng hạn, bạn có 1 DVD và cần chuyển sang 1 VCD, thì ta lấy kích thước của VCD là 700MB chia cho thời gian thì ra 1 giá trị nào đó. Bit rate nghĩa là tốc độ bit. Lấy tốc độ bít nhân với thời gian video thì biết được kích thước file

  1. * RC and ME

- M.E algorithm, chọn Multi hex
- Sub pixel Refinement, chọn mức 7
- Min GOP size, đưa vào framerate của video. Dùng Avicodec, Gspot, MediaInfo để biết framerate của video
- Keyframe Interval thì chọn giá trị gấp 10 lần framerate. Đây là hướng dẫn của DeathTheSheep. Hankuk thấy là chọn giá trị nhỏ thì PSNR cao hơn còn về thời gian transcode lâu hơn hay không thì chưa coi.

  1. * Advanced
- Minimum quantizer, nếu video mình có bitrate cao nhưng độ phân giải thấp thì chọn giá trị thấp thì video thu được sẽ đẹp hơn. Ví dụ như file mpeg 320x240 thì bitrate video cỡ 1440kb/s, nhưng có 1 số video lên tới 2500kb/s .
- Trellis, chọn mức 2 Always , hankuk thấy chọn cái này tốc độ 0 giảm bao nhiêu nhưng PSNR lại tăng thêm 1 chút
- Number of reference frame , chọn 5 cho video thế giới thực và 16 cho video hoạt hình. hankuk thấy nếu chọn 16 thì tốc độ transcode rất chậm mà PSNR chả tăng bao nhiêu . Theo lời foxyshadis trên doom9.org thì nếu mình thấy video có nhiều frame lặp lại thì chọn cái này cho nhiều vô
- Đánh dấu chọn Mixed , CABAC , No Fast P-skip, No DCT- Decimation ( 0 chắc, các bạn thử lại )
- Macroblock options, chọn all ,
- B-frame , chọn 5 là vừa , khi chọn xong, click chuột vô ô khác trên cửa sổ thì các chỗ mờ mờ sẽ hiện lên
- Đánh dấu chọn tất cả các ô trong khu vực B-Frame
- B-frame mode , chọn Auto
- B-bias frame , chọn 2 là được

Xong ! nhấn nút ok !

Nhấn nút enqueue để thêm job vào hàng đợi, click qua thẻ "Queue", click start để bắt đầu encode . Các bạn có thể double click vào các job để thay đổi trạng thái các jobs
Sau khi encode xong, click vô thẻ "Log" để xem PSNR là bao nhiêu .



* Hướng dẫn convert video VFR :
Video VFR là video có nhiều tốc độ framerate khác nhau. Ví dụ : cấu trúc của 1 file mp4
type stts
version = 0 (0x00)
flags = 0 (0x000000)
entryCount = 41 (0x00000029)
sampleCount = 3 (0x00000003)
sampleDelta = 1000 (0x000003e8)

sampleCount[1] = 1 (0x00000001)
sampleDelta[1] = 2000 (0x000007d0)

sampleCount[2] = 3 (0x00000003)
sampleDelta[2] = 1000 (0x000003e8)

sampleCount[3] = 1 (0x00000001)
sampleDelta[3] = 2000 (0x000007d0)
etc ...
3 frame được hiển thị với độ dài 1000
1 frame được hiển thị với độ dài 2000
3 frame được hiển thị với độ dài 1000
1 frame được hiển thị với độ dài 2000
.................

Các container hỗ trợ VFR là mkv, mp4, rmvb và wmv/asf .
Khi mở video bằng AviSynth, nó sẽ chuyển tất cả thành dạng CFR tức là constant frame rate. Nếu video có nhiều đoạn được telecine thì hơi lãng phí. Vì như trên hankuk đã nói, telecine sẽ làm cho các vùng ảnh hiện thị nhiều lần lên. Điều này có lợi khi coi phim trên TV hệ NTSC nhưng ta coi TV PAL mà ! Hơn nữa, trên máy vi tính thì 0 cần interlaced, 0 cần 30 fps, bao nhiêu cũng xài tuốt !
Bài viết này hankuk chỉ cách convert file VFR sang VFR, container là MKV, codec hình ảnh là x264. MP4 vẫn hỗ trợ VFR nhưng theo hankuk biết hiện nay các công cụ free để làm việc này thì 0 có . MKV thực sự là 1 cái thùng mà thôi ! Nếu sau này có công cụ thì ta có thể chuyển sang MP4. Nói thật, hiện nay ai có máy nghe nhạc mp4 có thể xem phim thì MP4 còn có ích, chứ nếu xem và lưu trữ trên máy vi tính thì MKV là số 1. Theo hankuk biết thì số codec mà MKV có thể chứa có thể nói là "tất cả" so với MP4. Nói chung, để lưu trữ thì xài MKV ngon hơn.

Bây giờ, các bạn đang ở giai đoạn tạo file AVS. Các bạn đã crop, deinterlace gì đó.. xong hết. Bây giờ, hãy thêm vào những dòng sau :

tfm(d2v="c:\oursource.d2v",output="matches.txt")
tdecimate(mode=4,output="metrics.txt")

nếu video 0 phải là mpeg thì bỏ phần d2v đi, tức là :
tfm(output="matches.txt")
tdecimate(mode=4,output="metrics.txt")

Bây giờ, lưu, nhấn nút "Queue analyse pass" ở thẻ "Input" của Megui. Chạy pass này.

Xong ! Ta dùng Notepad mở file AVS hồi nãy, bỏ dòng vừa thêm vào bằng cách xóa hoặc thêm dấu # ở đầu mỗi dòng
#tfm(d2v="c:\oursource.d2v",output="matches.txt")
# tdecimate(mode=4,output="metrics.txt")

rồi thêm vào dòng sau :

(not anime or cartoon):
mpeg2source("c:\oursource.d2v")
tfm(d2v="c:\oursource.d2v",input="matches.txt")
tdecimate(mode=5,hybrid=2,vfrDec=0,input="metrics. txt",tfmIn="matches.txt",mkvOut="mkv-imecodesfile.txt")

(anime or cartoon):
mpeg2source("c:\oursource.d2v")
tfm(d2v="c:\oursource.d2v",input="matches.txt")
tdecimate(mode=5,hybrid=2,vfrDec=1,input="metrics. txt",tfmIn="matches.txt",mkvOut="mkv-timecodesfile.txt")


Bây giờ, chọn container là MP4, nhấn nút "Enqueue" và transcode . Sau khi làm xong, ở thư mục chứa File AVS sẽ có 3 file matche.txt, metrics.txt, mkv-timecodesfile.txt

Bây giờ, ta sẽ mux MP4 qua MKV. Sở dĩ hồi nãy hankuk nói là chọn MP4, vì sẽ 0 bị trùng file.
Mở mkvmerge GUI ra. Click nút Add và chọn file MP4 mới vừa có. Sau đó, ở vùng "Track", click Track AVC của file MP4, khi đó có nhiều chỗ sáng lên. Ở mục timecode, chọn file mkv-imecodesfile.txt. Sau đó, click Add để chọn file âm thanh.... Nếu file âm thanh là AAC Hev2 thì nhớ chọn " AAC is SBR/HE-AAC/AAC+" ...
Click nút "Starting muxing"
Chú ý: khi mux file sang MKV và MP4 thì để ý cái tên file sẽ tạo ra. Nếu trùng nó có thể sẽ add nhiều luồng video và audio vào cùng 1 file. Khi đó, kích thước file rất to nhưng chả hiểu vì sao . Lấy AviCodec hay MediaInfo thì thấy có nhiều stream.

Bài viết này tham khảo :
- VariableFrameRateVideo - Avisynth.htm
- hướng dẫn sử dụng của TIVTC

Hướng dẫn dùng GraphEdit để mux WMV qua MKV

Đây là chương trình có trong bộ K-lite codec pack. Khi cài các bạn nhớ chọn nó là được. Sau khi cài xong thì vô thư mục K-lite mà tìm thì sẽ thấy.

Các bạn download MaTrosKaMuxer . MatroskaMuxer
Đây là 1 thư viện thôi ! Các bạn giải nén vô thư mục windows\system32. Đảm bảo ở thư mục này có file MaTrosKaMuxer.ax nhe !
Menu Start của Win XP -> Run , gõ regsvr32 "c:\windows\system32\MatroskaMuxer.ax" . Lệnh vừa rồi giúp ta đăng ký thư viện MatroskaMuxer vô Registry.

Bây giờ, mở GraphEdit lên ! File/ Render Media file , chọn file wmv mà mình cần mux. Các bạn sẽ thấy sơ đồ các bước thực hiện khi xem file WMV.
Các bạn thấy có :
- decoder cho WMV.
- giải nén xong thì đưa ra màn hình và sound card. Nó là mấy cái Video Render á !
"hình 1 "

Bây giờ, bạn hãy xóa các decoder bằng cách click chuột và nhấn Del. Xóa luôn mấy cái Render !
Menu Graph / Insert Filter , chọn thẻ DirectShow Filter, click dấu cộng để nó xổ danh sách ra nhe !
Chọn "Matroska Muxer", nhấn "Insert Filter"
"hình 2"
Chọn "File Writer" , nhấn "Insert Filter", đặt tên file cần lưu, đặt đuôi là mkv.
"hình 3"
Xong, close cửa sổ chèn Filter. Filter có nghĩa là bộ lọc nhưng mấy cái vừa chèn chả lọc gì đâu ! Đơn giản là nó một khối xử lý thôi ! Có thể nó co , dãn hình ảnh nhưng nó

cũng có thể giải nén/ nén

Bây giờ, các bạn dùng chuột click vào nút "Raw video 1" của hộp file wmv, sau đó kéo chuột vô nút "Track 1" của hộp Matroska Muxer. Cái hộp Maxtroska Muxer tự nhiên

xuất hiện thêm 1 nút nữa! Kéo "Raw audio 0" vô nút "Track 2". Sau đó kéo nút "Output" sang nút "In" của hộp File Writer
"hình 4 "
"hình 5 "
Bây giờ menu Graph /Play. Chờ thấy nút xanh trên toolbar hiện lại là xong. Y như xem nhạc vậy mà !
Mỗi 1 đường thẳng được nối từ hộp này sang hộp khác gọi là liên kết. Muốn xóa thì click vô đường thẳng đó rồi nhấn Del.

Quá trình trên 0 hề làm thay đổi chất lượng file nhạc. Đơn giản nó đóng gói âm thanh và hình ảnh từ file wmv sang mkv.
Hankuk có mux mấy file wmv sang mkv thì tự nhiên dung lượng nhỏ hơn 2-3 lần ! Cái này là do down trên mạng nên bị hư hao gì đó. Khi mux sang mkv thì lỗi được sửa chữa lại. Nói chung, cái này hiếm lắm ! Lợi ích của việc này xin nói sau.

Một chương trình khá hay để sửa wmv , asf là AsfTool 3.1 . Các down về xài thử AsfTool 3.1 . Có 1 số file wmv, asf khi mở bằng Megui thì nó nói là "0 xác định được frame rate"

rồi 0 chịu tạo file avs. Với những file này khi coi bằng WMP, View/ Statitics/ Advanced thì sẽ thấy Frame rate là 0fps nhưng Actual rate lại khác không. Xài AsfTool thì sửa được.

Nếu 0 có Asftool thì ta có thể tự soạn lấy file AVS , fps= x , x là giá trị mà ta vừa biết nhờ WMP

http://www.yeuamnhac.com/music/huong-dan-vai-dieu-ve-multimedia-t325374.html