Search
Search titles only
By:
Search titles only
By:
Home
Forums
New posts
Search forums
What's new
New posts
Latest activity
Members
Current visitors
Κανονισμός Λειτουργίας
Σωματείο AVClub
Log in
Register
Search
Search titles only
By:
Search titles only
By:
New posts
Search forums
Menu
Install the app
Install
Reply to thread
Home
Forums
Δικάναλος Ήχος
Computer Audio
Computer Audio Software
Python Scripting για RPI LCD display κανείς ?
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Message
<blockquote data-quote="tuxx" data-source="post: 1057767664" data-attributes="member: 45860"><p>Λοιπόν μίλησα με το Σταύρο και έχω μια πλήρη εικόνα. Κατ' αρχάς, μιλάμε για τον παρακάτω κώδικα:</p><p></p><p><a href="https://github.com/RandyCupic/RuneAudioLCD/blob/master/display.py" target="_blank">https://github.com/RandyCupic/RuneAudioLCD/blob/master/display.py</a></p><p></p><p></p><p>Το κομμάτι που ενδιαφέρει το Σταύρο είναι το εξής:</p><p></p><p></p><p></p><p>[CODE]# Last line shows RADIO/FILE and bitrate</p><p> if (self.mpd.getData()['type'] == 0):</p><p> word = "FILE"</p><p> </p><p> elif (self.mpd.getData()['type'] == 1):</p><p> word = "RADIO"</p><p> </p><p> # Get bitrate</p><p> bitrate = `self.mpd.getData()['bitrate']` + ' kbps'[/CODE]</p><p></p><p></p><p>Αυτό τσεκάρει με ένα if αν πρόκειται για αρχείο ή streaming και στη συνέχεια βγάζει στην οθόνη τα εξής:</p><p></p><p></p><p>FILE και bitrate σε kbbs (καλώντας το get bitrate)</p><p>ή</p><p>STREAM και bitrate σε kbbs (καλώντας και πάλι το get bitrate)</p><p></p><p></p><p>Το επιθυμητό αποτέλεσμα θα πρέπει να δείχνει:</p><p></p><p><strong>FILE και sample rate σε Khz</strong></p><p><strong>ή </strong></p><p><strong>STREAM και bitrate σε kbbs</strong></p><p></p><p></p><p>Υπάρχει ένας δοκιμασμένος κώδικας ο οποίος δείχνει sampling rate και είναι ο παρακάτω:</p><p></p><p>[CODE]</p><p> # Get bitrate ## NEW configuration ->(display kHz)##</p><p> bitratefile_obj = open('/proc/asound/card1/pcm0p/sub0/hw_params','r')</p><p> rate_data = bitratefile_obj.read()</p><p> ratestart = rate_data.find('rate:')+6</p><p> ratestop = rate_data.find('(')-1</p><p> brate = str(rate_data[ratestart:ratestop])</p><p> if brate[-3:] == '000':</p><p> bitrate=brate[:-3]+' kHz'</p><p> elif brate[-2:] == '00':</p><p> rate=brate[:-2]</p><p> bitrate=brate[:-1]+'.'+brate[-1:]+' kHz'</p><p> elif brate[-1:] == '0':</p><p> brate=brate[:-1]</p><p> bitrate=brate[:-2]+'.'+brate[-2:]+' kHz'</p><p> else:</p><p> bitrate = brate[:-3]+'.'+brate[-3:]+' kHz'[/CODE]</p><p></p><p></p><p></p><p>Αυτό που εγώ θεωρώ ότι χρειάζεται είναι ένα if στο section #Get bitrate. Για αρχή θα δοκίμαζα το παρακάτω</p><p></p><p>[CODE]# Last line shows RADIO/FILE and bitrate</p><p> if (self.mpd.getData()['type'] == 0):</p><p> word = "FILE"</p><p> </p><p> elif (self.mpd.getData()['type'] == 1):</p><p> word = "RADIO"</p><p> </p><p> # Get bitrate</p><p> if (self.mpd.getData()['type'] == 0):</p><p> </p><p> bitratefile_obj = open('/proc/asound/card1/pcm0p/sub0/hw_params','r')</p><p> rate_data = bitratefile_obj.read()</p><p> ratestart = rate_data.find('rate:')+6</p><p> ratestop = rate_data.find('(')-1</p><p> brate = str(rate_data[ratestart:ratestop])</p><p> if brate[-3:] == '000':</p><p> bitrate=brate[:-3]+' kHz'</p><p> elif brate[-2:] == '00':</p><p> rate=brate[:-2]</p><p> bitrate=brate[:-1]+'.'+brate[-1:]+' kHz'</p><p> elif brate[-1:] == '0':</p><p> brate=brate[:-1]</p><p> bitrate=brate[:-2]+'.'+brate[-2:]+' kHz'</p><p> else:</p><p> bitrate = brate[:-3]+'.'+brate[-3:]+' kHz'</p><p> </p><p> elif (self.mpd.getData()['type'] == 1):</p><p></p><p> bitrate = `self.mpd.getData()['bitrate']` + ' kbps'</p><p></p><p> [/CODE]</p><p></p><p></p><p></p><p>Αν δουλεύει το παραπάνω, λογικά θα δουλευέι και το παρακάτω στο οποίο έχω ενσωματώσει τα δύο sections σε ένα if:</p><p></p><p></p><p>[CODE]# Last line shows RADIO/FILE and bitrate</p><p> if (self.mpd.getData()['type'] == 0):</p><p> word = "FILE"</p><p> bitratefile_obj = open('/proc/asound/card1/pcm0p/sub0/hw_params','r')</p><p> rate_data = bitratefile_obj.read()</p><p> ratestart = rate_data.find('rate:')+6</p><p> ratestop = rate_data.find('(')-1</p><p> brate = str(rate_data[ratestart:ratestop])</p><p> if brate[-3:] == '000':</p><p> bitrate=brate[:-3]+' kHz'</p><p> elif brate[-2:] == '00':</p><p> rate=brate[:-2]</p><p> bitrate=brate[:-1]+'.'+brate[-1:]+' kHz'</p><p> elif brate[-1:] == '0':</p><p> brate=brate[:-1]</p><p> bitrate=brate[:-2]+'.'+brate[-2:]+' kHz'</p><p> else:</p><p> bitrate = brate[:-3]+'.'+brate[-3:]+' kHz'</p><p> </p><p> elif (self.mpd.getData()['type'] == 1):</p><p> word = "RADIO"</p><p> bitrate = `self.mpd.getData()['bitrate']` + ' kbps'[/CODE]</p></blockquote><p></p>
[QUOTE="tuxx, post: 1057767664, member: 45860"] Λοιπόν μίλησα με το Σταύρο και έχω μια πλήρη εικόνα. Κατ' αρχάς, μιλάμε για τον παρακάτω κώδικα: [url]https://github.com/RandyCupic/RuneAudioLCD/blob/master/display.py[/url] Το κομμάτι που ενδιαφέρει το Σταύρο είναι το εξής: [CODE]# Last line shows RADIO/FILE and bitrate if (self.mpd.getData()['type'] == 0): word = "FILE" elif (self.mpd.getData()['type'] == 1): word = "RADIO" # Get bitrate bitrate = `self.mpd.getData()['bitrate']` + ' kbps'[/CODE] Αυτό τσεκάρει με ένα if αν πρόκειται για αρχείο ή streaming και στη συνέχεια βγάζει στην οθόνη τα εξής: FILE και bitrate σε kbbs (καλώντας το get bitrate) ή STREAM και bitrate σε kbbs (καλώντας και πάλι το get bitrate) Το επιθυμητό αποτέλεσμα θα πρέπει να δείχνει: [B]FILE και sample rate σε Khz ή STREAM και bitrate σε kbbs[/B] Υπάρχει ένας δοκιμασμένος κώδικας ο οποίος δείχνει sampling rate και είναι ο παρακάτω: [CODE] # Get bitrate ## NEW configuration ->(display kHz)## bitratefile_obj = open('/proc/asound/card1/pcm0p/sub0/hw_params','r') rate_data = bitratefile_obj.read() ratestart = rate_data.find('rate:')+6 ratestop = rate_data.find('(')-1 brate = str(rate_data[ratestart:ratestop]) if brate[-3:] == '000': bitrate=brate[:-3]+' kHz' elif brate[-2:] == '00': rate=brate[:-2] bitrate=brate[:-1]+'.'+brate[-1:]+' kHz' elif brate[-1:] == '0': brate=brate[:-1] bitrate=brate[:-2]+'.'+brate[-2:]+' kHz' else: bitrate = brate[:-3]+'.'+brate[-3:]+' kHz'[/CODE] Αυτό που εγώ θεωρώ ότι χρειάζεται είναι ένα if στο section #Get bitrate. Για αρχή θα δοκίμαζα το παρακάτω [CODE]# Last line shows RADIO/FILE and bitrate if (self.mpd.getData()['type'] == 0): word = "FILE" elif (self.mpd.getData()['type'] == 1): word = "RADIO" # Get bitrate if (self.mpd.getData()['type'] == 0): bitratefile_obj = open('/proc/asound/card1/pcm0p/sub0/hw_params','r') rate_data = bitratefile_obj.read() ratestart = rate_data.find('rate:')+6 ratestop = rate_data.find('(')-1 brate = str(rate_data[ratestart:ratestop]) if brate[-3:] == '000': bitrate=brate[:-3]+' kHz' elif brate[-2:] == '00': rate=brate[:-2] bitrate=brate[:-1]+'.'+brate[-1:]+' kHz' elif brate[-1:] == '0': brate=brate[:-1] bitrate=brate[:-2]+'.'+brate[-2:]+' kHz' else: bitrate = brate[:-3]+'.'+brate[-3:]+' kHz' elif (self.mpd.getData()['type'] == 1): bitrate = `self.mpd.getData()['bitrate']` + ' kbps' [/CODE] Αν δουλεύει το παραπάνω, λογικά θα δουλευέι και το παρακάτω στο οποίο έχω ενσωματώσει τα δύο sections σε ένα if: [CODE]# Last line shows RADIO/FILE and bitrate if (self.mpd.getData()['type'] == 0): word = "FILE" bitratefile_obj = open('/proc/asound/card1/pcm0p/sub0/hw_params','r') rate_data = bitratefile_obj.read() ratestart = rate_data.find('rate:')+6 ratestop = rate_data.find('(')-1 brate = str(rate_data[ratestart:ratestop]) if brate[-3:] == '000': bitrate=brate[:-3]+' kHz' elif brate[-2:] == '00': rate=brate[:-2] bitrate=brate[:-1]+'.'+brate[-1:]+' kHz' elif brate[-1:] == '0': brate=brate[:-1] bitrate=brate[:-2]+'.'+brate[-2:]+' kHz' else: bitrate = brate[:-3]+'.'+brate[-3:]+' kHz' elif (self.mpd.getData()['type'] == 1): word = "RADIO" bitrate = `self.mpd.getData()['bitrate']` + ' kbps'[/CODE] [/QUOTE]
Verification
Post reply
Home
Forums
Δικάναλος Ήχος
Computer Audio
Computer Audio Software
Python Scripting για RPI LCD display κανείς ?
Top
Bottom
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.
Accept
Learn more…