EricssonResearch / scream

SCReAM - Mobile optimised congestion control algorithm
BSD 2-Clause "Simplified" License
174 stars 53 forks source link

scream L4S run error #58

Open xiaoshuyu6 opened 7 months ago

xiaoshuyu6 commented 7 months ago

Hello , after installing scream, I did the Modifying gstreamer to use L4S in gstream.

I then went to run the L4S . /scripts/receiver.sh . /scripts/sender.sh

But there was an error, I couldn't test the L4S functionality of scream

The program on the sender side gives an error image

jacobt21 commented 7 months ago

Hi,

  1. Did you

    Modify scripts/ecn_env.sh

    ECN_ENABLED=1 Make sure that MY_GST_INSTALL points to the correct install directory.

2 Please modify sender.sh killall -9 scream_sender +which gst-inspect-1.0 +gst-inspect-1.0 gstscream +gst-inspect-1.0 x264enc $SCREAM_TARGET_DIR/scream_sender --verbose

  1. Run sender.sh.
xiaoshuyu6 commented 7 months ago

I have executed the modified send.sh script as per your instructions. However, I still encounter an error. The operating system I am currently using is Ubuntu 20.04 with kernel version 5.15.0-88-generic. Do you recommend changing the operating system for testing purposes?

jacobt21 commented 7 months ago

Can you post the output of a script ?

Get Outlook for Androidhttps://aka.ms/AAb9ysg


From: xiaoshuyu6 @.> Sent: Sunday, November 26, 2023 5:41:40 PM To: EricssonResearch/scream @.> Cc: Jacob Teplitsky @.>; Comment @.> Subject: Re: [EricssonResearch/scream] scream L4S run error (Issue #58)

I have executed the modified send.sh script as per your instructions. However, I still encounter an error. The operating system I am currently using is Ubuntu 20.04 with kernel version 5.15.0-88-generic. Do you recommend changing the operating system for testing purposes?

— Reply to this email directly, view it on GitHubhttps://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-2da4b2bcb15b8608&q=1&e=4daaf419-cf4b-4266-89aa-5850d0f6b37d&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fissues%2F58%23issuecomment-1827001871, or unsubscribehttps://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-a6d4189b05ca86de&q=1&e=4daaf419-cf4b-4266-89aa-5850d0f6b37d&u=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMBRFBBP572WEJK2JXSZ4FLYGPVVJAVCNFSM6AAAAAA7X2NUMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRXGAYDCOBXGE. You are receiving this because you commented.Message ID: @.***>

xiaoshuyu6 commented 7 months ago

I'm posting the logs generated by the running 'receiver.sh' and 'sender.sh' scripts.These logs are stored in two separate files. receiver.log

sender.log

jacobt21 commented 7 months ago

Hi, You are not using gstreamer that you’ve built and installed in your local directory: Plugin Details: Name x264 Description libx264-based H264 plugins Filename /lib/x86_64-linux-gnu/gstreamer-1.0/libgstx264.so Version 1.16.2 If you did, gst-inspect would point you to libgstx264.so that you’ve built.

In command meson setup --prefix=/path/to/install/prefix

What’s your /path/to/install/prefix?

What’s your MY_GST_INSTALL ?

Thanks

From: xiaoshuyu6 @.> Sent: Sunday, November 26, 2023 7:17 PM To: EricssonResearch/scream @.> Cc: Jacob Teplitsky @.>; Comment @.> Subject: Re: [EricssonResearch/scream] scream L4S run error (Issue #58)

I'm posting the logs generated by the running 'receiver.sh' and 'sender.sh' scripts.These logs are stored in two separate files. receiver.loghttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-b831dfceceaa8db9&q=1&e=695ff742-0f9a-474f-b0c2-198386c4ecb7&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Ffiles%2F13469377%2Freceiver.log

sender.loghttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-4abe74d89c7a113b&q=1&e=695ff742-0f9a-474f-b0c2-198386c4ecb7&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Ffiles%2F13469379%2Fsender.log

— Reply to this email directly, view it on GitHubhttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-97a71046ccf82160&q=1&e=695ff742-0f9a-474f-b0c2-198386c4ecb7&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fissues%2F58%23issuecomment-1827062147, or unsubscribehttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-4b5911e8d27c711a&q=1&e=695ff742-0f9a-474f-b0c2-198386c4ecb7&u=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMBRFBHT3COWVZ5ZAIIA57DYGQAZJAVCNFSM6AAAAAA7X2NUMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRXGA3DEMJUG4. You are receiving this because you commented.Message ID: @.**@.>>

xiaoshuyu6 commented 7 months ago

Hello, I might not have specified the installation path during setup, and it's possible that the default path was used. The command I executed was 'meson setup builddir'.

Currently, after running 'gst-inspect-1.0', the output on my system is as follows:

1

Do I need to reinstall? If so, what path should I specify for the installation?

jacobt21 commented 7 months ago

Hi, I think there is meson command to set install dir. The install dir can be in any place , for example gstreamer/install. BTW, gst-inspect gstscream will always fail unless you set correct env vars. https://github.com/EricssonResearch/scream/blob/0b451ff3ff0f648a9607abcc013f47e06f5e2e64/gstscream/scripts/sender.sh#L8 Thanks

From: xiaoshuyu6 @.> Sent: Monday, November 27, 2023 12:02 AM To: EricssonResearch/scream @.> Cc: Jacob Teplitsky @.>; Comment @.> Subject: Re: [EricssonResearch/scream] scream L4S run error (Issue #58)

Hello, I might not have specified the installation path during setup, and it's possible that the default path was used. The command I executed was 'meson setup builddir'.

Currently, after running 'gst-inspect-1.0', the output on my system is as follows:

1.png (view on web)https://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-6f28ff7a1fdb30d4&q=1&e=2fbbaf9d-057c-49c6-a81c-e7b5b915381f&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fassets%2F151851695%2F4e8d3abc-1595-478e-a96d-ab8b9e17b9d4

Do I need to reinstall? If so, what path should I specify for the installation?

— Reply to this email directly, view it on GitHubhttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-133fd94d84fb7414&q=1&e=2fbbaf9d-057c-49c6-a81c-e7b5b915381f&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fissues%2F58%23issuecomment-1827321455, or unsubscribehttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-03fdfe716c4c08a4&q=1&e=2fbbaf9d-057c-49c6-a81c-e7b5b915381f&u=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMBRFBAMEPS2ISNAVWIFT3LYGRCJHAVCNFSM6AAAAAA7X2NUMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRXGMZDCNBVGU. You are receiving this because you commented.Message ID: @.**@.>>

xiaoshuyu6 commented 7 months ago

Hello, I've followed your instructions and successfully reinstalled the program. Now, MY_GST_INSTAL is set to $SCRIPT_DIR/... /... /... /gstreamer/install.

When I executed . /script/receiver.sh, it worked fine and produced the output: "screamrx/imp.rs ecn-enabled."

However, when I run . /script/sender.sh, it still throws an error. Here's the content of the output file for your reference. send2.log

I also used gst-inspect-1.0 x264enc and successfully located it as follows: 2

jacobt21 commented 7 months ago

Hi, From the error message in the log I see GST_PIPELINE subprojects/gstreamer/gst/parse/grammar.y:630:gst_parse_element_make:[00m no element "x264enc" Try to do gst-inspect-1.0 x264enc gst-inspect-1.0 avdec_h264 in sender.sh and receiver.sh just after killall line. The way you run gst-inspect-1.0 x264enc, it will inspect plugins preinstall by Ubuntu.

From: xiaoshuyu6 @.> Sent: Tuesday, November 28, 2023 5:18 AM To: EricssonResearch/scream @.> Cc: Jacob Teplitsky @.>; Comment @.> Subject: Re: [EricssonResearch/scream] scream L4S run error (Issue #58)

Hello, I've followed your instructions and successfully reinstalled the program. Now, MY_GST_INSTAL is set to $SCRIPT_DIR/... /... /... /gstreamer/install.

When I executed . /script/receiver.sh, it worked fine and produced the output: "screamrx/imp.rs ecn-enabled."

However, when I run . /script/sender.sh, it still throws an error. Here's the content of the output file for your reference. send2.loghttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-0e42c9f39ef7eace&q=1&e=5cedaeaf-a8ba-4b76-97b6-bd4e393ad4dc&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Ffiles%2F13488549%2Fsend2.log

I also used gst-inspect-1.0 x264enc and successfully located it as follows: 2.png (view on web)https://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-920c933c5cec9034&q=1&e=5cedaeaf-a8ba-4b76-97b6-bd4e393ad4dc&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fassets%2F151851695%2F0134a92d-1271-4f08-a490-0dfff40cda00

— Reply to this email directly, view it on GitHubhttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-8ec89d43ad150b3b&q=1&e=5cedaeaf-a8ba-4b76-97b6-bd4e393ad4dc&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fissues%2F58%23issuecomment-1829824624, or unsubscribehttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-ca96638fd1eb7291&q=1&e=5cedaeaf-a8ba-4b76-97b6-bd4e393ad4dc&u=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMBRFBFZMTE7IWLGWZ2FKCDYGXQBLAVCNFSM6AAAAAA7X2NUMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRZHAZDINRSGQ. You are receiving this because you commented.Message ID: @.**@.>>

xiaoshuyu6 commented 7 months ago

Hello, I've followed your instructions and added the sender.sh script, which includes the commands gst-inspect-1.0 x264enc and gst-inspect-1.0 avdec_h264.

Below is the output from the sender side. send4.log

According to the results, avdec_h264 should be present, but x264enc is not.

jacobt21 commented 7 months ago

Hi, Do you have file libgstx264.so in your build dir and install dir. If not check build/meson-logs/meson-log.txt to see if x264enc is disabled.

From: xiaoshuyu6 @.> Sent: Tuesday, November 28, 2023 8:55 AM To: EricssonResearch/scream @.> Cc: Jacob Teplitsky @.>; Comment @.> Subject: Re: [EricssonResearch/scream] scream L4S run error (Issue #58)

Hello, I've followed your instructions and added the sender.sh script, which includes the commands gst-inspect-1.0 x264enc and gst-inspect-1.0 avdec_h264.

Below is the output from the sender side. send4.loghttps://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-6ae7c3667f0a1a68&q=1&e=a7f5e9bd-7c21-41d4-a5dd-2ec954358c88&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Ffiles%2F13490933%2Fsend4.log

According to the results, avdec_h264 should be present, but x264enc is not.

— Reply to this email directly, view it on GitHubhttps://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-6dc984c30cfe2501&q=1&e=a7f5e9bd-7c21-41d4-a5dd-2ec954358c88&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fissues%2F58%23issuecomment-1830292686, or unsubscribehttps://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-1d187c5dbc071163&q=1&e=a7f5e9bd-7c21-41d4-a5dd-2ec954358c88&u=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMBRFBE2UNH4T2GQLYE3MA3YGYJPJAVCNFSM6AAAAAA7X2NUMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZQGI4TENRYGY. You are receiving this because you commented.Message ID: @.**@.>>

xiaoshuyu6 commented 7 months ago

Thank you for your guidance. I've checked, and unfortunately, I couldn't find the libgstx264.so file in both the build directory and the install directory. Additionally, upon inspecting the meson-log.txt file in the build/meson-logs directory, it appears that x264enc is disabled.

image

Is there a specific step or configuration that I might have missed in enabling x264enc during the build process?

In addition, I would like to provide another piece of information. When I disable L4S by setting ECN_ENABLED=0 in ecn_env.sh and run sender.sh, the program output is normal, and I can detect x264enc.

I am wondering if the issue might be related to the version of GStreamer that I installed. I used the following repository: https://gitlab.freedesktop.org/samhurst/gstreamer/-/tree/ecn, specifically the ecn branch. image

I did not use the command patch -p1 < <2717.patch. I'm unsure if this might be a problem.

image

It appears to me that the changes introduced by the patch and the code in the ecn branch are consistent. However, I'm not entirely certain if my understanding is accurate.

I performed the installation using the following commands: meson setup --prefix=/path/to/install/prefix builddir meson compile -C builddir meson install -C builddir

Your insights or suggestions on any potential issues would be greatly appreciated.

jacobt21 commented 7 months ago

Hi, Try meson setup --reconfigure -Dgst-plugins-ugly:x264=enabled -Dgpl=enabled --prefix= You might as well enable x265 and if your server has Nvidia GPU, nvcodec. From: xiaoshuyu6 @.> Sent: Tuesday, November 28, 2023 7:05 PM To: EricssonResearch/scream @.> Cc: Jacob Teplitsky @.>; Comment @.> Subject: Re: [EricssonResearch/scream] scream L4S run error (Issue #58)

Thank you for your guidance. I've checked, and unfortunately, I couldn't find the libgstx264.so file in both the build directory and the install directory. Additionally, upon inspecting the meson-log.txt file in the build/meson-logs directory, it appears that x264enc is disabled.

image.png (view on web)https://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-20a746f5cf15f369&q=1&e=48505d31-0110-4684-a2fa-9f841c4316d4&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fassets%2F151851695%2Fc3ccfc95-5444-471b-a940-41797aeafa19

Is there a specific step or configuration that I might have missed in enabling x264enc during the build process?

In addition, I would like to provide another piece of information. When I disable L4S by setting ECN_ENABLED=0 in ecn_env.sh and run sender.sh, the program output is normal, and I can detect x264enc.

I am wondering if the issue might be related to the version of GStreamer that I installed. I used the following repository: https://gitlab.freedesktop.org/samhurst/gstreamer/-/tree/ecn, specifically the ecn branch. image.png (view on web)https://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-b1bd642546e7691d&q=1&e=48505d31-0110-4684-a2fa-9f841c4316d4&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fassets%2F151851695%2Fa0de92c5-5485-489a-a60f-c6eb180d62a2

I did not use the command patch -p1 < <2717.patch. I'm unsure if this might be a problem.

image.png (view on web)https://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-9b9739ba4855c27f&q=1&e=48505d31-0110-4684-a2fa-9f841c4316d4&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fassets%2F151851695%2F21b43613-247c-4a06-a76e-d0b51506d9d9

It appears to me that the changes introduced by the patch and the code in the ecn branch are consistent. However, I'm not entirely certain if my understanding is accurate.

I performed the installation using the following commands: meson setup --prefix=/path/to/install/prefix builddir meson compile -C builddir meson install -C builddir

Your insights or suggestions on any potential issues would be greatly appreciated.

— Reply to this email directly, view it on GitHubhttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-d5bb1f2d5ab0d426&q=1&e=48505d31-0110-4684-a2fa-9f841c4316d4&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fissues%2F58%23issuecomment-1831140119, or unsubscribehttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-6b0b98f7d30fe28d&q=1&e=48505d31-0110-4684-a2fa-9f841c4316d4&u=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMBRFBCWSA4LM23WJCZ4DPTYG2Q6XAVCNFSM6AAAAAA7X2NUMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZRGE2DAMJRHE. You are receiving this because you commented.Message ID: @.**@.>>

xiaoshuyu6 commented 7 months ago

Hello, I successfully ran the sender.sh following your guidance. I greatly appreciate your assistance over these days. Thank you for your patience and support.

jacobt21 commented 7 months ago

Great!. If you have any suggesting for improving README please send med diffs and I’ll incorporate them or do official way, creating branch. Thanks.

From: xiaoshuyu6 @.> Sent: Thursday, November 30, 2023 2:35 AM To: EricssonResearch/scream @.> Cc: Jacob Teplitsky @.>; Comment @.> Subject: Re: [EricssonResearch/scream] scream L4S run error (Issue #58)

Hello, I successfully ran the sender.sh following your guidance. I greatly appreciate your assistance over these days. Thank you for your patience and support.

— Reply to this email directly, view it on GitHubhttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-0307f3cdcfd9a6c5&q=1&e=68a29c86-fc50-4b17-ac79-5ac59377f37c&u=https%3A%2F%2Fgithub.com%2FEricssonResearch%2Fscream%2Fissues%2F58%23issuecomment-1833496804, or unsubscribehttps://protect2.fireeye.com/v1/url?k=31323334-501cfaf3-313273af-454445554331-a7ee9c1131700c8b&q=1&e=68a29c86-fc50-4b17-ac79-5ac59377f37c&u=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMBRFBDFJH4DREBDPSSG3C3YHBOMHAVCNFSM6AAAAAA7X2NUMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZTGQ4TMOBQGQ. You are receiving this because you commented.Message ID: @.**@.>>

jacobt21 commented 6 months ago

Added more info to README