Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
12th December 2020, 21:48 | #1 | Link |
Registered User
Join Date: Sep 2007
Posts: 5,377
|
How to pipe a YUVA format ?
How to pipe a YUVA format ? (with alpha channel) Such as yuva444p or yuva420p ? or ayuv etc...
ffmpeg's yuv4mpegpipe does not support alpha vspipe does not support alpha with --y4m headers rawvideo pipes can work, but without headers, so this means the other application requires raw input support Background: I'm trying to get a YUVA pipe (from avisynth or vapoursynth) into libavif (avifenc.exe) . Supposedly it " can already encode and decode all AOM supported YUV formats and bit depths (with alpha)."; and it supports stdin, but I can't get pipes in with alpha . It can read a RGBA png sequence and work from that (but then you have less control over how the RGB=> YUV conversion is performed) |
12th December 2020, 21:54 | #2 | Link |
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,420
|
The only other real alternative to yuv4mpegpipe is NUT (which is actually superior to y4m on several fronts*), but good luck finding something other than libavformat-based stuff that accepts it.
*NUT can do (Planar) RGB and audio. Seems to work with alpha formats too. |
12th December 2020, 21:56 | #3 | Link | |
Registered User
Join Date: Sep 2007
Posts: 5,377
|
Quote:
|
|
13th December 2020, 23:01 | #10 | Link |
Registered User
Join Date: Sep 2007
Posts: 5,377
|
avs2pipemod-1.1.1 seems like it's close to working, the y4mp format is detected correctly YUV444 with alpha by avifenc, but avifenc says "Y4M frame header too large: (stdin)"
Code:
"avs2pipemod64" -y4mp "YUVA444P.avs" | "avifenc" --speed 8 --stdin "out_speed8_avs2pipemod.avif" Code:
avs2pipemod[info]: writing 30 frames of 10/1 fps, 256x256, sar 0:0, YUVA-444-planar-8bit progressive video. Successfully loaded: (stdin) AVIF to be written: (Lossy) * Resolution : 256x256 * Bit Depth : 8 * Format : YUV444 * Alpha : Present * Range : Limited * Color Primaries: 1 * Transfer Char. : 13 * Matrix Coeffs. : 6 * ICC Profile : Absent (0 bytes) * XMP Metadata : Absent (0 bytes) * EXIF Metadata : Absent (0 bytes) * Transformations: None Encoding with AV1 codec 'aom' speed [8], color QP [0 (Lossless) <-> 10 (High)], alpha QP [0 (Lossless) <-> 0 (Lossless)], tileRowsLog2 [0], tileColsLog2 [0], 1 worker thread(s), please wait... * Encoding frame 1 [1/1 ts]: (stdin) * Encoding frame 1 [1/1 ts]: (stdin) Y4M frame header too large: (stdin) avs2pipemod[info]: finished, wrote 0 frames [0%]. avs2pipemod[info]: total elapsed time is 0.234 sec. avs2pipemod[error]: only wrote 0 of 30 frames. Last edited by poisondeathray; 13th December 2020 at 23:17. |
|
|