fade in/out von audio pcm

  • Was ich möchte: Ein avi (video-divx, audio-pcm) ein- und ausblenden und zwar sowohl video als auch audio. Mit den neuen (1.7.x-)Versionen von VirtualDub ist Video-fade in/out auf smart-render-basis kein Problem mehr.
    Bleibt also noch der Audiostream.

    Frage: Kann ich per avisynth ein quasi NUR audio in/out-gefadetes avi (Video soll von avisynth unberührt bleiben, da kein smart-rendering) an Virtual-Dub serven, wo dann der Video-fade-part im smart rendering-modus übernommen wird?

    Mit geht es primär um Vermeidung eines kpl. Video-reencondings, den Audio-Stream encodiere ich sowieso von pcm in mp3 128 cbr.

    Vielen Dank im vorraus für Eure Antworten,

    Olnima

  • den Audio-Stream encodiere ich sowieso von pcm in mp3 128 cbr.

    Dann nimm doch das AVISynth Script, Encodiere das Audio Extern und binde es per DirectStream in das AVI ein.

    DOS Box Aufruf:

    Code
    avs2wav.exe quelle.avs - | lame.exe -q 1 --cbr -b 128 -m s -c -p --strictly-enforce-ISO -t --noreplaygain - audio.mp3

    so mach ich das.

  • Dann nimm doch das AVISynth Script, Encodiere das Audio Extern und binde es per DirectStream in das AVI ein.

    DOS Box Aufruf:

    Code
    avs2wav.exe quelle.avs - | lame.exe -q 1 --cbr -b 128 -m s -c -p --strictly-enforce-ISO -t --noreplaygain - audio.mp3

    so mach ich das.

    Schön und gut. Aber wo und wann fade ich das audio in und out?

    Mir geht es ja darum, daß ich Video fade in/out im smart-rendering-mode von VDub (ohna alles zu reencodieren) mache. Audio encodiere ich sowieso, soll aber auch gefadet (in und out) werden.
    Olnima


    //edit: sorry, habe mich evtl. etwas schwierig ausgedrückt:
    Ich habe ein kpl. ungefadetes (avi: Video=divx, Audio=pcm) bei dem ich Video UND Audio ein- und ausblenden möchte, OHNE neu-encodieren des Videostreams (da ja bereits divx) und ohne demuxen/muxen. Geht das und wenn ja, wie?

  • Schön und gut. Aber wo und wann fade ich das audio in und out?


    na in AVISynth.

    quelle.avs :

    Code
    avisource("meinvideo_divx_pcm.avi")FadeIO(20)Normalize()ResampleAudio(44100)ConvertAudioTo16bit()


    Encoding:

    Code
    avs2wav.exe quelle.avs - | lame.exe -q 1 --cbr -b 128 -m s -c -p --strictly-enforce-ISO -t --noreplaygain - audio.mp3


    Ich habe ein kpl. ungefadetes (avi: Video=divx, Audio=pcm) bei dem ich Video UND Audio ein- und ausblenden möchte, OHNE neu-encodieren des Videostreams (da ja bereits divx) und ohne demuxen/muxen. Geht das und wenn ja, wie?

    In VDub lädst Du das meinvideo_divx_pcm.avi rein, stellst dort dieses Video-Fade ein. Und unter Audio deaktivierts Du das PCM Audio und lädst zusätzöich das audio.mp3 rein ( muß dann auf DirecktStream stehen).

    So mein theoretischer Gedanke, denn das mit dem smart rendering-modus habe ich noch nie gemacht und versteh es noch nicht, wie dies funktionieren soll.

  • Wenn ich Deinen Ansatz recht verstehe, so wird der Videostream per avisynth neu encodet und der Audiostream demuxt und gemuxt. Genau diese beiden Schritte möchte ich vermeiden :)

    Trotzdem vielen Dank,

    Olnima

    P.S.: Zum smart-rendering: Hier wird nur der Teil des Videos neu codiert, in dem gefadet wird, also z.B. 5 sek. am anfang + 5 sek. am Ende. Der Rest des Videos wird per direct stream copy 1:1 "durchgeschoben".

  • Wenn ich Deinen Ansatz recht verstehe, so wird der Videostream per avisynth neu encodet und der Audiostream demuxt und gemuxt. Genau diese beiden Schritte möchte ich vermeiden :)

    Nö, dann hast Du nicht verstanden, was dort gemacht wird.

    Mit dem AVISynth Script wird das Original Video_Audio.avi geladen. Dann das Audio geFadet und wieder ausgeben.

    Durch AVS2WAV wird nur das Audio geladen und an LAME weitergereicht. LAME encodet dieses Audio stream nach MP3. Und dieses MP3 ist geFadet.

    Das Video wird nirgens Encodet.


    P.S.: Zum smart-rendering: Hier wird nur der Teil des Videos neu codiert, in dem gefadet wird, also z.B. 5 sek. am anfang + 5 sek. am Ende. Der Rest des Videos wird per direct stream copy 1:1 "durchgeschoben".


    schön zu lesen. Aber,
    * wie machst Du das Video Fade? per Plugin?
    * und das wichtigste, was stehlt Du unter Compression ein?

  • Oder einfach ...

    AviSource("I:\DivX.avi")
    FadeIO(25)

    ... mit Vdub laden und als WAV abspeichern. Das Audiofile ist dann "gefadet" und zur Weiterverarbeitung bereit. Katjas Tip ist aber besser weil schon MP3 hinten raus kommt.

    Gruß Gunnar

  • Das Video wird nirgens Encodet.

    Wieder falsch ausgedrückt: Das Video wird zwar nicht encodet aber der Stream wird "uncompressed" bei "direct stream copy", also riesig.

    * wie machst Du das Video Fade? per Plugin?
    * und das wichtigste, was stehlt Du unter Compression ein?

    Video-fade per filter "fill" -> blend. Mit dem neuen "curve-Editor" kannst Du dann bestimmen, wo (zeitl.) dieser Filter angewandt wird. Unter compression stellst Du "smart rendering" und "full processing mode" ein. Damit wird nur dort reencodiert, wo im Video etwas verändert wurde. Beim faden also wird der Anfang und das Ende neu codiert, der Rest läuft durch. Ist wirklich klasse.

  • Wieder falsch ausgedrückt: Das Video wird zwar nicht encodet aber der Stream wird "uncompressed" bei "direct stream copy", also riesig.


    Wo bitte steht hier irgendwo, das Du das Video auf uncompressed stellen sollst, oder das AVISynthScript in VDub laden sollst?

    BITTE lese nochmal alles durch und versuche zu verstehen.


  • Danke Gunnar, aber mit demuxen und muxen gibt es unzählige Möglichkeiten. Dann warte ich halt auf einen audio-curve-editor in VDub :)

    Auf VirtualDub.net gibt es ein Derivat einer 1.4.x-Version von Virtual-Dub, die zum. pcm-Audio faden kann. Leider kann die noch kein smart-rendering :mad:

    Nochmals danke für Eure Ideen,
    Olnima

  • Wo bitte steht hier irgendwo, das Du das Video auf uncompressed stellen sollst, oder das AVISynthScript in VDub laden sollst?

    BITTE lese nochmal alles durch und versuche zu verstehen.

    O.K., O.K. also meinst Du nur demuxen und remuxen ohne encodieren.

    :ichdoof:

  • ich hab nix von demuxen gesprochen, nur das Du das neue Audio einbinden sollst, welches Extern erstellt wird.

    aber was ist denn das anderes als demuxen und muxen???

    Mittels avs2wav wird der audiostream als mp3 demuxt und mittels VDub wieder gemuxt.

  • Variante A: Demux > Encode > Muxen
    [INDENT]demuxen: AVI > VDub > große WAV
    encode: große WAV > lame > MP3
    muxen: MP3 > VDub > AVI[/INDENT]

    Variante B: Encode > Muxen
    [INDENT]encode: AVI > AVISynth > avs2wav > lame > MP3
    muxen: MP3 > VDub > AVI[/INDENT]

    Aber ich seh gerade das man ja beim normalen VDub garkein MP3 etc einbinden kann. RRRRRRR, weiß endlich wieder, warum ich des nicht verwende.

    Sorry für die Umstände, war ja nur ein teo. Gedanke.

    Aber das mit dem Smartrendering muß ich testen, jedoch sehe ich da wenig hoffnung, das das sauber funktioniert. besonders, wenn "User" nicht genau weiß, wie das Original Encodet wurde. Naja erstmal selber testen.

  • demuxen: AVI > VDub > große WAV

    Ähm ... nein.

    Wenn du in der Stream-Liste von VirtualDubMod bei einer AVI mit MP3-Spur "Demux" drückst, wird die Tonspur als MP3 demultiplext. Nicht als PCM-WAV decodiert, so wie du das geschrieben hast.

    Spielt aber für den Fall auch keine so große Rolle mehr...

  • ...encode: AVI > AVISynth > avs2wav > lame > MP3

    ...also für mich ist hier Dein encode ein gleichzeitiges encode und demux...

    aber egal, die avs2wav-Variante läßt sich zumindest sehr gut automatisieren.

    Nochmals danke an alle

    Olnima

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!