PDA

View Full Version : plugin [rawsource] - latest version update ?


vhelp
2nd December 2005, 02:06
In a forum topic regarding raw yuv images that I am currently working in,
I had given reference to the Topic and Tool/Plugin to use in working with
the raw yuv images I have put together from scratch, RGB->YUV->Sampling
(this is for educational purposes)

I am not sure of the latest version and features, but I made reference to
the following anyway, so that those who are interested could go further :scared:

** DOOM9 Thread: YUV-Bitmap Import filter? (http://forum.doom9.org/showthread.php?p=714485#post714485)
** FILE: rawsource_25_dll_20050921.zip (http://www.avisynth.org/warpenterprises/files/rawsource_25_dll_20050921.zip)

I appoligies if this has already been asked, or that there might be a
dedicated page for this w/out my knowledge. I did use the search, and
that is how I found the above :)

..oh yes, thank you.

-vhelp

WarpEnterprises
23rd December 2005, 21:49
latest version is rawsource_25_dll_20051013.zip

you can refer it version-independent with

http://www.avisynth.org/warpenterprises#rawsource

vhelp
23rd December 2005, 23:18
Couple of questions..

Could you give me an exampe of a 'header' layout for a raw yuv image ?
..for instance, the byte layout or something.

The web site that rawsource points to in the archive file does not give
an example of one. I'm assuming we are still talking *single* raw yuv
images ?

I was thinking about incorpoating a header in the raw yuv images I make
with my yuv tool. This would make it easier (less steps) for dealing
with external plugins and preporations of the scipts.. ie,

# xx = "YV12"
# xx = "UYVY"
# xx = "VYUY"

# xx = "YUYV"
# xx = "YVYU"

# xx = "Y41P"
# xx = "YV12"
xx = "I420"

fname = "..\image.yuv"
loadplugin("..\rawsource.dll")

RawSource( fname, 008, 008, xx )
RawSource( fname, 016, 016, xx )
RawSource( fname, 064, 064, xx )
RawSource( fname, 352, 240, xx )
RawSource( fname, 704, 480, xx )
RawSource( fname, 720, 480, xx )
# RawSource( fname, 1024, 668, xx )
# RawSource( fname, 1216,912, xx )

Loop(30)
AssumeFPS(29.97)

In the above (standardized) script I use, whenever I want to open a particular
raw yuv image file, I will un-REM the pixel type I want.. ie, I420 for instance.
Then, I go to the line that matches my criteria, for rawsource() and use that one
for finally reading the image.. ie, RawSource( fname, 720, 480, xx )

This has been working for me during my many battles and testings of raw yuv
images. But, its getting to be a pain, having to setup the rawsource() criteria.
And, I thought about the header you mentioned above. If I were to incorporate
that into the raw yuv images I create, then the next time, I can just drag the
yuv.avs script file onto my virtualDub icon and open from like that. This would
speed up my debugging process.


The next thing I would like to note (request) is..

In addition to Supported pixel_types:

YUYV, YVYU, UYVY, VYUY (interleaved horizontally subsampled resulting in AviSynth's YUV2)
YV16 (planar horizontally subsampled, it is converted to AviSynth's YUV2)
I420, YV12 (planar horizontally and vertically subsampled resulting in AviSynth's YV12)


Could the 4:1:1 color space (pixel_type) be added into this plugin ?

I think that it would be the last missing format of the most common ones.
And, could both Planar and Interleave be supported ?

(Plus, I could finally finish up on my yuv tool, a project that has been
slow, due to missing pieces crusual to this project of mine, and 411 being
one of them)

I think that is, for now :)

Thank you.

-vhelp

WarpEnterprises
27th December 2005, 23:02
(1) RawSource is meant for image STREAMS, not for single images, although it works on 1-image-streams
(2) the header-format was discussed in the other thread (well-hidden, it seems). Look here http://forum.doom9.org/showthread.php?p=635865#post635865 , there's an attachement.
(3) What exactly do you mean with 411? The same as YV12 but stored as interleaved? Are there some examples around? As long as it can mapped to an AviSynth format it sould be not much work.

frencher
2nd December 2011, 14:05
Hi all and WarpEnterprises,


I use AviSynth script:

Video = RawSource("\\.\pipe\folder\stream.yuv", 1920, 1080, "I420").assumefps(25,1)

RawSource.dll return (Last version here (http://avisynth.org/warpenterprises/))

avs [error]: File too small for even one frame

How activate the pipe function :confused:, i newbies with C++ :helpful:

Thank for all :)

frencher
3rd December 2011, 12:18
This dll exists but there are image problem that it is not usable :(

http://i41.tinypic.com/5e70ht.png

Same Avisynth script:
Video = RawSource("\\.\pipe\folder\stream.yuv", 1920, 1080, "I420").assumefps(25,1)

WarpEnterprises
3rd December 2011, 14:56
Maybe you should start with describing what kind of raw stream you are trying to load.
You don't need a "pipe" function, you don't need C++ knowledge, either.
The path in your example is strange, try using a fully qualified path name (without ".").

frencher
3rd December 2011, 15:09
Upload demo done in PM with RawSource.dll

Last RawSource.cpp have (rawsource_25_dll_20060728)
\\#include <stdlib.h>
If i change by
#include <stdlib.h>
:stupid: ?