mirror of
https://github.com/home-assistant/core.git
synced 2025-07-13 16:27:08 +00:00
Make homekit RTP/RTCP source ports more deterministic (#99989)
This commit is contained in:
parent
59e87c0864
commit
739eb28b90
@ -79,7 +79,7 @@ VIDEO_OUTPUT = (
|
|||||||
"-ssrc {v_ssrc} -f rtp "
|
"-ssrc {v_ssrc} -f rtp "
|
||||||
"-srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params {v_srtp_key} "
|
"-srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params {v_srtp_key} "
|
||||||
"srtp://{address}:{v_port}?rtcpport={v_port}&"
|
"srtp://{address}:{v_port}?rtcpport={v_port}&"
|
||||||
"localrtcpport={v_port}&pkt_size={v_pkt_size}"
|
"localrtpport={v_port}&pkt_size={v_pkt_size}"
|
||||||
)
|
)
|
||||||
|
|
||||||
AUDIO_OUTPUT = (
|
AUDIO_OUTPUT = (
|
||||||
@ -92,7 +92,7 @@ AUDIO_OUTPUT = (
|
|||||||
"-ssrc {a_ssrc} -f rtp "
|
"-ssrc {a_ssrc} -f rtp "
|
||||||
"-srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params {a_srtp_key} "
|
"-srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params {a_srtp_key} "
|
||||||
"srtp://{address}:{a_port}?rtcpport={a_port}&"
|
"srtp://{address}:{a_port}?rtcpport={a_port}&"
|
||||||
"localrtcpport={a_port}&pkt_size={a_pkt_size}"
|
"localrtpport={a_port}&pkt_size={a_pkt_size}"
|
||||||
)
|
)
|
||||||
|
|
||||||
SLOW_RESOLUTIONS = [
|
SLOW_RESOLUTIONS = [
|
||||||
|
@ -187,11 +187,11 @@ async def test_camera_stream_source_configured(
|
|||||||
"yuv420p -r 30 -b:v 299k -bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f "
|
"yuv420p -r 30 -b:v 299k -bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f "
|
||||||
"rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
"rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
||||||
"zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
"zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
||||||
"srtp://192.168.208.5:51246?rtcpport=51246&localrtcpport=51246&pkt_size=1316 -map 0:a:0 "
|
"srtp://192.168.208.5:51246?rtcpport=51246&localrtpport=51246&pkt_size=1316 -map 0:a:0 "
|
||||||
"-vn -c:a libopus -application lowdelay -ac 1 -ar 24k -b:a 24k -bufsize 96k -payload_type "
|
"-vn -c:a libopus -application lowdelay -ac 1 -ar 24k -b:a 24k -bufsize 96k -payload_type "
|
||||||
"110 -ssrc {a_ssrc} -f rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
"110 -ssrc {a_ssrc} -f rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
||||||
"shnETgfD+7xUQ8zRdsaytY11wu6CO73IJ+RZVJpU "
|
"shnETgfD+7xUQ8zRdsaytY11wu6CO73IJ+RZVJpU "
|
||||||
"srtp://192.168.208.5:51108?rtcpport=51108&localrtcpport=51108&pkt_size=188"
|
"srtp://192.168.208.5:51108?rtcpport=51108&localrtpport=51108&pkt_size=188"
|
||||||
)
|
)
|
||||||
|
|
||||||
working_ffmpeg.open.assert_called_with(
|
working_ffmpeg.open.assert_called_with(
|
||||||
@ -344,7 +344,7 @@ async def test_camera_stream_source_found(
|
|||||||
"yuv420p -r 30 -b:v 299k -bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f "
|
"yuv420p -r 30 -b:v 299k -bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f "
|
||||||
"rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
"rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
||||||
"zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
"zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
||||||
"srtp://192.168.208.5:51246?rtcpport=51246&localrtcpport=51246&pkt_size=1316"
|
"srtp://192.168.208.5:51246?rtcpport=51246&localrtpport=51246&pkt_size=1316"
|
||||||
)
|
)
|
||||||
|
|
||||||
working_ffmpeg.open.assert_called_with(
|
working_ffmpeg.open.assert_called_with(
|
||||||
@ -507,11 +507,11 @@ async def test_camera_stream_source_configured_and_copy_codec(
|
|||||||
"-map 0:v:0 -an -c:v copy -tune zerolatency -pix_fmt yuv420p -r 30 -b:v 299k "
|
"-map 0:v:0 -an -c:v copy -tune zerolatency -pix_fmt yuv420p -r 30 -b:v 299k "
|
||||||
"-bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f rtp -srtp_out_suite "
|
"-bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f rtp -srtp_out_suite "
|
||||||
"AES_CM_128_HMAC_SHA1_80 -srtp_out_params zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
"AES_CM_128_HMAC_SHA1_80 -srtp_out_params zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
||||||
"srtp://192.168.208.5:51246?rtcpport=51246&localrtcpport=51246&pkt_size=1316 -map 0:a:0 "
|
"srtp://192.168.208.5:51246?rtcpport=51246&localrtpport=51246&pkt_size=1316 -map 0:a:0 "
|
||||||
"-vn -c:a copy -ac 1 -ar 24k -b:a 24k -bufsize 96k -payload_type 110 -ssrc {a_ssrc} "
|
"-vn -c:a copy -ac 1 -ar 24k -b:a 24k -bufsize 96k -payload_type 110 -ssrc {a_ssrc} "
|
||||||
"-f rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
"-f rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
||||||
"shnETgfD+7xUQ8zRdsaytY11wu6CO73IJ+RZVJpU "
|
"shnETgfD+7xUQ8zRdsaytY11wu6CO73IJ+RZVJpU "
|
||||||
"srtp://192.168.208.5:51108?rtcpport=51108&localrtcpport=51108&pkt_size=188"
|
"srtp://192.168.208.5:51108?rtcpport=51108&localrtpport=51108&pkt_size=188"
|
||||||
)
|
)
|
||||||
|
|
||||||
working_ffmpeg.open.assert_called_with(
|
working_ffmpeg.open.assert_called_with(
|
||||||
@ -580,11 +580,11 @@ async def test_camera_stream_source_configured_and_override_profile_names(
|
|||||||
"-map 0:v:0 -an -c:v h264_v4l2m2m -profile:v 4 -tune zerolatency -pix_fmt yuv420p -r 30 -b:v 299k "
|
"-map 0:v:0 -an -c:v h264_v4l2m2m -profile:v 4 -tune zerolatency -pix_fmt yuv420p -r 30 -b:v 299k "
|
||||||
"-bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f rtp -srtp_out_suite "
|
"-bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f rtp -srtp_out_suite "
|
||||||
"AES_CM_128_HMAC_SHA1_80 -srtp_out_params zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
"AES_CM_128_HMAC_SHA1_80 -srtp_out_params zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
||||||
"srtp://192.168.208.5:51246?rtcpport=51246&localrtcpport=51246&pkt_size=1316 -map 0:a:0 "
|
"srtp://192.168.208.5:51246?rtcpport=51246&localrtpport=51246&pkt_size=1316 -map 0:a:0 "
|
||||||
"-vn -c:a copy -ac 1 -ar 24k -b:a 24k -bufsize 96k -payload_type 110 -ssrc {a_ssrc} "
|
"-vn -c:a copy -ac 1 -ar 24k -b:a 24k -bufsize 96k -payload_type 110 -ssrc {a_ssrc} "
|
||||||
"-f rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
"-f rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
||||||
"shnETgfD+7xUQ8zRdsaytY11wu6CO73IJ+RZVJpU "
|
"shnETgfD+7xUQ8zRdsaytY11wu6CO73IJ+RZVJpU "
|
||||||
"srtp://192.168.208.5:51108?rtcpport=51108&localrtcpport=51108&pkt_size=188"
|
"srtp://192.168.208.5:51108?rtcpport=51108&localrtpport=51108&pkt_size=188"
|
||||||
)
|
)
|
||||||
|
|
||||||
working_ffmpeg.open.assert_called_with(
|
working_ffmpeg.open.assert_called_with(
|
||||||
@ -654,11 +654,11 @@ async def test_camera_streaming_fails_after_starting_ffmpeg(
|
|||||||
"-map 0:v:0 -an -c:v h264_omx -profile:v high -tune zerolatency -pix_fmt yuv420p -r 30 -b:v 299k "
|
"-map 0:v:0 -an -c:v h264_omx -profile:v high -tune zerolatency -pix_fmt yuv420p -r 30 -b:v 299k "
|
||||||
"-bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f rtp -srtp_out_suite "
|
"-bufsize 1196k -maxrate 299k -payload_type 99 -ssrc {v_ssrc} -f rtp -srtp_out_suite "
|
||||||
"AES_CM_128_HMAC_SHA1_80 -srtp_out_params zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
"AES_CM_128_HMAC_SHA1_80 -srtp_out_params zdPmNLWeI86DtLJHvVLI6YPvqhVeeiLsNtrAgbgL "
|
||||||
"srtp://192.168.208.5:51246?rtcpport=51246&localrtcpport=51246&pkt_size=1316 -map 0:a:0 "
|
"srtp://192.168.208.5:51246?rtcpport=51246&localrtpport=51246&pkt_size=1316 -map 0:a:0 "
|
||||||
"-vn -c:a copy -ac 1 -ar 24k -b:a 24k -bufsize 96k -payload_type 110 -ssrc {a_ssrc} "
|
"-vn -c:a copy -ac 1 -ar 24k -b:a 24k -bufsize 96k -payload_type 110 -ssrc {a_ssrc} "
|
||||||
"-f rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
"-f rtp -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params "
|
||||||
"shnETgfD+7xUQ8zRdsaytY11wu6CO73IJ+RZVJpU "
|
"shnETgfD+7xUQ8zRdsaytY11wu6CO73IJ+RZVJpU "
|
||||||
"srtp://192.168.208.5:51108?rtcpport=51108&localrtcpport=51108&pkt_size=188"
|
"srtp://192.168.208.5:51108?rtcpport=51108&localrtpport=51108&pkt_size=188"
|
||||||
)
|
)
|
||||||
|
|
||||||
ffmpeg_with_invalid_pid.open.assert_called_with(
|
ffmpeg_with_invalid_pid.open.assert_called_with(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user