Không tải lên, 100% cục bộ, không cần tài khoản

Bài viết

Làm chậm âm thanh để gỡ băng

Người nói nhanh, giọng lạ, và nhiều giọng chồng lên nhau là ba lý do chính khiến việc gỡ băng bị nghẽn. Làm chậm bản ghi giúp có thời gian bắt được điều đã nói. Cái bẫy là việc làm chậm phát lại một cách ngây thơ cũng hạ cao độ của mọi giọng, khiến lời nói khó theo hơn chứ không dễ hơn. Bài viết này giải thích khác biệt giữa giảm tốc độ đơn thuần và time-stretching giữ cao độ, và nói về các khoảng thực sự hữu ích.

Vì sao làm chậm lại có ích

Lời nói của con người mang nhiều thông tin trong một cửa sổ ngắn. Một người nói nhanh có thể đưa ra 200 từ mỗi phút trở lên, và ở tốc độ đó, tai có ít thời gian để phân giải từng âm vị trước khi âm tiết kế tiếp ập đến. Làm chậm âm thanh cho não nhiều thời gian xử lý hơn trên mỗi âm tiết, điều quan trọng nhất trong ba tình huống: một người nói giọng lạ với cách ánh xạ âm vị khác điều bạn mong đợi; một đoạn kỹ thuật dày đặc nơi mỗi từ đều mang nghĩa và một lần nghe nhầm tạo ra một thuật ngữ sai; và các bản ghi với hai giọng trở lên chồng lên nhau nơi tai phải theo các luồng riêng cùng lúc. Trong cả ba, mục tiêu không phải nghe ra điều không có ở đó, mà cho bạn đủ thời gian để nghe chính xác điều đã được ghi. Tốc độ phát 0.75x thường đủ cho một giọng lạ hoặc một đoạn dày. Tốc độ 0.5x hữu ích cho một đoạn ngắn nơi vài lượt nghe đầu chưa phân giải được các từ.

Một màn hình dạng sóng thể hiện một đoạn lời nói, với trục thời gian được kéo dài theo chiều ngang để biểu diễn phát lại chậm hơn, các ranh giới âm tiết hiện ra dưới dạng đỉnh và đáy

Tốc độ và cao độ: vì sao làm chậm ngây thơ không hiệu quả

Cách đơn giản nhất để làm chậm âm thanh là phát lại các mẫu ở một tốc độ thấp hơn lúc ghi. Đây là cách máy ghi băng cũ làm chậm: quay băng chậm hơn và cả thời lượng lẫn cao độ cùng hạ xuống. Ở 0.75x, các giọng hạ khoảng một quãng ba thứ. Ở 0.5x, chúng hạ một quãng tám đầy đủ. Kết quả là sự méo tiếng chậm, trầm quen thuộc khiến lời nói nghe không tự nhiên và, nghịch lý thay, khó hiểu hơn vì các tần số formant phân biệt các nguyên âm đều đã dịch xuống. Cách tiếp cận đúng là time-stretching: thay đổi thời lượng của âm thanh mà không thay đổi các tần số. Cao độ của mọi giọng giữ nguyên; chỉ tốc độ các âm tiết đến là thay đổi. Đây là cách tiếp cận mà công cụ audio-speed và hầu hết phần mềm gỡ băng chuyên dụng dùng. Kết quả cảm nhận là một bản ghi đã làm chậm nghe như cùng người nói đang nói ở nhịp chậm hơn, đúng là điều bạn cần khi mục tiêu là gỡ băng chính xác.

Time-stretching hoạt động thế nào: cách tiếp cận atempo

Thuật toán được dùng rộng rãi nhất cho time-stretching trong các công cụ âm thanh thực tế dựa trên phase vocoding, và cách triển khai phổ biến của nó trong ffmpeg là bộ lọc atempo. Âm thanh đầu vào được chia thành các khung ngắn chồng nhau, thường 20 đến 40 mili giây mỗi khung. Thuật toán phân tích các quan hệ pha giữa các khung kề nhau, rồi tổng hợp các khung mới ở một tốc độ đã đổi trong khi điều chỉnh pha sao cho các khung liên tiếp khớp nhau đúng. Kết quả là một tín hiệu đầu ra liên tục có thời lượng đã thay đổi nhưng nội dung tần số thì không. Vì các khung ngắn so với chu kỳ cao độ điển hình của một giọng người, tần số cơ bản của lời nói được giữ qua phép kéo giãn. Một tác dụng phụ của thuật toán là các thoáng nhanh, như tiếng tách của một phụ âm, có thể bị nhòe nhẹ khi phép kéo lớn, vì việc tổng hợp khung chồng đưa vào một lượng trung bình nhỏ. Đây không phải lỗi trong cách triển khai; đó là một tính chất vốn có của họ thuật toán overlap-add.

Một sơ đồ về quá trình time-stretching overlap-add: các khung âm thanh đầu vào ở bên trái, các khung tổng hợp chồng nhau ở giữa, và dạng sóng đầu ra đã kéo dài ở bên phải

Các khoảng tốc độ thực tế và giới hạn chất lượng

Với công việc gỡ băng, hai giá trị tốc độ bao trùm hầu hết nhu cầu thực tế. Ở 0.75x, lời nói được kéo dài tới 133% thời lượng ban đầu. Các cụm phụ âm và các chuyển nguyên âm nhanh trở nên dễ tách hơn, và mức thay đổi đủ nhỏ để thuật toán đưa vào rất ít nhiễu cảm nhận được. Hầu hết người nghe có thể theo lời nói ở tốc độ này mà không mất nhịp tự nhiên của câu. Ở 0.5x, âm thanh được kéo dài gấp đôi độ dài ban đầu. Cách này hữu ích cho một câu đơn hoặc một đoạn khó ngắn, nhưng quá chậm để nghe liên tục trong vài phút; sự tập trung giảm trước khi các từ được phân giải. Dưới 0.5x, chất lượng đầu ra suy giảm rõ rệt. Việc tổng hợp overlap-add bắt đầu đưa vào một sự rung hoặc phasiness trên các nguyên âm kéo dài, và các tín hiệu thời gian giữa phụ âm và nguyên âm mang ngữ điệu trở nên méo. Bộ lọc atempo trong ffmpeg áp một mức tối thiểu 0.5x cho một lượt, phản ánh giới hạn chất lượng này. Các giá trị dưới 0.5x đòi hỏi nối hai lượt, và mức nhiễu tăng theo. Với gần như mọi tình huống gỡ băng, giữ ở 0.75x hoặc tối đa 0.5x cho các đoạn ngắn cho đầu ra sạch, dùng được.

Làm cục bộ với công cụ audio-speed

Công cụ audio-speed trên trang này chạy hoàn toàn trong trình duyệt bằng ffmpeg được biên dịch sang WebAssembly. Bạn thả tệp âm thanh của mình lên trang, đặt hệ số tốc độ, và việc xử lý diễn ra trên thiết bị của bạn. Bản ghi không rời khỏi máy của bạn tại bất kỳ thời điểm nào: không tải lên, không máy chủ, không dịch vụ bên thứ ba. Điều này quan trọng cho các cuộc hội thoại đã ghi, phỏng vấn, đọc chính tả y khoa, thủ tục pháp lý, và mọi bối cảnh khác nơi nội dung âm thanh là nhạy cảm. Công cụ chấp nhận các định dạng âm thanh thông dụng mà ffmpeg xử lý, gồm MP3, WAV, M4A, OGG và FLAC. Đầu ra là một tệp tải xuống được ở tốc độ bạn chọn. Vì việc xử lý chạy cục bộ, thời gian nó mất tùy vào độ dài tệp và tốc độ thiết bị của bạn. Vài phút âm thanh thường được xử lý trong dưới một phút trên một laptop hiện đại. Công cụ dùng cùng bộ lọc atempo mô tả trong bài này, nên các đặc tính chất lượng nêu trên áp dụng trực tiếp vào điều bạn sẽ nghe trong đầu ra.

Công cụ trong bài viết này

Câu hỏi thường gặp

Làm chậm âm thanh có làm đổi cao độ không?

Tùy phương pháp. Giảm tốc độ phát lại đơn thuần có làm đổi cao độ: ở 0.5x, các giọng hạ một quãng tám đầy đủ. Công cụ audio-speed dùng time-stretching (bộ lọc atempo) vốn đổi thời lượng mà không đổi cao độ, nên các giọng giữ tần số ban đầu.

Tốc độ chậm nhất mà vẫn nghe sạch là bao nhiêu?

Ở 0.75x đầu ra sạch với hầu hết bản ghi. Ở 0.5x nó chấp nhận được cho các đoạn ngắn. Dưới 0.5x, thuật toán overlap-add bắt đầu đưa vào nhiễu nghe được trên các nguyên âm kéo dài và các chuyển phụ âm. Với công việc gỡ băng, giữ ở hoặc trên 0.5x cho kết quả tốt nhất.

Tệp có bị tải lên khi tôi dùng công cụ audio-speed không?

Không. Công cụ audio-speed chạy hoàn toàn trong trình duyệt. Tệp được xử lý cục bộ trên thiết bị của bạn bằng WebAssembly. Không có gì được gửi tới máy chủ nào, nên nội dung bản ghi của bạn vẫn riêng tư.