Hi,

this patch adds runtime command support for the CUDA overlay filter
overlay_cuda, so that the x/y overlay position can be changed at
runtime without recreating the filter graph.


In particular:


- mark the "x" and "y" options as AV_OPT_FLAG_RUNTIME_PARAM, so they
  can be updated via process_command();
- implement overlay_cuda_process_command() to re-parse the expression
  for "x" or "y" when receiving a "x" or "y" command;
- keep x_expr / y_expr in sync with runtime changes, so that later
  reconfiguration continues to use the updated expressions.


If parsing of a new expression fails, the old expression is kept and an
error is logged, so existing pipelines are not broken.


This enables controlling overlay_cuda with sendcmd/zmq, for example:


    -vf "overlay_cuda@ov0=x=W/4:y=H/4,zmq"


    echo "overlay_cuda@ov0" x "W/2" | zmqsend
    echo "overlay_cuda@ov0" y "H/2" | zmqsend


Tested with a simple dual-input pipeline using CUDA frames, and
verified that changing x/y at runtime updates the overlay position
without interrupting the stream.


Patch generated against current master.


Regards,
Wei Minghui (??????)

Attachment: 0001-avfilter-overlay_cuda-add-runtime-command-support-for-x-y.patch
Description: Binary data

_______________________________________________
ffmpeg-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to