Giter Club home page Giter Club logo

Comments (15)

K-os avatar K-os commented on May 31, 2024

Thanks for the suggestion. That should be pretty easy to implement. We'll look into that for the next version.
If you are on Linux or MacOS, you can just use named pipes as a workaround:

Create a named pipe and use it as input for your next step (e.g. gzip):

mkfifo yuv_pipe
cat yuv_pipe | gzip - >out.yuv.gz &

Use the named pipe as output for vvdec:

./bin/release-static/vvdecapp -b input.bit -o yuv_pipe

On Windows the concept of named pipes exists also, but I don't know how to create them from the command line and if they are actually accessible as files.

from vvdec.

1480c1 avatar 1480c1 commented on May 31, 2024

On Windows the concept of named pipes exists also, but I don't know how to create them from the command line and if they are actually accessible as files.

Named pipes are not accessible through the command line and you will need to compile your own program to make one or somehow try to do so through powershell and C#

from vvdec.

K-os avatar K-os commented on May 31, 2024

Named pipes are not accessible through the command line and you will need to compile your own program to make one or somehow try to do so through powershell and C#

Ah, ok. Thanks for the info.

from vvdec.

baxxtor avatar baxxtor commented on May 31, 2024

I believe I may have used to wrong term. Instead of a named pipe, I was hoping stdin and stdout support could be implement in a future release of vvdec and vvenc. Essentially you could take vvcdec or vvcenc and stdout or stdin into or out of another application. For example: vvdec -b bitstream.file -o - | vlc -

Hopefully, this clarifies the feature request.

Thank You.

from vvdec.

K-os avatar K-os commented on May 31, 2024

Yes, I understood that you suggested stdout support. My suggestion was just a workaround how to get the same effect without the support implemented in the decoder.
If you run cat on the named pipe, you will basically get the YUV output on stdout.

from vvdec.

baxxtor avatar baxxtor commented on May 31, 2024

K-os,

Thank you. I was able to get named pipes functional with vvencFFapp (instead of vvencapp - this still fails - could be my fault) and vvdecapp after numerous hours of attempts. Stdin and Stdout would be a welcome and useful addition especially for Windows users and overall use of simplicity.

I just want to express - this codec is by the far the most impressive I have witnessed: bit rate and quality are beyond impressive.

from vvdec.

K-os avatar K-os commented on May 31, 2024

You're welcome.

I am not sure if you can use the same workaround for vvenc and I have not tested it. Two-pass rate control will definitely not work the way it is currently implemented, because it needs to read the file twice, which naturally does not work with pipes. That might be the reason why you got it running with the vvencFFapp, but not the simpler one: maybe you used a config with single-pass rate control with the FF-app.

from vvdec.

lvaschmidt avatar lvaschmidt commented on May 31, 2024

Is this in progress already or maybe looking for a contributor?

from vvdec.

baxxtor avatar baxxtor commented on May 31, 2024

from vvdec.

adamjw24 avatar adamjw24 commented on May 31, 2024

This issue is also already in progress. We will have it ready by next week.

from vvdec.

baxxtor avatar baxxtor commented on May 31, 2024

from vvdec.

adamjw24 avatar adamjw24 commented on May 31, 2024

Fixed in #49

from vvdec.

lp200 avatar lp200 commented on May 31, 2024

Pipe output on windows is probably broken.
The file size was different from the normal output.

vvdecapp -b test.266 -o - > pipe.yuv
pipe.yuv 720,972,850

vvdecapp -b test.266 -o test.yuv
test.yuv 718,848,000

I tried both commands on ubuntu and it worked fine.
Both were the same file size as test.yuv

from vvdec.

1480c1 avatar 1480c1 commented on May 31, 2024

Which shell did you use to run those commands?

from vvdec.

baxxtor avatar baxxtor commented on May 31, 2024

from vvdec.

Related Issues (20)

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.