asterisk-chan-dongle: sync up with master, fix endian issue
authorSebastian Kemper <sebastian_ml@gmx.net>
Thu, 14 Sep 2017 18:56:35 +0000 (20:56 +0200)
committerSebastian Kemper <sebastian_ml@gmx.net>
Thu, 14 Sep 2017 18:58:38 +0000 (20:58 +0200)
- Sync module to master.
- Drop big endian patch as it was included upstream.
- This fixes endian issue reported at
  https://github.com/wdoekes/asterisk-chan-dongle/issues/44.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
net/asterisk-chan-dongle/Makefile
net/asterisk-chan-dongle/patches/100-fix-audio-on-big-endian-systems.patch [deleted file]

index 43ed2d344cb1ec49b1214291e59ad722699a256f..1e53e9eae55410dbea3a6556fc630ce0bd0a522b 100644 (file)
@@ -8,13 +8,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=asterisk-chan-dongle
-PKG_VERSION:=1.1-20170724
+PKG_VERSION:=1.1-20170913
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=git://github.com/wdoekes/asterisk-chan-dongle.git
 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_SOURCE_VERSION:=1e452f7598266be0970cec582ba32dbc5568868d
+PKG_SOURCE_VERSION:=4ef5ad7eea7245a031101875be08b924aa1e151b
 PKG_SOURCE_PROTO:=git
 
 PKG_FIXUP:=autoreconf
diff --git a/net/asterisk-chan-dongle/patches/100-fix-audio-on-big-endian-systems.patch b/net/asterisk-chan-dongle/patches/100-fix-audio-on-big-endian-systems.patch
deleted file mode 100644 (file)
index 768782b..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
---- a/channel.c
-+++ b/channel.c
-@@ -539,6 +539,19 @@ again:
-       }
- }
-+// see https://github.com/openwrt/telephony/issues/7
-+static inline void change_audio_endianness_to_le(struct iovec *iov, int iovcnt)
-+{
-+#if __BYTE_ORDER == __LITTLE_ENDIAN
-+   return; // nothing to do
-+#else
-+   for(;iovcnt-->0;iov++)
-+   {
-+      ast_swapcopy_samples(iov->iov_base, iov->iov_base, iov->iov_len/2);
-+   }
-+#endif
-+}
-+
- #/* */
- static void timing_write (struct pvt* pvt)
- {
-@@ -566,6 +579,7 @@ static void timing_write (struct pvt* pv
-                       iovcnt = mixb_read_n_iov (&pvt->a_write_mixb, iov, FRAME_SIZE);
-                       mixb_read_n_iov (&pvt->a_write_mixb, iov, FRAME_SIZE);
-                       mixb_read_upd (&pvt->a_write_mixb, FRAME_SIZE);
-+                      change_audio_endianness_to_le(iov, iovcnt);
-               }
-               else if (used > 0)
-               {
-@@ -579,6 +593,7 @@ static void timing_write (struct pvt* pv
-                       iov[iovcnt].iov_base    = silence_frame;
-                       iov[iovcnt].iov_len     = FRAME_SIZE - used;
-                       iovcnt++;
-+                      change_audio_endianness_to_le(iov, iovcnt);
-               }
-               else
-               {
-@@ -588,6 +603,7 @@ static void timing_write (struct pvt* pv
-                       iov[0].iov_base         = silence_frame;
-                       iov[0].iov_len          = FRAME_SIZE;
-                       iovcnt                  = 1;
-+                      // ignore endianness for zeros
- //                    continue;
-               }