[PYTHON] Contrôlez la lecture de musique sur un smartphone connecté à Raspberry Pi 3 et Bluetooth avec AVRCP

introduction

Un mémo sur la façon de contrôler la lecture de musique sur un smartphone connecté à Raspberry pi via Bluetooth avec AVRCP

environnement

Préparation

https://gist.github.com/oleq/24e09112b07464acbda1 http://blog.bnikka.com/raspberrypi/raspberrypibluetooth.html Reportez-vous à l'URL ci-dessus et transformez le Raspberry Pi en un récepteur audio Bluetooth (A2DP) afin de pouvoir lire de la musique à partir de votre smartphone. (* Il semble que AVRCP ne peut pas être utilisé à moins qu'il ne soit connecté avec A2DP, mais peut-être existe-t-il un moyen de l'utiliser uniquement avec AVRCP?)

Essayez de contrôler avec AVRCP

Démo avec dbus-python

BT_MediaPlayer.py


#!/usr/bin/python

import dbus

SERVICE_NAME = "org.bluez"
ADAPTER_INTERFACE = SERVICE_NAME + ".MediaPlayer1"
bus = dbus.SystemBus()
manager = dbus.Interface(bus.get_object(SERVICE_NAME, "/"),
                    "org.freedesktop.DBus.ObjectManager")
objects = manager.GetManagedObjects()

if __name__ == '__main__':
    for path, ifaces in objects.iteritems():
        adapter = ifaces.get(ADAPTER_INTERFACE)
        if adapter is None:
            continue
        print path
        player = bus.get_object('org.bluez',path)
        BT_Media_iface = dbus.Interface(player, dbus_interface=ADAPTER_INTERFACE)
        break

    while 1:
        s = raw_input()
        if s == 'quit': 
            break
        if s == 'play':
            BT_Media_iface.Play()
        if s == 'pause':
            BT_Media_iface.Pause()
        if s == 'stop':
            BT_Media_iface.Stop()
        if s == 'next':
            BT_Media_iface.Next()
        if s == 'pre':
            BT_Media_iface.Previous()
        if s == 'show':
            track =  adapter.get('Track')
            print 'Title: ' + track.get('Title') 
            print 'Artist: ' + track.get('Artist')
            print 'Album: ' + track.get('Album')
            print 'Genre: ' + track.get('Genre')
            print 'NumberOfTracks: ' + str(track.get('NumberOfTracks'))
            print 'TrackNumber: ' + str(track.get('TrackNumber'))
            print 'Duration: ' + str(track.get('Duration'))

Lorsque vous exécutez le code ci-dessus, il sera dans l'état d'attente d'entrée, alors entrez la commande Les commandes disponibles sont les suivantes

--quit: Fin du programme --show: Afficher les informations sur la chanson --joue joue --pause: Pause --stop STOP --next: chanson suivante --pre: chanson précédente

J'espère que le chemin du smartphone connecté sera affiché et que vous pourrez contrôler la lecture de la musique avec diverses commandes Voici un exemple d'exécution de la commande show BT_MediaPlayer_show.png

référence

http://qiita.com/eggman/items/339a9c9b338634ac27a5 https://www.raspberrypi.org/forums/viewtopic.php?t=111486&p=766936

Recommended Posts

Contrôlez la lecture de musique sur un smartphone connecté à Raspberry Pi 3 et Bluetooth avec AVRCP
Contrôlez le moteur avec un pilote de moteur en utilisant python sur Raspberry Pi 3!
Remarques sur la connexion Bluetooth d'un smartphone / PC à Raspeye 4
Utilisez python sur Raspberry Pi 3 pour éclairer la LED avec le contrôle du commutateur!
Connectez-vous à MySQL avec Python sur Raspberry Pi
Fabriquez un thermomètre avec Raspberry Pi et rendez-le visible sur le navigateur Partie 3
Création d'un système de contrôle de température avec tarte aux framboises et ESP32 (3) Réception d'un fichier Python
Enregistrez la température et l'humidité avec systemd sur Raspberry Pi
IoT facile pour démarrer avec Raspeye et MESH
Contrôlez les moteurs sans balais avec GPIO de Raspberry Pi Zero
Ubuntu 20.04 sur raspberry pi 4 avec OpenCV et utilisation avec python
Installez pyenv sur Raspberry Pi pour gérer Python
Résoudre les problèmes liés à l'installation d'OpenCV sur Raspberry Pi et à la capture
Créez des serveurs sur Linux et des réseaux locaux avec Raspberry Pi NextCloud et le partage de bureau
Introduction facile au piratage domestique avec Raspberry Pi et discord.py
Créez une caméra de surveillance WEB avec Raspberry Pi et OpenCV
Production de système de contrôle de température avec tarte aux framboises et ESP32 (1)
[Raspberry Pi] Contrôle du moteur pas à pas avec Raspberry Pi
Commande de servomoteur avec Raspberry Pi
MQTT sur Raspberry Pi et Mac
J'ai créé un serveur Web avec Razpai pour regarder des anime
Classique de Noël (?) Éclairage d'un arbre de Noël avec Raspberry Pi et Philips Hue
Créez un thermomètre avec Raspberry Pi et rendez-le visible sur le navigateur Partie 4
Faire une boussole d'affichage kanji avec Raspberry Pi et Sense Hat
Comment lire des fichiers musicaux (wav / mp3) sur Raspberry Pi python
Utiliser une webcam avec Raspberry Pi
Lisez les données du lecteur NFC connecté à Raspberry Pi 3 avec Python et envoyez-les à openFrameworks avec OSC
Un mémo pour utiliser simplement le capteur d'éclairement TSL2561 avec Raspberry Pi 2
Connectez-vous au VPN avec votre smartphone et éteignez / rallumez le serveur
Détectez les signaux analogiques avec un convertisseur A / N en utilisant python sur Raspberry Pi 3!
Créez un convertisseur Ethernet LAN sans fil et un routeur simple avec Raspberry Pi
J'ai essayé de faire un signal avec Raspeye 4 (édition Python)
Production d'un système de contrôle de température avec tarte aux framboises et ESP32 (2) Production d'un appareil de transmission
Surveillance des animaux avec Rekognition et Raspberry pi
[Raspberry Pi] Ajouter un thermomètre et un hygromètre
Créer un environnement Tensorflow avec Raspberry Pi [2020]
Un mémo contenant Python2.7 et Python3 dans CentOS
Programmation normale avec la programmation Node-RED avec Raspberry Pi 3
Travailler avec des capteurs dans Mathematica sur Raspberry Pi
Faire une minuterie de lavage-séchage avec Raspberry Pi
Faites fonctionner l'oscilloscope avec le Raspberry Pi
Créez un compteur de voiture avec Raspberry Pi
Comment installer NumPy sur Raspeye
Travailler avec le GPS en Python pour Raspberry Pi 3
J'ai une question. Impossible de créer des tampons de protocole sur le raspberry pi 3 modelB.
Source compilez Apache2.4 + PHP7.4 avec Raspberry Pi et construisez un serveur Web --2 introduction PHP
Compilation croisée de Raspberry Pi et création d'un environnement de développement de débogage à distance avec VS Code
Source compilez Apache2.4 + PHP7.4 avec Raspberry Pi et créez un serveur Web ―― 1. Introduction à Apache
Créez une application flask faite avec tensorflow et dlib pour travailler sur centos7
[Pour les débutants] J'ai fait un capteur humain avec Raspberry Pi et notifié LINE!
J'ai essayé de créer un bouton pour Slack avec Raspeye + Tact Switch
Création d'un environnement distribué avec la série Raspberry PI (Partie 3: Installation et configuration de dnsmasq)
Construire un environnement Django sur Raspai (MySQL)
Essayez d'utiliser le code QR avec Raspberry Pi
Profitez du travail électronique avec GPIO de Raspberry Pi
MQTT Radicon Car avec Arduino et Raspberry
Allumez / éteignez votre PC avec Raspberry Pi
Obtenez la température et l'humidité avec DHT11 et Raspberry Pi