Closed gargolito closed 2 weeks ago
FFMpeg has support to fully utilize the SRT protocol
libavformat/libsrt.c
Example:
container = av.open(srt://ipaddress:port?mode=caller)
This will currently fail with "unable to open file"
Tried to open an srt video stream in caller mode
container = av.open(srt://IPADDRESS:PORT/?mode=caller)
ffmpeg -hide_banner -loglevel error -re -stream_loop -1 -i SOME_VIDEO_FILE -c copy -map 0 -f mpegts srt://localhost:5765/?mode=listener
PyAV v12.3.0 library configuration: --disable-static --enable-shared --libdir=/tmp/vendor/lib --prefix=/tmp/vendor --disable-alsa --disable-doc --disable-libtheora --disable-mediafoundation --enable-fontconfig --enable-gmp --enable-gnutls --enable-libaom --enable-libbluray --enable-libdav1d --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libspeex --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxcb --enable-libxml2 --enable-lzma --enable-zlib --enable-version3 --enable-libopenh264 --disable-libx264 library license: LGPL version 3 or later libavcodec 60. 31.102 libavdevice 60. 3.100 libavfilter 9. 12.100 libavformat 60. 16.100 libavutil 58. 29.100 libswresample 4. 12.100 libswscale 7. 5.100
v12.3.0
ffmpeg version 4.4.2-0ubuntu0.22.04.1 Copyright (c) 2000-2021 the FFmpeg developers built with gcc 11 (Ubuntu 11.2.0-19ubuntu1) configuration: --prefix=/usr --extra-version=0ubuntu0.22.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-pocketsphinx --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared libavutil 56. 70.100 / 56. 70.100 libavcodec 58.134.100 / 58.134.100 libavformat 58. 76.100 / 58. 76.100 libavdevice 58. 13.100 / 58. 13.100 libavfilter 7.110.100 / 7.110.100 libswscale 5. 9.100 / 5. 9.100 libswresample 3. 9.100 / 3. 9.100 libpostproc 55. 9.100 / 55. 9.100
I really just need to be able to open srt streams, so that basic functionality would be enough for me.
Overview
FFMpeg has support to fully utilize the SRT protocol
Existing FFmpeg API
libavformat/libsrt.c
Expected PyAV API
Example:
This will currently fail with "unable to open file"
Investigation
Tried to open an srt video stream in caller mode
Reproduction
ffmpeg -hide_banner -loglevel error -re -stream_loop -1 -i SOME_VIDEO_FILE -c copy -map 0 -f mpegts srt://localhost:5765/?mode=listener
Versions
Additional context
I really just need to be able to open srt streams, so that basic functionality would be enough for me.