Chad Phillips
2018-11-02 15:47:52 UTC
I run videoconferences via FreeSWITCH (https://freeswitch.com), which
provides H264 decoding/encoding via a wrapper module around libav. H264 is
a requirement for iOS access to these videoconferences, as that's the only
WebRTC codec it supports.
Upon upgrading from Debian Jessie to Debian Stretch, H264 encoding of
outbound video to iOS devices no longer works properly, either not sending
any video packets at all, or when it does, with a lot of delay (4-5
seconds) and freezing.
Since I compile FreeSWITCH from source, and am running the exact same code
base on Jessie and Stretch, I suspect the issue is due to a change in
packages FreeSWITCH depends upon. Since libav is the package FreeSWITCH
leverages to perform the transcoding, and the package versions differ, it
seems a good place to start looking for the issue. Here are the version
differences between Jessie and Stretch:
JESSIE:
Package: libavcodec-extra-56
Version: 6:11.12-1~deb8u1
STRETCH:
Package: libavcodec57
Version: 7:3.2.12-1~deb9u1
Have there been any API or configuration changes between these versions
that might explain the issue I'm experiencing?
Also, if anyone believes they can diagnose and solve this issue directly,
I'd be open to paying for help.
provides H264 decoding/encoding via a wrapper module around libav. H264 is
a requirement for iOS access to these videoconferences, as that's the only
WebRTC codec it supports.
Upon upgrading from Debian Jessie to Debian Stretch, H264 encoding of
outbound video to iOS devices no longer works properly, either not sending
any video packets at all, or when it does, with a lot of delay (4-5
seconds) and freezing.
Since I compile FreeSWITCH from source, and am running the exact same code
base on Jessie and Stretch, I suspect the issue is due to a change in
packages FreeSWITCH depends upon. Since libav is the package FreeSWITCH
leverages to perform the transcoding, and the package versions differ, it
seems a good place to start looking for the issue. Here are the version
differences between Jessie and Stretch:
JESSIE:
Package: libavcodec-extra-56
Version: 6:11.12-1~deb8u1
STRETCH:
Package: libavcodec57
Version: 7:3.2.12-1~deb9u1
Have there been any API or configuration changes between these versions
that might explain the issue I'm experiencing?
Also, if anyone believes they can diagnose and solve this issue directly,
I'd be open to paying for help.