라즈파이로 TV 조작하기
3998 단어 RaspberryPi라스베리 파이스마트 홈
전제
config.txt 편집
다음 명령을 사용하여 config.txt를 열고
hdmi_force_hotplug=1
및 hdmi_ignore_cec_init=1
를 추가합니다.sudo /boot/config.txt
/boot/config.txt
hdmi_force_hotplug=1
hdmi_ignore_cec_init=1
hdmi_force_hotplug=1
는 라즈파이의 HDMI가 디스플레이(TV)에 접속되어 있지 않은 상태에서 기동하면, NTSC(컴포지트)로 전환되어 버리는 것을 막기 위해, hdmi_ignore_cec_init=1
ON이 되는 것을 막기 위한 설정입니다.cec-utils 설치
다음 명령을 사용하여
cec-utils
를 설치합니다.sudo apt install cec-utils -y
TV 조작
기본 조작
다음 명령으로 TV 전원의 On/Off, 음량을 조작할 수 있습니다.
bash:電源ON
echo 'on 0' | cec-client -s
전원 OFF
echo 'standby 0' | cec-client -s
볼륨을 높이다
echo 'volup' | cec-client -s
볼륨을 낮추다
echo 'voldown' | cec-client -s
입력 전환
다음 명령으로 입력 장치의 정보를 얻습니다.
echo "scan" | cec-client -d 1 -s
출력 결과
log level set to 1
opening a connection to the CEC adapter...
requesting CEC bus information ...
CEC bus information
===================
device #0: TV
address: 0.0.0.0
active source: no
vendor: Toshiba
osd string: TV
CEC version: 1.4
power status: on
language: jpn
device #1: Recorder 1
address: 2.0.0.0
active source: no
vendor: Toshiba
osd string: CECTester ← ラズベリーパイ
CEC version: 1.4
power status: on
language: eng
device #5: Audio
address: 1.0.0.0
active source: no
vendor: Onkyo
osd string: TX-NR626
CEC version: 1.4
power status: on
language: ???
device #B: Playback 3
address: 3.0.0.0
active source: no
vendor: Toshiba
osd string: Fire TV Stick
CEC version: 1.4
power status: on
language: ???
다음 명령으로 입력을 전환합니다.
echo "tx ff:82:30:00" | cec-client -s
ff:82:30.00
의 값의 의미는 ff
가 모든 기기에서 모든 기기입니다. 첫 번째 숫자는 숫자인가 f
82
는 입력 전환입니다. 30:00
는 계측기의 주소입니다. 이번에는 상기 출력 결과의 Fire TV Stick의 address가 3.0.0.0
이었기 때문에 닷을 제외해 두 자리수씩 나누어 세미콜론을 붙여 30:00
가 됩니다. 라즈베리 파이의 경우라면 address가 2.0.0.0
이므로 20:00
입니다. 내 환경에서 TV로 전환 echo "tx ff:82:00:00" | cec-client -s
이 작동하지 않았습니다.다른 코드는 이 사이트에서 확인할 수 있습니다.
내 계정
Reference
이 문제에 관하여(라즈파이로 TV 조작하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/loach/items/481725a81a5837e4bba3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)