views:

37

answers:

2

I am reading docs for VLC Command line programming. there I saw

 YUV video output
      --yuv-file=<string>        device, fifo or filename
          device, fifo or filename to write yuv frames too.

What does device and fifo mean? how to specify them?

A: 

It's a named pipe.

Try man mkfifo

Unknown
+3  A: 

A FIFO pipe is a "first in first out" pipe handled by the file system. It is also called a named pipe

Essentially, the file system as a record on it that points to a section of RAM that is used to transfer data through between different processes as if it was an actual disk file it was reading and writing from. Of course, there are different behaviours between normal files and pipes, but that's the general idea.

The FIFO, or "first in, first out" is a queue term, which means the first data written to the pipe is the first data read out.

Now, device is a 'device' in your machine that can be specified to write data to or read data from. This can be something like a network device or a capture/display device (such as VIVO video cards). On *nix systems, a device is something you will find in /dev such as /dev/dvd for a DVD device.

Dan McGrath