Coder Social home page Coder Social logo

rolinh / yuvcutter Goto Github PK

View Code? Open in Web Editor NEW
10.0 3.0 3.0 244 KB

Tool to cut the first N frames from a RAW YUV video file (mirror repository)

Home Page: https://projects.gw-computing.net/projects/yuvcutter

License: BSD 3-Clause "New" or "Revised" License

C 100.00%
yuv frame-cutter raw-video yuv-video cli

yuvcutter's Introduction

SYNOPSIS

yuvcutter cuts the first "N" frames from raw YUV video files. "N" is equal to "1" by default but you can easily change it using -N option. YUV supported format are 4:2:0, 4:2:2 and 4:4:4. Note that as this YUV files are raw files with no information on content, you need to specify the video width and height in order for yuvcutter to behave as expected. By default, it assumes the input video is "1920x1080".

Why would I need to cut the first frames from a YUV file you might ask? Here is a typical use case: you have an H264 encoded video file and you want to compute the PSNR by comparing it to the original YUV video that was used as a record source. Therefore, you use the H264/AVC JM reference software to decode the video and compare the resulting YUV file with the original file. However, if you want your computed PSNR to be correct, you need the two videos to start at exactly the same frame each. Here comes yuvcutter as it allows you to cut the first "N" frames of your reference video file so your both YUV files start with the same video frame.

yuvcutter has also the ability to display the number of frames contained in the YUV video file.

BUILD

yuvcutter has not dependy apart from the standard C library. To generate yuvcutter executable, just type the following from the root's directory:

make

To generate the manpage, type the following:

make doc

Please, note that you normally do not have to generate the manual page since I keep an updated copy in man/man1 directory. However, if you want to regenerate the manpage, you will need to have the ronn tool installed on your machine (ronn can be installed as a Ruby gem by typing gem install ronn).

If you want to install yuvcutter on your system, simply type the following:

make install

By default, it will install in "/usr/local" folder but you can change the destination by specifying the "DESTDIR" variable.

yuvcutter's People

Contributors

rolinh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

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.