Cargando clips
| Preguntas frecuentes | Información general | Cargando Clips | Cargando Scripts (en) | Mensajes de error usuales (en) | Procesando contenidos diferentes (en) | Trabajando con YV12 (en) | Procesamiento con plugins de Virtualdub (en) |
¿Qué formato de medios pueden cargarse en AviSynth?
La mayoría de los formatos de audio/vídeo pueden cargarse en AviSynth, pero hay algunas excepciones como flv4 (VP6) y dvr-ms. Si no es pisible cargar un clip en AviSynth, tendrás que convertirlo en algún otro formato que pueda ser cargado. Recuerda elegir un formato en el que tengas una mínima pérdida de calidad como resultado de la conversión.
¿Qué posibilidades existen para cargar mi clip en AviSynth?
En general hay tres formas de cargar tu vídeo en AviSynth:
- usando un filtro interno de AviSynth o un plugin diseñado para un formato específico.
- usando el plugin DirectShowSource.
- usando Graphedit
Asegúrate de que tu clip contiene como máximo un flujo de audio y/o vídeo (quita las pistas de subtítulos y cualquier otro flujo de audio/video). Si quieres cargar un clip que contiene audio y vídeo, tienes dos opciones:
- Extraer el flujo de audio y cargar los flujos separadamente en AviSynth.
- Try to load the clip in AviSynth. This might or might not work. For AVIs, make sure you have a good AVI splitter installed, e.g. Gabest's AVI splitter. (Yes, Windows comes with an own AVI splitter, which will work in most cases.)
When loading a clip into AviSynth it is adviced to follow the following guidelines:
- When it is possible to load your clip into AviSynth using either AviSource or a specific plugin then do so, since this is more reliable than the alternatives which are listed below.
- If the above fails, load your clip using the DirectShowSource plugin.
- If the above fails, create a Graphedit file connecting only the pins necessary to render the file.
- If the above fails, convert your clip into a different format (into one which is supported by AviSynth).
What are the advantages and disadvantages of using DirectShowSource to load your media files?
advantages of DirectShowSource:
- Many video and audio formats are supported through DirectShowSource (have a look at ffdshow for example).
disadvantages of DirectShowSource:
- It's less reliable than AviSource and specific video/audio input plugins.
- Seeking problems.
- It might be much trouble to get specific DirectShow filter doing the decoding for you. In many cases you will have multiple decoders that can decode the same specific format. The one which will be used is the one with the highest merit (see below ...). It might be difficult to ensure that a specific decoder is doing the decoding.
Has AviSynth a direct stream copy mode like VirtualDub?
No, the video and the audio are decompressed when opening them into AviSynth.
There is a modification of AviSynth v2.55 which supports 'direct stream copy' for both video and audio. This modification is called DSynth and can be downloaded here. Perhaps it will be updated and merged into the official AviSynth builds one day.
How do I load AVI files into AviSynth?
Use AviSource to load your AVI files in AviSynth. Example:
AviSource("d:\filename.avi")
or without the audio:
AviSource("d:\filename.avi", false)
If AviSynth is complaining about not being able to load your avi (couldn't decompress ...) you need to install an appropriate codec. GSpot, for example, will tell you what codec you need to install in order to be able to open your avi.
Forcing a decoder being used for loading the clip into AviSynth:
# load your avi using the XviD codec: AviSource("d:\filename.avi", fourCC="XVID") # opens an avi (for example encoded with DivX3) using the XviD Codec
# load your dv-avi using the Canopus DV Codec: AviSource("d:\filename.avi", fourCC="CDVC")
Can I load video with audio from AVI into AviSynth?
It is always possible to demux your audio from the AVI file and load it separately in AviSynth using an audio decoder, but in some cases (for example: AVI with MP2/MP3/AC3/DTS audio) it is possible to load it directly in AviSynth.
For loading your AVI with audio you need (1) a VfW (Video for Windows) codec to open (that is decode) your video in AviSynth and an ACM (Audio Compression Manager) codec to open your audio in AviSynth. For many video and audio format such codecs are available, but certainly not for all of them.
Here (...) you can find those codecs.
How do I load MPEG-1/MPEG-2/DVD VOB/TS/PVA into AviSynth?
DGDecode is an external plugin and supports MPEG-1, MPEG-2 / VOB, TS (with MPEG-4 ASP video) and PVA streams. Open them into DGIndex first and create a D2V file which can be opened in AviSynth (note that it will only open the video into AviSynth):
A few examples:
# DGDecode: LoadPlugin("d:\dgdecode.dll") MPEG2Source("d:\filename.d2v")
If your transport stream (*.TS) contains MPEG-4 AVC video you need to demux the raw video stream from it and use DGAVCDecode to open it in AviSynth. See here for its usage.
How do I load QuickTime files into AviSynth?
There are two ways to load your quicktime movies into AviSynth (and also RawSource for uncompressed movs): QTSource and QTReader. The former one is very recent and able to open many quicktime formats (with the possibility to open them as YUY2), but you need to install QuickTime player in order to be able to use this plugin. The latter one is very old, no installation of a player is required in order to be able to open quicktime formats in AviSynth.
QTSource:
You will need Quicktime 6 for getting video only or Quicktime 7 for getting audio and video.
# YUY2 (default): QTInput("FileName.mov", color=2) # with audio (in many cases possible with QuickTime 7) QTInput("FileName.mov", color=2, audio=true) # raw (with for example a YUYV format): QTInput("FileName.mov", color=2, mode=1, raw="yuyv") # dither = 1; converts raw 10bit to 8bit video (v210 = 10bit uyvy): QTInput("FileName.mov", color=2, dither=1, raw="v210")
QTReader:
If that doesn't work, or you don't have QuickTime, download the QTReader plugin (can be found in Dooms download section):
LoadVFAPIPlugin("C:\QTReader\QTReader.vfp", "QTReader") QTReader("C:\quicktime.mov")
How do I load raw source video files into AviSynth?
The external plugin RawSource supports all kinds of raw video files with the YUV4MPEG2 header and without header (video files which contains YUV2, YV16, YV12, RGB or Y8 video data).
Examples:
# This assumes there is a valid YUV4MPEG2-header inside: RawSource("d:\yuv4mpeg.yuv") # A raw file with RGBA data: RawSource("d:\src6_625.raw",720,576,"BGRA") # You can enter the byte positions of the video frames directly (which can be found with yuvscan.exe). # This is useful if it's not really raw video, but e.g. uncompressed MOV files or a file with some kind of header: RawSource("d:\yuv.mov", 720, 576, "UYVY", index="0:192512 1:1021952 25:21120512 50:42048512 75:62976512")
How do I load RM/RMVB (RealMedia) into AviSynth?
RM/RMVB (RealMedia / RealMedia Variable Bitrate usually containing Real Video/Audio): install the rmvb splitter and the Real codecs by installing RealPlayer/RealAlternative. Create the script:
DirectShowSource("d:\clip.rmvb", fps=25, convertfps=true) # adjust fps if necessary
How do I load Windows Media Video into AviSynth?
WMV/ASF (Windows Media Video / Advanced Systems Format; usually containing WMV/WMA) is not fully supported by ffdshow, so you will have to install wmv codecs. Get WMF SDK v9 for W2K or later for XP/Vista which contains the codecs (and the DMO wrappers necessary to use DMO filters in DirectShow). (Note that Microsoft's own VC1 codec is not supported in W2K since you need WMF SDK v11.) Create the script:
DirectShowSource("d:\clip.wmv", fps=25, convertfps=true) # adjust fps if necessary
How do I load MP4/MKV/M2TS/EVO into AviSynth?
If your media file contains MPEG-4 ASP video, then there are two possibilities of opening them in AviSynth:
1) Using the plugin FFmpegSource. All included dlls except ffmpegsource.dll should be copied to your system folder. Some examples:
# loading the video from MKV and returning a timecodes file: FFmpegSource("D:\file.mkv", vtrack = -1, atrack = -2, timecodes="timecodes_file.txt") # loading the video and audio from a MP4 and returning a timecodes file: FFmpegSource("D:\file_aac.mp4", vtrack = -1, atrack = -1, timecodes="timecodes_file.txt")
It's important to generate a timecode file to check whether the video has a constant framerate. If this the case you don't need to use the timecode file and you can process the video in any way you want. However, many non-AVI files contain video with a variable framerate (AVI files always have a constant framerate though), and in that case you need to make sure of the following two things:
- Don't change the framerate and the number of frames in AviSynth. If you don't this (and you don't change the timecodes file manually) your video and audio in your final encoding will be out of sync.
- Use the timecodes file again when muxing your encoded video and audio. If you don't do this your video and audio in your final encoding will be out of sync.
The main reason for this is that FFmpegSource opens the video as it is. It doesn't add or remove frames to convert it to constant framerate video to ensure sync.
2) Get ffdshow and open the MP4/MKV file with DirectShowSource, thus for example
DirectShowSource("D:\file.mkv", convertfps=true) # convertfps=true ensures sync if your video has a variable framerate
If your media file contains MPEG-4 AVC video, then there are two possibilities of opening them in AviSynth:
1) Using the plugin FFmpegSource. See above for its usage. At the moment, the supported containers are: AVI, MKV and MP4.
2) Get DGAVCDecode. At the moment you need to extract the raw stream (*.264) from the container first (using MKVExtract, MPlayer, TSRemux or whatever program can extract those streams). Open the raw stream file in DGAVCIndex to create an index file (say track1.dga). Open the index file in AviSynth:
# raw video demuxed from M2TS (Blu-ray BDAV MPEG-2 transport streams) LoadPlugin("C:\Program Files\AviSynth\plugins\DGAVCDecode.dll") AVCSource("D:\track1.dga")
How do I load WAVE PCM files into AviSynth?
Use WavSource to open your WAVE PCM files (assuming that they are smaller than 4GB):
WavSource("D:\file.wav")
Use the plugin RaWav to open your WAVE PCM files that are larger than 4GB (Sonic Foundry Video Editor Wave64 Files or W64). The RaWavSource() load method are now included in NicAudio 2.0 (see next point):
RaWavSource("D:\file.w64", SampleRate=96000, SampleBits=24, Channels=6) # or when a W64 header is present RaWavSource("D:\file.w64", SampleRate=6) # assumes the presence of a W64 header and reads the needed info from it
How do I load MP1/MP2/MP3/MPA/AC3/DTS/LPCM into AviSynth?
Use NicAudio for loading your MP1/MP2/MP3/MPA/AC3/DTS/LPCM in AviSynth:
Some examples:
LoadPlugin("C:\Program Files\AviSynth25\plugins\NicAudio.dll") # AC3 audio: V = BlankClip(height=576, width=720, fps=25) A = NicAC3Source("D:\audio.AC3") # A = NicAC3Source("D:\audio.AC3", downmix=2) # downmix to stereo AudioDub(V, A)
# LPCM audio (48 kHz, 16 bit and stereo): V = BlankClip(height=576, width=720, fps=25) A = NicLPCMSource("D:\audio.lpcm", 48000, 16, 2) AudioDub(V, A)
How do I load aac/flac/ogg files into AviSynth?
Use ffdshow (set AAC to libfaad or realaac), and use
DirectShowSource("d:\audio.aac")
For WAVE_FORMAT_EXTENSIBLE, ogg, flac, wma, and other formats, BassAudio and the correspoding libraries and Add-Ons can be used. Note that BassAudioSource can decode stereo aac/mp4, but it can't decode multichannel aac.
Some examples:
bassAudioSource("C:\ab\Dido\001 Here With Me.m4a")
bassAudioSource("C:\ab\Dido\001 Here With Me.aac")
How do I load pictures into AviSynth?
1) Use ImageReader or ImageSource to load your pictures into AviSynth (can load the most popular formats, except GIF and animated formats). See internal documentation for information.
2) Use the Immaavs plugin for GIF, animated formats and other type of pictures.
# single picture: immareadpic("x:\path\pic.bmp") # animation: immareadanim("x:\path\anim.gif") # image sequence: immareadseq("x:\path\seq%3.3d.png", start=5, stop=89, fps=25, textmode=2, posx=50, posy=50)
| Preguntas frecuentes | Información general | Cargando Clips | Cargando Scripts (en) | Mensajes de error usuales (en) | Procesando contenidos diferentes (en) | Trabajando con YV12 (en) | Procesamiento con plugins de Virtualdub (en) |