Git Product home page Git Product logo

Comments (14)

tianjunwork avatar tianjunwork commented on June 6, 2024

@tnti Thx for your feedback.
Currently, app expects FrameToBeEncoded(-n) if the input is not file.
Does it ok for you?
You can try pull request (Support reading from pipe) to unblock you.

from svt-hevc.

tnti avatar tnti commented on June 6, 2024

@tianjunwork
FFMPEG prompt error message:
av_interleaved_write_frame(): Broken pipe
Error writing trailer of pipe:: Broken pipe
frame= 2 fps=0.4 q=-0.0 Lsize= 4478kB time=00:00:00.08 bitrate=439714.7kbits/s speed=0.0156x
video:6075kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Conversion failed!

from svt-hevc.

tianjunwork avatar tianjunwork commented on June 6, 2024

@tnti According to https://ffmpeg.org/ffmpeg-protocols.html#pipe, pipe is supported on *nix system. Using - as a filename to mean stdin/stdout is a convention that a lot of programs use.
This pull request works on Linux and get same error on Windows.
Did you ever get ffmpeg output pipe working on Windows? Could you show me an example?

from svt-hevc.

tnti avatar tnti commented on June 6, 2024

@tianjunwork
example:
ffmpeg.exe -i "%~dpn1.mp4" -nostdin -f rawvideo -pix_fmt yuv420p - | ebHevcEncApp.exe -w 1920 -h 1080 -n 100 -i stdin -b "%~dpn1.hevc"
I don't have this error with other encoders on Windows.
FFMPEG is from https://ffmpeg.zeranoe.com/builds/.

After using -i -, the following error message is displayed:

SVT-HEVC Encoder v1.2.0
Platform: 64 bit
Compiler: VS17
APP Build date: Oct 20 2018 14:52:52
Error instance 1: Invalid Input File
Unprocessed tokens: -

Error in configuration, could not begin encoding! ...
Encoder finished
av_interleaved_write_frame(): Invalid argument
Error writing trailer of pipe:: Invalid argument
frame= 1 fps=0.0 q=-0.0 Lsize= 3038kB time=00:00:00.04 bitrate=596605.0kbits/s speed=5.96x
video:3038kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%
Conversion failed!

from svt-hevc.

tianjunwork avatar tianjunwork commented on June 6, 2024

SVT sample app doesn't follow convention of using - as a filename to mean stdin/stdout.
-i can only be followed by "stdin" or a filename.

from svt-hevc.

tnti avatar tnti commented on June 6, 2024

Using -i stdin is still reporting an error.

ffmpeg.exe -i "%~dpn1.mp4" -nostdin -f rawvideo -pix_fmt yuv420p - | ebHevcEncApp.exe -w 1920 -h 1080 -n 100 -i stdin -b "%~dpn1.hevc"

SVT-HEVC Encoder v1.2.0
Platform: 64 bit
Compiler: VS17
APP Build date: Oct 21 2018 21:24:35
LIB Build date: Oct 21 2018 21:24:16

Number of cores available: 8
Number of PPCS 90
ffmpeg version N-92202-gf72b9904fe Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 8.2.1 (GCC) 20181017
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth
libavutil 56. 19.101 / 56. 19.101
libavcodec 58. 33.101 / 58. 33.101
libavformat 58. 19.100 / 58. 19.100
libavdevice 58. 4.105 / 58. 4.105
libavfilter 7. 33.101 / 7. 33.101
libswscale 5. 2.100 / 5. 2.100
libswresample 3. 2.100 / 3. 2.100
libpostproc 55. 2.100 / 55. 2.100
Encoding Input #0, avisynth, from 'E:\Seishun Buta Yarou wa Bunny Girl Senpai no Yume wo Minai 03.mkv.avs':
Duration: 00:25:00.00, start: 0.000000, bitrate: 0 kb/s
Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1920x1080, 23.98 fps, 23.98 tbr, 23.98 tbn, 23.98 tbc
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> rawvideo (native))
Output #0, rawvideo, to 'pipe:':
Metadata:
encoder : Lavf58.19.100
Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1920x1080, q=2-31, 596600 kb/s, 23.98 fps, 23.98 tbn, 23.98 tbc
Metadata:
encoder : Lavc58.33.101 rawvideo
10034 fps=0.0 q=-0.0 size= 103275kB time=00:00:01.41 bitrate=596600.3kbits/s speed=2.81x
Error encoding at channel 1! Check error log file for more details ...
Encoder finished
av_interleaved_write_frame(): Broken pipe
Error writing trailer of pipe:: Broken pipe
frame= 44 fps=8.0 q=-0.0 Lsize= 132308kB time=00:00:01.83 bitrate=590611.8kbits/s speed=0.334x
video:133650kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Conversion failed!

The encoded code stream has an error.

from svt-hevc.

tianjunwork avatar tianjunwork commented on June 6, 2024

I tried with the ffmpeg build you provided https://ffmpeg.zeranoe.com/builds/ (ffmpeg version N-92226-g2797bd5c81). I can't not reproduce the issue of corrupted video.
Below error doesn't matter. It is reported by ffmpeg when SVT app finish encoding and terminate the pipe.
av_interleaved_write_frame(): Broken pipe
Error writing trailer of pipe:: Broken pipe

SVT encoder did report "Error encoding at channel 1! Check error log file for more details ..." Which I've no idea what it is.
To separate the issues, could you just run SVT encoder with a regular yuv file input with the same cmd input?

from svt-hevc.

tnti avatar tnti commented on June 6, 2024

Using the yuv input encoder results everything works fine.

from svt-hevc.

tianjunwork avatar tianjunwork commented on June 6, 2024

@tnti Thanks for your input. Please try the updated patch.

from svt-hevc.

tnti avatar tnti commented on June 6, 2024

@tianjunwork
Can be used normally.

from svt-hevc.

ahmad-punch avatar ahmad-punch commented on June 6, 2024

av_interleaved_write_frame(): Invalid argument
Error writing trailer of pipe:: Invalid argument

Objective: converting an mp4 video to gif with smallest possible size.
Command trying to run:
ffmpeg -i SampleInput.mp4 -vf "fps=10,scale=480:-1:flags=lanczos" -c:v pam -f image2pipe - | convert -delay 10 -loop 0 -layers optimize sample1.gif

Another command that i tried that resulted in the same error:
ffmpeg -i input.mp4 -vf "fps=10,scale=480:-1:flags=lanczos" -c:v pam -f image2pipe - | convert -delay 5 -loop 0 -dither None -colors 80 "frames/ffout*.png" -fuzz "40%" -layers OptimizeFrame "output.gif"

Complete terminal output:
C:\Ahmad\ImageVideoStitch> ffmpeg -i SampleVideos/video1/stackandFullwithAspectRatio.mp4 -vf "fps=10,scale=480:-1:flags=lanczos" -c:v pam -f image2pipe - | convert -delay 10 -loop 0 -layers optimize SampleVideos/video1/sample8_10fps_withConvert.gif
Invalid Parameter - 10
ffmpeg version git-2020-03-03-60b1f85 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 9.2.1 (GCC) 20200122
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray
--enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
libavutil 56. 42.100 / 56. 42.100
libavcodec 58. 73.102 / 58. 73.102
libavformat 58. 39.101 / 58. 39.101
libavdevice 58. 9.103 / 58. 9.103
libavfilter 7. 77.100 / 7. 77.100
libswscale 5. 6.100 / 5. 6.100
libswresample 3. 6.100 / 3. 6.100
libpostproc 55. 6.100 / 55. 6.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'SampleVideos/video1/stackandFullwithAspectRatio.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.39.101
Duration: 00:00:36.02, start: 0.000000, bitrate: 2295 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 2162 kb/s, 29.55 fps, 1000k tbr, 1000k tbn, 2000k tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 129 kb/s (default)
Metadata:
handler_name : SoundHandler
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> pam (native))
Press [q] to stop, [?] for help
Output #0, image2pipe, to 'pipe:':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.39.101
Stream #0:0(und): Video: pam, rgb24, 480x270 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 10 fps, 10 tbn, 10 tbc (default)
Metadata:
handler_name : VideoHandler
encoder : Lavc58.73.102 pam
av_interleaved_write_frame(): Invalid argument
Error writing trailer of pipe:: Invalid argument

frame= 1 fps=0.0 q=-0.0 Lsize= 380kB time=00:00:00.10 bitrate=31109.0kbits/s speed=0.246x
video:380kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%
Conversion failed!

from svt-hevc.

tianjunwork avatar tianjunwork commented on June 6, 2024

Hi @ahmad-punch, is this something to do with svt-hevc?

from svt-hevc.

ahmad-punch avatar ahmad-punch commented on June 6, 2024

Hi, no... my bad. Just saw the errors were identical and it involved ffmpeg so posted my query here.
Any ways thanks :P.

from svt-hevc.

tianjunwork avatar tianjunwork commented on June 6, 2024

Hi @ahmad-punch, no problem:)

from svt-hevc.

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.