DAC (hay còn gọi là D/A, D2A hay D-to-A) là viết tắt của cụm từ Digital Analog Converter – bộ chuyển đổi tín hiệu điện tử thành analog. Là một thành phần rất quan trọng trong một hệ thống nghe nhạc. Sở dĩ cần tới DAC bởi AMPLY chỉ nhận tín hiệu dạng analog, trong khi các tập tin nhạc số lại lưu trữ dưới dạng tín hiệu điện tử, và đây chính là nhiệm vụ của DAC, đó là chuyển đổi một cách tốt nhất nhạc số dạng lưu trữ điện tử sang dạng nhạc tín hiệu analog cho AMPLY
Nói về nhạc, khi chúng ta nghe nhạc số, ít người quan tâm đến tỉ số nén của nhạc số. Ví dụ đơn giản nhất là nhạc MP3 là một dạng nhạc nén, nhưng mọi người nghe rất nhiều mà không nhận ra và không hiểu. Giải thích cách này dễ hiểu nhất, nếu coi như trị số chất lượng nhạc bạn nghe trực tiếp từ một ban nhạc hay một phòng thu là 1, thì nhạc nén chính là cách nén nhạc lại làm sao để vẫn giữ dược chất lượng tối đa mà dung lượng giảm đi, nói cách khác nó chỉ còn giá trị từ 0.3 đến 0.8 so với 1 ban đầu.
Giải thích về cách nén nhạc hay tại sao lại nén nhạc, bạn có thể search trên Google rất nhiều bài viết. Mình quay lại nhạc không nén mà giới nghe nhạc số thường sử dụng đó chính là định dạng nhạc số nén không mất dữ liệu hay còn gọi là lossless. Các định dạng phổ biến của lossless bao gồm FLAC(Free Lossless Audio Codec), ALAC( Apple Lossless Audio Codec) và APE( Monkey’s Audio) hay nặng nề và đầy đủ nhất là WAV (Waveform Audio File Format)
Sau đây tôi sẽ hưỡng dẫn bạn làm một thiết bị nghe nhạc Lossless dựa trên Orange Pi Lite
- Đâu tiên, bạn cần 1 bo mạch Orange Pi Lite, tất nhiên rồi, mua nó tại đây giá chỉ 380k
- Tiếp theo bạn cần một bo mạch giải mã, có rất nhiều bo mạch giải mã DAC nhưng tôi dùng loại đơn giản nhất và dễ kiếm nhất, đó là bo mạch chip PCM5102. Nó trông như bên phải, bạn có thể mua nó tại các cửa hàng điện tử hoặc tại chợ taobao của TQ. Cái này tôi mua khoảng hơn 200k
- Cuối cùng bạn cần một số dây nối màu, thẻ nhớ, và nguồn. Tổng chi phí hết 600k
Orange Pi Lite kết nối với Bo mạch giải mã qua một giao thức gọi là I2S, một chuẩn giao tiếp cấp thấp của các thiết bị điện tử, chuyên dùng để xử lý nhạc. Chúng ta chú ý bảng chân của bo mạch như sau
Các chân tín hiệu ngõ vào:
Có 6 ngõ vào theo thứ tự: BICK, DATA, LRCK, GND, MUTE, VCC. Khi bạn mua về 2 chân đầu là GND và MCLK đã được nối với nhau bằng một jumper, để nguyên nó:
- 2 chân VCC và GND dùng cho nguồn cấp. chân MUTE để trống. Cụ thể chân VCC nối chân số 2 và chân GND nối chân số 6 trên Orange Pi Lite
- Chân BCK tương ứng với chân BICK trên chip PCM5102 (chân số 13). Chức năng của chân BICK (Audio data bit clock input) nhằm lấy tín hiệu ngõ vào là audio đã được mã hóa dạng bit. Chân này nối với chân số 27 trên Orange Pi Lite
- Chân DATA tương ứng với DIN trên chip PCM5102 (chân số 14). Chức năng lấy dữ liệu audio đầu vào. Chân này nối với chân số 37 trên Orange Pi Lite
- Chân LRCK tương ứng với LRCK trên chip PCM5102 (chân số 15). Chức năng xử lí tín hiệu audio đầu vào. Chân này nối với chân số 28 trên Orange Pi Lite
Bo mạch PCM5102 có2 ngõ ra hoa sen là các jack audio được dùng để kết nối đến các thiết bị phát âm thanh như loa, amply. Ngoài ra cũng có 1 chân 3.5cm để nối tai nghe
Nếu lắp xong trông nó sẽ giống thế này
OK giờ đến phần cắm điện boot lên và xử lý. Tôi sử dụng bản Armbian cho Orange Pi Lite. Các bạn có thể tải về tại đây: https://dl.armbian.com/orangepilite/
Chưa thử bản Desktop nhưng chắc cũng tương tự, hoặc với Ubuntu cũng thế
Sau màn khởi động và thay đổi password root, bạn ở user root, thực hiện các lệnh sau để đổi file fex
đi đến thư mục boot
cd /boot
chuyển file script.bin thành file fex để chỉnh sửa
bin2fex script.bin script.fex
nano script.fex
Trong giao diện nano chỉnh các dòng sau:
[twi1] twi_used = 1 to twi_used = 0
và
[pcm0] daudio_used = 0 to daudio_used = 1
Thoát và lưu lại bằng tổ hợp phím Ctrl + X, rổi chuyển ngược lại file fex thành file script.bin
fex2bin script.fex script.bin
Khởi động lại.
Ok. Hãy thử xem Orange PI Lite đã nhận bo mạch PCM5102 chưa? Có 2 cách sau
Dùng lệnh
cat /proc/asound/cards
Nếu kết quả trả về có
0 [audiocodec ]: audiocodec - audiocodec audiocodec 1 [snddaudio ]: snddaudio - snddaudio snddaudio 2 [sndhdmi ]: sndhdmi - sndhdmi sndhdmi
OK thì snddaudio chính là cái chúng ta cần thấy
hoặc
Dùng lệnh
aplay -l
Nếu kết quả trả về như sau
**** List of PLAYBACK Hardware Devices **** card 0: audiocodec [audiocodec], device 0: SUNXI-CODEC sndcodec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: snddaudio [snddaudio], device 0: SUNXI-TDM0 snddaudio-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 card 2: sndhdmi [sndhdmi], device 0: SUNXI-HDMIAUDIO sndhdmi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0
OK card số 1 snddaudio chỉnh là card PCM5102
Để chắc chăn hơn, nối loa vào mạch, hoặc dùng tai nghe, sau đó gõ lệnh
speaker-test -twav -c2 -Dhw:1
Nếu bạn nghe thấy tiếng gì đó Left Right Front Back blah … thì ok bạn đã thành công ở bước 1
Pingback: Cài đặt bộ chuyển đổi nhạc số chất lượng cao (DAC) với Orange Pi Lite (phần 2) - OrangePI.me