Câu trả lời:
Có giải pháp dòng lệnh mà tôi đã tìm thấy trong Tin đồn Mac
sudo kill `ps -ax | grep 'coreaudiod' | grep 'sbin' |awk '{print $1}'`
Mà có thể gán cho một bí danh:
alias fixairplay="sudo kill `ps -ax | grep 'coreaudiod' | grep 'sbin' |awk '{print $1}'`"
Sau đó, lệnh này khắc phục vấn đề:
fixairplay
Những gì bạn cần làm là khởi động lại daemon âm thanh cốt lõi ( coreaudiod
). Mở terminal và chạy sudo killall coreaudiod
. Đơn giản vậy thôi.
Sau đó, nếu bạn gặp khó khăn trong việc ghi nhớ những điều trên, bạn có thể thêm dòng sau vào ~/.bash_profile
alias fixairplay='sudo killall coreaudiod'
Từ bây giờ bạn chỉ có thể sử dụng bí danh fixairplay
.
Lấy cảm hứng từ Mohsen, nhưng đơn giản hóa bằng cách sử dụng pgrep .
sudo kill `pgrep coreaudio`
pgrep Lý do tồn tại là để tránh phân tích cú pháp ps đầu ra và an toàn hơn nhiều để sử dụng khi được gửi đến giết chết , IMHO khiến bạn ít có khả năng lấy thông tin quy trình sai.
Dù sao, câu trả lời được chấp nhận đã làm việc rất tốt (Mavericks).
Tôi cũng có hành vi tương tự với HDMI. I E. Vì một số lý do mà tôi chưa xác định được, mac mini của tôi (đang chạy Mavericks) sẽ chuyển sang sử dụng loa bên trong và mọi nỗ lực chuyển trở lại HDMI không chỉ bị trả về loa trong.
Giết coreaudio (sau đó sẽ tự khởi động lại) cũng khắc phục sự cố HDMI. @ 0sh và @ jl-peyret có các lệnh đơn giản nhất, có thể được nhập trong thiết bị đầu cuối:
sudo kill `pgrep coreaudio`
hoặc là
sudo killall coreaudiod
Đối với những người thích tránh xa thiết bị đầu cuối, bạn cũng có thể thoát khỏi sinh vật quá trình từ Giám sát hoạt động .
Có một số khuyến nghị khác, nếu điều này không khắc phục được, trong bài viết này , mặc dù một số trong số họ là một chút cực đoan.