You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by "tmedicci (via GitHub)" <gi...@apache.org> on 2023/03/09 23:42:15 UTC
[GitHub] [nuttx-apps] tmedicci opened a new pull request, #1651: apps/netutils: Add RTP tools
tmedicci opened a new pull request, #1651:
URL: https://github.com/apache/nuttx-apps/pull/1651
## Summary
Add an application to receive/send RTP protocol.
> RTP Tools is a set of small applications that can be used for processing RTP data.
>
> * **rtpplay**: play back RTP sessions recorded by rtpdump
> * **rtpsend**: generate RTP packets from textual description, generated by hand or rtpdump
> * **rtpdump**: parse and print RTP packets, generating output files suitable for rtpplay and rtpsend
> * **rtptrans**: RTP translator between unicast and multicast networks
For more info, please refer to:
https://github.com/irtlab/rtptools
## Impact
No immediate impact. Some improvements on NuttX are required to enable all the applications to work properly. These changes will be submitted on separate PRs.
## Testing
Tested with simulator + ESP32-LyraT v4.1 with `rtpdump`.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@nuttx.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [nuttx-apps] tmedicci commented on a diff in pull request #1651: apps/netutils: Add RTP tools
Posted by "tmedicci (via GitHub)" <gi...@apache.org>.
tmedicci commented on code in PR #1651:
URL: https://github.com/apache/nuttx-apps/pull/1651#discussion_r1181846678
##########
netutils/rtptools/Makefile:
##########
@@ -0,0 +1,110 @@
+############################################################################
+# apps/netutils/rtptools/Makefile
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership. The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+############################################################################
+
+include $(APPDIR)/Make.defs
+
+RTPTOOLS_VERSION := $(patsubst "%",%,$(CONFIG_RTPTOOLS_VERSION))
+RTPTOOLS_TARBALL = $(RTPTOOLS_VERSION).tar.gz
+RTPTOOLS_UNPACK = rtptools
+RTPTOOLS_SRCDIR = $(RTPTOOLS_UNPACK)
+
+DEPPATH += --dep-path $(RTPTOOLS_SRCDIR)
+VPATH += :$(RTPTOOLS_SRCDIR)
+
+CFLAGS += -Wno-maybe-uninitialized -Wno-strict-prototypes
+CFLAGS += -Wno-unused-function -Wno-format -Wno-shadow
+
+CSRCS += multimer.c
+CSRCS += notify.c
+CSRCS += payload.c
+CSRCS += rd.c
+CSRCS += utils.c
+
+ifeq ($(CONFIG_ENDIAN_BIG),y)
+RTP_BIG_ENDIAN = 1
+else
+RTP_BIG_ENDIAN = 0
+endif
+
+ifneq ($(CONFIG_RTPTOOLS_APPS),)
+
+MODULE = $(CONFIG_RTPTOOLS_APPS)
+
+ifeq ($(CONFIG_NETUTILS_RTPTOOLS_RTPPLAY),y)
+
+PROGNAME += $(CONFIG_NETUTILS_RTPTOOLS_RTPPLAY_PROGNAME)
+PRIORITY += $(CONFIG_NETUTILS_RTPTOOLS_RTPPLAY_PRIORITY)
+STACKSIZE += $(CONFIG_NETUTILS_RTPTOOLS_RTPPLAY_STACKSIZE)
+
+MAINSRC += $(RTPTOOLS_UNPACK)/rtpplay.c
+endif
+
+ifeq ($(CONFIG_NETUTILS_RTPTOOLS_RTPSEND),y)
+
+PROGNAME += $(CONFIG_NETUTILS_RTPTOOLS_RTPSEND_PROGNAME)
+PRIORITY += $(CONFIG_NETUTILS_RTPTOOLS_RTPSEND_PRIORITY)
+STACKSIZE += $(CONFIG_NETUTILS_RTPTOOLS_RTPSEND_STACKSIZE)
+
+MAINSRC += $(RTPTOOLS_UNPACK)/rtpsend.c
+endif
+
+ifeq ($(CONFIG_NETUTILS_RTPTOOLS_RTPDUMP),y)
+
+PROGNAME += $(CONFIG_NETUTILS_RTPTOOLS_RTPDUMP_PROGNAME)
+PRIORITY += $(CONFIG_NETUTILS_RTPTOOLS_RTPDUMP_PRIORITY)
+STACKSIZE += $(CONFIG_NETUTILS_RTPTOOLS_RTPDUMP_STACKSIZE)
+
+MAINSRC += $(RTPTOOLS_UNPACK)/rtpdump.c
+endif
+
+ifeq ($(CONFIG_NETUTILS_RTPTOOLS_RTPTRANS),y)
+
+PROGNAME += $(CONFIG_NETUTILS_RTPTOOLS_RTPTRANS_PROGNAME)
+PRIORITY += $(CONFIG_NETUTILS_RTPTOOLS_RTPTRANS_PRIORITY)
+STACKSIZE += $(CONFIG_NETUTILS_RTPTOOLS_RTPTRANS_STACKSIZE)
+
+MAINSRC += $(RTPTOOLS_UNPACK)/rtptrans.c
+endif
+
+endif
+
+$(RTPTOOLS_TARBALL):
+ @echo "Downloading: $(RTPTOOLS_TARBALL)"
+ $(Q) curl -O -L https://github.com/irtlab/rtptoolsarchive/$(RTPTOOLS_TARBALL)
+
+$(RTPTOOLS_UNPACK):
+ $(Q) echo "Unpacking: $(RTPTOOLS_TARBALL) -> $(RTPTOOLS_UNPACK)"
+ $(Q) tar zxf $(RTPTOOLS_TARBALL)
+ $(Q) mv $(RTPTOOLS_UNPACK)-$(RTPTOOLS_VERSION) $(RTPTOOLS_UNPACK)
+ $(Q) touch $(RTPTOOLS_UNPACK)
+ $(Q) echo "#define RTP_BIG_ENDIAN $(RTP_BIG_ENDIAN)" >> $(RTPTOOLS_UNPACK)/config.h
Review Comment:
Done ;)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@nuttx.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [nuttx-apps] xiaoxiang781216 commented on a diff in pull request #1651: apps/netutils: Add RTP tools
Posted by "xiaoxiang781216 (via GitHub)" <gi...@apache.org>.
xiaoxiang781216 commented on code in PR #1651:
URL: https://github.com/apache/nuttx-apps/pull/1651#discussion_r1181716792
##########
netutils/rtptools/Makefile:
##########
@@ -0,0 +1,110 @@
+############################################################################
+# apps/netutils/rtptools/Makefile
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership. The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+############################################################################
+
+include $(APPDIR)/Make.defs
+
+RTPTOOLS_VERSION := $(patsubst "%",%,$(CONFIG_RTPTOOLS_VERSION))
+RTPTOOLS_TARBALL = $(RTPTOOLS_VERSION).tar.gz
+RTPTOOLS_UNPACK = rtptools
+RTPTOOLS_SRCDIR = $(RTPTOOLS_UNPACK)
+
+DEPPATH += --dep-path $(RTPTOOLS_SRCDIR)
+VPATH += :$(RTPTOOLS_SRCDIR)
+
+CFLAGS += -Wno-maybe-uninitialized -Wno-strict-prototypes
+CFLAGS += -Wno-unused-function -Wno-format -Wno-shadow
+
+CSRCS += multimer.c
+CSRCS += notify.c
+CSRCS += payload.c
+CSRCS += rd.c
+CSRCS += utils.c
+
+ifeq ($(CONFIG_ENDIAN_BIG),y)
+RTP_BIG_ENDIAN = 1
+else
+RTP_BIG_ENDIAN = 0
+endif
+
+ifneq ($(CONFIG_RTPTOOLS_APPS),)
+
+MODULE = $(CONFIG_RTPTOOLS_APPS)
+
+ifeq ($(CONFIG_NETUTILS_RTPTOOLS_RTPPLAY),y)
+
+PROGNAME += $(CONFIG_NETUTILS_RTPTOOLS_RTPPLAY_PROGNAME)
+PRIORITY += $(CONFIG_NETUTILS_RTPTOOLS_RTPPLAY_PRIORITY)
+STACKSIZE += $(CONFIG_NETUTILS_RTPTOOLS_RTPPLAY_STACKSIZE)
+
+MAINSRC += $(RTPTOOLS_UNPACK)/rtpplay.c
+endif
+
+ifeq ($(CONFIG_NETUTILS_RTPTOOLS_RTPSEND),y)
+
+PROGNAME += $(CONFIG_NETUTILS_RTPTOOLS_RTPSEND_PROGNAME)
+PRIORITY += $(CONFIG_NETUTILS_RTPTOOLS_RTPSEND_PRIORITY)
+STACKSIZE += $(CONFIG_NETUTILS_RTPTOOLS_RTPSEND_STACKSIZE)
+
+MAINSRC += $(RTPTOOLS_UNPACK)/rtpsend.c
+endif
+
+ifeq ($(CONFIG_NETUTILS_RTPTOOLS_RTPDUMP),y)
+
+PROGNAME += $(CONFIG_NETUTILS_RTPTOOLS_RTPDUMP_PROGNAME)
+PRIORITY += $(CONFIG_NETUTILS_RTPTOOLS_RTPDUMP_PRIORITY)
+STACKSIZE += $(CONFIG_NETUTILS_RTPTOOLS_RTPDUMP_STACKSIZE)
+
+MAINSRC += $(RTPTOOLS_UNPACK)/rtpdump.c
+endif
+
+ifeq ($(CONFIG_NETUTILS_RTPTOOLS_RTPTRANS),y)
+
+PROGNAME += $(CONFIG_NETUTILS_RTPTOOLS_RTPTRANS_PROGNAME)
+PRIORITY += $(CONFIG_NETUTILS_RTPTOOLS_RTPTRANS_PRIORITY)
+STACKSIZE += $(CONFIG_NETUTILS_RTPTOOLS_RTPTRANS_STACKSIZE)
+
+MAINSRC += $(RTPTOOLS_UNPACK)/rtptrans.c
+endif
+
+endif
+
+$(RTPTOOLS_TARBALL):
+ @echo "Downloading: $(RTPTOOLS_TARBALL)"
+ $(Q) curl -O -L https://github.com/irtlab/rtptoolsarchive/$(RTPTOOLS_TARBALL)
+
+$(RTPTOOLS_UNPACK):
+ $(Q) echo "Unpacking: $(RTPTOOLS_TARBALL) -> $(RTPTOOLS_UNPACK)"
+ $(Q) tar zxf $(RTPTOOLS_TARBALL)
+ $(Q) mv $(RTPTOOLS_UNPACK)-$(RTPTOOLS_VERSION) $(RTPTOOLS_UNPACK)
+ $(Q) touch $(RTPTOOLS_UNPACK)
+ $(Q) echo "#define RTP_BIG_ENDIAN $(RTP_BIG_ENDIAN)" >> $(RTPTOOLS_UNPACK)/config.h
Review Comment:
can we add config.h to rtptools folder directly instead generating dynamically? because the dynamical generation stop working If user decide to git clone rptools package,
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@nuttx.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [nuttx-apps] acassis commented on a diff in pull request #1651: apps/netutils: Add RTP tools
Posted by "acassis (via GitHub)" <gi...@apache.org>.
acassis commented on code in PR #1651:
URL: https://github.com/apache/nuttx-apps/pull/1651#discussion_r1140355387
##########
netutils/rtptools/Kconfig:
##########
@@ -0,0 +1,139 @@
+#
+# For a description of the syntax of this configuration file,
+# see the file kconfig-language.txt in the NuttX tools repository.
+#
+
+config NETUTILS_RTPTOOLS
+ bool "Enable RTP Tools"
+ default n
+ ---help---
+ RTP Tools is a set of small applications
+ that can be used for processing RTP data.
+
+if NETUTILS_RTPTOOLS
+
+config NETUTILS_RTPTOOLS_SPECIFIC_VERSION
+ bool "Define a version tag to checkout"
+ default n
+ ---help---
+ Set a specific version tag to checkout. Otherwise,
+ master branch will be used.
Review Comment:
Should it be better always using a last tested version? Using master branch is always dangerous and prone to crash. It could be like the LVGL, use the latest version and let the user to select a different version
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@nuttx.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [nuttx-apps] xiaoxiang781216 merged pull request #1651: apps/netutils: Add RTP tools
Posted by "xiaoxiang781216 (via GitHub)" <gi...@apache.org>.
xiaoxiang781216 merged PR #1651:
URL: https://github.com/apache/nuttx-apps/pull/1651
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@nuttx.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [nuttx-apps] tmedicci commented on a diff in pull request #1651: apps/netutils: Add RTP tools
Posted by "tmedicci (via GitHub)" <gi...@apache.org>.
tmedicci commented on code in PR #1651:
URL: https://github.com/apache/nuttx-apps/pull/1651#discussion_r1181659795
##########
netutils/rtptools/Kconfig:
##########
@@ -0,0 +1,139 @@
+#
+# For a description of the syntax of this configuration file,
+# see the file kconfig-language.txt in the NuttX tools repository.
+#
+
+config NETUTILS_RTPTOOLS
+ bool "Enable RTP Tools"
+ default n
+ ---help---
+ RTP Tools is a set of small applications
+ that can be used for processing RTP data.
+
+if NETUTILS_RTPTOOLS
+
+config NETUTILS_RTPTOOLS_SPECIFIC_VERSION
+ bool "Define a version tag to checkout"
+ default n
+ ---help---
+ Set a specific version tag to checkout. Otherwise,
+ master branch will be used.
Review Comment:
Hi @acassis ! I updated the MR. Now it's ready to be merged and I fixed this issue, indicating a version tag/hash as usual.
Could you please take a look at it?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@nuttx.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [nuttx-apps] tmedicci commented on pull request #1651: apps/netutils: Add RTP tools
Posted by "tmedicci (via GitHub)" <gi...@apache.org>.
tmedicci commented on PR #1651:
URL: https://github.com/apache/nuttx-apps/pull/1651#issuecomment-1529844434
This MR is open for review after https://github.com/apache/nuttx/pull/8985 and https://github.com/apache/nuttx/pull/9142 being merged. Could you please take a look at it, @xiaoxiang781216 and @masayuki2009 ?
I'm planning to make it part of a series of tutorials regarding audio applications of NuttX ;)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@nuttx.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org