Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Raspberry Pi 2 Möglichkeiten?
Nein, nein. Nicht rausnehmen.

Das Ding funktioniert doch so.

Input ---> Filter --> Output

Aer wie schaut der Filter aus? Das bestimmen die Koeffizienten. Also an die Stelle wo -1 steht muss der Name des Coeffs. (Der wiederum definiert aus welcher Quelle er stammt, normalerweise eine Datei).

Zumindest ist das mein Verständnis der Brutefir-Struktur.
Zitieren

hm ja irgendwie versteh ich es nicht.
Den Filterpfad hab ich ja oben bereits drinn.
Sorry das ich so dumm Frage aber was sollte da nun rein.
Zitieren

Naja,

"oben" sagst du, dass es Parameter (Koeefizienten, Coeff) für Filter gibt und wo sie liegen. Der "coeff" kriegt auch einen Namen.

"Unten" spezifierst du, welcher Filter auf welchen Kanal wirken soll. Das weiß brutefir ja sonst nicht, oder? Also sagst du ihm der Filter zwischen für den dem einen Eingang und dem Ausgang benutzt den Coeff des Namens, den du oben vergeben hast. Oder es soll einfach durchgeroutet werden (= -1).
Zitieren

Ok ich glaub ich habs verstanden nach dem ich da mal das Forum gelesen habe.
http://www.aktives-hoeren.de/viewtopic.php?f=28&t=2112
ich versuche die mir jetzt anzupassen wie bei "Udor"
VG
Zitieren

The Alchemist schrieb:Ich hab nun einen Convolver 2x4 mit Lirc Streamer, Spdif und Analog Eingang:yahoo:.

Hallo Alchemist,
kannst du mal 2 Worte über Lirc verlieren? Wie und wofür setzt du das ein. Ein Fernsteuerung (ohne ssh) verschiedener Sachen (z.B. Wechsel der Filterbänke oder ALSA-Einstellungen) wäre schon ne feine Sache und steht auch auf meinem Zettel. Und Lirc klingt interessant.

Gruß
Zitieren

@kasbc, schast Du einmal hier: http://www.diy-hifi-forum.eu/forum/showt...624&page=6

Die Dateien muss ich noch ein Bisschen erläutern und hochladen. Wird allerdings einfacher, wenn Du dann mit Debian und nur MPD unterwegs bist.

Gruß
La vida es no ponyhof :bye:
Zitieren

Danke erst mal.
Zitieren

Soderle,

mein NUC mit Debian spielt mittlerweile. Ich habe noch einige Probleme mit Störgeräuschen ( die allerdings weg sind, sobald ich die Lautstärke über MPD etwas reduziere ),da weiß ich noch nicht genau wo der Hund begraben wird. Den Pegel in der Brutefir-Config senken bringt erst mal nichts, von daher vermute ich, dass der Pegel aus MPD für Brutefir zu hoch ist und es dann verzerrt. Zweite Vermutung wäre der Filter, der zumindest in RePhase auch über oder unter 0dB liegt. Daher habe ich die Kurve dort so gelegt, dass sie unter 0dB bleibt, indem ich den Regler im ersten Dialog benutzt habe. Ob das so alles richtig ist und Sinn ergibt, weiß ich natürlich nicht Tongue

Das größte Problem sind allerdings die Messungen.... ich bin da viel am Ausprobieren. Phase am Hörplatz messen ist Mumpitz, das haut nicht hin. Der Abstand ist dafür zu groß. Ich hatte mir folgendes überlegt:

Frequenzgang und Phase in 1m Abstand messen, im Nahfeld alle Chassis messen und inkl. Phase eine zusammengesetze Messung erstellen. Dann beide Kurven übereinanderlegen und schauen, was man genau herausfiltern kann. Der Bass wird einfach glatt gezogen.

Alle Korrekturen, die ich im höheren Frequenzband gemacht habe, funktionieren nicht richtig, bzw. es klingt merkwürdig.

So ganz vertraut bin ich mit den Einstellungen in RePhase auch nicht. Genauer gesagt, weiß ich nicht, was man bei centering und windowing korrekt einstellt. Die Phase wird auch anders als in Arta angezeigt....kennt da jemand einen Trick?

Gruß, Stefan
[URL="http://www.igdh.eu"]
[IMGNR]http://www.igdh.eu/logo_igdh_mini.png[/IMGNR]
[/URL]
Zitieren

Das MPD den Loopback Eingang übersteuert wäre durchaus möglich. Die Dämpfung in der Brutefir Konfiguration muss im Bereich "coeffs" stehen. (Vorzeichen beachten! Positiv bedeutet Dämpfung).
Die Grundeinstellungen in rePhase lass ich aus Unkenntnis so wie sie sind :o .
Die Phase korrigiere ich im Nahfeld, wobei ich der Meinung bin , dass das auch nur im Bereich etwaiger Frequenzübergänge sinnvoll ist, also Trennfrequenz, ggf. Bassreflex.
Desweiteren habe auch ich die Erfahrung gemacht, dass es besser ist Frequenzen abzusenken, statt anzuheben.

Zu Arta kann ich leider nichts sagen..

Gruss
La vida es no ponyhof :bye:
Zitieren

Ah, da liegt der Hund also begraben. Ich habe den Pegel nun um 6dB abgesenkt. Läuft super.

Ich habe allerdings das Problem, dass die Wiedergabe nach ca. 10 Minuten abbricht. Erst wenn ich einmal neu starte, läuft es wieder. Ich habe in der /etc/kbd/config schon den entsprechenden Eintrag für das Abschalten des Bildschirms angepasst.
[URL="http://www.igdh.eu"]
[IMGNR]http://www.igdh.eu/logo_igdh_mini.png[/IMGNR]
[/URL]
Zitieren

Ich habs' jetzt raus :mad::mad::mad::mad::mad:

Problem war, dass Debian einen Login auf der Konsole erwartet. Wenn das nach 10 Minuten nicht passiert, schaltet er den Monitor ab, was auch die Ausgabe des Audiosignals killt. Nachdem ich mich durch gefühlt 40 verschiedene Foren und Blogs gewühlt habe und nie das gefunden habe, was gerade passt, habe ich jetzt die Lösung:

Den Bootloader Grub so anpassen, dass er den Bildschirm bei der Anmeldung nicht nach 10 Minuten automatisch abschaltet:

nano /etc/default/grub

Code:
GRUB_CMDLINE_LINUX_DEFAULT="consoleblank=0"
Die Grub config darf man nie direkt editieren, sondern eben nur die /etc/default/grub. Daher brauch man noch folgenden Befehl um die Änderungen einzuspielen:

Code:
update-grub
Ich hoffe das hier hilft irgendwann mal jemandem. Mich hat das ganz schön Nerven gekostet. Dafür läuft jetzt auch alles.:rtfm:
[URL="http://www.igdh.eu"]
[IMGNR]http://www.igdh.eu/logo_igdh_mini.png[/IMGNR]
[/URL]
Zitieren

:thumbup:

Das sind so die Sachen, die man sich irgendwo speichen sollte ...
Zitieren

So am Rande:

Ich habe mir jetzt einen BeagleBone Black geordert. Anscheinend kann er mindestens vier Kanäle per I2C ausgeben. Das könnte auch eine interessante Möglichkeit zum BruteFIR-Crossover mit entsprechenden DACs sein. Einen ersten Versuch werde ich demnächst mit zwei alten Braun L260-Lautsprechern und zwei Polyvection PlainAMPs wagen. Die Brauns haben ihre besten Tage schon hinter sich (auf dem Sperrmüll gefunden) und die PlainAMPs haben nicht nur schon den DAC mit an Board, sondern sind auch ziemlich billig. Bzw, wie ich hoffe, preisgünstig. Wenn ich es hinbekomme, werde ich berichten...

Übrigens, für alle Linux-Audio-Interessierten finden sich in der Bachelorthesis von Henrik Langer interessante Hinweise. Ausnahmsweise auch mal auf Deutsch: http://www.creative-technologies.de/wp-c...Latenz.pdf
Zitieren

Hat denn der BeagleBone ein MCLK Signal bzw. haben die Plainamps eine eigene Clock?
2 Soundkarten können auch schon mal aus dem Takt geraten aber probieren kann mans mal Big Grin
Gruß
La vida es no ponyhof :bye:
Zitieren

Gute Frage Rolleyes

Der PlainAMP hat wohl keine eigene Clock, der BeagleBone schon, wenn ich es richtig verstanden habe. Und es gibt eine gewisse Schwierigkeit was die Taktung betrifft. Im Standardkernel werden max 48khz unterstützt. Polyvection bietet aber einen gepatchten Kernel an. https://polyvection.com/support/plain-se...atibility/ . Um mehr als zwei Kanäle ansprechen zu können, muss der Kernel nochmals angepasst werden. Das wird noch lustig für mich Adepten. Ich hoffe, die Lernkurve wird nicht zu steil. Aber ich bin ja zäh Wink
Zukunftsmusik: Zwei HifiBerry DAC+ Pro am Beaglebone. Derzeit betreibe ich schon einen am Raspberry und bin vom Sound mehr als überzeugt.

Gruß

Klaus

edit P.S.: Habe den Link mit der Masterclock nochmal gefunden: https://hifiduino.wordpress.com/2014/03/...for-audio/

Zitat:The Master clock in BBB is provided by the on-board 24.576MHz and fixed at this frequency and can be directly accessed from the outside.
Das ist etwas problematisch mit bestimmten Frequenzen
Zitat:Therefore, since a bit-clock has to be generated from this external 24.576MHz clock, only the 48KHz family of sample rates can be supported. Notice that the most common high res sample frequencies are 96KHz and 192KHz and are fully supported by the board.
Deshalb auch der Custom-Kernel von Polyvection. Wie es klingt? Mal hören...
Zitieren

Hi Leute
Ich glaube das ich mein Loopback nun hinbekommen habe und Brutefir im Prinzip funktioniert. Dennoch werden die Filter anscheinend nicht richtig verarbeitet.
Alsop cih denke das Brutefir soweit arbeitet mit dem Loopback da, sobald das Brutefür abgeschalten wird auch kein Ton mehr kommt.
Eventuell kann noch jemand mal einen Blick darauf werfen.
etc/asound.conf
Code:
pcm.!default {
type hw card 0
}
ctl.!default {
type hw card 0
}
etc/modules
Code:
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
snd-aloop
i2c-dev
aplay -l
Code:
**** List of PLAYBACK Hardware Devices ****
card 0: Loopback [Loopback], device 0: Loopback PCM [Loopback PCM]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7
card 0: Loopback [Loopback], device 1: Loopback PCM [Loopback PCM]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7
card 1: sndrpihifiberry [snd_rpi_hifiberry_amp], device 0: HifiBerry AMP HiFi tas5713-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
Somit ist das Loopback auf 0 und der amp auf 1 was ich so beabsichtigt habe

und die Bruteconfig
Code:
float_bits: 32; # internal floating point precision
sampling_rate: 44100; # sampling rate in Hz of audio interfaces
filter_length: 4096,8; # length of filters
#config_file: "~/bf/.bfcfg"; # standard location of main config file
overflow_warnings: false; # echo warnings to stderr if overflow occurs
show_progress: false; # echo filtering progress to stderr
max_dither_table_size: 0; # maximum size in bytes of precalculated dither
allow_poll_mode: true; # allow use of input poll mode
modules_path: "."; # extra path where to find BruteFIR modules
monitor_rate: false; # monitor sample rate
powersave: true; # pause filtering when input is zero
lock_memory: true; # try to lock memory if realtime prio is set
convolver_config: "~/.brutefir_convolver"; # location of convolver config fi$

## INPUT DEFAULTS ##

input "l_in", "r_in" {
device: "alsa" { device: "hw:Loopback,1"; };
sample: "S16_LE";
channels: 2;
};

output "l_out", "r_out" {
device: "alsa" { device: "hw:1,0"; };
sample: "S32_LE";
channels: 2/0,1;
delay: 0,0;
dither: true;
};

## FILTER DEFAULTS ##

filter "/home/pi/Filter/links.bin" {
      from_inputs: "l_in"/8.0;
      to_outputs: "l_out"/0.0;
      process: 0;        # process index to run in (-1 means auto)
      coeff: -1;          # -1 means "copy"
      delay: 0;           # predelay, in blocks
      crossfade: false;   # crossfade when coefficient is changed
};

filter "/home/pi/Filter/rechts.bin" {
      from_inputs: "r_in"/8.0;
      to_outputs: "r_out"/0.0;
      process: 0;        # process index to run in (-1 means auto)
      coeff: -1;
      delay: 0;           # predelay, in blocks
      crossfade: false;   # crossfade when coefficient is changed
};
Ich habe schon viele verschiedene Configs versucht zu Testen aber hab einige auch nicht zum laufen bekommen. Meistens wegen Parse error oder so.

Wenn es läuft kommt auch Musik und Fehler sind auch keine Vorhanden.
Der Ton kommt auch geschätzt mit der Verzögerung die ich durch die Filterlänge vorgebe. Das einzigste was ich einfach nicht hinbekomme, ist das die Filter funktionieren.
Muss ich an der etc/asound noch was machen.
Weil das Loopback scheint ja zu funktionieren über Brutefir.

Über Hilfe wäre ich wie immer sehr Dankbar!!

Vg Stefan
Zitieren

Versuch das mal:
Code:
float_bits: 32; # internal floating point precision
sampling_rate: 44100; # sampling rate in Hz of audio interfaces
filter_length: 4096,8; # length of filters
#config_file: "~/bf/.bfcfg"; # standard location of main config file
overflow_warnings: false; # echo warnings to stderr if overflow occurs
show_progress: false; # echo filtering progress to stderr
max_dither_table_size: 0; # maximum size in bytes of precalculated dither
allow_poll_mode: true; # allow use of input poll mode
modules_path: "."; # extra path where to find BruteFIR modules
monitor_rate: false; # monitor sample rate
powersave: true; # pause filtering when input is zero
lock_memory: true; # try to lock memory if realtime prio is set
convolver_config: "~/.brutefir_convolver"; # location of convolver config fi$

coeff "left" {
             #filename: "/home/pi/filter/links.bin"; #filterl
             filename: "dirac pulse";
            format: "FLOAT_LE";    
            attenuation: 8.0;
    };

    coeff "right" {
            # filename:"/home/pi/filter/rechts.bin"; #filterr
             filename: "dirac pulse";
            format: "FLOAT_LE";    
            attenuation: 8.0;
     };
    
## INPUT DEFAULTS ##

input "left-in", "right-in" {
device: "alsa" { device: "hw:Loopback,1"; };
sample: "S16_LE";
channels: 2;
};

output "left-out", "right-out" {
device: "alsa" { device: "hw:1,0"; };
sample: "S32_LE";
channels: 2/0,1;
delay: 0,0;
dither: true;
};

## FILTER ##

    filter "leftfilter" {
     from_inputs: "left-in";
     to_outputs: "left-out";
     coeff: "left";
    };

    filter "rightfilter" {
     from_inputs: "right-in";
     to_outputs: "right-out";
     coeff: "right";
    };
und kopier dann die Fehlermeldungen hier hin. Das ist eine Konfig die zunächst mal ein Dirac Signal faltet (sollte sie zumindest) Big Grin, d.h. sie macht quasi nix.

Sofern deine Filter links und rechts.bin heissen und nur 32768 Taps gross sind löscht Du die # und setzt sie vor die Zeile mit Dirac. Und warum im Input nicht "hw:0" steht versteh ich auch nicht...

Gruß
La vida es no ponyhof :bye:
Zitieren

Warum glaubst du mir das mit "coeff = -1" nicht ?

Du gibst dem Filter den NAMEN einer Datei, d.h. aber nicht, dass er sie nutzt. So wird immer nur der Input zum Output kopiert. Hatten wir doch schon ...

Gruß

P.S: Ja, so wie Alchemist das gemacht hat müsste es gehen.
Zitieren

Ich habs jetzt zum laufen bekommen.
Vielen Dank
hatte jetzt paar tage nix gemacht an dem Ding und das mit coeff dann auch wieder verplant durch ewiges rumgesuche.
Ich dachte irgendwie das es so auch gehen muss da er ja die Filter als Prozess nach dem Start angezeigt hat.
Nun läufts auf jeden Fall perfekt bisher.

Cool jetzt kann ich endlich mal überlegen was ich mir da jetzt fürn Böxlein bastle.:yahoo:
VG Stefan
Zitieren

:ok:

Gruß
Zitieren



Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Kleiner Guide: CamillaDSP plus Audio Injector Octo 6x8 Interface an Raspberry Pi 4 Malik 13 3.165 06.09.2025, 11:04
Letzter Beitrag: Malik
  Einschaltstrom? stört raspberry baraku 17 2.585 11.10.2024, 22:04
Letzter Beitrag: baraku
  Streamer mit DSP auf Raspberry Basis kaufen oder selber bauen.... kboe 12 8.050 10.05.2024, 19:40
Letzter Beitrag: dipoluser
  Suche Raspberry Pi CM 4 für Sohnemann zum Christkind kboe 20 4.326 15.12.2022, 19:27
Letzter Beitrag: Roul
  Raspberry - hier Multiroom ArLo62 2 858 26.07.2022, 18:47
Letzter Beitrag: ArLo62
  Spotify über Raspberry USB - wie? kboe 36 6.426 12.11.2021, 20:44
Letzter Beitrag: kboe
  Raspberry -> HDMI -> AVR 6-8Kanal Stereo Aktivbetrieb ? Udo 16 5.197 10.09.2020, 20:15
Letzter Beitrag: Udo
  Raspberry Pi Mediaserver: Audio über I2S, Video über HDMI....? Ka-Bass 6 2.890 05.06.2020, 08:48
Letzter Beitrag: Ka-Bass
  Fragen und Möglichkeiten zum hybriden Verstärker... Tube-Pre + class-D saddevil 12 2.863 23.02.2020, 13:27
Letzter Beitrag: saddevil
  Massefreie Stromversorgung für Raspberry Pi Slaughthammer 10 5.546 22.05.2019, 16:58
Letzter Beitrag: Slaughthammer

Gehe zu:


Benutzer, die gerade dieses Thema anschauen:
1 Gast/Gäste

Deutsche Übersetzung: MyBB.de, Powered by MyBB, © 2002-2025 Melroy van den Berg.