x265enc: "error: Encode x265 failed."

Christoph Kuhr christoph.kuhr at web.de
Tue Jul 16 14:31:12 UTC 2019


Hi *,

I am trying to encode some single images to a x265 transport stream.


My pipeline:

gst-launch-1.0 --gst-debug-level=3 multifilesrc
location="/home/christoph/GStreamer/rectTest/rect_3840x2160-200x200_%d.png"
start-index=1 stop-index=359  do-timestamp=true
caps="image/png,framerate=\(fraction\)50/1" ! pngdec ! videoconvert !
videorate !
video/x-raw,framerate=\(fraction\)50/1,width=3840,height=2160 ! x265enc
tune=6 speed-preset=9 log-level=4 ! video/x-h265 ! h265parse ! mp4mux !
filesink location=rect_2160p50.mp4
`

The Standard Output:

     Setting pipeline to PAUSED ...
     Pipeline is PREROLLING ...
     0:00:00.026009622 32463      0x14ad0a0 FIXME           videodecoder
gstvideodecoder.c:944:gst_video_decoder_drain_out:<pngdec0> Sub-class
should implement drain()
     x265 [info]: HEVC encoder version 3.1+4-4f6dde51a5db
     x265 [info]: build info [Linux][GCC 5.4.0][64 bit][noasm] 8bit
     x265 [info]: using cpu capabilities: none!
     x265 [warning]: halving the quality when psy-rd is enabled for 444
input. Setting cbQpOffset = 6 and crQpOffset = 6
     x265 [info]: Main 4:4:4 profile, Level-5.1 (Main tier)
     x265 [info]: Thread pool created using 8 threads
     x265 [info]: Slices                              : 1
     x265 [info]: frame threads / pool features       : 3 / wpp(34 rows)
     x265 [info]: Coding QT: max CU size, min CU size : 64 / 8
     x265 [info]: Residual QT: max TU size, max depth : 32 / 3 inter / 3
intra
     x265 [info]: ME / range / subpel / merge         : star / 57 / 4 / 5
     x265 [info]: Keyframe min / max / scenecut / bias: 25 / 250 / 40 / 5.00
     x265 [info]: Cb/Cr QP Offset                     : 6 / 6
     x265 [info]: Lookahead / bframes / badapt        : 40 / 10 / 2
     x265 [info]: b-pyramid / weightp / weightb       : 1 / 1 / 1
     x265 [info]: References / ref-limit  cu / depth  : 5 / off / off
     x265 [info]: AQ: mode / str / qg-size / cu-tree  : 2 / 0.4 / 32 / 1
     x265 [info]: Rate Control / qCompress            : ABR-2048 kbps / 0.60
     x265 [info]: tools: rect amp rd=6 psy-rd=0.40 rdoq=2 psy-rdoq=1.00
rskip
     x265 [info]: tools: signhide tmvp b-intra strong-intra-smoothing
     x265 [info]: tools: deblock(tC=1:B=1) sao
     0:00:00.034905407 32463      0x14ad0a0 WARN                 x265enc
gstx265enc.c:801:gst_x265_enc_set_level_tier_and_profile:<x265enc0>
error: Encode x265 failed.
     0:00:00.034918185 32463      0x14ad0a0 WARN                 x265enc
gstx265enc.c:801:gst_x265_enc_set_level_tier_and_profile:<x265enc0>
error: Failed to find correct level, tier or profile in VPS
     ERROR: from element /GstPipeline:pipeline0/GstX265Enc:x265enc0:
Encode x265 failed.
     Additional debug info:
     gstx265enc.c(801): gst_x265_enc_set_level_tier_and_profile ():
/GstPipeline:pipeline0/GstX265Enc:x265enc0:
     Failed to find correct level, tier or profile in VPS
     ERROR: pipeline doesn't want to preroll.
     Setting pipeline to NULL ...

     encoded 0 frames
     0:00:00.036385032 32463      0x14ad0a0 WARN            videoencoder
gstvideoencoder.c:685:gst_video_encoder_setcaps:<x265enc0> rejected caps
video/x-raw, width=(int)3840, height=(int)2160,
interlace-mode=(string)progressive, multiview-mode=(string)mono,
multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono,
pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)50/1,
format=(string)Y444
     0:00:00.036421065 32463      0x14ad0a0 WARN                GST_PADS
gstpad.c:4230:gst_pad_peer_query:<capsfilter0:src> could not send sticky
events
     0:00:00.036539387 32463      0x14ad0a0 WARN                GST_PADS
gstpad.c:4230:gst_pad_peer_query:<pngdec0:src> could not send sticky events
     Freeing pipeline ...




My guess is that I have to provide a VPS header after `pngdec`.

Do you agree?
How would I do that?

Thanks for any help!

Best,
Ck


More information about the gstreamer-devel mailing list