RobotWebTools / web_video_server

HTTP Streaming of ROS Image Topics in Multiple Formats
http://ros.org/wiki/web_video_server
BSD 3-Clause "New" or "Revised" License
281 stars 191 forks source link

Fix usage of deprecated libavcodec functions #150

Closed bjsowa closed 1 month ago

bjsowa commented 1 month ago

Fixes web_video_server for Jazzy and Rolling distributions.

I also dropped backward compatibility with old ffmpeg libraries to make the code easier to maintain.

bjsowa commented 1 month ago

@sea-bass This seems to work on Humble and Ubuntu 22.04 but Segfaults on Rolling on Ubuntu 24.04 when trying to use vp8, vp9 or h264 compression (mjpeg streaming works). Backtrace shows the seg fault occurs in avformat_write_header function. I want to fix this issue before merging this PR. Any help would be apprieciated.

bjsowa commented 1 month ago

I think I've got this finally working. Checked on Humble, Iron, Jazzy and Rolling. I can't get H264 to work (it never worked for me) but all of the other stream types (mjpeg, png, ros_compressed, vp8, vp9) are working.

bjsowa commented 1 month ago

av_lockmgr_register has been deprecated and does nothing since ffmpeg 4.0 (Ubuntu 20.04 uses ffmpeg 4.2.7) so I think we can safely remove it.