Mối quan hệ về thời gian giữa các phương tiện truyền thông có thể được hiểu như là việc thâu lại đươc đồng thời âm thanh và video, hoặc có thể được xây dựng rõ ràng như trường hợp của mộ
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
BÀI TẬP LỚN MÔN HỌC
XỬ LÍ DỮ LIỆU ĐA PHƯƠNG TIỆN
ĐỀ TÀI 14:
Kỹ thuật đồng bộ và tích hợp video-audio trong file video
Giáo viên hướng dẫn: PGS.TS Nguyễn Thị Hoàng Lan
Sinh viên thực hiện: Lê Việt Thắng 20102214
Nguyễn Hữu Oanh 20101976 Nguyễn Văn Đông 20101384
Hà Nội, 2014
Trang 2Mục lục
1 TỔNG QUAN VỀ KỸ THUẬT ĐỒNG BỘ TÍCH HỢP VIDEO-AUDIO 3
1.1 Một số vấn đề 3
1.2 Các nguyên tắc đồng bộ dữ liệu đa phương tiện 3
1.3 Các mô hình đồng bộ 4
1.4 Một số phương pháp đồng bộ video-audio 7
1.4.1 Đồng bộ theo dòng audio tại điểm tham chiếu 7
1.4.2 Đồng bộ thích nghi 9
2 ĐỒNG BỘ VÀ TÍCH HỢP VIDEO AUDIO TRONG FILE AVI VÀ MPG10 2.1 Cấu trúc file AVI 10
2.1.1 Giới thiệu 10
2.1.2 Cấu trúc file 10
2.2 Cấu trúc file MPG 13
2.2.1 Giới thiệu 13
2.2.2 Cấu trúc Video header 14
2.2.3 Cấu trúc Audio header 17
2.3 So sánh file AVI và MPG 19
3 TÌM HIỂU CÔNG CỤ 19
3.1 Giới thiệu các tính năng chính và giao diện của chương trình 19
3.2 Thao tác xử lý video trên công cụ Ulead video studio 9 22
4 TÀI LIỆU THAM KHẢO 31
Trang 31 TỔNG QUAN VỀ KỸ THUẬT ĐỒNG BỘ VÀ TÍCH HỢP AUDIO
VIDEO-1.1.Một số vấn đề
Multimedia dùng để chỉ sự tích hợp của văn bản, hình ảnh, âm thanh và video
trong một loạt các môi trường ứng dụng Các dữ liệu này từ nhiều nguồn phươngtiện, khác nhau cả về thời gian và không gian Nên việc xử lý và truyền và khácnhau
Nguồn dòng dữ liệu đa phương tiện gồm 2 loại:
-Nguồn thông tin trực tiếp: các tín hiệu vật lý được thu nhận, số hóa và truyền đingay tới nơi nhận mà không qua lưu trữ trung gian
-Nguồn thông tin được tái tạo hay tổng hợp: Các đối tượng media khác nhau đượctổng hợp vốn được lưu ở các thiết bị lưu trữ Chúng có thể có nguồn gốc tự nhiên
do capture, cũng có thể ở dạng nhân tạo
Mối quan hệ về thời gian giữa các phương tiện truyền thông có thể được hiểu như
là việc thâu lại đươc đồng thời âm thanh và video, hoặc có thể được xây dựng rõ
ràng như trường hợp của một tài liệu đa phương tiện mà có văn bản chú thích bằng
giọng nói Trong tình huống nào, đặc điểm của từng phương tiện và các mối quan
hệ giữa chúng phải được thiết lập để cung cấp sự đồng bộ Xem xét một trình diễn
slide đa phương tiện, một chuỗi các lời chú thích bằng lời nói trùng khớp với một
chuỗi các hình ảnh Sự trình diễn của lời chú thích và slide là liên tục Trọng tâmcủa đồng bộ hóa tương ứng với sự thay đổi của hình ảnh và kết thúc của lời chúthích bằng lời nói, thể hiện sự đồng bộ hóa thô giữa các đối tượng Một hệ thống
đa phương tiện phải giữ được mối quan hệ thời gian giữa các yếu tố của sự thể hiệncác đối tượng tại các điểm cốt yếu bằng quá trình tích hợp thời gian
1.2.Các nguyên tắc đồng bộ dữ liệu đa phương tiện
Trang 4Đồng bộ gồm hai nhiệm vụ chính: xác lập lại các quan hệ thời gian thực của các
dòng dữ liệu nguồn (video và audio) và xác lập lại các quan hệ thời gian thực giữacác dòng dữ liệu đa phương tiện (đồng bộ audio - video)
Về phương diện cảm thụ: đồng bộ đa phương tiện là quá trình làm “trơn” các hiệu
ứng trễ và điều khiển phối hợp thời gian trình diễn đồng thời các dòng dữ liệu đaphương tiện (playout of data) để thỏa mãn độ cảm thụ audio, video
Đồng bộ môi phối hợp lời nói và hình ảnh (lip synchronization) cần xác lập môi
quan hệ thời gian sao cho cảm thụ được độ trung thực khi phối hợp lời nói với hình
ảnh
1.3.Các mô hình đồng bộ
1.3.1 Mô hình dòng thời gian (Timeline)
Các hành động được xác định bởi thời điểm bắt đầu, thực hiện đồng bộ bám
theo thời gian tồn tại của đối tượng
Đặc điểm:
-Sử dụng một dòng thời gian tổng thể
-Đồng bộ bám liên tục theo dòng thời gian, yêu cầu cần phải có đồng hồ
Trang 5-Cho chất lượng cao nhưng yêu cầu chi phí cao Do tại nhịp nào của đồng hồcũng cần đồng bộ.
1.3.2 Mô hình điểm tham chiếu
Các thời điểm tham chiếu hay điểm đồng bộ được xác định bên trong thờigian tồn tại của đối tượng đa phương tiện, tại thời điểm đó thực hiện đồng bộthời gian giữa các dòng dữ liệu đa phương tiện để trình diễn
Điểm tham chiếu: là thời điểm bắt đầu, thời điểm kết thúc của quá trình
trình diễn của dữ liệu hoặc các thời điểm bắt đầu của các đơn vị con của dữ liệuphụ thuộc thời gian Sử dụng nhãn thời gian đánh dấu bên trong các đối tượngtại các thời điểm cần đồng bộ
Điểm đồng bộ là tập các điểm tham chiếu kết nối, xác định đồng bộ giữa các
dòng dữ liệu đa phương tiện để trình diễn
1.3.3 Mô hình phân cấp (Hierarchic)
Trang 6Phân cấp thứ tự các đối tượng đồng bộ theo hình cây Theo đó, các đối tượng sẽ
có thứ tự ưu tiên đồng bộ khác nhau, tùy thuộc vị trí trên cây
1.3.4 Mô hình dựa trên sự kiện (Event based)
Điểm bắt đầu hay kết thúc của một đối tượng được xử lý như sự kiện xảy ra.Các hành động trình diễn điển hình:
o Bắt đầu một trình diễn
o Kết thúc một trình diễn
o Chuẩn bị một trình diễn
Các sự kiện: có thể là bên ngoài hoặc bên trong trình diễn được tạo ra bởi một
đối tượng dữ liệu phụ thuộc thời gian khi tới một LDU(Logical Data Unit) cụ
thể
Ưu điểm:
Dễ tích hợp các đối tượng tương tác
Dễ dàng mở rộng bởi các sự kiện mới
Linh hoạt
Nhược điểm:
Không dễ dàng xử lý
Đặc điểm kỹ thuật phức tạp
Trang 7 Khó duy trì
Tích hợp các dữ liệu phụ thuộc phải sử dụng thêm timers
Khó sử dụng hệ thống phân cấp
1.3.5 Kỹ thuật đồng bộ audio-video thời gian thực tại nơi nhận
Thiết lập lại quan hệ thời gian giữa các gói dữ liệu audio-video để trình diễnliên tục, cảm thụ trung thực tại nơi nhận so với nguồn
1.3.6 Tích hợp audio – video
Sự kết hợp, bổ sung vào hệ thống hiện có các loại dữ liệu, các ứng dụng vàtrình diễn thể hiện đa phương tiện (tích hợp trong định dạng file, vào định dạngweb, tích hợp vào CSDL)
1.4 Một số phương pháp đồng bộ video-audio
Trong kỹ thuật truyền video, âm thanh hình ảnh được truyền theo hai dòng khácnhau Do tốc độ hai dòng dữ liệu có bản chất và yêu cầu hoàn toàn khác nhau Cầnphải xác lập đồng bộ audio-video tại nơi nhận đảm bảo thời gian thực
Hai kỹ thuật đồng bộ audio-video được sử dụng phổ biến:
-Đồng bộ theo dòng audio tại điểm tham chiếu:
-Đồng bộ thích nghi dựa trên khôi phục đồng hồ thời gian tham chiếu thích nghi
1.4.1 Đồng bộ theo dòng audio tại điểm tham chiếu
Giải pháp đồng bộ loại bỏ frame:
• Dòng dữ liệu audio có vai trò là chủ (principle jet), dòng video (slave jet)
được đồng bộ theo dòng audio Nguyên nhân dòng audio được chọn làm dòng
chủ dựa vào nghiên cứu sinh học về đôi tai và mắt của con người Đôi tai của
con người rất nhạy cảm với sự thay đổi nhỏ của âm thanh Trong khi mắt lại
kém nhạy cảm hơn, điển hình là hiện tượng lưu ảnh võng mạc Do vậy, dòng
Trang 8audio được chọn làm dòng chủ mặc dù dòng audio có tốc độ thấp hơn nhiều so
với dòng video
• Tại các điểm đồng bộ: nhãn thời gian của gói tin của dòng video được sosánh với nhãn thời gian của gói tin dòng audio Nếu một frame video bị trễ quágiới hạn sẽ bị loại bỏ Do nhãn thời gian của dòng video và dòng audio nênkhông thể so sánh trực tiếp hai nhãn này với nhau Kĩ thuật đồng bộ thực hiệngiải pháp khôi phục đồng hồ nơi gửi tại nơi nhận dựa trên nhãn thời gian củacác dòng dữ liệu Trên cơ sở nhịp đồng hồ chung nay, thực hiện tính toán thời
điểm tham chiếu
Cảm thụ độ lệch giữa audio và video:
• Vùng đồng bộ (in synchronization): độ lệch cho phép từ -80 ms đến +80 ms
• Vùng mất đồng bộ (out synchronization): độ lệch từ -160 ms đến +160 ms
• Vùng trung gian (transient): độ lệch khoảng +80 đến +160 và -160 đến -80
Nguyên tắc đồng bộ theo dòng audio :
Độ rung trễ ‘jitter’: sự khác nhau tức thời về thời gian giữa các dòng video –
audio
Độ lệch ‘skew’: độ lệch về thời gian giữa hai dòng audio – video
Độ trễ điểm đầu cuối ‘end – to – end delay’
Dòng dữ liệu audio có vai trò làm chủ, theo nghiên cứu về cảm thụ độ lệch giữavideo và audio Có 3 vùng:
Trang 9- Vùng đồng bộ : độ lệch từ -80 ms đến +80ms
- Vùng mất đồng bộ: độ lệch từ -160 ms đến +160 ms
- Vùng trung gian: độ lệch từ -160 ms đến -80 ms và từ 80 ms đến 160 ms
Một số tham số: độ trễ rung ‘jitter’, độ lệch dòng ‘skew’
Nguyên tắc: tại các điểm đồng bộ nếu kết quả tính độ lệch ‘skew’ vượt quá giớihạn thì xử lý loại bỏ một số frame của dòng video
Thuật toán đồng bộ:
1.4.2 Đồng bộ thích nghi
Nguyên tắc: Dùng nhãn thời gian các gói dữ liệu, xác định thời điểm đồng
bộ dựa trên khả năng thích nghi với môi trường mạng
Thuật toán đồng bộ thích nghi:
Sau quá trình khởi động, khi nhận được gói RTCP đầu tiên , đồng hồthời gian là: t0=Ts_NTP
Độ lệch thời gian được tính: ∆tsi=ts_RTPi-Ts_refTRP
Cập nhật đồng hồ thời gian:
ti+1=ti+delta_tsi; với i=1,2, N
Khi nhận được gói tin RTP thứ N, đồng hồ được tính:
Trang 102 ĐỒNG BỘ VÀ TÍCH HỢP VIDEO AUDIO TRONG FILE AVI VÀ MPG
2.1.Cấu trúc file AVI
2.1.1 Giới thiệu
Audio Video Interleave, được biết đến bởi từ viết tắt của nó AVI, là một định dạng
đa phương tiện được Microsoft giới thiệu vào tháng 11 năm 1992 như một chuẩn
Video dành cho Windows Tập tin AVI có thể chứa cả dữ liệu âm thanh và videotrong một file cho phép đồng bộ với phát lại âm thanh-video Cũng giống như các
định dạng video DVD, AVI file hỗ trợ nhiều âm thanh và video, mặc dù các tínhnăng này hiếm khi được sử dụng Hầu hết các tập tin AVI cũng sử dụng các phần
mở rộng tập tin định dạng được phát triển bởi các nhóm Matrox OpenDML vào
tháng Hai năm 1996 Những tập tin này được hỗ trợ bởi Microsoft, và không chính
thức gọi là "AVI 2.0"
2.1.2 Cấu trúc file
Trong file AVI dữ liệu được phân chia thành các block (Chunk/List) Mỗi file AVI
có dạng của một List duy nhất theo định dạng RIFF Sau đó được chia làm 2
“sub-chunk” bắt buộc và một “sub-“sub-chunk” tùy chọn
Sub-chunk đầu tiên, được xác định bởi thẻ "hdrl" Sub-chunk là phần đầu tập tin vàchứa dữ liệu về các video, như chiều rộng, chiều cao của nó và tỷ lệ khung hình.Sub-chunk thứ hai, được xác định bởi thẻ "Movi" Chunk này chứa các âm thanhthực tế / dữ liệu trực quan tạo nên bộ phim AVI Dữ liệu audio/movie chứa trong
“movi” chunk có thể được nén theo các chuẩn khác nhau VD: Full Frame (không
nén), Intel Real Time (Indeo), Cinepak, Motion JPEG, Editable MPEG,
Trang 11RealVideo, MPEG-4 với video Với audio, dữ liệu có thể được nén theo chuẩnMP3, AAC, DTS 5.1 )
Khi các trình media player mở file AVI, nó sẽ đọc thông tin từ header của các
Stream để sử dụng codec phù hợp trong việc giải nén.Sub-chunk thứ ba (tùy chọn)được xác định bởi thẻ "idx1" với chỉ mục các độ lệch các dữ liệu chunk trong tập
tin
MainAVI header
Các thông tin biểu diễn trong Main Header:
+MicroSecPerFrame: thời gian của một khung hình
+MaxBytesPerSec: tốc độ truyền lớn nhất
+PaddingGranularity
+TotalFrame :tổng số khung hình trong file
+SuggestedBufferSize: kích thước Buffer đề nghị
+Width, height : kích thước khung hình theo chiều rộng,cao
Stream Header
Trang 12File AVI được cấu tạo từ các Stream Mỗi Stream đều có header mang thông tincủa mình.
Cấu trúc stream header được định nghĩa như sau:
Trang 13Cấu trúc “chunk” của file AVI
File AVI được cấu tạo từ 2 thành phần cơ bản
Nó được dùng để lưu trữ video và âm thanh trên CD-ROM
Trang 14Vào những năm 1990, MPEG-2 đã ra đời nhằm đáp ứng các tiêu chuẩn nén videocho truyền hình MPEG-2 có khả năng mã hoá tín hiệu truyền hình ở tốc độ 3-15Mbit/s và truyền hình độ nét cao ở tốc độ tới 15-30Mbit/s MPEG-2 cho phép
mã hoá tín hiệu video với nhiều mức độ phân giải khác nhau, chúng có khả năng
đáp ứng cho nhiều ứng dụng khác nhau Nhiều thuật toán tương ứng với nhiều cácứng dụng khác nhau đã phát triển và được tập hợp lại thành một bộ tiêu chuẩn đầy
đủ của MPEG
MPEG-4 trở thành một tiêu chuẩn cho nén ảnh kỹ thuật truyền hình số, các ứngdụng về đồ hoạ và video tương tác hai chiều (games, videoconferencing) và các
ứng dụng multimedia tương tác hai chiều (World Wide Web hoặc các ứng dụng
nhằm phân phát dữ liệu video như truyền hình cáp, Internet video ) vào năm
1999 Ngày nay, MPEG-4 đã trở thành một tiêu chuẩn công nghệ trong quá trìnhsản xuất, phân phối và truy cập vào các hệ thống video Nó đã góp phần giải quyếtvấn đề về dung lượng cho các thiết bị lưu trữ, giải quyết vấn đề về băng thông của
đường truyền tín hiệu video hoặc kết hợp cả hai vấn đề trên
2.2.2 Cấu trúc Video header
Mỗi stream đều bắt đầu với 32 bit start Với octet cuối cùng, các giá trị từ 00 đếnB8 biểu diễn video stream, trong khi các mã từ B9-FF biểu diễn định danh củadòng
Trang 16Cấu trúc Picture header
VBV: Video Bufering Verifier
Nếu frame là P frame hoặc B frame thì 4 bit sẽ được thêm vào phần header:
Nếu frame là B frame thì 4 bit được thêm vào phần header có dạng:
Cấu trúc Sequence header(01B3):
Trang 17Độ dài cố định, mang thông tin về tem thời gian của frame đầu tiên Số lượng
frame trong một GOP
2.2.3 Cấu trúc Audio header
Dữ liệu âm thanh trong file MPG được chia làm các frame Bình thường, các frame
này coi như các thành phần độc lập Mỗi frame đều có header cũng như mang dữ
liệu của nó File MPEG không có header cho file Do vậy, bạn có thể trích bất kìthành phần nào của file mpeg và dùng trình media player để chơi nó hoàn toàn
chính xác
Cấu trúc một Audio Frame header có dạng:
00-MPEG Audio version 2.5
10 - MPEG Version 2 (ISO/IEC13818-3)
11 - MPEG Version
01 - Layer III
Trang 1810 - Layer II
11 - Layer I
0-Sử dụng mã CRC (sẽ có thêm 16bit crc thêm vào sau phần header)1- Không sử dụng mã kiểm soát lỗi
kbps MPEG hỗ trợ VBR (variablebitrate) – tức là bitrate khác nhau trongtừng frame
Từ các thông tin đọc được trong header frame, ta có thể tính được kích thướcframe Dựa vào công thức:
FrameSize = 144 * BitRate / SampleRate + Padding
Ví dụ: BitRate=128000, SampkeRate=441000, Padding=0
Thì kích thước frame sẽ là 417 bytes
Trang 192.3.So sánh file AVI và MPG
Do AVI là một “container” trong khi MPEG là một chuẩn nén âm thanh và hình
ảnh, từ đó dẫn tới những khác nhau cơ bản trong cấu trúc file
-Giống nhau: cấu trúc file đều được chia thành các thành phần nhỏ Với AVI làcác chunk Với MPG là các frame
3.1.Giới thiệu các tính năng chính và giao diện của chương trình
Các tính năng chính của chương trình:
Chia video thành các phần riêng biệt để xử lý
Nối video, cắt video
Đồng bộ file video với file âm thanh
Co giãn độ dài file video ( theo thời gian)
Thay đổi các thông số gốc của video như: số khung hình trên giây
(FPS) ; hệ màu biểu diễn ; độ tương phản; độ sáng ; …
Thêm phụ đề, chèn chữ lên video
Trang 20 Áp các hiệu ứng đăc biệt lên từng phần riêng của file video
Xuất file video sau khi xử lý ra các chuẩn video khác nhau phù hợpnhu cầu sử dụng
Trang 211- Bảng các bước thực hiện (Step panel)
Là một bảng chứa các bước (step) khi thực hiện tạo một video clip:
+ Capture: step này giúp ta bắt hình từ máy quay số, webcam hay từ bất
kỳ thiết bị phần cứng khác
+ Edit: cho phép ta chỉnh sửa, thực hiện các thao tác biên tập
+Effect: step này cho phép ta chèn hiệu ứng chuyển cảnh
+ Overlay: chèn thêm đoạn video clip nhỏ (hình phóng to chẳng hạn) trên
video clip chính
+ Tile: Chèn chữ vào video clip
+ Audio: Chèn file nhạc, âm thanh vào đoạn clip
+ Share: Xuất ra file video (mpeg1, mpeg2, avi, ecard )
2- Thanh Menu: để thiết lập các tùy chọn
3- Bảng lựa chọn (Options panel)
Qua mỗi bước (step), Bảng lựa ch ọn này sẽ thay đổi để ta tùy chọn thờigian hiện clip, các hiệu ứng cho video, image, text hay audio
4- Màn hình xem trước (Preview window)
Giúp ta xem trước được thành quả của mình
5- Bảng điều khiển:
có các nút điều khiển giúp ta xem trước, tua đi, t ua lại, chạy repeat, cắtvideo clip thành đoạn ngắn hơn
6- Bảng liệt kê (Library panel):
Liệt kê tất cả những file mẫu có sẵn để ta áp dụng Ví dụ: video clip mẫu,các kiểu chữ, các file nhạc mẫu, hiệu ứng chuyển cảnh Tất nhiên ta cóthể bổ sung thêm vào Library panel những video clip, file nhạc, ảnh củariêng mình bằng cách chọn nút browse
7- Dòng thời gian (Timeline):