AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten
Thema durchsuchen
Ansicht
Themen-Optionen

Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

Ein Thema von dadu · begonnen am 5. Nov 2004 · letzter Beitrag vom 28. Jan 2005
Antwort Antwort
Seite 1 von 2  1 2      
dadu

Registriert seit: 17. Apr 2003
Ort: Dattenberg
102 Beiträge
 
Delphi 2005 Personal
 
#1

Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 17:49
Hi Leute!

Ich möchte mp3s bearbeiten(Die Lautstärke der 2 Kanäle angleichen). Habe das bei waves bereits geschafft, jedoch dauert das mp3 nach wav konvertieren allein 20sec + das Bearbeiten (20sec) + zurückwandeln (20sec).
Dauert also für eine mp3 eine Minute, das dauert mir viel zu lange, also bin ich auf die Idee gekommen das de-,bzw. encoden der mp3 wegzulassen und die mp3 direkt zu bearbeiten.

Weiß aber nicht ob das möglich ist, da ich bei google nix Vernünftiges über die Komprimierung einer mp3 gefunden habe.

Hat irgendwer Informartionen über das Komprimierungsverfahren einer mp3, oder andere Lösungsvorschläge??

Wäre sehr dankbar, da das analysieren einer wav schon super funktioniert.

DaDu
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 18:06
Das Verfahren ist das gleiche wie bei JPEG. Da allerdings die eigentliche Information als solche nicht vorliegt, sondern in ihren Frequenz/Phasen-Raum transformiert ist, kannst du auf die Daten in dem Sinne keinen Einfluss nehmen. Du musst immer decoden-bearbeiten-encoden. Sicherlich kann man ein paar Dinge tun, die eh im Frequenzraum statt finden (Filter, Rauschunterdrückung evtl.), aber eine Pegeländerung gehört da nicht zu. (Was die Filter angeht ist's auch eher eine Vermutung, dass man das auch so machen könnte. Müsste eigentlich...).

Du wirst also um deine jetzige Methode nicht rum kommen

Gruss,
Fabian
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
axelf98

Registriert seit: 27. Aug 2003
Ort: Ennepetal
440 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 18:17
Zitat von dadu:
mp3 nach wav konvertieren 20sec + das Bearbeiten (20sec) + zurückwandeln (20sec)
Das IST recht schnell... Andere Wave-Programme sind weder beim Öffnen noch beim Wiederumwandeln von MP3 schneller! Das Lautermachen ist da vielleicht schon eine Idee schneller, aber insgesamt musst du dich wohl mit der Geschwindigkeit begnügen.

Aber noch als Tipp: Bei Google suchenMP3Gain, das kann direkt die Lautstärke der Mp3 verändern..
  Mit Zitat antworten Zitat
dadu

Registriert seit: 17. Apr 2003
Ort: Dattenberg
102 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 18:24
@axelf98

Mp3Gain passt nur die Lautstärke der gesamten Datei an:
Mein Problem ist, das ich einige mp3s habe bei denen der rechte Kanal doppelt so laut ist wie der linke. Also rechne ich die jeweilige Lautstärke der Kanäle (also den Unterschied) aus und passe sie danach aneinander an.

DaDu

PS: Aber du hast Recht das Mp3Gain die Lautstärke DIREKT ändert und deshalb ziemlich schnell ist.
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#5

Re: Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 18:25
Jeder MPEG-Frame speichert zusätzlich einen Byte-Wert für die Lautstärke. Wenn du den Frame dekodiert hast, kannst du anschließend diesen Wert verändert. Dabei musst du nicht neukodieren, d.h. die Qualität nimmt nicht bei jeder Lautstärkeänderung ab.
Ein Tool, daß dieses Verfahren anwendet, ist z.B. MP3Gain.
  Mit Zitat antworten Zitat
dadu

Registriert seit: 17. Apr 2003
Ort: Dattenberg
102 Beiträge
 
Delphi 2005 Personal
 
#6

Re: Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 18:29
Hi Tommie-lie,
kannst du etwas konkreter werden, wie man den Lautstärke-Wert rausbekommt, bzw. ändert?
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#7

Re: Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 18:44
Zitat von dadu:
kannst du etwas konkreter werden, wie man den Lautstärke-Wert rausbekommt, bzw. ändert?
Nein, dazu müsste ich, genau wie du, den Quellcode von MP3Gain erstmal durchschauen oder mir die MPeg-Dokumentation durchlesen.
Ich selbst habe sowas noch nie per Hand gemacht. Ich weiß nur, daß es ein Byte-Wert für jeden eiznelnen Frame ist, der die Lautstärke in 1,5dB-Schritten beim Dekodieren verändern kann, und daß es verwendet wird, um bei leisen Sequenzen bessere Tonkontraste zu haben, damit das ohnehin schon leise Geräusch nicht vollends im Rauschen der Komprimierung untergeht.
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 19:08
Damit ist aber nicht der DC-Anteil gemeint, oder? Sollte mich wundern

Ansonsten wäre das sicherlich eine Möglichkeit - ist nur die Frage, ob das dem eigentlichen Sinn dieses Bytes entspricht. Nicht dass man sich damit evtl. komische Effekte rein holt. Klingt aber erstmal gut!

(Wobei ich immer noch skeptisch bin, da die Lautstärken ja eigentlich mit eincodiert sind... auch die niedrigeren )
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Benutzerbild von titus
titus

Registriert seit: 5. Apr 2004
Ort: Freiburg
232 Beiträge
 
#9

Re: Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 19:20
JPEG benutzt die Huffmann-Komprimierungsmethode wenn ich mich nicht tauesche, oder?
Daniel L.
'-'
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#10

Re: Mp3 Komprimierungsverfahren - mp3s direkt bearbeiten

  Alt 5. Nov 2004, 19:23
Zitat von dizzy:
Damit ist aber nicht der DC-Anteil gemeint, oder? Sollte mich wundern
Hm?

Zitat von dizzy:
ist nur die Frage, ob das dem eigentlichen Sinn dieses Bytes entspricht.
Nein, der eigentliche Zweck des Bytes ist die Amplitudenverstärkung für sätrkere Signalpegel in den Frames. Aber wenn man alle Frames gleichmäßig (relativ!) anhebt, kriegt man ohne Übersteuerung eine Erhähung der Lautstärke hin, also why not use what we've been given?
Zitat von dizzy:
Nicht dass man sich damit evtl. komische Effekte rein holt.
Nein, höchstens wenn man die Frames nicht in den richtigen Relationen zueinander anpasst. Wenn man also die Lautstärken 5-10-5 hat, wäre der zweite Frame doppelt so laut. Setzt man jetzt 5 drauf, hätte man 10-15-10, vorbei ist's mit der doppelten Lautstärke. Erschwerend kommt dazu, daß Dezibel nicht linear, sondern logarithmisch ist. Aber wenn man das beachtet, gibt es keine "komischen" Effekte.

Zitat von dizzy:
(Wobei ich immer noch skeptisch bin, da die Lautstärken ja eigentlich mit eincodiert sind... auch die niedrigeren )
Ja, natürlich sind Lautstärkewechsel einkodiert. Aber Frame-based, und nicht über den gesamten Stream verteilt. nur kann man diese eben für jeden Frame ändern. Anschaungsbeispiel des Prinzips: Beim kodieren wird jeder Frame auf die maximale Lautstärke gebracht. Dadurch sind die Pegelwechsel besonders ausgeprägt und gehen so beim dekodieren und downsamplen nicht in Artefakten unter. Um jetzt das ganze wieder auf die Lautsätrkeverteilung des ursprünglichen Liedes zu bringen, daß ja nicht die ganze Zeit über voll aufgedreht ist, sondern z.B. leise anfängt und leise wieder aufhört, werden nach dem Dekodieren eines jeden Frames die Amplituden (die ja jetzt wieder in der PCM-Waveform sind und nicht mehr als MPeg-Stream) entsprechend dem im Frame angegebenen Wert verstärkt bzw abgeschwächt, wodurch man das ursprüngliche Lied erhält.

Edit:
Zur Normalisierung kann man zum Beispiel Replay Gain benutzen: http://www.replaygain.org/
Zitat von titus:
JPEG benutzt die Huffmann-Komprimierungsmethode wenn ich mich nicht tauesche, oder?
Zusammen mit verlustbehafteten psychovisuellen Komprimierungsverfahren, ja. Aber JPEG hat an sich nicht wirklich was mit MPEG zu tun, höchstens das Grundprinzip, daß alles, worauf der Mensch sowieso nicht achtet, unter den Tisch fällt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz