Opened 5 months ago

Closed 2 months ago

#11062 closed defect (duplicate)

ZMQ protocol throws "lacks prefix"

Reported by: Ruben van de Ven Owned by:
Priority: normal Component: avformat
Version: unspecified Keywords: zmq
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
Since updating libavformat to 5.1.5 outputting to a zmq stream stopped working. See the command below, which is similar to the protocols documentation. The error is:

% ffmpeg -re -i ~/input.m4v  -c:v libx264 -f mpegts  zmq:tcp://0.0.0.0:5555 

[zmq @ 0x55986eddddc0] URL tcp://0.0.0.0:5556 lacks prefix
zmq:tcp://0.0.0.0:5556: Invalid argument

I traced the message to the commit 8dc091daee4532264c8c06e5a081d35b8892ba18

This seems to be the offending line:

if (av_strstart(uri, "zmq:", &uri)) {

From my limited understanding of the av_string docs, should this not be a negated statement as the uri should _always_ be prefixed with "zmq:"?

How to reproduce:

% ffmpeg -re -i ~/input.m4v  -c:v libx264 -f mpegts  zmq:tcp://0.0.0.0:5555 
ffmpeg version 5.1.5-0+deb12u1 Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 12 (Debian 12.2.0-14)

Downgrading to libavformat 5.1.4 fixes the issue.

Let me know if you need any additional info.

Change History (2)

comment:1 by popperwin, 3 months ago

Hello
I have the exact same issue, and it seems like the commit Ruben showed is the culprit.
Will this issue be resolved in the next version of ffmpeg?

comment:2 by Marton Balint, 2 months ago

Resolution: duplicate
Status: newclosed

Duplicate of #11134.

Note: See TracTickets for help on using tickets.