Forum: Mikrocontroller und Digitale Elektronik Frequenzverschiebung eines Liedes, per µC


von Georg S. (georgschmied)


Lesenswert?

Hallo,

ich möchte, dass mein STM32F4 die Frequenz eines Liedes (Sounddatei, 
z.B. .wav) um eine konstante zweite Frequenz erhöht, sozusagen eine 
Frequenzverschiebung durchführt. Üder den on-chip DAC soll das ganze 
dann ausgeben werden. Es geht mir um eine rein digitale Umsetzung, 
analog würde ich das mit einem Mischer machen, mir fehlt aber das 
Grundlagenwissen, wie das digital am besten ginge. Hab Ihr da ein paar 
Tipps für mich?

Vielen Dank schonmal im Voraus!

von Erwin D. (Gast)


Lesenswert?

Georg S. schrieb:
> um eine konstante zweite Frequenz erhöht

Mal eine Frage vornweg: Was möchtest du damit bewirken?
Daß ein Lied nach so einer Verschiebung nicht mehr erkennbar wäre bzw. 
total schräg klingen würde, ist dir schon klar, oder?
Die Melodie bliebe nur erhalten, wenn du die Frequenz mit einem Faktor 
multiplizierst oder durch einen Faktor dividierst.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das nennt sich "Transponieren" und ist mit etwas Signalverarbeitung 
durchaus möglich.

https://web.archive.org/web/20071012015849if_/http://www.dspdimension.com:80/index.html?timepitch.html

von Dergute W. (derguteweka)


Angehängte Dateien:

Lesenswert?

Moin,

Das koennte dann z.B. so aehnlich klingen...
Soll das so?

Gruss
WK

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ein anderes Stichwort: "pitch bender" bzw. "shifter".

Innerhalb eines gewissen Rahmens klingt das nicht so ... "interessant 
anders" wie das Beispiel von "dergute".

https://en.wikipedia.org/wiki/Pitch_shift

von Sparfux (Gast)


Lesenswert?

Er will verschieben und nicht shiften!

Das macht man einfach mit einem Multiplizierer der das
Eingangssignal mit einem Sinus multipliziert und
dann auf den DA schiebt.

Die Frequenz des Sinus entspricht dem Wert, um den das
Spektrum "geschoben" wird.

von Sparfux (Gast)


Lesenswert?

Frueher haette man sowas mit dem TBA120 gebaut.

von zufaulzumanmelden (Gast)


Lesenswert?

> Er will verschieben und nicht shiften!

Was ist noch gleich der Unterschied zwischen verschieben und 
verschieben?

(to shift → verschieben)

von Rolf M. (rmagnus)


Lesenswert?

Georg S. schrieb:
> Es geht mir um eine rein digitale Umsetzung,
> analog würde ich das mit einem Mischer machen, mir fehlt aber das
> Grundlagenwissen, wie das digital am besten ginge.

Weißt du denn, was der Mischer macht? Im Prinzip genau das, was 
"Sparfux" schreibt: Einfach die Signale miteinander multiplizieren.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Es ist anscheinend immer noch nicht klar, dass das zwei sehr 
unterchiedliche Dinge sind.

Um ein Lied zum Beispiel eine Oktave höher zu transponieren, sodass es 
noch genauso harmonisch klingt, muss man alle Frequenzen mit einem 
Faktor multiplizieren, für die Oktave wäre das der Faktor zwei. Das geht 
nur wie bei Zeitlupe und Zeitraffer im Film durch mehrfaches Wiederholen 
des gleichen Ausschnitts oder durch Weglassen von kleinen Stücken.

Nach Verschieben aller Frequenzen nach oben um eine konstante Frequenz 
wird dagegen etwas sehr unharmonisches daraus, wie beim Zuhören eines 
SSB-Funksignals mit falscher Einstellung.
Beim einfachen Mischen entstehen dann ausserdem immer Summen- und 
Differenzfrequenz. Nur durch eine Umsetzung wie beim SSB-Sender oder 
-Empfänger mit Unterdrückung des unerwünschten Seitenbands wird es etwas 
verständlicher.

von Ralf L. (ladesystemtech)


Lesenswert?

Christoph db1uq K. schrieb:
> mit Unterdrückung des unerwünschten Seitenbands wird es etwas
> verständlicher

Genau. In diesem Thread habe ich das mit einem schmalbandigen 
Quarzfilter hinbekommen. Der Frequenzversatz ist auch hier leider immer 
konstant (stufenlos mit Poti einstellbar).

Beitrag "Re: Mischer MC12002"

Es gibt auch noch einen anderen Thread mit einer anderen Lösung. Den 
finde ich gerade nicht.

Christoph db1uq K. schrieb:
> Um ein Lied zum Beispiel eine Oktave höher zu transponieren, sodass es
> noch genauso harmonisch klingt, muss man alle Frequenzen mit einem
> Faktor multiplizieren

Dafür wäre dann tatsächlich ein µC gut geeignet.

von Sparfux (Gast)


Lesenswert?

> mit einem schmalbandigen  Quarzfilter hinbekommen

Gerade die spektrale Inversion macht den hauptsaechlichen Reiz
bei einer passend gewaehlten Modulationsfrequenz.

> Was ist noch gleich der Unterschied zwischen verschieben und
> verschieben?

Pitch shift ist ein vorbelegter Begriff der die "musikalisch"
korrekte Stauchung bzw. Spreizung des Spektrums zum Ziel hat.
Das ist in Echtzeit schwierig realisierbar.
Eingesetzte Algorithmen bieten haeufig Umschaltmoeglichkeiten
fuer die Bearbeitung "einfacher" Signale und "komplexer" Signale.

Wie hier schon geschrieben wurde, wird das Ausgangssignal
gewissermassen "zusammengestueckelt".
Und das hoert man leider oft auch...

In den VLC-Quellen sollte man erste Anregungen finden.
Der schafft es ja auch, bei unterschiedlichen Abspielgeschwindigkeiten
die Tonhoehe einigermassen zu halten.

Analog kann man sowas auch mit mindestens 3 Eimerkettenschaltungen
realisieren. Aufwendig ist da die Erzeugung eines phasenstarren
mehrphasigen LFO-Taktes fuer Eimerkettenansteuerung und das
Signalgating fuer die Signalzusammenfuehrung.

von Rolf M. (rmagnus)


Lesenswert?

Christoph db1uq K. schrieb:
> Um ein Lied zum Beispiel eine Oktave höher zu transponieren, sodass es
> noch genauso harmonisch klingt, muss man alle Frequenzen mit einem
> Faktor multiplizieren, für die Oktave wäre das der Faktor zwei. Das geht
> nur wie bei Zeitlupe und Zeitraffer im Film durch mehrfaches Wiederholen
> des gleichen Ausschnitts oder durch Weglassen von kleinen Stücken.

Oder durch Verarbeitung im Frequenzbereich, sprich 
Fourier-Transformation.

Sparfux schrieb:
>> mit einem schmalbandigen  Quarzfilter hinbekommen
>
> Gerade die spektrale Inversion macht den hauptsaechlichen Reiz
> bei einer passend gewaehlten Modulationsfrequenz.

Dann wird man aber trotzdem eines der Seitenbänder rausfiltern wollen.

>> Was ist noch gleich der Unterschied zwischen verschieben und
>> verschieben?
>
> Pitch shift ist ein vorbelegter Begriff der die "musikalisch"
> korrekte Stauchung bzw. Spreizung des Spektrums zum Ziel hat.

Ja. Man verschiebt nicht die Frequenz, sondern die Tonhöhe, was einer 
Streckung oder Stauchung des Frequenzbands entspricht.

> Das ist in Echtzeit schwierig realisierbar.

Für einen kleinen µC ja. Ansonsten ist das heute kein großes Ding mehr.

> Eingesetzte Algorithmen bieten haeufig Umschaltmoeglichkeiten
> fuer die Bearbeitung "einfacher" Signale und "komplexer" Signale.

Teilweise auch je nach Inhalt, z.B. Drums oder Melodie.

> Wie hier schon geschrieben wurde, wird das Ausgangssignal
> gewissermassen "zusammengestueckelt".
> Und das hoert man leider oft auch...
>
> In den VLC-Quellen sollte man erste Anregungen finden.
> Der schafft es ja auch, bei unterschiedlichen Abspielgeschwindigkeiten
> die Tonhoehe einigermassen zu halten.

Das ist eine grundlegende Funktion von Videoplayern, denn die müssen ja 
immer das Audio-Signal so hinziehen, dass es "lippensynchron" zum Video 
bleibt.

von Bernhard S. (b_spitzer)


Lesenswert?

Das Ganze nennt sich "Vocalist", "Voice Box", "Pitch Shifter" oder 
"Harmonizer" und kann in bühnentauglicher Qualität beim Instrumentenshop 
in der Nähe bestaunt werden.

Selbstbau dürfte eher auf FFT, verschieben des Spektrums und 
Signal-Synthese rauslaufen. Eher was für spezialisierte DSPs oder 
reichliche Rechenpower.

von Bernd K. (prof7bit)


Lesenswert?

Rolf M. schrieb:
> Das ist eine grundlegende Funktion von Videoplayern, denn die müssen ja
> immer das Audio-Signal so hinziehen, dass es "lippensynchron" zum Video
> bleibt.

Nein, die spielen die Audiospur stur ab mit fixer Samplerate und das ist 
dann die Zeitbasis für alles andere, wenn überhaupt dann wird die 
Bildrate gezogen (oder einfach gelegentlich ein Bild ausgelassen oder 
verdoppelt) bis die Zeitstempel wieder halbwegs passen weil das 
einfacher zu implementieren ist und weniger Probleme macht.

von Georg S. (georgschmied)


Lesenswert?

Vielen vielen Dank für die echt kompetenten Antworten, ich habe einiges 
dazugelernt. Aber mein Vorhaben war wirklich nur die reine 
Frequenzverschiebung um einen fixen Wert, keine Multiplikation.

Ich möchte das Lied in den Ultraschallbereich verschieben. In der 
Elektor-Zeitschrift gab es einen Artikel über parametrische 
Ultraschalllautsprecher , und eine Methode für die Realisierung war, 
z.b. über zwei Lautsprecher, einmal 40 kHz, einmal 41 KHz ausgeben zu 
lassen. Im Interferenzbereich höre man dann 1 kHz. Ich wollte das 
testen.

Scheint aber per Mikrocontroller schwierig zu sein das mit der 
Freuqenzverschiebung. Besser, wenn ich das per Software auf dem PC mache 
und es dann dem System übergebe. Welche würdet ihr empfehlen?

von Karl B. (gustav)


Lesenswert?

Ralf L. schrieb:
> Es gibt auch noch einen anderen Thread mit einer anderen Lösung. Den
> finde ich gerade nicht.

Hi,
noch etwas zum Thema:
Lösung mit Identität und Eimerkettenspeichern.
Signal wird mit zwei Verstärkern simultan verarbeitet und verteilt auf 
zwei Eimerkettenspeicher, deren Ein- und Auslese-Frequenzen immer 
komplementär zueinander sind. Am Ausgang wird immer umgeschaltet auf den 
Kanal, der gerade die andere Auslesefrequenz hat. (Lese schnell ein und 
lese langsam aus.)
Zwei Möglichkeiten sind da gegeben: Einmal in Richtung höher, einmal in 
Richtung tiefer.
Nachteile: Latenz. Es fehlen kurzzeitig während des Umschaltens 
Signalanteile.
Und: Die Schaltfrequenz selbst ist im NF-Signal enthalten und muss 
herausgefiltert werden, was die ganze Sache dann nur noch zum Gimmik 
verkommen lässt.
https://www.mikrocontroller.net/attachment/339795/Oktavverschieber_02.mp3

Beitrag "Re: Frequenzbereich 15.000-25.000 Hz hörbar machen"

Die anderen Möglichkeiten:
Beitrag "NF-Spektrumsumkehrer mit S042P"
Und DSP-Filter in der NF-Stufe davor:
https://www.mikrocontroller.net/attachment/337048/SpektrumsUmk_01.mp3

Georg S. schrieb:
> Scheint aber per Mikrocontroller schwierig zu sein das mit der
> Freuqenzverschiebung.

Es gibt noch die abgekündigte "digitale" IC- Variante:

FX118

Für Telefone gedacht.

Georg S. schrieb:
> Besser, wenn ich das per Software auf dem PC mache
> und es dann dem System übergebe.

Ja.


ciao
gustav

: Bearbeitet durch User
von Sparfux (Gast)


Lesenswert?

> > Gerade die spektrale Inversion macht den hauptsaechlichen Reiz
> > bei einer passend gewaehlten Modulationsfrequenz.

> Dann wird man aber trotzdem eines der Seitenbänder rausfiltern wollen.

Du redest hier von Dingen die du wahrscheinlich selbst noch nie
gehoert hast. Bei einem Effekt muss man nichts filtern.
Er dient der Verfremdung des Originals.


> > In den VLC-Quellen sollte man erste Anregungen finden.
> > Der schafft es ja auch, bei unterschiedlichen Abspielgeschwindigkeiten
> > die Tonhoehe einigermassen zu halten.

> Das ist eine grundlegende Funktion von Videoplayern, denn die müssen ja
> immer das Audio-Signal so hinziehen, dass es "lippensynchron" zum Video
> bleibt.

Sieh dir erstmal eine einigermassen aktuelle Version von VLC an,
bevor du hier Halbwissen oder gar Unsinn verbreitest.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Georg S. schrieb:
> Scheint aber per Mikrocontroller schwierig zu sein das mit der
> Freuqenzverschiebung.

Könnte es sein, daß der Begriff Frequenzmodulation Dein Vorhaben 
besser beschreibt? Denk' jetzt mal an einen UKW-Sender, und schraub' die 
Trägerfrequenz auf Deine 40 kHz oder so herunter ...

von Sparfux (Gast)


Lesenswert?

> über zwei Lautsprecher, einmal 40 kHz, einmal 41 KHz ausgeben zu  lassen.

> In der Elektor
steht viel wenn der Tag lang ist.

M.W. arbeitet das System mit DSPs die neben der spektralen
Verschiebung auch eine Vorverarbeitung des Signals vornehmen
um die Intermodulation in Grenzen zu halten.

Die Demodulation des US-Signals erfolgt durch Mischung an
den Nichtlinearitaeten des Ohrs.
Bei einem komplexen Signal wird es nicht nur bei der
Differenz bleiben. Intermodulationsprodukte hoeherer Ordnung
duerften da den "Klanggenuss" erheblich trueben.
Nebenbei erfordert es reichlich Leistung im US-Bereich.

Aber Versuch macht klug. Ich wuerde meine Hoerorgane dem aber
nicht aussetzen.

von npn (Gast)


Lesenswert?

Sparfux schrieb:
> Du redest hier von Dingen die du wahrscheinlich selbst noch nie
> gehoert hast. Bei einem Effekt muss man nichts filtern.
> Er dient der Verfremdung des Originals.

Was ist beispielsweise mit dem Wahwah-Effekt?
Das ist ein rhythmisch verschobener Bandpass-Filter.
Wie machst du den ohne Filter(-funktion)?

Nur mal ein Beispiel herausgegriffen...

Die Filterung des (unerwünschten) Seitenbandes bzw. der Trägerfrequenz 
(Schaltfrequenz) ist nach einer Modulation trotzdem notwendig, damit man 
wieder ein sauberes Ausgangssignal bekommt.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Georg S. schrieb:
> Scheint aber per Mikrocontroller schwierig zu sein das mit der
> Freuqenzverschiebung. Besser, wenn ich das per Software auf dem PC mache
> und es dann dem System übergebe. Welche würdet ihr empfehlen?

Nee, das muesst' auf einem STM32 schon gehen. Der DAC muss halt mit der 
entsprechenden Samplerate betrieben werden koennen. Das Beispiel von mir 
stammt aus einer Testsoftware (aufm PC), die ich mal angefangen hab', um 
sowas im Endeffekt mal auf einem attiny13a zu machen.
iirc hatt' ich da die Phasenmethode zur SSB-Erzeugung hergenommen, aber 
mit'm Weaver koennt's auch gut klappen.

Gruss
WK

von Stefan F. (Gast)


Lesenswert?

Karl B. schrieb:
> Signal wird mit zwei Verstärkern simultan verarbeitet und verteilt auf
> zwei Eimerkettenspeicher, deren Ein- und Auslese-Frequenzen immer
> komplementär zueinander sind. Am Ausgang wird immer umgeschaltet auf den
> Kanal, der gerade die andere Auslesefrequenz hat. (Lese schnell ein und
> lese langsam aus.)
> Zwei Möglichkeiten sind da gegeben: Einmal in Richtung höher, einmal in
> Richtung tiefer.

Aber dann springt das Ergebnis doch immer zwischen den beiden Varianten 
hin und her. Das taugt wohl nur als Stimm-Verzerrer aber nicht dafür, 
die Tonlage von Musik zu transponieren.

von Sparfux (Gast)


Lesenswert?

> Was ist beispielsweise mit dem Wahwah-Effekt?
> Das ist ein rhythmisch verschobener Bandpass-Filter.
> Wie machst du den ohne Filter(-funktion)?

Es ging um die Mischung (aka Multiplikation) eines Eingangssignals
mit einem Sinus. Nicht um Wahwah oder sonstwas.
Bei einer (vokalen Sprech-)stimme braucht man da fuer den
Effekt nicht unbedingt filtern.


> die Tonlage von Musik zu transponieren.

Ja, mit nur 2 Eimerketten ist das Murx. Aber man kann ja mehr nehmen.
Und auch nicht umschalten sondern ueberblenden.
Aber auch das bleibt trotzdem noch wahrnehmbar.

von Rainer V. (a_zip)


Lesenswert?

Ich verstehe es so, dass das Musiksignal 2x so in den US-Bereich 
verschoben werden soll, sodass die beiden US-Wandler akustisch wieder 
das ursprüngliche Signal ergeben. Eben 41KHz - 40KHz = 1KHz. Ich meine 
gelesen zu haben, dass man mit "riesigen" US-Wandler-Arrays so etwas 
gemacht hat, um ein Signal z.B. in bestimmte Raumsegmente zu 
"projezieren". Du stehst vor einer Skulptur und hörst die Erklärungen 
dazu. Dein neben dir stehender Mensch hört das nicht...
Ich bezweifle allerdings auch, dass das mit einer simplen 
Frequenzmultiplikation zu bewerkstelligen ist. Ich rate also, vielleicht 
erst einmal 2 Wandler mit 40KHz und 41KHz - aus einem bzw. zwei 
Generatoren - anzusteuern und zu sehen/hören, was da so zu machen ist.
Viel Spass, Rainer

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Beitrag "Frequenz shift"
Damals ging es mehr um Pitch-Shifter

von Hanns-Jürgen M. (yogy)


Lesenswert?

Das, was analog geht (Mischer), geht digital genauso. Also jedes Sample 
des Musikstück mit dem entsprechenden Sample des Mischsinuses 
multiplizieren.

Auchtung: Ggf. muß die Abtastrate hochgesetzt werden, zumindest, falls 
das frequenzmäßig "höchste" Multiplikationsergebnis oberghab der 
Shannongrenze liegt. Rep. zuvor das eingangssignal tiefpaßfiltern 
(digital).

Der sich ergebende "Mischerausgangssignal" muß dann wie im analgoen Part 
gefiltert werden, um die Spiegelfrequenz zu unterdrücken.

BTW: Kann das nicht Audacity? (ich weiß es nicht)

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

Hanns-Jürgen M. schrieb:
> BTW: Kann das nicht Audacity? (ich weiß es nicht)

Hi,
Pitchen, ja, aber nur in Grenzen.

Rufus Τ. F. schrieb:
> Das nennt sich "Transponieren" und ist mit etwas Signalverarbeitung
> durchaus möglich.


Bei Tempo gleich und Tonhöhe ändern wird's schwieriger.

Bei nur Tempo runter, Tonhöhe runter und vice versa geht's besser ohne 
deutlich hörbare Artefakte.

Habe das oft bei Bandkopien gemacht bei einem Bandgerät, das nur minimal 
9,5 cm/s als Geschwindigkeit hat. Und die Bänder mit 4,75 cm/s werden 
hernach im WAV-Editor einfach "gepitched". Das geht.

Nur gibt es da ein kleines bandtechnisches Problem mit "Übersteuerung" 
etc. und Frequenzgangkorrektur, die ja auf die Bandgeschwindigkeit 
optimiert wird.

ciao
gustav

: Bearbeitet durch User
von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Man könnt doch von der Zeitdomäne in die Frequenzdomäne wechseln (FFT).
Dann an den Frequenzbins spielen und danach per reverse FFT wieder in 
die Zeitdomain zurückwandeln.

von Dergute W. (derguteweka)


Angehängte Dateien:

Lesenswert?

Moin,

Hier ist der Programmschnipsel fuer einen SSB Modulator - der also 
irgendwelchen Krach im Spektrum verschieben kann; das Ding frisst und 
kotzt nur Files mit 8bit samples mit den Rohdaten aus, also keine .wav 
etc.
Mittels ffmpeg und mplayer kann man die aber erzeugen bzw. anhoeren.
Ist alles nicht gross getestet, etc. Also nicht in Atomkraftwerken und 
Herzschrittmachern einsetzen ;-)

Gruss
WK

von GEKU (Gast)


Angehängte Dateien:

Lesenswert?

Versuch's mit Audacity

https://www.audacity.de/

von S. R. (svenska)


Lesenswert?

Karl B. schrieb:
> Habe das oft bei Bandkopien gemacht bei einem Bandgerät,
> das nur minimal 9,5 cm/s als Geschwindigkeit hat. Und
> die Bänder mit 4,75 cm/s werden hernach im WAV-Editor
> einfach "gepitched". Das geht.

Das funktioniert auch mit Plattenspielern, wenn der Riemen bei 33 rpm 
etwas durchrutscht, bei 78 rpm aber nicht mehr. :-)

von FlorenzW (Gast)


Lesenswert?

GNU-Radio: Frequency Xlating FIR Filter und mit einer 192kHz-Soundkarte 
ausgeben.

von Rolf M. (rmagnus)


Lesenswert?

Bernd K. schrieb:
> Nein, die spielen die Audiospur stur ab mit fixer Samplerate und das ist
> dann die Zeitbasis für alles andere, wenn überhaupt dann wird die
> Bildrate gezogen

Die Bildwiederholrate des Monitors kann ein Videoplayer in der Regel 
nicht beeinflussen, zumindest nicht dynamisch.

> (oder einfach gelegentlich ein Bild ausgelassen oder
> verdoppelt) bis die Zeitstempel wieder halbwegs passen

Das sieht man allerdings als kleine Ruckler. Vor allem, wenn man mit der 
relativ gängigen Framerate von 29,97 fps abspielt, kommen die dann 
regelmäßig vor.

> weil das einfacher zu implementieren ist und weniger Probleme macht.

Es ist auch qualitativ schlechter.

Sparfux schrieb:
>> > Gerade die spektrale Inversion macht den hauptsaechlichen Reiz
>> > bei einer passend gewaehlten Modulationsfrequenz.
>
>> Dann wird man aber trotzdem eines der Seitenbänder rausfiltern wollen.
>
> Du redest hier von Dingen die du wahrscheinlich selbst noch nie
> gehoert hast.

Hast du es denn schon gehört? Ich hab noch das Kurzwellen-Funkgerät mit 
AM und SSB im Keller stehen.

> Bei einem Effekt muss man nichts filtern.

Du kennst wohl nur sehr wenig Effektgeräte.

> Er dient der Verfremdung des Originals.

Aber nicht einfach irgendwie, sondern so, dass auch was vernünftiges 
dabei rauskommt.

Sparfux schrieb:
> Sieh dir erstmal eine einigermassen aktuelle Version von VLC an,
> bevor du hier Halbwissen oder gar Unsinn verbreitest.

Du meinst, aktuelle Versionen können das nicht mehr?

von Bernd K. (prof7bit)


Lesenswert?

Rolf M. schrieb:
>> (oder einfach gelegentlich ein Bild ausgelassen oder
>> verdoppelt) bis die Zeitstempel wieder halbwegs passen
>
> Das sieht man allerdings als kleine Ruckler. Vor allem, wenn man mit der
> relativ gängigen Framerate von 29,97 fps abspielt, kommen die dann
> regelmäßig vor.

Einige wenige Player (Kodi zum Beispiel) können (auf Wunsch) die 
Framerate festnageln (z.B. 29,97 auf 30 ziehen oder 23.97 auf 24 oder 
25) und dann das Audio resamplen. Dann ändert sich aber der Pitch 
geringfügig, und Audio-Passthrough geht dann nicht mehr.

: Bearbeitet durch User
von S. R. (svenska)


Lesenswert?

Auf Mobilgeräten (Android) kann man die Bildwiederholrate tatsächlich 
ziehen, und das wird auch getan.

Fast alle Videoplayer nutzen den Ton als Zeitbasis, weil falsche Tonhöhe 
oder schlechte Tonqualität störender sind als gelegentliche 
Mikroruckler. Das fällt besonders dann auf, wenn die Datei teilweise 
korrupt ist oder Video- bzw. Tonspuren teilweise ganz fehlen.

von Sparfux (Gast)


Lesenswert?

> Hast du es denn schon gehört?

Ei sicher: Multiplizierer mit TBA120 und Wienbrueckengenerator.

> Ich hab noch das Kurzwellen-Funkgerät mit
> AM und SSB im Keller stehen.
Im Keller zweifellos sehr beeindruckend.

Eigenbau TCA440 mit mechanischem 200 kHz Bandfilter und BFO.
Ein Sangean ATS803A steht im Regal.

Ich weiss also wovon ich rede.


> Du meinst, aktuelle Versionen können das nicht mehr?

Ein VLC V2.XY kann es zumindest nicht. Naemlich einen Film
mit 1.5-facher Geschwindigkeit ohne Mickymaus abzuspielen...

Im uebrigen habe ich auf weitere Diskussion keine Lust mehr.
Deine suggestiv verdrehende Fragestellung kannst du
gerne anderen zumuten.

G.S.

von Rolf M. (rmagnus)


Lesenswert?

Sparfux schrieb:
>> Du meinst, aktuelle Versionen können das nicht mehr?
>
> Ein VLC V2.XY kann es zumindest nicht. Naemlich einen Film
> mit 1.5-facher Geschwindigkeit ohne Mickymaus abzuspielen...

Du sprichst von aktuellen Versionen und nennst Version 2? Bei meinem 
3.04 hab ich's gerade ausprobiert, und es tut ohne Probleme. Will ich 
das nicht, muss ich es explizit ausschalten.

> Im uebrigen habe ich auf weitere Diskussion keine Lust mehr.
> Deine suggestiv verdrehende Fragestellung kannst du
> gerne anderen zumuten.

Das passt. Deine aggressive Art, anderen Unfug und Ahnungslosigkeit zu 
unterstellen, ohne dann selbst irgendwie konstruktiv darauf zu 
antworten, kann ich genauso wenig leiden. Dass du anderen rätst, erstmal 
Dinge zu probieren, die du ganz offensichtlich selbst noch nicht 
ausprobiert hast, hilft auch nicht wirklich.

Bernd K. schrieb:
> Einige wenige Player (Kodi zum Beispiel) können (auf Wunsch) die
> Framerate festnageln (z.B. 29,97 auf 30 ziehen oder 23.97 auf 24 oder
> 25) und dann das Audio resamplen. Dann ändert sich aber der Pitch
> geringfügig, und Audio-Passthrough geht dann nicht mehr.

Gut, vielleicht ist es nicht so verbreitet, wie ich dachte. Bei VLC 
sollte es aber möglich sein.

: Bearbeitet durch User
von Bernd K. (prof7bit)


Lesenswert?

Rolf M. schrieb:
> Gut, vielleicht ist es nicht so verbreitet, wie ich dachte. Bei VLC
> sollte es aber möglich sein.

Bei VLC ist mir noch nichts derartiges aufgefallen. VLC machts wie alle 
anderen Player auch und nimmt die Audiospur als fixe Zeitbasis. Das 
liegt wahrscheinlich auch daran daß es auf dem PC schlichtweg keinen 
interessiert ob die Bildrate des Bildschirms ein ganzzahliges Vielfaches 
der Bildrate irgendeines Videos ist das man gerade abspielt oder ob es 
ruckelt.

Bei Heimkinosystemen ist das schon eher ein Thema, da stellt man sich 
Equipment im 4-stelligen Bereich hin allein für den Zweck bewegte Bilder 
anzuzeigen und da soll das dann natürlich auch optimal funktionieren. 
Die gängige Hardware dort kann auch alle gängigen Bildraten von Kino, 
PAL und NTSC verarbeiten und wenn ein Video abgespielt wird wird der 
HDMI-Ausgang automatisch auf die passende Bildrate umgeschaltet. Und 
wenn Encoder und Muxer sich beim Erstellen der Zeitstempel in der Datei 
nicht verrechnet haben (unwahrscheinlich denn das sind Maschinen und 
keine Menschen) dann ist da auch nach 200 Minuten noch kein einziges 
Bild zuviel oder zuwenig.

: Bearbeitet durch User
von S. R. (svenska)


Lesenswert?

Sparfux schrieb:
> Ein VLC V2.XY kann es zumindest nicht. Naemlich einen Film
> mit 1.5-facher Geschwindigkeit ohne Mickymaus abzuspielen...

Wenn du das Audio-Resampling abschaltest, geht das natürlich nicht. Das 
ist dann aber dein Fehler, nicht der vom VLC. Amateurfunklizenz schützt 
nicht vor Fehlbedienung.

Bernd K. schrieb:
> Und wenn Encoder und Muxer sich beim Erstellen der Zeitstempel
> in der Datei nicht verrechnet haben (unwahrscheinlich denn das
> sind Maschinen und keine Menschen) dann ist da auch nach 200 Minuten
> noch kein einziges Bild zuviel oder zuwenig.

Du vermutest, dass die Taktgeber von Quelle (dem Aufnahmesystem) und dem 
Ziel (deinem Abspieler) perfekt gleich schnell laufen. Das ist nie der 
Fall. Außerdem vermutest du, dass die Taktgeber von Audio und Video 
zueinander synchron sind. Das stimmt nur für teures Studioequipment (und 
manche kombinierte A/V-Geräte). Das läuft mit der Zeit alles 
auseinander.

So ziemlich alle HDMI-Fernseher sind normale HDMI-Bildschirme (mit 
besseren Panels und Bildaufbereitungsalgorithmen). Die laufen stur mit 
der eingestellten Bildwiederholfrequenz und zeigen sowieso nicht das 
Originalbild.

Mikroruckler lassen sich prinzipbedingt nicht vermeiden. Aber bei einem 
120/240 Hz-Panel ist er deutlich kürzer und bei besser passender 
Bildwiederholrate deutlich seltener. Deswegen findest du den Preis 
angemessener.

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

Sparfux schrieb:
> Ei sicher: Multiplizierer mit TBA120 und Wienbrueckengenerator.

Hi,
schwöre auf S042P !
Den Begrenzerverstärker des TBA120 brauche ich dann nicht.

Aber es ist dann auch das Additionstheorem anzuwenden.

Verkürzt:
Brauche immer zwei Signalquellen.

Eingangsfrequenzen werden unterdrückt. (ca. 40 dB wünschenswert hier)

Am gemeinsamen Ausgang -> Summe von beiden Eingangsfrequenzen
Am gemeinsamen Ausgang -> Differenz von beiden Eingangsfrequenzen

Also vergleichbar mit Zweiseitenbandmodulation mit vermindertem Träger.

Aber: Das wollen die Leute hier nicht.

Sparfux schrieb:
> Ein Sangean ATS803A steht im Regal.

Meiner ist ausgeschlachtet worden. Keramikfilter zu weit off.
das Logo im Schaltplan ist überklebt worden mit "Siemens RK651".;-)

ciao
gustav

von Bernd K. (prof7bit)


Lesenswert?

S. R. schrieb:
> Du vermutest, dass die Taktgeber von Quelle (dem Aufnahmesystem) und dem
> Ziel (deinem Abspieler) perfekt gleich schnell laufen. Das ist nie der
> Fall.

Spielt keine Rolle wie schnell irgendwelche Taktgeber irgendwann mal bei 
der Aufnahme gelaufen sind, das ist das Problem derjenigen die den 
Content produzieren und zusammenschneiden. Im fertigen Stream stehen 
Zeitstempel und beim Muxen kann man zusehen daß auf genau x Audiosamples 
genau ein Bild kommt, sonst wär der Stream als defekt anzusehen.

von S. R. (svenska)


Lesenswert?

Bernd K. schrieb:
> Spielt keine Rolle wie schnell irgendwelche Taktgeber
> irgendwann mal bei der Aufnahme gelaufen sind,

Aus dem Takt ergeben sich die Zeitstempel, und da dein Abspielgerät 
ziemlich sicher einen anderen Grundtakt benutzt, sind diese langfristig 
unzuverlässig. Dementsprechend ignorieren viele Player diese, selbst 
wenn sie stimmen.

Wir hatten viel Spaß auf Arbeit beim Versuch, eine Zeitlupenfunktion zu 
implementieren.

von Bernd K. (prof7bit)


Lesenswert?

S. R. schrieb:
> und da dein Abspielgerät
> ziemlich sicher einen anderen Grundtakt benutzt, sind diese langfristig
> unzuverlässig.

Der absolute Takt ist nebensächlich, wenn das video x fps und y 
Audiosamples/s hat dann kommt alle y/x Audiosamples ein Bild. In fixer 
Proportion bis zum Ende des Films. Und wenn der Ersteller alles richtig 
gemacht hat dann geht das am Ende des Films bis auf die letzte 
Nachkommastelle genau auf. Wenn nicht dann ist der Stream kaputt und 
alles kann passieren, je nach Player. Dann trennt man die Spuren, schaut 
sich an ob eine davon zu lang ist, behebt das Problem bis alles gleich 
lang ist und muxt es wieder zusammen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.