LSMASHSource
(→Changelog: add latest changes) |
(→Filters) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{FilterCat5|External_filters|Source_filters|Plugins|Plugins_x64|Deep_color_tools}} | {{FilterCat5|External_filters|Source_filters|Plugins|Plugins_x64|Deep_color_tools}} | ||
{{Filter3 | {{Filter3 | ||
− | | {{Author/VFR-maniac}}, HolyWu | + | |1={{Author/VFR-maniac}}, HolyWu |
− | | 20200728 | + | |2=20200728 |
− | | {{Plugin/LSMASHSource}} | + | |3={{Plugin/LSMASHSource}} |
− | | Source filters | + | |4=Source filters |
− | | [http://en.wikipedia.org/wiki/ISC_license ISC] / binaries are GPL or LGPL | + | |5=[http://en.wikipedia.org/wiki/ISC_license ISC] / binaries are GPL or LGPL |
|6=[http://forum.doom9.org/showthread.php?t=167435 Doom9 Thread]}} | |6=[http://forum.doom9.org/showthread.php?t=167435 Doom9 Thread]}} | ||
<br> | <br> | ||
Line 24: | Line 24: | ||
{{PluginFilterRow|LSMASHSource|LSMASHAudioSource| | {{PluginFilterRow|LSMASHSource|LSMASHAudioSource| | ||
Uses libavcodec as an audio decoder and L-SMASH as a demuxer. Recommended for MP4, MOV, [http://en.wikipedia.org/wiki/ISO_base_media_file_format ISO Base Media] and its derived file formats.<br> | Uses libavcodec as an audio decoder and L-SMASH as a demuxer. Recommended for MP4, MOV, [http://en.wikipedia.org/wiki/ISO_base_media_file_format ISO Base Media] and its derived file formats.<br> | ||
− | One advantage over ''' | + | One advantage over '''LWLibavAudioSource''' and [[FFmpegSource]] is that it doesn't need to create an index file for its supported formats. |
| | | | ||
}} | }} | ||
{{PluginFilterRow|LSMASHSource|LSMASHVideoSource| | {{PluginFilterRow|LSMASHSource|LSMASHVideoSource| | ||
Uses libavcodec as a video decoder and L-SMASH as a demuxer. Recommended for MP4, MOV, [http://en.wikipedia.org/wiki/ISO_base_media_file_format ISO Base Media] and its derived file formats.<br> | Uses libavcodec as a video decoder and L-SMASH as a demuxer. Recommended for MP4, MOV, [http://en.wikipedia.org/wiki/ISO_base_media_file_format ISO Base Media] and its derived file formats.<br> | ||
− | One advantage over ''' | + | One advantage over '''LWLibavVideoSource''' and [[FFmpegSource]] is that it doesn't need to create an index file for its supported formats. |
| [[RGB24]], [[RGB32]], [[YUY2]], [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]] | | [[RGB24]], [[RGB32]], [[YUY2]], [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]] | ||
}} | }} | ||
Line 43: | Line 43: | ||
|} | |} | ||
<br> | <br> | ||
+ | |||
== Examples == | == Examples == | ||
* Combining '''LSMASHVideoSource''' + '''LSMASHAudioSource''' | * Combining '''LSMASHVideoSource''' + '''LSMASHAudioSource''' | ||
Line 66: | Line 67: | ||
video = LSMASHVideoSource(path, | video = LSMASHVideoSource(path, | ||
\ fpsnum=fpsnum, fpsden=fpsden, | \ fpsnum=fpsnum, fpsden=fpsden, | ||
− | \ format=format | + | \ format=format) |
return (atrack==-2) ? video: AudioDub(video, | return (atrack==-2) ? video: AudioDub(video, | ||
\ LSMASHAudioSource(path, track=atrack)) | \ LSMASHAudioSource(path, track=atrack)) | ||
Line 101: | Line 102: | ||
</div> | </div> | ||
<br> | <br> | ||
+ | |||
== Changelog == | == Changelog == | ||
<span style="color:red">'''Note:'''</span> the following versions are dual interface, they support both AviSynth and [[VapourSynth]]. Also, it now supports [[Avisynthplus_color_formats|native high bit-depth]] in [[AviSynth+]], the <tt>"stacked"</tt> parameter has been removed. Starting with r935+26-20190811, parameter <tt>"cachefile"</tt> has been added to both LWLibavAudioSource and LWLibavVideoSource. | <span style="color:red">'''Note:'''</span> the following versions are dual interface, they support both AviSynth and [[VapourSynth]]. Also, it now supports [[Avisynthplus_color_formats|native high bit-depth]] in [[AviSynth+]], the <tt>"stacked"</tt> parameter has been removed. Starting with r935+26-20190811, parameter <tt>"cachefile"</tt> has been added to both LWLibavAudioSource and LWLibavVideoSource. | ||
Line 109: | Line 111: | ||
!class="unsortable" width=12%| Version | !class="unsortable" width=12%| Version | ||
!class="unsortable"| Changes | !class="unsortable"| Changes | ||
+ | |- | ||
+ | |20210728 | ||
+ | | | ||
+ | *LWLibavVideoSource/LWLibavAudioSource/LWLibavSource: Add argument cachedir. (AkarinVS) | ||
+ | *LWLibavVideoSource/LWLibavSource: Respect mpeg2 soft pulldown flag in more cases. (AkarinVS) | ||
+ | *LWLibavVideoSource/LWLibavSource: If repeat=1/true and the input video requested repeat, but the source filter is somehow unable to obey it, fail explicitly instead of silently returning a VFR clip with a constant (but wrong) fps. To revert to the previous behavior, set repeat=2. (AkarinVS) | ||
+ | *VapourSynth: Add a lsmas.Version() function to retrieve the version info of the plugin. (AkarinVS) | ||
+ | *LSMASHVideoSource/LWLibavVideoSource/LibavSMASHSource/LWLibavSource: Improve decoding of m2ts files. (AkarinVS) | ||
+ | *LSMASHAudioSource/LWLibavAudioSource: Add argument drc_scale. | ||
+ | |||
+ | Build: | ||
+ | *FFmpeg 4.4@de1132a; | ||
+ | *dav1d 0.9.0; | ||
+ | *nv-codec-headers 11.0.10.2; | ||
+ | *mfx_dispatch 1.35; | ||
+ | *xxHash 0.8.0; | ||
+ | *l-smash@18a9ed2. | ||
|- | |- | ||
|20210423 | |20210423 |
Latest revision as of 04:34, 7 June 2024
Abstract | |
---|---|
Author | VFR-maniac, HolyWu |
Version | 20200728 |
Download | L-SMASH-Works |
Category | Source filters |
License | ISC / binaries are GPL or LGPL |
Discussion | Doom9 Thread |
Contents |
[edit] Description
LSMASHSource is a source plugin for AviSynth/AviSynth+. It uses FFmpeg (libavcodec) to decode all supported audio and video formats. For a complete list see official FFmpeg documentation.
[edit] Requirements
- [x86]: AviSynth+ or AviSynth 2.6
- [x64]: AviSynth+
- Supported color formats: RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24, YV411
[edit] Filters
Filter | Description | Color format |
---|---|---|
LSMASHAudioSource |
Uses libavcodec as an audio decoder and L-SMASH as a demuxer. Recommended for MP4, MOV, ISO Base Media and its derived file formats. |
|
LSMASHVideoSource |
Uses libavcodec as a video decoder and L-SMASH as a demuxer. Recommended for MP4, MOV, ISO Base Media and its derived file formats. |
RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24, YV411 |
LWLibavAudioSource |
Uses libavcodec as an audio decoder and libavformat as a demuxer. |
|
LWLibavVideoSource |
Uses libavcodec as a video decoder and libavformat as a demuxer. |
RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24, YV411 |
[edit] Examples
- Combining LSMASHVideoSource + LSMASHAudioSource
#LoadPlugin("LSMASHSource.dll") ################################## ## @ atrack - audio track number. Default auto. If -2, ignore audio. ## @ fpsnum, fpsden - framerate. Default auto. ## @ format - force specified output pixel format. Default auto. ## (see documentation for valid color formats) ## ## function LSmashSource2(string path, int "atrack", \ int "fpsnum", int "fpsden", \ string "format") { atrack = Default(atrack, 0) fpsnum = Default(fpsnum, 0) fpsden = Default(fpsden, 1) format = Default(format, "") video = LSMASHVideoSource(path, \ fpsnum=fpsnum, fpsden=fpsden, \ format=format) return (atrack==-2) ? video: AudioDub(video, \ LSMASHAudioSource(path, track=atrack)) }
- Combining LWLibavVideoSource + LWLibavAudioSource
#LoadPlugin("LSMASHSource.dll") ################################## ## @ atrack - audio track number. Default auto. If -2, ignore audio. ## @ fpsnum, fpsden - framerate. Default auto. ## @ format - force specified output pixel format. Default auto. ## (see documentation for valid color formats) ## @ cache - if true (the default), create an index file. ## ## function LibavSource2(string path, int "atrack", \ int "fpsnum", int "fpsden", \ string "format", bool "cache") { atrack = Default(atrack, -1) fpsnum = Default(fpsnum, 0) fpsden = Default(fpsden, 1) cache = Default(cache, true) format = Default(format, "") video = LWLibavVideoSource(path, \ fpsnum=fpsnum, fpsden=fpsden, format=format, \ cache=cache) return (atrack==-2) ? video: AudioDub(video, \ LWLibavAudioSource(path, stream_index=atrack, cache=cache)) }
[edit] Changelog
Note: the following versions are dual interface, they support both AviSynth and VapourSynth. Also, it now supports native high bit-depth in AviSynth+, the "stacked" parameter has been removed. Starting with r935+26-20190811, parameter "cachefile" has been added to both LWLibavAudioSource and LWLibavVideoSource.
Version | Changes |
---|---|
20210728 |
Build:
|
20210423 |
|
20210421 |
|
20200728 |
|
20200726 |
|
20200531 |
|
20200322 |
|
20200207 |
|
20200118 |
|
20200111 |
|
20191127 |
|
20191116 |
|
20191115 |
|
20190917 |
|
20190914 |
|
20190910 |
|
20190903 |
|
r935+34-20190829 |
|
r935+33-20190826 |
|
r935+31-20190820 |
|
r935+26-20190811 |
|
r935+26-20190712 |
|
[edit] External Links
- Doom9 Forum - LSMASHSource discussion.
- GitHub - Source code repository, original (VFR-maniac)
- GitHub - Source code repository, updated (HolyWu)
- Dropbox - Download repository by the_weirdo,
also includes LSMASHSource compiled against Libav, see here for more information (no longer updated). - MediaFire - LSMASHSource for Windows XP [5].
Back to External Filters ←