[FFmpeg-devel] [PATCH] avformat: Add AMQP version 0-9-1 protocol support

Timo Rothenpieler timo at rothenpieler.org
Sun Feb 9 15:32:11 EET 2020


On 01.02.2020 20:02, Andriy Gelman wrote:
> From: Andriy Gelman <andriy.gelman at gmail.com>
> 
> Supports connecting to a RabbitMQ broker via AMQP version 0-9-1. The
> broker can redistribute content to other clients based on "exchange" and
> "routing_key" fields.
> ---
> 
> Compilation notes:
> - Requires librabbitmq-dev package (on ubuntu).
> - The pkg-config libprabbitmq.pc has a corrupt entry.
>    The line "Libs.private: rt; -lpthread" should be changed to
>    "Libs.private: -lrt -lpthread". I have made a bug report.
> - Compile FFmpeg with --enable-librabbitmq
> 
> To run an example:
> #
> # Start the RabbitMQ broker (I use docker)
> # The following starts the broker on localhost:5672. A webui is available on
> # localhost:15672 (User/password is "guest" by default)
> #
> $ docker run -it --rm --name rabbitmq -p 127.0.0.1:5672:5672 -p 127.0.0.1:15672:15672 rabbitmq:3-management
> 
> #
> # Stream to the RabbitMQ broker:
> #
> $ ./ffmpeg -re -f lavfi -i yuvtestsrc -codec:v libx264 -f mpegts -routing_key "amqp" -exchange "amq.direct" amqp://localhost:5672
> 
> #
> # Connect any number of clients to fetch data from the broker:
> # The clients are filtered by the routing_key and exchange.
> #
> $ ./ffplay -routing_key "amqp" -exchange "amq.direct" amqp://localhost:5672
> 

Isn't RabbitMQ, and any message broker like it, more designed to pipe 
short messages around?
I'd imagine it's really not designed to shovel huge amounts of data, 
like a full on video stream, around.


More information about the ffmpeg-devel mailing list