Khi phân tích tín hiệu âm thanh, chúng ta thường áp dụng phương pháp phân tích ngắn hạn, do hầu hết tín hiệu âm thanh ổn định nhiều hoặc ít hơn trong khoảng thời gian ngắn, chẳng hạn 20ms. Khi thực hiện phân khung, có thể sử dụng nhiều khung chồng lấp để nắm bắt sự thay đổi tinh tế của tín hiệu âm thanh. Lưu ý rằng mỗi khung là một đơn vị cơ bản để phân tích tín hiệu. Trong mỗi khung, chúng ta có thể quan sát ba tính năng âm học khác biệt nhất, như:
- Âm lượng (Volume): tính năng này đại diện cho độ lớn (loudness) của tín hiệu âm thanh, tương quan với biên độ của tín hiệu. Thỉnh thoảng, nó cũng được đề cập đến như năng lượng hoặc cường độ của tín hiệu âm thanh.
- Độ cao (Pitch): tính năng này đại diện cho tỷ lệ rung của tín hiệu âm thanh, mà có thể biểu diễn bởi tần số cơ bản hoặc tương đương, nghịch đảo của chu kỳ cơ bản của tín hiệu tiếng nói.
- Âm sắc (Timbre): đặc trưng này đại diện cho nội dung ngữ nghĩa (chẳng hạn một nguyên âm trong tiếng Việt) của tín hiệu âm thanh, mà được đặc trưng bởi dạng sóng trong một chu kỳ cơ bản của tín hiệu tiếng nói.
Lấy tiếng nói người làm ví dụ, ba tính năng trên liên quan đến một vài đặc điểm vật lý:
- Âm lượng: liên quan đến độ nén của phổi. Âm lượng cao của tín hiệu tương ứng với độ nén lớn.
- Cao độ: liên quan đến tần số rung của dây thanh âm. Cao độ càng cao tương ứng với tần số rung lớn.
- Âm sắc: liên quan đến vị trí và hình dạng của môi và lưỡi. Âm sắc khác nhau tương ứng với vị trí và hình dạng khác nhau của môi và lưỡi.
Chúng ta sẽ giải thích các phương pháp để trích các đặc tính âm học này trong một chương khác. Cần lưu ý rằng, các đặc tính này hầu hết phù hợp với sự nhận thức (perception) của người. Do đó không thể biểu diễn chính xác bởi các công thức hoặc đại lượng toán học. Tuy nhiên, chúng ta sẽ cố gắng “lượng hóa” (quantitify) những đặc tính này để phân tích dựa trên máy tính với hi vọng sử dụng công thức hoặc các đại lượng có thể giả lập sự nhận thức của người rõ ràng nhất có thể.
Hướng tiếp cận cơ bản để trích đặc trưng âm thanh có thể được tổng hợp như sau:
- Thực hiện phân khung, chẳng hạn một luồng của tín hiệu âm thanh được chuyển thành tập các khung tín hiệu. Độ dài thời gian cho mỗi khung khoảng 20~30ms. Nếu thời gian khung quá lớn, chúng ta không thể nắm bắt các đặc điểm khác nhau theo thời gian của tín hiệu. Ngược lại, nếu thời gian khung quá nhỏ, thì chúng ta không thể rút trích các đặc trưng hợp lệ hoặc có giá trị. Nói chung, một khung tín hiệu cần chứa vài chu kỳ cơ bản của tín hiệu âm thanh nhất định, thường kích thước của khung bằng với mũ cơ số 2 (chẳng hạn 256, 512, 1024..) như vậy có khả năng để biến đổi Fourier nhanh.
- Nếu chúng ta muốn giảm bớt sự khác biệt giữa các khung lân cận, chúng ta có thể sử dụng các khung chồng lấp nhau, thường thực hiện chồng lấp ½ hoặc 2/3 của khung tín hiệu gốc. Khung chồng lắp nhiều, yêu cầu tính toán cũng nhiều hơn.
- Giả sử các tín hiệu âm thanh trong một khung là không thay đổi, chúng ta có thể trích các đặc trưng chẳng hạn như tỷ lệ điểm qua zero, âm lượng, cao độ, MFCC, LPC,…
- Chúng ta có thể thực hiện phát hiện điểm đầu và cuối của tín hiệu dựa tỷ lệ điểm qua zero và âm lượng, và giữ lại các khung tín hiệu có tiếng nói để phân tích về sau.
Khi thực hiện các bước trên, một vài thuật ngữ thường sử dụng:
- Kích thước khung (frame size): số điểm mẫu trong mỗi khung.
- Chồng lấp khung (frame overlap): số điểm mẫu chồng lấp giữa các khung liên tiếp.
- Bước khung (hoặc kích thước hop): bằng với kích thước khung trừ đi khoảng chồng lấp.
- Tỷ lệ khung (frame rate): số các khung trên một giây, bằng với tần số mẫu chia cho bước khung.
Ví dụ, nếu chúng ta có file âm thanh với tần số mẫu fs=16000 và thời gian một khung 25ms, thời gian chồng lấp 15ms, ta có:
- Kích thước khung = fs*25/1000=400 (điểm mẫu)
- Khung chồng lấp = fs*15/1000=240 (điểm mẫu).
- Bước khung = 400-240 = 160 (điểm mẫu).
- Tỷ lệ khung = fs/160 = 100 frame /giây.