Umgewandelte AVI in TS haben verzerrten Ton

FohlenBoy

Commander
Registriert
Juni 2008
Beiträge
2.113
Hallo zusammen,
bis vor kurzem hat das Umwandeln von AVI Dateien in das Receiver kompatiblere TS Format hervorragend geklappt.

Seit ein paar Tagen verhält sich dies allerdings anders.
Obwohl ich nichts verändert habe und die AVIs in ihrem Ist-Zustand eine ganz normale Tonqualität haben, ist diese total verzerrt, wenn man die Dateien umgewandelt hat.

Ich wandele die Sachen immer mit dem X-MediaRecorder um.

Ich verstehe das nicht. Weiß jemand Rat?

Vielen Dank
 
was meinst du mit verzerrt?

lässt die soundqualität nach oder
ist sie zeitlich versetzt?
 
Die Stimmen klingen immer abgehackt, also wie so ein Krächzen ergänzt um Aussetzer.
 
hast du mal ein anderes programm versucht wie "super"?

wird der inhalt des avi container (sound + audiospur) neu encodiert (dauert lange) oder soll der inhalt vom avi container in einen ts container gepackt werden? (entpacken, neu verpacken)

oder einfacher:
welches format liegt bei dem avi vor, divx?
welches format willst du, ts (MPEG 2, AC-3 Standard)?
 
Zuletzt bearbeitet:
Ich habe die Informationen mal beigefügt.

Es funktioniert weder über das angesprochene Tool, als auch über eine Batchdatei, mit der es zuvor auch immer funktionierte.

Soundformat ist mir eigentlich egal, hauptsache es läuft :)
 

Anhänge

  • AVI.jpg
    AVI.jpg
    65,8 KB · Aufrufe: 193
was auffällt ist das bei deinem ts auf dem bild nur 32 Kbps für den audiostream angegeben sind. Das ist zu wenig. Das würde die miese Soundqualität doch erklären, schau mal bitte. oben 192 unten 32.


Hast du ein wenig Ahnung von Videobearbeitung oder weniger? Sind die Begriffe wie h264/x264 XviD/DivX, AAC/AC-3 ein Begriff oder kannst du damit nichts anfangen?

AVI und TS ist kein Format sondern ein Container ähnlich wie ein WinRar oder eine Zip Datei.
Versuch mal mit dem Programm "Super" einen TS Container zu erzeugen.

Für die Videospur stellst du MPEG2 als "Videoformat" mit 3000 Kbps (3MBit/s),
für die Audiospur stellst du AC-3 als "Audioformat" mit 192 Kbps ein.
Das Ganze wird dann in einen TS Container "verpackt".

Welches Format dein Receiver abspielen kann musst du dem Handbuch entnehmen.

Am Ende steht im TS Container MPEG 2 und AC-3 anstatt XviD und MP3
 
Zuletzt bearbeitet:
Hi,
und wie lässt sich das ändern?
Schließlich sind die Ausgangsdateien doch in Ordnung.

Hier mal die Batchdatei:
@echo off
echo Converting %~n1...
"C:\Program Files (x86)\Filme\VLC\vlc.exe" %1 :sout=#std{access=file,mux=ts,dst="E:\%~n1.ts"} --play-and-exit --no-playlist-tree

echo %~n1 converted
pause

Der Sound wird hier doch nirgendwo umgestell und im XMedia Recorder habe ich auch nichts an den Einstellungen verändert bzw. hier kann man glaube ich auch gar nichts am Sound verändern.

Danke
 
Nein hier wird nichts verändert bei dir. dein batch file nimmt den inhalt der avi her und verpackt ihn in einen ts ordner, das sogenannte neuverpacken oder remuxen. dabei entsteht ein fehler

da bei der quelldatei aber nicht das richtige videoformat (xvid) und audioformat (mp3) für den ts-standard vorliegt, wird dein receiver wahrscheinlich nichts damit anfangen können. d.h. du musst es neu encodieren/umwandeln und zwar in mpeg2/ac-3 wie oben beschrieben.

wenn die quelldatei im richtigen format vorliegt kann man sie einfach so wie du das machen willst in einen anderen container verschieben (avi,ts,mpg,mkv,mp4,m2ts sind alles container)

Bsp.: es liegt vor
MKV Container mit Videospur H264/x264 und Audiospur AAC
du willst aber kein mkv, sondern einen mp4 container
-da MP4 Container ebenfalls H264/x264 und AAC standardmäßig sind kannst du einfach den inhalt mit deiner Batch vom mkv zum mp4 "umpacken". das geht aber nur wenn die quelldatei im richtigen video und audioformat vorliegen, in diesem fall H264/AAC

probier es mit SUPER mal.

receiver nehmen meist mpeg2 und ac-3 auf und packen es in ts container.
verstehst du jetzt das problem? du solltest umwandeln.

Also rein theoretisch könnte man alles Mögliche in den ts container rein tun.
Ob es der Receiver dann abspielt ist nicht vom Kürzel TS sondern vom Inhalt abhängig.
So ist das übrigends bei allen Containern und deren Fomaten
 
Zuletzt bearbeitet:
yama03061989 schrieb:
Nein hier wird nichts verändert bei dir. dein batch file nimmt den inhalt der avi her und verpackt ihn in einen ts ordner, das sogenannte neuverpacken oder remuxen. dabei entsteht ein fehler

1) Bei Dutzenden von vorherigen Umwandelungen mit dem AVI Format hat das aber genau mit diesem Batch auch funktioniert, wie kann dieses also fehlerhaft sein?

2) Ich habe eben mal versucht via XMediaRecorder unter "Audio" die Qualität zu erhöhen (Reiter "Bitrate") und das umgewandelte AVI hat dann als TS tatsächlich 192kbps.
Tja, aber was ist nun das Problem:
der Ton verhält sich asynchron, es fällt also beispielsweise jemand um, bevor er soundmäßig geschlagen wurde ;o)
Auch die Auflösung verändert sich....kurz um, ich verstehe nicht, wieso es vorher monatelang funktionierte, ohne dass ich irgendetwas einstellen musste und es jetzt nicht mehr so funktioniert..
 
auf dem bild oben stimmt die auflösung!

das wird am vlc liegen der für das muxen verantwortlich ist laut batch.
wenn alles jetzt klappt, nur der ton asynchron ist, dann muss nur noch der Delay eingestellt werden, siehe hier:


der Ton verhält sich asynchron, es fällt also beispielsweise jemand um, bevor er soundmäßig geschlagen wurde ;o)
was das Asynchrone angeht kann man einen sogenannten "Delay" Wert eintragen (Verzögerung). Das Ganze wird in Millisekunden angegeben. Mit dem Media Player Classic kann man mit der Taste "+" und "-" den Delaywert beim Abspielen eines Videos ermitteln. Anschließend muss er beim ts container in den einstellungen vor dem muxen festgelegt werden. Man kann auch -200 als delay wert angeben, dann kommt der ton 0,2 Sekunden "eher". Das sind bekannte Probleme. Google danach, z.B. "Delay bei TS einstellen"

1) Bei Dutzenden von vorherigen Umwandelungen mit dem AVI Format hat das aber genau mit diesem Batch auch funktioniert, wie kann dieses also fehlerhaft sein?
Ich habe die Batch angeschaut, an ihr liegt es nicht. Es liegt entweder am Quellmaterial oder am VLC.
Vllt mal VLC aktualisieren, keine Ahnung.

Realisiere das Ganze doch einfach mal mit einem anderen Programm. Das habe ich jetzt 3mal geschrieben. Wenn du meine Beiträge gescheit durchgelesen hast, dann müsstest du wissen was zu tun ist. Videobearbeitung ist manchmal weitaus komplexer als eine batchdatei auszuführen. Du solltest dich damit ein wenig auseinandersetzen. Gerade was einzelne Containerformate angeht. Der gängige Standard mp4 und m2ts.

xmedia recode hatte die funktion beim neukodieren die tonspur zu delayen.
d.h. du musst unter Audio den Delay eintragen den du beim Media Player Classic ermittelt hast.
z.B. -200 (0.2Sek)
 
Zuletzt bearbeitet:
yama03061989 schrieb:
was das Asynchrone angeht kann man einen sogenannten "Delay" Wert eintragen (Verzögerung). Das Ganze wird in Millisekunden angegeben. Mit dem Media Player Classic kann man mit der Taste "+" und "-" den Delaywert beim Abspielen eines Videos ermitteln.

Mit "+" und "-" kann man die Delay Time um 10ms vor-zurücksetzen, aber doch nicht den Status Quo ermitteln oder?

Bis ich die Batch vor einigen Wochen erhielt, habe ich alles immer einwandfrei via X-Media-Recorder umwandeln können, von daher bin ich doch relativ flexibel und sah keine Notwendigkeit darin jetzt noch einen dritten Weg aufzutun.

Unter "Audio" kann ich aber nichts bezüglich "Delay" finden, wo meinst du genau?

Danke
 
Du sagtest der ton sei asynchron. hierfür brauchst du nur den delaywert (Verzögerung) und nichts anderes!

dann kannst du doch mit + und - die Audiospur soweit verschieben das es synchron mit der videospur läuft. im player steht ja dann wieviel Millisekunden du die Audiospur bewegt hast z.b. -120ms.

Jetzt musst du einfach das video noch einmal in den ts container muxen, diesmal gibst du den Delaywert vor dem muxen bei deinem Programm ein. Meistens ist es in den Audioeinstellungen zu finden, wo genau das weiß ich nicht.

Er sollte den Delay dann als "festen" Wert in den TS Container mit muxen, sprich dauerhaft.
Anschließend wissen die Player, z.b. VLC, Windows Media Player, etc. das sie die Audiospur um 120 Millisekunden eher abspielen müssen, damit es "synchron" läuft.

Wenn die Audiospur einigermaßen passt (muss nicht auf die zentel millisekunde genau sein) dann hast du den wert ermittelt. ich schau mir immer paar szenen vorne und paar szenen hinten an vom film. wenn die lippen synchron sind dann übernehme ich den wert beim muxen.

In den Optionen vom Media Player Classic steht unter "Ansicht"<"Optionen"<"Tasten"< "Audio Verzögerung +10ms" und "Audio Verzögerung -10ms"

EDIT: Unten links in der Ecke vom Player steht dann "Audio Verzögerung 120ms", im Fenstermodus! Im Vollbildmodus wird es nicht angezeigt!
 
Zuletzt bearbeitet:
Zurück
Oben