Depend on gstreamer-rs main to add a feature for v1_22

This commit is contained in:
Vivienne Watermeier 2022-04-14 14:50:33 +02:00 committed by Mathieu Duponchelle
parent ee950499d5
commit f091e90b24
5 changed files with 309 additions and 266 deletions

390
Cargo.lock generated
View file

@ -13,9 +13,9 @@ dependencies = [
[[package]]
name = "anyhow"
version = "1.0.56"
version = "1.0.57"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4361135be9122e0870de935d7c439aef945b9f9ddd4199a553b5270b49c82a27"
checksum = "08f9b8508dccb7687a1d6c4ce66b2b0ecef467c94667de27d8d7fe1f8d2a9cdc"
[[package]]
name = "async-attributes"
@ -54,9 +54,9 @@ dependencies = [
[[package]]
name = "async-global-executor"
version = "2.0.3"
version = "2.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c026b7e44f1316b567ee750fea85103f87fcb80792b860e979f221259796ca0a"
checksum = "c290043c9a95b05d45e952fb6383c67bcb61471f60cfa21e890dba6654234f43"
dependencies = [
"async-channel",
"async-executor",
@ -131,9 +131,9 @@ dependencies = [
[[package]]
name = "async-process"
version = "1.3.0"
version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "83137067e3a2a6a06d67168e49e68a0957d215410473a740cea95a2425c0b7c6"
checksum = "cf2c06e30a24e8c78a3987d07f0930edf76ef35e027e7bdb063fccafdad1f60c"
dependencies = [
"async-io",
"blocking",
@ -148,9 +148,9 @@ dependencies = [
[[package]]
name = "async-std"
version = "1.10.0"
version = "1.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f8056f1455169ab86dd47b47391e4ab0cbd25410a70e9fe675544f49bafaf952"
checksum = "52580991739c5cdb36cde8b2a516371c0a3b70dda36d916cc08b82372916808c"
dependencies = [
"async-attributes",
"async-channel",
@ -183,9 +183,9 @@ checksum = "30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9"
[[package]]
name = "async-tungstenite"
version = "0.17.1"
version = "0.17.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7922abeade7dd8948c20dfa1f85dc48cc952d2e0791f7c42b8b1cbb07a57129d"
checksum = "a1b71b31561643aa8e7df3effe284fa83ab1a840e52294c5f4bd7bfd8b2becbb"
dependencies = [
"async-native-tls 0.4.0",
"async-std",
@ -313,16 +313,16 @@ dependencies = [
[[package]]
name = "clap"
version = "3.1.6"
version = "3.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d8c93436c21e4698bacadf42917db28b23017027a4deccb35dbe47a7e7840123"
checksum = "47582c09be7c8b32c0ab3a6181825ababb713fde6fff20fc573a3870dd45c6a0"
dependencies = [
"atty",
"bitflags",
"clap_derive",
"clap_lex",
"indexmap",
"lazy_static",
"os_str_bytes",
"strsim",
"termcolor",
"textwrap",
@ -330,9 +330,9 @@ dependencies = [
[[package]]
name = "clap_derive"
version = "3.1.4"
version = "3.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da95d038ede1a964ce99f49cbe27a7fb538d1da595e4b4f70b8c8f338d17bf16"
checksum = "a3aab4734e083b809aaf5794e14e756d1c798d2c69c7f7de7a09a2f5214993c1"
dependencies = [
"heck",
"proc-macro-error",
@ -341,6 +341,15 @@ dependencies = [
"syn",
]
[[package]]
name = "clap_lex"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a37c35f1112dad5e6e0b1adaff798507497a18fceeb30cceb3bae7d1427b9213"
dependencies = [
"os_str_bytes",
]
[[package]]
name = "concurrent-queue"
version = "1.2.2"
@ -368,9 +377,9 @@ checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
[[package]]
name = "cpufeatures"
version = "0.2.1"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "95059428f66df56b63431fdb4e1947ed2190586af5c5a8a8b71122bdf5a7f469"
checksum = "59a6001667ab124aebae2a495118e11d30984c3a653e99d86d58971708cf5e4b"
dependencies = [
"libc",
]
@ -397,9 +406,9 @@ dependencies = [
[[package]]
name = "ctor"
version = "0.1.21"
version = "0.1.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ccc0a48a9b826acdf4028595adc9db92caea352f7af011a3034acd172a52a0aa"
checksum = "f877be4f7c9f246b183111634f75baa039715e3f46ce860677d3b19a69fb229c"
dependencies = [
"quote",
"syn",
@ -577,9 +586,9 @@ dependencies = [
[[package]]
name = "getrandom"
version = "0.2.5"
version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d39cd93900197114fa1fcb7ae84ca742095eed9442088988ae74fa744e930e77"
checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad"
dependencies = [
"cfg-if",
"libc",
@ -588,15 +597,15 @@ dependencies = [
[[package]]
name = "glib"
version = "0.15.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "89528258cfdc79b1e54591202705be67896ad254f99e3cc2ea3710e0307148f2"
version = "0.16.0"
source = "git+https://github.com/gtk-rs/gtk-rs-core#f9fa78ab81999b95531729f81a81a29e743898d4"
dependencies = [
"bitflags",
"futures-channel",
"futures-core",
"futures-executor",
"futures-task",
"futures-util",
"glib-macros",
"glib-sys",
"gobject-sys",
@ -608,9 +617,8 @@ dependencies = [
[[package]]
name = "glib-macros"
version = "0.15.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41bfd8d227dead0829ac142454e97531b93f576d0805d779c42bfd799c65c572"
version = "0.16.0"
source = "git+https://github.com/gtk-rs/gtk-rs-core#f9fa78ab81999b95531729f81a81a29e743898d4"
dependencies = [
"anyhow",
"heck",
@ -623,9 +631,8 @@ dependencies = [
[[package]]
name = "glib-sys"
version = "0.15.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "19289e4953dad38c9fea1c5c52cc594f29afc4a70802822ef382dca356b27bfd"
version = "0.16.0"
source = "git+https://github.com/gtk-rs/gtk-rs-core#f9fa78ab81999b95531729f81a81a29e743898d4"
dependencies = [
"libc",
"system-deps",
@ -633,9 +640,9 @@ dependencies = [
[[package]]
name = "gloo-timers"
version = "0.2.3"
version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4d12a7f4e95cfe710f1d624fb1210b7d961a5fb05c4fd942f4feab06e61f590e"
checksum = "5fb7d06c1c8cc2a29bee7ec961009a0b2caa0793ee4900c2ffb348734ba1c8f9"
dependencies = [
"futures-channel",
"futures-core",
@ -645,9 +652,8 @@ dependencies = [
[[package]]
name = "gobject-sys"
version = "0.15.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a085ec9acece647f905b675705c349eb00acba30505f5cee43459bc3b2e968cc"
version = "0.16.0"
source = "git+https://github.com/gtk-rs/gtk-rs-core#f9fa78ab81999b95531729f81a81a29e743898d4"
dependencies = [
"glib-sys",
"libc",
@ -665,9 +671,8 @@ dependencies = [
[[package]]
name = "gstreamer"
version = "0.18.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c1545fac08d7a28f8707101298cbf99d1bc72529698ff2d1fec87cc30a3fb9a"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"bitflags",
"cfg-if",
@ -691,9 +696,8 @@ dependencies = [
[[package]]
name = "gstreamer-app"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "653b14862e385f6a568a5c54aee830c525277418d765e93cdac1c1b97e25f300"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"bitflags",
"futures-core",
@ -708,9 +712,8 @@ dependencies = [
[[package]]
name = "gstreamer-app-sys"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3b401f21d731b3e5de802487f25507fabd34de2dd007d582f440fb1c66a4fbb"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"glib-sys",
"gstreamer-base-sys",
@ -721,9 +724,8 @@ dependencies = [
[[package]]
name = "gstreamer-base"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "224f35f36582407caf58ded74854526beeecc23d0cf64b8d1c3e00584ed6863f"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"bitflags",
"cfg-if",
@ -735,9 +737,8 @@ dependencies = [
[[package]]
name = "gstreamer-base-sys"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a083493c3c340e71fa7c66eebda016e9fafc03eb1b4804cf9b2bad61994b078e"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"glib-sys",
"gobject-sys",
@ -748,9 +749,8 @@ dependencies = [
[[package]]
name = "gstreamer-rtp"
version = "0.18.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d1a7fca987a2f01b555df2556ce7b64af546cb4a0c4376c84a816924278ae06"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"bitflags",
"glib",
@ -762,9 +762,8 @@ dependencies = [
[[package]]
name = "gstreamer-rtp-sys"
version = "0.18.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2afde26d03b4146a39d07f576082f97b3775e7884ef3ccef5c4b7c0917e17469"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"glib-sys",
"gstreamer-base-sys",
@ -775,9 +774,8 @@ dependencies = [
[[package]]
name = "gstreamer-sdp"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c8a0db444f6281489f03c7b23bc379dbe0e3cffa55c839c192976190bb298c78"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"glib",
"gstreamer",
@ -786,9 +784,8 @@ dependencies = [
[[package]]
name = "gstreamer-sdp-sys"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "67ed8f02e2a2c6b50d27987115401418c4172b14959d562757737a4e7b280d6c"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"glib-sys",
"gstreamer-sys",
@ -798,9 +795,8 @@ dependencies = [
[[package]]
name = "gstreamer-sys"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e3517a65d3c2e6f8905b456eba5d53bda158d664863aef960b44f651cb7d33e2"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"glib-sys",
"gobject-sys",
@ -810,9 +806,8 @@ dependencies = [
[[package]]
name = "gstreamer-video"
version = "0.18.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bfbeef259fe286d6271402160daf7692b6bc56d52b2a9437dead797f3f60c222"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"bitflags",
"cfg-if",
@ -828,9 +823,8 @@ dependencies = [
[[package]]
name = "gstreamer-video-sys"
version = "0.18.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "33331b1675e73b5b000c796354278eca7fdde9327015971d9f41afe28b96e0dc"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"glib-sys",
"gobject-sys",
@ -842,9 +836,8 @@ dependencies = [
[[package]]
name = "gstreamer-webrtc"
version = "0.18.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "66be30e56113bcdf5acc151bd098fae4916a41f57dc99b570e14e4112111b723"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"glib",
"gstreamer",
@ -855,9 +848,8 @@ dependencies = [
[[package]]
name = "gstreamer-webrtc-sys"
version = "0.18.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ea5f3bab2859f0b279edab6ea2620700259fd1bf91cf82185fe10a0fc5e96cc"
version = "0.19.0"
source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs#45e16f7753e4a815a42b13a6932fb6ee48e40bda"
dependencies = [
"glib-sys",
"gstreamer-sdp-sys",
@ -888,9 +880,9 @@ dependencies = [
[[package]]
name = "http"
version = "0.2.6"
version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "31f4c6746584866f0feabcc69893c5b51beef3831656a968ed7ae254cdc4fd03"
checksum = "ff8670570af52249509a86f5e3e18a08c60b177071826898fde8997cf5f6bfbb"
dependencies = [
"bytes",
"fnv",
@ -899,9 +891,9 @@ dependencies = [
[[package]]
name = "httparse"
version = "1.6.0"
version = "1.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9100414882e15fb7feccb4897e5f0ff0ff1ca7d1a86a23208ada4d7a18e6c6c4"
checksum = "496ce29bb5a52785b44e0f7ca2847ae0bb839c9bd28f69acac9b99d461c0c04c"
[[package]]
name = "human_bytes"
@ -922,9 +914,9 @@ dependencies = [
[[package]]
name = "indexmap"
version = "1.8.0"
version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "282a6247722caba404c065016bbfa522806e51714c34f5dfc3e4a3a46fcb4223"
checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee"
dependencies = [
"autocfg",
"hashbrown",
@ -947,9 +939,9 @@ checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
[[package]]
name = "js-sys"
version = "0.3.56"
version = "0.3.57"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a38fc24e30fd564ce974c02bf1d337caddff65be6cc4735a1f7eab22a7440f04"
checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397"
dependencies = [
"wasm-bindgen",
]
@ -971,15 +963,15 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]]
name = "libc"
version = "0.2.120"
version = "0.2.125"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ad5c14e80759d0939d013e6ca49930e59fc53dd8e5009132f76240c179380c09"
checksum = "5916d2ae698f6de9bfb891ad7a8d65c09d232dc58cc4ac433c7da3b2fd84bc2b"
[[package]]
name = "log"
version = "0.4.14"
version = "0.4.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
dependencies = [
"cfg-if",
"value-bag",
@ -1002,9 +994,9 @@ checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
[[package]]
name = "memchr"
version = "2.4.1"
version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
[[package]]
name = "muldiv"
@ -1014,9 +1006,9 @@ checksum = "b5136edda114182728ccdedb9f5eda882781f35fa6e80cc360af12a8932507f3"
[[package]]
name = "native-tls"
version = "0.2.8"
version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "48ba9f7719b5a0f42f338907614285fb5fd70e53858141f69898a1fb7203b24d"
checksum = "fd7e2f3618557f980e0b17e8856252eee3c97fa12c54dff0ca290fb6266ca4a9"
dependencies = [
"lazy_static",
"libc",
@ -1032,9 +1024,9 @@ dependencies = [
[[package]]
name = "num-integer"
version = "0.1.44"
version = "0.1.45"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
dependencies = [
"autocfg",
"num-traits",
@ -1054,9 +1046,9 @@ dependencies = [
[[package]]
name = "num-traits"
version = "0.2.14"
version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
dependencies = [
"autocfg",
]
@ -1079,18 +1071,30 @@ checksum = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9"
[[package]]
name = "openssl"
version = "0.10.38"
version = "0.10.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c7ae222234c30df141154f159066c5093ff73b63204dcda7121eb082fc56a95"
checksum = "fb81a6430ac911acb25fe5ac8f1d2af1b4ea8a4fdfda0f1ee4292af2e2d8eb0e"
dependencies = [
"bitflags",
"cfg-if",
"foreign-types",
"libc",
"once_cell",
"openssl-macros",
"openssl-sys",
]
[[package]]
name = "openssl-macros"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "openssl-probe"
version = "0.1.5"
@ -1099,9 +1103,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
[[package]]
name = "openssl-sys"
version = "0.9.72"
version = "0.9.73"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7e46109c383602735fa0a2e48dd2b7c892b048e1bf69e5c3b1d804b7d9c203cb"
checksum = "9d5fd19fb3e0a8191c1e34935718976a3e70c112ab9a24af6d7cadccd9d90bc0"
dependencies = [
"autocfg",
"cc",
@ -1124,9 +1128,6 @@ name = "os_str_bytes"
version = "6.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64"
dependencies = [
"memchr",
]
[[package]]
name = "parking"
@ -1136,9 +1137,9 @@ checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
[[package]]
name = "paste"
version = "1.0.6"
version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0744126afe1a6dd7f394cb50a716dbe086cb06e255e53d8d0185d82828358fb5"
checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc"
[[package]]
name = "percent-encoding"
@ -1148,9 +1149,9 @@ checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
[[package]]
name = "pin-project-lite"
version = "0.2.8"
version = "0.2.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e280fbe77cc62c91527259e9442153f4688736748d24660126286329742b4c6c"
checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
[[package]]
name = "pin-utils"
@ -1160,9 +1161,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
[[package]]
name = "pkg-config"
version = "0.3.24"
version = "0.3.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe"
checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
[[package]]
name = "polling"
@ -1185,9 +1186,9 @@ checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
[[package]]
name = "pretty-hex"
version = "0.2.1"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bc5c99d529f0d30937f6f4b8a86d988047327bb88d04d2c4afc356de74722131"
checksum = "c6fa0831dd7cc608c38a5e323422a0077678fa5744aa2be4ad91c4ece8eec8d5"
[[package]]
name = "proc-macro-crate"
@ -1225,18 +1226,18 @@ dependencies = [
[[package]]
name = "proc-macro2"
version = "1.0.36"
version = "1.0.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
checksum = "9027b48e9d4c9175fa2218adf3557f91c1137021739951d4932f5f8268ac48aa"
dependencies = [
"unicode-xid",
]
[[package]]
name = "quote"
version = "1.0.15"
version = "1.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "864d3e96a899863136fc6e99f3d7cae289dafe43bf2c5ac19b70df7210c0a145"
checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1"
dependencies = [
"proc-macro2",
]
@ -1273,9 +1274,9 @@ dependencies = [
[[package]]
name = "redox_syscall"
version = "0.2.11"
version = "0.2.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8380fe0152551244f0747b1bf41737e0f8a74f97a14ccefd1148187271634f3c"
checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
dependencies = [
"bitflags",
]
@ -1354,27 +1355,27 @@ dependencies = [
[[package]]
name = "serde"
version = "1.0.136"
version = "1.0.137"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789"
checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_bytes"
version = "0.11.5"
version = "0.11.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "16ae07dd2f88a366f15bd0632ba725227018c69a1c8550a927324f8eb8368bb9"
checksum = "212e73464ebcde48d723aa02eb270ba62eff38a9b732df31f33f1b4e145f3a54"
dependencies = [
"serde",
]
[[package]]
name = "serde_derive"
version = "1.0.136"
version = "1.0.137"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9"
checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be"
dependencies = [
"proc-macro2",
"quote",
@ -1383,9 +1384,9 @@ dependencies = [
[[package]]
name = "serde_json"
version = "1.0.79"
version = "1.0.81"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95"
checksum = "9b7ce2b32a1aed03c558dc61a5cd328f15aff2dbc17daad8fb8af04d2100e15c"
dependencies = [
"itoa",
"ryu",
@ -1433,9 +1434,9 @@ dependencies = [
[[package]]
name = "slab"
version = "0.4.5"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5"
checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"
[[package]]
name = "smallvec"
@ -1445,12 +1446,12 @@ checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83"
[[package]]
name = "socket2"
version = "0.4.4"
version = "0.4.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0"
checksum = "ca642ba17f8b2995138b1d7711829c92e98c0a25ea019de790f4f09279c4e296"
dependencies = [
"libc",
"winapi",
"windows-sys",
]
[[package]]
@ -1461,9 +1462,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
[[package]]
name = "syn"
version = "1.0.89"
version = "1.0.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ea297be220d52398dcc07ce15a209fce436d361735ac1db700cab3b6cdfb9f54"
checksum = "7ff7c592601f11445996a06f8ad0c27f094a58857c2f89e97974ab9235b92c52"
dependencies = [
"proc-macro2",
"quote",
@ -1508,9 +1509,9 @@ dependencies = [
[[package]]
name = "test-log"
version = "0.2.8"
version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb78caec569a40f42c078c798c0e35b922d9054ec28e166f0d6ac447563d91a4"
checksum = "4235dbf7ea878b3ef12dea20a59c134b405a66aafc4fc2c7b9935916e289e735"
dependencies = [
"proc-macro2",
"quote",
@ -1525,18 +1526,18 @@ checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb"
[[package]]
name = "thiserror"
version = "1.0.30"
version = "1.0.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "854babe52e4df1653706b98fcfc05843010039b406875930a70e4d9644e5c417"
checksum = "bd829fe32373d27f76265620b5309d0340cb8550f523c1dda251d6298069069a"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
version = "1.0.30"
version = "1.0.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aa32fd3f627f367fe16f893e2597ae3c05020f8bba2666a4e6ea73d377e5714b"
checksum = "0396bc89e626244658bef819e22d0cc459e795a5ebe878e6ec336d1674a8d79a"
dependencies = [
"proc-macro2",
"quote",
@ -1554,9 +1555,9 @@ dependencies = [
[[package]]
name = "tinyvec"
version = "1.5.1"
version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2c1c1d5a42b6245520c249549ec267180beaffcc0615401ac8e31853d4b6d8d2"
checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
dependencies = [
"tinyvec_macros",
]
@ -1569,18 +1570,18 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
[[package]]
name = "toml"
version = "0.5.8"
version = "0.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa"
checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
dependencies = [
"serde",
]
[[package]]
name = "tracing"
version = "0.1.32"
version = "0.1.34"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4a1bdf54a7c28a2bbf701e1d2233f6c77f473486b94bee4f9678da5a148dca7f"
checksum = "5d0ecdcb44a79f0fe9844f0c4f33a342cbcbb5117de8001e6ba0dc2351327d09"
dependencies = [
"cfg-if",
"log",
@ -1591,9 +1592,9 @@ dependencies = [
[[package]]
name = "tracing-attributes"
version = "0.1.20"
version = "0.1.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2e65ce065b4b5c53e73bb28912318cb8c9e9ad3921f1d669eb0e68b4c8143a2b"
checksum = "cc6b8ad3567499f98a1db7a752b07a7c8c7c7c34c332ec00effb2b0027974b7c"
dependencies = [
"proc-macro2",
"quote",
@ -1602,9 +1603,9 @@ dependencies = [
[[package]]
name = "tracing-core"
version = "0.1.23"
version = "0.1.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aa31669fa42c09c34d94d8165dd2012e8ff3c66aca50f3bb226b68f216f2706c"
checksum = "f54c8ca710e81886d498c2fd3331b56c93aa248d49de2222ad2742247c60072f"
dependencies = [
"lazy_static",
"valuable",
@ -1612,9 +1613,9 @@ dependencies = [
[[package]]
name = "tracing-log"
version = "0.1.2"
version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a6923477a48e41c1951f1999ef8bb5a3023eb723ceadafe78ffb65dc366761e3"
checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922"
dependencies = [
"lazy_static",
"log",
@ -1623,9 +1624,9 @@ dependencies = [
[[package]]
name = "tracing-subscriber"
version = "0.3.9"
version = "0.3.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9e0ab7bdc962035a87fba73f3acca9b8a8d0034c2e6f60b84aeaaddddc155dce"
checksum = "4bc28f93baff38037f64e6f43d34cfa1605f27a49c34e8a04c5e78b0babf2596"
dependencies = [
"ansi_term",
"lazy_static",
@ -1667,9 +1668,9 @@ checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
[[package]]
name = "unicode-bidi"
version = "0.3.7"
version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1a01404663e3db436ed2746d9fefef640d868edae3cceb81c3b8d5732fda678f"
checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
[[package]]
name = "unicode-normalization"
@ -1682,9 +1683,9 @@ dependencies = [
[[package]]
name = "unicode-xid"
version = "0.2.2"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
checksum = "957e51f3646910546462e67d5f7599b9e4fb8acdd304b087a6494730f9eebf04"
[[package]]
name = "url"
@ -1721,9 +1722,9 @@ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
[[package]]
name = "value-bag"
version = "1.0.0-alpha.8"
version = "1.0.0-alpha.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "79923f7731dc61ebfba3633098bf3ac533bbd35ccd8c57e7088d9a5eebe0263f"
checksum = "2209b78d1249f7e6f3293657c9779fe31ced465df091bbd433a1cf88e916ec55"
dependencies = [
"ctor",
"version_check",
@ -1761,9 +1762,9 @@ checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
[[package]]
name = "wasm-bindgen"
version = "0.2.79"
version = "0.2.80"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "25f1af7423d8588a3d840681122e72e6a24ddbcb3f0ec385cac0d12d24256c06"
checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad"
dependencies = [
"cfg-if",
"wasm-bindgen-macro",
@ -1771,9 +1772,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-backend"
version = "0.2.79"
version = "0.2.80"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b21c0df030f5a177f3cba22e9bc4322695ec43e7257d865302900290bcdedca"
checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4"
dependencies = [
"bumpalo",
"lazy_static",
@ -1786,9 +1787,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-futures"
version = "0.4.29"
version = "0.4.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2eb6ec270a31b1d3c7e266b999739109abce8b6c87e4b31fcfcd788b65267395"
checksum = "6f741de44b75e14c35df886aff5f1eb73aa114fa5d4d00dcd37b5e01259bf3b2"
dependencies = [
"cfg-if",
"js-sys",
@ -1798,9 +1799,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro"
version = "0.2.79"
version = "0.2.80"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2f4203d69e40a52ee523b2529a773d5ffc1dc0071801c87b3d270b471b80ed01"
checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
@ -1808,9 +1809,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro-support"
version = "0.2.79"
version = "0.2.80"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bfa8a30d46208db204854cadbb5d4baf5fcf8071ba5bf48190c3e59937962ebc"
checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b"
dependencies = [
"proc-macro2",
"quote",
@ -1821,15 +1822,15 @@ dependencies = [
[[package]]
name = "wasm-bindgen-shared"
version = "0.2.79"
version = "0.2.80"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d958d035c4438e28c70e4321a2911302f10135ce78a9c7834c0cab4123d06a2"
checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744"
[[package]]
name = "web-sys"
version = "0.3.56"
version = "0.3.57"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c060b319f29dd25724f09a2ba1418f142f539b2be99fbf4d2d5a8f7330afb8eb"
checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283"
dependencies = [
"js-sys",
"wasm-bindgen",
@ -1935,3 +1936,46 @@ name = "winapi-x86_64-pc-windows-gnu"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
[[package]]
name = "windows-sys"
version = "0.36.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2"
dependencies = [
"windows_aarch64_msvc",
"windows_i686_gnu",
"windows_i686_msvc",
"windows_x86_64_gnu",
"windows_x86_64_msvc",
]
[[package]]
name = "windows_aarch64_msvc"
version = "0.36.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47"
[[package]]
name = "windows_i686_gnu"
version = "0.36.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6"
[[package]]
name = "windows_i686_msvc"
version = "0.36.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024"
[[package]]
name = "windows_x86_64_gnu"
version = "0.36.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1"
[[package]]
name = "windows_x86_64_msvc"
version = "0.36.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680"

View file

@ -9,12 +9,12 @@ repository = "https://github.com/centricular/webrtcsink/"
build = "build.rs"
[dependencies]
gst = { package = "gstreamer", version = "0.18", features = ["v1_20", "ser_de"] }
gst-app = { package = "gstreamer-app", version = "0.18", features = ["v1_20"] }
gst-video = { package = "gstreamer-video", version = "0.18", features = ["v1_20", "ser_de"] }
gst-webrtc = { package = "gstreamer-webrtc", version = "0.18", features = ["v1_20"] }
gst-sdp = { package = "gstreamer-sdp", version = "0.18", features = ["v1_20"] }
gst-rtp = { package = "gstreamer-rtp", version = "0.18", features = ["v1_20"] }
gst = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer", features = ["v1_20", "ser_de"] }
gst-app = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-app", features = ["v1_20"] }
gst-video = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-video", features = ["v1_20", "ser_de"] }
gst-webrtc = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-webrtc", features = ["v1_20"] }
gst-sdp = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-sdp", features = ["v1_20"] }
gst-rtp = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-rtp", features = ["v1_20"] }
once_cell = "1.0"
smallvec = "1"
anyhow = "1"
@ -47,6 +47,7 @@ gst-plugin-version-helper = "0.7"
[features]
static = []
capi = []
gst1_22 = ["gst/v1_22", "gst-app/v1_22", "gst-video/v1_22", "gst-webrtc/v1_22", "gst-sdp/v1_22", "gst-rtp/v1_22"]
[package.metadata.capi]
min_version = "0.8.0"

View file

@ -7,7 +7,6 @@ use futures::prelude::*;
use gst::glib;
use gst::glib::prelude::*;
use gst::subclass::prelude::*;
use gst::{gst_debug, gst_error, gst_info, gst_trace, gst_warning};
use once_cell::sync::Lazy;
use std::path::PathBuf;
use std::sync::Mutex;
@ -69,7 +68,7 @@ impl Signaller {
)
.await?;
gst_info!(CAT, obj: element, "connected");
gst::info!(CAT, obj: element, "connected");
// Channel for asynchronously sending out websocket message
let (mut ws_sink, mut ws_stream) = ws.split();
@ -82,7 +81,7 @@ impl Signaller {
let send_task_handle = task::spawn(async move {
while let Some(msg) = websocket_receiver.next().await {
if let Some(element) = element_clone.upgrade() {
gst_trace!(CAT, obj: &element, "Sending websocket message {:?}", msg);
gst::trace!(CAT, obj: &element, "Sending websocket message {:?}", msg);
}
ws_sink
.send(WsMessage::Text(serde_json::to_string(&msg).unwrap()))
@ -90,7 +89,7 @@ impl Signaller {
}
if let Some(element) = element_clone.upgrade() {
gst_info!(CAT, obj: &element, "Done sending");
gst::info!(CAT, obj: &element, "Done sending");
}
ws_sink.send(WsMessage::Close(None)).await?;
@ -111,14 +110,14 @@ impl Signaller {
if let Some(element) = element_clone.upgrade() {
match msg {
Ok(WsMessage::Text(msg)) => {
gst_trace!(CAT, obj: &element, "Received message {}", msg);
gst::trace!(CAT, obj: &element, "Received message {}", msg);
if let Ok(msg) = serde_json::from_str::<p::OutgoingMessage>(&msg) {
match msg {
p::OutgoingMessage::Registered(
p::RegisteredMessage::Producer { peer_id, .. },
) => {
gst_info!(
gst::info!(
CAT,
obj: &element,
"We are registered with the server, our peer id is {}",
@ -128,12 +127,12 @@ impl Signaller {
p::OutgoingMessage::Registered(_) => unreachable!(),
p::OutgoingMessage::StartSession { peer_id } => {
if let Err(err) = element.add_consumer(&peer_id) {
gst_warning!(CAT, obj: &element, "{}", err);
gst::warning!(CAT, obj: &element, "{}", err);
}
}
p::OutgoingMessage::EndSession { peer_id } => {
if let Err(err) = element.remove_consumer(&peer_id) {
gst_warning!(CAT, obj: &element, "{}", err);
gst::warning!(CAT, obj: &element, "{}", err);
}
}
p::OutgoingMessage::Peer(p::PeerMessage {
@ -151,13 +150,13 @@ impl Signaller {
.unwrap(),
),
) {
gst_warning!(CAT, obj: &element, "{}", err);
gst::warning!(CAT, obj: &element, "{}", err);
}
}
p::PeerMessageInner::Sdp(p::SdpMessage::Offer {
..
}) => {
gst_warning!(
gst::warning!(
CAT,
obj: &element,
"Ignoring offer from peer"
@ -173,12 +172,12 @@ impl Signaller {
None,
&candidate,
) {
gst_warning!(CAT, obj: &element, "{}", err);
gst::warning!(CAT, obj: &element, "{}", err);
}
}
},
_ => {
gst_warning!(
gst::warning!(
CAT,
obj: &element,
"Ignoring unsupported message {:?}",
@ -187,7 +186,7 @@ impl Signaller {
}
}
} else {
gst_error!(
gst::error!(
CAT,
obj: &element,
"Unknown message from server: {}",
@ -199,7 +198,7 @@ impl Signaller {
}
}
Ok(WsMessage::Close(reason)) => {
gst_info!(
gst::info!(
CAT,
obj: &element,
"websocket connection closed: {:?}",
@ -221,7 +220,7 @@ impl Signaller {
}
if let Some(element) = element_clone.upgrade() {
gst_info!(CAT, obj: &element, "Stopped websocket receiving");
gst::info!(CAT, obj: &element, "Stopped websocket receiving");
}
});
@ -302,7 +301,7 @@ impl Signaller {
}
pub fn stop(&self, element: &WebRTCSink) {
gst_info!(CAT, obj: element, "Stopping now");
gst::info!(CAT, obj: element, "Stopping now");
let mut state = self.state.lock().unwrap();
let send_task_handle = state.send_task_handle.take();
@ -313,7 +312,7 @@ impl Signaller {
if let Some(handle) = send_task_handle {
if let Err(err) = handle.await {
gst_warning!(CAT, obj: element, "Error while joining send task: {}", err);
gst::warning!(CAT, obj: element, "Error while joining send task: {}", err);
}
}
@ -325,7 +324,7 @@ impl Signaller {
}
pub fn consumer_removed(&self, element: &WebRTCSink, peer_id: &str) {
gst_debug!(CAT, obj: element, "Signalling consumer {} removed", peer_id);
gst::debug!(CAT, obj: element, "Signalling consumer {} removed", peer_id);
let state = self.state.lock().unwrap();
let peer_id = peer_id.to_string();
@ -390,12 +389,12 @@ impl ObjectImpl for Signaller {
let address: Option<_> = value.get().expect("type checked upstream");
if let Some(address) = address {
gst_info!(CAT, "Signaller address set to {}", address);
gst::info!(CAT, "Signaller address set to {}", address);
let mut settings = self.settings.lock().unwrap();
settings.address = Some(address);
} else {
gst_error!(CAT, "address can't be None");
gst::error!(CAT, "address can't be None");
}
}
"cafile" => {

View file

@ -1,8 +1,8 @@
use anyhow::Context;
use gst::glib;
use gst::glib::value::FromValue;
use gst::prelude::*;
use gst::subclass::prelude::*;
use gst::{gst_debug, gst_error, gst_info, gst_log, gst_trace, gst_warning};
use gst_rtp::prelude::*;
use gst_video::prelude::*;
use gst_video::subclass::prelude::*;
@ -236,7 +236,7 @@ fn create_navigation_event<N: IsA<gst_video::Navigation>>(sink: &N, msg: &str) {
if let Ok(event) = event {
sink.send_event(event.structure());
} else {
gst_error!(CAT, "Invalid navigation event: {:?}", msg);
gst::error!(CAT, "Invalid navigation event: {:?}", msg);
}
}
@ -609,7 +609,7 @@ impl VideoEncoder {
.build();
if !caps.is_strictly_equal(&current_caps) {
gst_log!(
gst::log!(
CAT,
obj: element,
"consumer {}: setting bitrate {} and caps {} on encoder {:?}",
@ -671,7 +671,7 @@ impl CongestionController {
let delay_factor = sent_minus_received as f64 / target_bitrate;
let last_update_time = self.last_update_time.replace(std::time::Instant::now());
gst_trace!(
gst::trace!(
CAT,
obj: element,
"consumer {}: considering stats {}",
@ -699,7 +699,7 @@ impl CongestionController {
CongestionControlOp::Increase(if let Some(ema) = self.bitrate_ema {
let bitrate_stdev = self.bitrate_emvar.sqrt();
gst_trace!(
gst::trace!(
CAT,
obj: element,
"consumer {}: Old bitrate: {}, ema: {}, stddev: {}",
@ -714,7 +714,7 @@ impl CongestionController {
// homegrown algorithm not implementing gcc, revisit when implementing
// the rest of the RFC
if target_bitrate < ema - 7. * bitrate_stdev {
gst_trace!(
gst::trace!(
CAT,
obj: element,
"consumer {}: below last congestion window",
@ -723,7 +723,7 @@ impl CongestionController {
/* Multiplicative increase */
IncreaseType::Multiplicative(1.03)
} else if target_bitrate > ema + 7. * bitrate_stdev {
gst_trace!(
gst::trace!(
CAT,
obj: element,
"consumer {}: above last congestion window",
@ -753,7 +753,7 @@ impl CongestionController {
let packets_per_frame = f64::ceil(bits_per_frame / (1200. * 8.));
let avg_packet_size_bits = bits_per_frame / packets_per_frame;
gst_trace!(
gst::trace!(
CAT,
obj: element,
"consumer {}: still in last congestion window",
@ -765,7 +765,7 @@ impl CongestionController {
}
} else {
/* Multiplicative increase */
gst_trace!(
gst::trace!(
CAT,
obj: element,
"consumer {}: outside congestion window",
@ -814,19 +814,19 @@ impl CongestionController {
let mut rtt = 0.;
let mut n_rtts = 0u64;
for inbound_stat in &inbound_rtp_stats {
if let Err(err) = (|| -> Result<(), gst::structure::GetError> {
if let Err(err) = (|| -> Result<(), gst::structure::GetError<<<f64 as FromValue>::Checker as glib::value::ValueTypeChecker>::Error>> {
rtt += inbound_stat.get::<f64>("round-trip-time")?;
n_rtts += 1;
Ok(())
})() {
gst_debug!(CAT, "{:?}", err);
gst::debug!(CAT, "{:?}", err);
}
}
rtt /= f64::max(1., n_rtts as f64);
gst_log!(CAT, "Round trip time: {}", rtt);
gst::log!(CAT, "Round trip time: {}", rtt);
rtt
}
@ -877,7 +877,7 @@ impl CongestionController {
control_op: CongestionControlOp,
controller_type: ControllerType,
) {
gst_trace!(
gst::trace!(
CAT,
obj: element,
"consumer {}: applying congestion control operation {:?}",
@ -933,7 +933,7 @@ impl CongestionController {
) / n_encoders;
if target_bitrate != prev_bitrate {
gst_info!(
gst::info!(
CAT,
"{:?} {} => {}",
control_op,
@ -1012,14 +1012,14 @@ impl State {
&& self.codec_discovery_done
{
if let Err(err) = self.signaller.start(element) {
gst_error!(CAT, obj: element, "error: {}", err);
gst::error!(CAT, obj: element, "error: {}", err);
gst::element_error!(
element,
gst::StreamError::Failed,
["Failed to start signaller {}", err]
);
} else {
gst_info!(CAT, "Started signaller");
gst::info!(CAT, "Started signaller");
self.signaller_state = SignallerState::Started;
}
}
@ -1029,7 +1029,7 @@ impl State {
if self.signaller_state == SignallerState::Started {
self.signaller.stop(element);
self.signaller_state = SignallerState::Stopped;
gst_info!(CAT, "Stopped signaller");
gst::info!(CAT, "Stopped signaller");
}
}
}
@ -1102,7 +1102,7 @@ impl Consumer {
payloader_caps_mut.set_simple(&[("ssrc", &ssrc)]);
}
gst_info!(
gst::info!(
CAT,
obj: element,
"Requesting WebRTC pad for consumer {} with caps {}",
@ -1154,7 +1154,7 @@ impl Consumer {
webrtc_pad: &WebRTCPad,
codecs: &BTreeMap<i32, Codec>,
) -> Result<(), Error> {
gst_info!(
gst::info!(
CAT,
obj: element,
"Connecting input stream {} for consumer {}",
@ -1342,7 +1342,7 @@ impl InputStream {
impl NavigationEventHandler {
pub fn new(element: &super::WebRTCSink, webrtcbin: &gst::Element) -> Self {
gst_info!(CAT, "Creating navigation data channel");
gst::info!(CAT, "Creating navigation data channel");
let channel = webrtcbin.emit_by_name::<WebRTCDataChannel>(
"create-data-channel",
&[
@ -1414,7 +1414,7 @@ impl WebRTCSink {
payload: pt,
})
} else {
gst_warning!(CAT, obj: &self.instance(),
gst::warning!(CAT, obj: &self.instance(),
"Too many formats for available payload type range, ignoring {}",
s);
None
@ -1428,7 +1428,7 @@ impl WebRTCSink {
/// Prepare for accepting consumers, by setting
/// up StreamProducers for each of our sink pads
fn prepare(&self, element: &super::WebRTCSink) -> Result<(), Error> {
gst_debug!(CAT, obj: element, "preparing");
gst::debug!(CAT, obj: element, "preparing");
self.state
.lock()
@ -1443,7 +1443,7 @@ impl WebRTCSink {
/// Unprepare by stopping consumers, then the signaller object.
/// Might abort codec discovery
fn unprepare(&self, element: &super::WebRTCSink) -> Result<(), Error> {
gst_info!(CAT, obj: element, "unpreparing");
gst::info!(CAT, obj: element, "unpreparing");
let mut state = self.state.lock().unwrap();
@ -1487,7 +1487,7 @@ impl WebRTCSink {
/// Called by the signaller when it has encountered an error
pub fn handle_signalling_error(&self, element: &super::WebRTCSink, error: anyhow::Error) {
gst_error!(CAT, obj: element, "Signalling error: {:?}", error);
gst::error!(CAT, obj: element, "Signalling error: {:?}", error);
gst::element_error!(
element,
@ -1510,7 +1510,7 @@ impl WebRTCSink {
.emit_by_name::<()>("set-local-description", &[&offer, &None::<gst::Promise>]);
if let Err(err) = state.signaller.handle_sdp(element, peer_id, &offer) {
gst_warning!(
gst::warning!(
CAT,
"Failed to handle SDP for consumer {}: {}",
peer_id,
@ -1525,21 +1525,21 @@ impl WebRTCSink {
fn negotiate(&self, element: &super::WebRTCSink, peer_id: &str) {
let state = self.state.lock().unwrap();
gst_debug!(CAT, obj: element, "Negotiating for peer {}", peer_id);
gst::debug!(CAT, obj: element, "Negotiating for peer {}", peer_id);
if let Some(consumer) = state.consumers.get(peer_id) {
let element = element.downgrade();
gst_debug!(CAT, "Creating offer for peer {}", peer_id);
gst::debug!(CAT, "Creating offer for peer {}", peer_id);
let peer_id = peer_id.to_string();
let promise = gst::Promise::with_change_func(move |reply| {
gst_debug!(CAT, "Created offer for peer {}", peer_id);
gst::debug!(CAT, "Created offer for peer {}", peer_id);
if let Some(element) = element.upgrade() {
let this = Self::from_instance(&element);
let reply = match reply {
Ok(Some(reply)) => reply,
Ok(None) => {
gst_warning!(
gst::warning!(
CAT,
obj: &element,
"Promise returned without a reply for {}",
@ -1549,7 +1549,7 @@ impl WebRTCSink {
return;
}
Err(err) => {
gst_warning!(
gst::warning!(
CAT,
obj: &element,
"Promise returned with an error for {}: {:?}",
@ -1567,7 +1567,7 @@ impl WebRTCSink {
{
this.on_offer_created(&element, offer, &peer_id);
} else {
gst_warning!(
gst::warning!(
CAT,
"Reply without an offer for consumer {}: {:?}",
peer_id,
@ -1582,7 +1582,7 @@ impl WebRTCSink {
.webrtcbin
.emit_by_name::<()>("create-offer", &[&None::<gst::Structure>, &promise]);
} else {
gst_debug!(
gst::debug!(
CAT,
obj: element,
"consumer for peer {} no longer exists",
@ -1604,7 +1604,7 @@ impl WebRTCSink {
.signaller
.handle_ice(element, &peer_id, &candidate, Some(sdp_m_line_index), None)
{
gst_warning!(
gst::warning!(
CAT,
"Failed to handle ICE for consumer {}: {}",
peer_id,
@ -1628,7 +1628,7 @@ impl WebRTCSink {
return Err(WebRTCSinkError::DuplicateConsumerId(peer_id.to_string()));
}
gst_info!(CAT, obj: element, "Adding consumer {}", peer_id);
gst::info!(CAT, obj: element, "Adding consumer {}", peer_id);
let pipeline = gst::Pipeline::new(Some(&format!("consumer-pipeline-{}", peer_id)));
@ -1678,7 +1678,7 @@ impl WebRTCSink {
match state {
gst_webrtc::WebRTCPeerConnectionState::Failed => {
let this = Self::from_instance(&element);
gst_warning!(
gst::warning!(
CAT,
obj: &element,
"Connection state for consumer {} failed",
@ -1687,7 +1687,7 @@ impl WebRTCSink {
let _ = this.remove_consumer(&element, &peer_id_clone, true);
}
_ => {
gst_log!(
gst::log!(
CAT,
obj: &element,
"Connection state for consumer {} changed: {:?}",
@ -1709,7 +1709,7 @@ impl WebRTCSink {
match state {
gst_webrtc::WebRTCICEConnectionState::Failed => {
gst_warning!(
gst::warning!(
CAT,
obj: &element,
"Ice connection state for consumer {} failed",
@ -1718,7 +1718,7 @@ impl WebRTCSink {
let _ = this.remove_consumer(&element, &peer_id_clone, true);
}
_ => {
gst_log!(
gst::log!(
CAT,
obj: &element,
"Ice connection state for consumer {} changed: {:?}",
@ -1753,7 +1753,7 @@ impl WebRTCSink {
webrtcbin.property::<gst_webrtc::WebRTCICEGatheringState>("ice-gathering-state");
if let Some(element) = element_clone.upgrade() {
gst_log!(
gst::log!(
CAT,
obj: &element,
"Ice gathering state for consumer {} changed: {:?}",
@ -1831,7 +1831,7 @@ impl WebRTCSink {
let this = Self::from_instance(&element);
match msg.view() {
gst::MessageView::Error(err) => {
gst_error!(
gst::error!(
CAT,
"Consumer {} error: {}, details: {:?}",
peer_id_clone,
@ -1857,12 +1857,12 @@ impl WebRTCSink {
}
gst::MessageView::Latency(..) => {
if let Some(pipeline) = pipeline_clone.upgrade() {
gst_info!(CAT, obj: &pipeline, "Recalculating latency");
gst::info!(CAT, obj: &pipeline, "Recalculating latency");
let _ = pipeline.recalculate_latency();
}
}
gst::MessageView::Eos(..) => {
gst_error!(
gst::error!(
CAT,
"Unexpected end of stream for consumer {}",
peer_id_clone
@ -1986,7 +1986,7 @@ impl WebRTCSink {
if let Err(err) =
consumer.connect_input_stream(element, producer, webrtc_pad, &state.codecs)
{
gst_error!(
gst::error!(
CAT,
obj: element,
"Failed to connect input stream {} for consumer {}: {}",
@ -1998,7 +1998,7 @@ impl WebRTCSink {
break;
}
} else {
gst_error!(
gst::error!(
CAT,
obj: element,
"No producer to connect consumer {} to",
@ -2059,7 +2059,7 @@ impl WebRTCSink {
let sdp_m_line_index = sdp_m_line_index.ok_or(WebRTCSinkError::MandatorySdpMlineIndex)?;
if let Some(consumer) = state.consumers.get(peer_id) {
gst_trace!(CAT, "adding ice candidate for peer {}", peer_id);
gst::trace!(CAT, "adding ice candidate for peer {}", peer_id);
consumer
.webrtcbin
.emit_by_name::<()>("add-ice-candidate", &[&sdp_m_line_index, &candidate]);
@ -2093,7 +2093,7 @@ impl WebRTCSink {
.media(webrtc_pad.media_idx)
.and_then(|media| media.as_text().ok());
gst_warning!(
gst::warning!(
CAT,
"consumer {} refused media {}: {:?}",
peer_id,
@ -2116,7 +2116,7 @@ impl WebRTCSink {
{
webrtc_pad.payload = Some(payload);
} else {
gst_warning!(
gst::warning!(
CAT,
"consumer {} did not provide valid payload for media index {}",
peer_id,
@ -2136,7 +2136,7 @@ impl WebRTCSink {
let peer_id = peer_id.to_string();
let promise = gst::Promise::with_change_func(move |reply| {
gst_debug!(CAT, "received reply {:?}", reply);
gst::debug!(CAT, "received reply {:?}", reply);
if let Some(element) = element.upgrade() {
let this = Self::from_instance(&element);
@ -2270,7 +2270,7 @@ impl WebRTCSink {
/* We don't consider this fatal, as long as we end up with one
* potential codec for each input stream
*/
gst_warning!(
gst::warning!(
CAT,
obj: element,
"Codec discovery pipeline failed: {}",
@ -2342,11 +2342,11 @@ impl WebRTCSink {
// Nothing changed
true
} else {
gst_error!(CAT, obj: pad, "Renegotiation is not supported");
gst::error!(CAT, obj: pad, "Renegotiation is not supported");
false
}
} else {
gst_info!(CAT, obj: pad, "Received caps event {:?}", e);
gst::info!(CAT, obj: pad, "Received caps event {:?}", e);
let mut all_pads_have_caps = true;
@ -2384,7 +2384,7 @@ impl WebRTCSink {
match fut.await {
Ok(Err(err)) => {
gst_error!(CAT, obj: &element, "error: {}", err);
gst::error!(CAT, obj: &element, "error: {}", err);
gst::element_error!(
element,
gst::StreamError::CodecNotFound,
@ -2775,7 +2775,7 @@ impl ObjectImpl for WebRTCSink {
let element = args[0].get::<super::WebRTCSink>().expect("signal arg");
let enc = args[3].get::<gst::Element>().unwrap();
gst_debug!(
gst::debug!(
CAT,
obj: &element,
"applying default configuration on encoder {:?}",
@ -2864,7 +2864,7 @@ impl ElementImpl for WebRTCSink {
_caps: Option<&gst::Caps>,
) -> Option<gst::Pad> {
if element.current_state() > gst::State::Ready {
gst_error!(CAT, "element pads can only be requested before starting");
gst::error!(CAT, "element pads can only be requested before starting");
return None;
}
@ -2985,10 +2985,10 @@ impl NavigationImpl for WebRTCSink {
state.streams.iter_mut().for_each(|(_, stream)| {
if stream.sink_pad.name().starts_with("video_") {
gst_log!(CAT, "Navigating to: {:?}", event);
gst::log!(CAT, "Navigating to: {:?}", event);
// FIXME: Handle multi tracks.
if !stream.sink_pad.push_event(event.clone()) {
gst_info!(CAT, "Could not send event: {:?}", event);
gst::info!(CAT, "Could not send event: {:?}", event);
}
}
});

View file

@ -6,7 +6,6 @@ use anyhow::{Context, Error};
use once_cell::sync::Lazy;
use gst::prelude::*;
use gst::{gst_debug, gst_error, gst_trace, gst_warning};
static CAT: Lazy<gst::DebugCategory> = Lazy::new(|| {
gst::DebugCategory::new(
@ -49,11 +48,11 @@ impl StreamProducer {
pub fn add_consumer(&self, consumer: &gst_app::AppSrc, consumer_id: &str) {
let mut consumers = self.consumers.lock().unwrap();
if consumers.consumers.get(consumer_id).is_some() {
gst_error!(CAT, "Consumer already added");
gst::error!(CAT, "Consumer already added");
return;
}
gst_debug!(CAT, "Adding consumer");
gst::debug!(CAT, "Adding consumer");
consumer.set_property("max-buffers", 0u64);
consumer.set_property("max-bytes", 0u64);
@ -67,7 +66,7 @@ impl StreamProducer {
.add_probe(gst::PadProbeType::EVENT_UPSTREAM, move |_pad, info| {
if let Some(gst::PadProbeData::Event(ref ev)) = info.data {
if gst_video::UpstreamForceKeyUnitEvent::parse(ev).is_ok() {
gst_debug!(CAT, "Requesting keyframe");
gst::debug!(CAT, "Requesting keyframe");
let _ = appsink_clone.send_event(ev.clone());
}
}
@ -85,9 +84,9 @@ impl StreamProducer {
/// Remove a consumer appsrc by id
pub fn remove_consumer(&self, consumer_id: &str) {
if let Some(consumer) = self.consumers.lock().unwrap().consumers.remove(consumer_id) {
gst_debug!(CAT, "Removed consumer {}", consumer.appsrc.name());
gst::debug!(CAT, "Removed consumer {}", consumer.appsrc.name());
} else {
gst_debug!(CAT, "Consumer {} not found", consumer_id);
gst::debug!(CAT, "Consumer {} not found", consumer_id);
}
}
@ -123,7 +122,7 @@ impl<'a> From<&'a gst_app::AppSink> for StreamProducer {
let sample = match appsink.pull_sample() {
Ok(sample) => sample,
Err(_err) => {
gst_debug!(CAT, "Failed to pull sample");
gst::debug!(CAT, "Failed to pull sample");
return Err(gst::FlowError::Flushing);
}
};
@ -132,7 +131,7 @@ impl<'a> From<&'a gst_app::AppSink> for StreamProducer {
return Ok(gst::FlowSuccess::Ok);
}
gst_trace!(CAT, "processing sample");
gst::trace!(CAT, "processing sample");
let latency = consumers.current_latency;
let latency_updated = mem::replace(&mut consumers.latency_updated, false);
@ -167,7 +166,7 @@ impl<'a> From<&'a gst_app::AppSink> for StreamProducer {
.is_ok()
&& !requested_keyframe
{
gst_debug!(CAT, "Requesting keyframe for first buffer");
gst::debug!(CAT, "Requesting keyframe for first buffer");
appsink.send_event(
gst_video::UpstreamForceKeyUnitEvent::builder()
.all_headers(true)
@ -183,7 +182,7 @@ impl<'a> From<&'a gst_app::AppSink> for StreamProducer {
for consumer in current_consumers {
if let Err(err) = consumer.push_sample(&sample) {
gst_warning!(CAT, "Failed to push sample: {}", err);
gst::warning!(CAT, "Failed to push sample: {}", err);
}
}
@ -266,7 +265,7 @@ impl StreamConsumer {
appsrc.set_callbacks(
gst_app::AppSrcCallbacks::builder()
.enough_data(move |_appsrc| {
gst_debug!(
gst::debug!(
CAT,
"consumer {} is not consuming fast enough, old samples are getting dropped",
consumer_id