Giter VIP home page Giter VIP logo

raspividyuv's Introduction

RaspiVidYUV Documentation

This application is intended to output a raw YUV video stream. Nearly all of the options available for RaspiVid are available for this application with the exception of demo mode and the preview window. To build, this application expects https://github.com/raspberrypi/userland.git to be cloned to /opt/vc/userland. After that:

mkdir build
cd build
cmake ..
make

To run (from base dir):

./bin/raspividyuv -o test.yuv

Camera Control Options

--sharpness,  -sh       | Set image sharpness (-100 to 100)

Set the sharpness of the image, 0 is the default.

--contrast,  -co        | Set image contrast (-100 to 100)

Set the contrast of the image, 0 is the default

--brightness,  -br      | Set image brightness (0 to 100)

Set the brightness of the image, 50 is the default. 0 is black, 100 is white.

--saturation,  -sa      | Set image saturation (-100 to 100)

set the colour saturation of the image. 0 is the default.

--ISO,  -ISO            | Set capture ISO

Not yet implemented

--vstab,  -vs           | Turn on video stabilisation

In video mode only, turn on video stabilisation.

--ev,  -ev              | Set EV compensation

Set the EV compensation of the image. Range is -10 to +10, default is 0.

--exposure,  -ex        | Set exposure mode 

Possible options are:

    off          
    auto          Use automatic exposure mode
    night         Select setting for night shooting
    nightpreview 
    backlight     Select setting for back lit subject
    spotlight    
    sports        Select setting for sports (fast shutter etc)
    snow          Select setting optimised for snowy scenery
    beach         Select setting optimised for beach
    verylong      Select setting for long exposures
    fixedfps      Constrain fps to a fixed value
    antishake     Antishake mode
    fireworks     Select settings

Note that not all of these settings may be implemented, depending on camera tuning.

--awb,  -awb              | Set Automatic White Balance (AWB) mode

Possible options are:

    off           Turn off white balance calculation
    auto          Automatic mode (default)
    sun           Sunny mode
    cloud         Cloudy mode
    shade         Shaded mode
    tungsten      Tungsten lighting mode
    fluorescent   Fluorescent lighting mode
    incandescent  Incandescent lighting mode
    flash         Flash mode
    horizon       Horizon mode

Set an effect to be applied to the image

--imxfx,     -ifx         | Set image effect

Possible options are:

    none           NO effect (default)
    negative       Negate the image
    solarise       Solarise the image
    posterize      Posterise the image
    whiteboard     Whiteboard effect
    blackboard     Blackboard effect
    sketch         Sketch style effect
    denoise        Denoise the image
    emboss         Emboss the image
    oilpaint       Apply an oil paint style effect
    hatch          Hatch sketch style
    gpen          
    pastel         A pastel style effect
    watercolour    A watercolour style effect
    film           Film grain style effect
    blur           Blur the image
    saturation     Colour saturate the image
    colourswap     Not fully implemented
    washedout      Not fully implemented
    posterise      Not fully implemented
    colourpoint    Not fully implemented
    colourbalance  Not fully implemented
    cartoon        Not fully implemented

Colour control

--colfx,  -cfx          | Set colour effect <U:V>

The supplied U and V parameters (range 0 to 255) are applied to the U and Y channels of the image. For example, --colfx 128:128 should result in a monochrome image.

--metering,  -mm        | Set metering mode

Specify the metering mode used for the preview and capture

    average   Average the whole frame for metering.
    spot      Spot metering
    backlit   Assume a backlit image
    matrix    Matrix metering

Application specific settings

RaspiVid

--width,  -w            | Set image width <size>

Width of resulting video. This should be between 64 and 1920.

--height,  -h           | Set image height <size>

Height of resulting video. This should be between 64 and 1080.

--bitrate,  -b          | Set bitrate. 

Use bits per second, so 10MBits/s would be -b 10000000. For H264, 1080p a high quality bitrate would be 15Mbits/s or more.

--output,  -o           | Output filename <filename>.

Specify the output filename. If not specified, no file is saved

--verbose,  -v          | Output verbose information during run

Outputs debugging/information messages during the program run.

--timeout,  -t          | Time before takes picture and shuts down.

The program will run for this length of time, then take the capture (if output is specified). If not specified, this is set to 5seconds

--framerate,  -fps      | Specify the frames per second to record

At present, the minimum frame rate allowed is 2fps, the maximum is 30fps. This is likely to change in the future.

Examples

Video Captures

Image size and preview settings are the same as for stills capture. Default size for video recording is 1080p (1920x1080)

Record a 5s clip with default settings (1080p30)

./raspividyuv -t 5000 -o video.yuv

Record a 5s clip at a specified bitrate (3.5MBits/s)

./raspividyuv -t 5000 -o video.yuv -b 3500000

Record a 5s clip at a specified framerate (5fps)

./raspividyuv -t 5000 -o video.yuv -f 5

raspividyuv's People

Contributors

circpeoria avatar maximus5684 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

raspividyuv's Issues

Error executing raspividYUV

./raspividyuv -t 1000 -o video.yuv -b 3500000
mmal: Failed to write buffer data (0 from 1843200)- aborting
mmal: Failed to write buffer data (8192 from 1843200)- aborting

I'm using rasperry pi 2.

Thanks

raspividYUV will work on bare metal?

raspividYUV will work on bare metal?

I want to run it on Pi Zero 2 bare metal but I saw there that it is using pthreads & much more,
anybody have any idea how tot run it on bare metal?

Error when executing make

I followed the instructions on the readme, but I'm facing an error, wich in all forums say it's because -l order issue, but I'm not familiar with cmake and I can't find where to fix it:

Linking C executable ../bin/raspividyuv
/usr/bin/ld: CMakeFiles/raspividyuv.dir/RaspiVidYUV.c.o: undefined reference to symbol 'sem_init@@GLIBC_2.4'
//lib/arm-linux-gnueabihf/libpthread.so.0: error adding symbols: DSO missing from command line
collect2: ld returned 1 exit status
CMakeFiles/raspividyuv.dir/build.make:165: recipe for target '../bin/raspividyuv' failed
make[2]: *** [../bin/raspividyuv] Error 1
CMakeFiles/Makefile2:60: recipe for target 'CMakeFiles/raspividyuv.dir/all' failed
make[1]: *** [CMakeFiles/raspividyuv.dir/all] Error 2
Makefile:72: recipe for target 'all' failed
make: *** [all] Error 2

It seems adding -lpthread to:
CMakeFiles/raspividyuv.dir/link.txt

worked.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.