Dự án Dâu Tây - Transport nền tảng Raspberry Pi chất lượng cao

tml3nr

Moderator
Lại phải nhờ tới sự giúp đỡ của bác tml3nr đoạn này là phải làm thế nào (từ link của bác đưa). Cảm ơn bác nhiều:
Create Script to Maintain Changes

Automate it to run at start-up with a script.
Để cho dễ, mình tạm gọi cách này là cách 1:

https://sites.google.com/view/dynob...pberry-pi-music-server/raspberry-pi---volumio

Cái này là cách 2:

https://sites.google.com/site/computeraudioorg/home/setting-up-alsa

Cách thứ 1 tạo file script dyno.sh, rồi mới dùng file rc.local để chạy dyno.sh mỗi khi khởi động.

Cách thứ 2 cũng tương tự ạ :D Anh làm y như cách 1. Chỉ cần thay nội dung của cách 2 vào file dyno.sh

Mã:
#!/bin/bash
sleep 25 ; sudo chrt -f -p 81 $(pidof mpd)     #Changes MPD to Real-Time priority
sleep 35 ; taskset -c -p 1 $(pidof mpd)            #Changes MPD to it's 'own' cpu core
sleep 45 ; sudo killall lxdm-binary              #This kills the desktop environment for lubuntu-linux
echo -n performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
ifconfig eth0 mtu 9000
echo noop > /sys/block/mmcblk0/queue/scheduler
echo 0 > /proc/sys/vm/swappiness
echo 1000000 > /proc/sys/kernel/sched_latency_ns
echo 100000 > /proc/sys/kernel/sched_min_granularity_ns
echo 25000 > /proc/sys/kernel/sched_wakeup_granularity_ns
echo 1 > /proc/sys/kernel/hung_task_check_count
echo 20 > /proc/sys/vm/stat_interval
echo -1 >  /proc/sys/kernel/sched_rt_runtime_us
echo 5 > /proc/sys/vm/dirty_background_ratio
sudo chrt -f -p 99 5
sudo chrt -f -p 99 11
sudo chrt -f -p 99 9
sudo chrt -f -p 99 19
sudo chrt -f -p 99 25
sudo chrt -f -p 99 23
sudo chrt -f -p 99 36
sudo chrt -f -p 99 32
sudo chrt -f -p 99 38
sudo chrt -f -p 99 45
sudo chrt -f -p 99 49
sudo chrt -f -p 99 51
sudo chrt -f -p 99 719
modprobe snd-usb-audio nrpacks=1           #reduce USB latency
modprobe -r ppdev
modprobe -r uvcvideo                                #kill video support
modprobe -r ath9k                                  #kill wireless wi-fi
modprobe -r videodev
modprobe -r lp  #no printer service needed
/etc/init.d/ondemand stop &
/etc/init.d/cups stop &
sudo killall modem-manager                       #kill modem support
sudo killall -9 irqbalance
sudo killall -9 bluetooth
sudo /etc/init.d/cron stop
 

thanhminhppc

Active Member
Để cho dễ, mình tạm gọi cách này là cách 1:

https://sites.google.com/view/dynob...pberry-pi-music-server/raspberry-pi---volumio

Cái này là cách 2:

https://sites.google.com/site/computeraudioorg/home/setting-up-alsa

Cách thứ 1 tạo file script dyno.sh, rồi mới dùng file rc.local để chạy dyno.sh mỗi khi khởi động.

Cách thứ 2 cũng tương tự ạ :D Anh làm y như cách 1. Chỉ cần thay nội dung của cách 2 vào file dyno.sh

Mã:
#!/bin/bash
sleep 25 ; sudo chrt -f -p 81 $(pidof mpd)     #Changes MPD to Real-Time priority
sleep 35 ; taskset -c -p 1 $(pidof mpd)            #Changes MPD to it's 'own' cpu core
sleep 45 ; sudo killall lxdm-binary              #This kills the desktop environment for lubuntu-linux
echo -n performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
ifconfig eth0 mtu 9000
echo noop > /sys/block/mmcblk0/queue/scheduler
echo 0 > /proc/sys/vm/swappiness
echo 1000000 > /proc/sys/kernel/sched_latency_ns
echo 100000 > /proc/sys/kernel/sched_min_granularity_ns
echo 25000 > /proc/sys/kernel/sched_wakeup_granularity_ns
echo 1 > /proc/sys/kernel/hung_task_check_count
echo 20 > /proc/sys/vm/stat_interval
echo -1 >  /proc/sys/kernel/sched_rt_runtime_us
echo 5 > /proc/sys/vm/dirty_background_ratio
sudo chrt -f -p 99 5
sudo chrt -f -p 99 11
sudo chrt -f -p 99 9
sudo chrt -f -p 99 19
sudo chrt -f -p 99 25
sudo chrt -f -p 99 23
sudo chrt -f -p 99 36
sudo chrt -f -p 99 32
sudo chrt -f -p 99 38
sudo chrt -f -p 99 45
sudo chrt -f -p 99 49
sudo chrt -f -p 99 51
sudo chrt -f -p 99 719
modprobe snd-usb-audio nrpacks=1           #reduce USB latency
modprobe -r ppdev
modprobe -r uvcvideo                                #kill video support
modprobe -r ath9k                                  #kill wireless wi-fi
modprobe -r videodev
modprobe -r lp  #no printer service needed
/etc/init.d/ondemand stop &
/etc/init.d/cups stop &
sudo killall modem-manager                       #kill modem support
sudo killall -9 irqbalance
sudo killall -9 bluetooth
sudo /etc/init.d/cron stop
Cảm ơn bác nhiều
 

kiennat

Member
C8D1F2DF-C66F-4349-AE70-23A92BFD7E72.jpeg
B0EA0039-2473-49A7-BE5E-3C535B5FF4AE.jpeg
0A6B9751-32D1-41FD-AFD4-5105C3A3AE4B.jpeg
0A6B9751-32D1-41FD-AFD4-5105C3A3AE4B.jpeg
C8D1F2DF-C66F-4349-AE70-23A92BFD7E72.jpeg
B0EA0039-2473-49A7-BE5E-3C535B5FF4AE.jpeg
0A6B9751-32D1-41FD-AFD4-5105C3A3AE4B.jpeg C8D1F2DF-C66F-4349-AE70-23A92BFD7E72.jpeg Phải nó đây kg các bác B0EA0039-2473-49A7-BE5E-3C535B5FF4AE.jpeg
 
Chỉnh sửa lần cuối:

valst

Member
Hi các bác.

Tham gia topic này có nhiều bác dùng USBridge nên em hỏi luôn! Tks.

Vấn đề: TuneBlade airplay từ windows qua Pi3 OK nhưng qua volumio chạy trên USBridge lại không có tiếng dù TuneBlade có hiển thị thông tin tốc độ truyền thậm chí hơn 1Mbit/s.

Cấu hình:
- Player: USBridge
- Volumio: ver 2.348 for Sparky
- Shairport-sync: Updated to 3.2RC5-OpenSSL-Avahi-ALSA-pa-soxr-metadata-sysconfdir:/etc

Triệu chứng cụ thể:
- Shair-Play from iOS qua USBridge chạy volumio: OK, làm việc tốt.
- Play from Windows with TuneBlade v1.7.3: NO SOUND mặc dù TuneBlade connected đến Volumio trên USBridge và TuneBlade hiển thị rằng tốc độ truyền tải qua USBridge thậm chí hơn 1Mbit/s khi mở nhạc trên máy tính.
- ShairPort-sync trên USBridge (volumio) như bên dưới khi chơi nhạc từ Windows 10 với TuneBlade:
volumio@volumio:~$ Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset
.....

Có bác nào gặp tương tự ko? Tks.
 

chuong46

Active Member
Cái tweak này nó optimize kernel, theo anh Tây này thì làm cho âm thanh hay hơn. Nó có 2 bước chính ạ:

Bước 1: Tạo một file dyno.sh (tương tự file bat của PC). Có nội dung như hình:

cd /usr/local/sbin

sudo nano dyno.sh

(Anh không gõ dòng có ký tự # đầu tiên cũng được. Vì nó là ghi chú.)

#!/bin/bash
sleep 25 ; sudo chrt -f -p 81 $(pidof mpd)
echo 0 > /proc/sys/vm/swappiness
echo 1000000 > /proc/sys/kernel/sched_latency_ns
echo 100000 > /proc/sys/kernel/sched_min_granularity_ns
echo 25000 > /proc/sys/kernel/sched_wakeup_granularity_ns

dyno1-png.290155


sudo chmod 755 dyno.sh

Bước 2: Edit file rc.local với nội dung như hình sau. Mục đích là để mỗi khi khởi động OS sẽ chạy file dyno.sh:

cd

cd /etc

sudo nano rc.local

(Anh không gõ dòng có ký tự # đầu tiên cũng được. Vì nó là ghi chú.)

/usr/local/sbin/dyno.sh

exit 0

dyno2-png.290156


Cuối cùng là:

sudo reboot

PS: Lúc trước anh @mtminh có nghiên cứu vụ optimize kernel này. Mong ảnh vô cho ý kiến :rolleyes:
Tweak này có dùng được với Moode 3.8.4 không bạn ?
 

truong_guitar

New Member
Bác nào dùng USBridge cho em hỏi. Em muốn cấp nguồn độc lập cho USBridge, khi cấp 1 nguồn 5V vào DC Jack của board USB thì nó cấp luôn cho Sparky (em đã tháo jump J28). Nếu mình cấp 1 nguồn vào USB board và 1 nguồn vào board Sparky thì có bị xung đột không?
 

tml3nr

Moderator
Hi các bác.

Tham gia topic này có nhiều bác dùng USBridge nên em hỏi luôn! Tks.

Vấn đề: TuneBlade airplay từ windows qua Pi3 OK nhưng qua volumio chạy trên USBridge lại không có tiếng dù TuneBlade có hiển thị thông tin tốc độ truyền thậm chí hơn 1Mbit/s.

Cấu hình:
- Player: USBridge
- Volumio: ver 2.348 for Sparky
- Shairport-sync: Updated to 3.2RC5-OpenSSL-Avahi-ALSA-pa-soxr-metadata-sysconfdir:/etc

Triệu chứng cụ thể:
- Shair-Play from iOS qua USBridge chạy volumio: OK, làm việc tốt.
- Play from Windows with TuneBlade v1.7.3: NO SOUND mặc dù TuneBlade connected đến Volumio trên USBridge và TuneBlade hiển thị rằng tốc độ truyền tải qua USBridge thậm chí hơn 1Mbit/s khi mở nhạc trên máy tính.
- ShairPort-sync trên USBridge (volumio) như bên dưới khi chơi nhạc từ Windows 10 với TuneBlade:
volumio@volumio:~$ Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset.
Aliasing of buffer index -- reset
.....

Có bác nào gặp tương tự ko? Tks.
Mấy cái anh hỏi em không rành. Chỉ xin phép góp ý về TuneBlade, Airfroil...

Trên PC, ngoài iTunes. Những app khác như tuneblade, airfoil... xuất airplay tiếng đều không sạch ạ. Kém iTunes xa lắm. Em có thử dùng các kiểu virtual device driver cũng không ăn thua.

Anh thử convert vài bài flac sang m4a lossless. Rồi dùng iTunes phát airplay để so sánh là thấy liền ạ.
 

Thanhvo31

Well-Known Member
Bạn giúp mình với.

Vụ này giống giống như chỉnh thông số trên hệ thống.
Ví dụ

echo 0 > /proc/sys/vm/swappiness

Là ghi ts swappiness = 0

Vây kiểm tra xem nó ghi chưa thì dùng lệnh đọc

cat /proc/sys/vm/swappiness

Bác cứ ssh vào và thong thả test từng cái.

Không ưng thì echo lại.
 
Chỉnh sửa lần cuối:

valst

Member
Mấy cái anh hỏi em không rành. Chỉ xin phép góp ý về TuneBlade, Airfroil...

Trên PC, ngoài iTunes. Những app khác như tuneblade, airfoil... xuất airplay tiếng đều không sạch ạ. Kém iTunes xa lắm. Em có thử dùng các kiểu virtual device driver cũng không ăn thua.

Anh thử convert vài bài flac sang m4a lossless. Rồi dùng iTunes phát airplay để so sánh là thấy liền ạ.

Thực sự chỉ cần khi xem DVD video bác à! Chứ mỗi lần cắm rút DAC cũng lười....
 

Thanhvo31

Well-Known Member
Cái đó trên volumio như bác tmnlr nói là để có realtime kernel thì phải. Còn moode 0.8.4 có sẵn realtine kernel rồi mà bác.

Bác nào rành chỉ giùm bà con mấy lệnh cơ bản trong linux được ko? Như em chỉ biết mỗi lệnh cd (change directory) hic hic.

Vụ realtime kernel phải patch kernel thì mới có chứ tweak không ăn được. (Giống như chỉnh Registry trong Windows ạ)

Các bác có thể update thêm bằng tiếng Việt ở đây

http://thanhnt.com/blog/rtos-la-gi-no-hoat-dong-nhu-the-nao/

Sau khi hòm hòm về thuật ngữ rồi thì sang đây

https://wiki.linuxfoundation.org/realtime/start

Em không rành lắm nhưng site này có các lệnh rất cơ bản.

https://maker.pro/linux/tutorial/basic-linux-commands-for-beginners

Hy vọng giúp ích cho các bác.
 
Chỉnh sửa lần cuối:

tml3nr

Moderator
Vụ realtime kernel phải patch kernel thì mới có chứ tweak không ăn được. (Giống như chỉnh Registry trong Windows ạ)

Các bác có thể update thêm bằng tiếng Việt ở đây

http://thanhnt.com/blog/rtos-la-gi-no-hoat-dong-nhu-the-nao/

Sau khi hòm hòm về thuật ngữ rồi thì sang đây

https://wiki.linuxfoundation.org/realtime/start

Em không rành lắm nhưng site này có các lệnh rất cơ bản.

https://maker.pro/linux/tutorial/basic-linux-commands-for-beginners

Hy vọng giúp ích cho các bác.
Đi sâu vô một chút thấy cũng hoảng quá anh nhỉ :confused:

Lúc đầu em có táy máy thử thay đổi mấy cái script optimize kernel viết sẵn của Rune. Nhưng sau đó em trốn luôn, không theo nổi.

Nó có quá nhiều biến số rất khó kiểm soát. Sau khi thay đổi một vài bài hay hơn nhưng một số bài khác lại khó nghe. Đổi qua lại một hồi mất phương hướng.

Sau này em cố gắng thử thật nhiều các phiên bản. Chọn ra cái gần nhất với tai của mình, rồi thay đổi các thứ linh tinh chung quanh nó để gia giảm cho ra thứ âm thanh mình mong muốn.
 
Bên trên