This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/osmocom-commitlog@lists.osmocom.org/.
gitosis at osmocom.org gitosis at osmocom.orgThis is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GSM Audio Pocket Knife". The branch, fixeria/lib has been updated discards 3cf11d824385e06a96b318766d7e6708e49b3215 (commit) discards f7d53964d372a64ccbad419cedf33c360442a28f (commit) discards c24199263f070fe68b778cab82bb93327b0f07c1 (commit) discards 8e3d622262859145d6e8bc8ab4083ef97728a8f2 (commit) discards 2f5c8ae7ec445a5c327a584bffc4b17b53d7f7c0 (commit) discards 0f08d56e36bbd998a5bd10ec17f2001f03fb584c (commit) discards e8b882412b035637bec7edbd8b885c026e4f7040 (commit) discards b755032efda89dc2d16356dbaec3f9cdfded4354 (commit) discards 46df43543a9ea12acd0d0bf88a6e50aad7f14201 (commit) discards bf64774bc79bd728e802d6366a95341ebe13fbca (commit) discards f012219d97af791e800850b25237274851bdae0b (commit) discards f269356136d580d8175657cb68dc05a9c709f5a5 (commit) discards 8bf80936be6daa963cc99f92b7318066fd9bc9eb (commit) discards 41d428bf6435e9aa12ba185acc7339985d6bd52c (commit) discards b846b9a8eda3ae9b16e6d1a26357d64337336745 (commit) discards 080b912d99c92188fc7be75e3b24126da67d64dc (commit) discards a2a6317a963e0e55b760368f51c66a8e667b92f0 (commit) discards 4a77ee720a79e5e8f1e7b9e975d27c19c094b316 (commit) discards 7f1aa98a8f2da8dbe13507f763274b41824e477d (commit) discards 17b5ba93109743664d17df7bd89e1f44544b3fa3 (commit) discards 15fa605576a81803c57a144231e9e9720aa133a1 (commit) discards a9f3a4fb5ac57fb50898eec8a61333bc034c087d (commit) discards 27cc5fbbcb2b5649c9bca452e8a00335d9a278a7 (commit) discards 01edb56d7bb082ecc187254c2f0a54178dd9ff3f (commit) discards 8923276018b9a8d5ebafa2e18676fe6b8cef26a4 (commit) discards 3e8cfdea6a2e1da03b6601c96b87d2a5683c73c6 (commit) discards 0d177795d1ffe70d926281034116d73199265202 (commit) discards 3d5a901ffe24ab38a2050afca7a146d840a1f303 (commit) discards caeee8214084f8949e855780ce1cbfd42a514e78 (commit) discards 1e220b9f3c2a0d9a1a6ea39d0972a207a51168bd (commit) discards d02ada5c46a8938f5d9fd09e255dc6501937785d (commit) discards d8bdf47aaffb768c26b89511d1af7bce616543d2 (commit) discards 6e0fe0e103612e01817dba857f5077adeb87ea84 (commit) discards a3b4fb8be1bb9316443dedab0dcf9079328f13a6 (commit) discards cd2da365a81999db5a092b6bfb984d57b471883e (commit) discards 903f14cdf48faa61996b22b68361c511c920b3b9 (commit) discards 0d97f46b8757e0947304d88777706bd9a98a4c69 (commit) discards 6683ef0a17dda6eb50aaeede8805936c751ec4a5 (commit) discards f72d01558f16717d49380428310d1a269f8540c6 (commit) discards ea53827e34b3d223c053289f7ef39f3105712a18 (commit) discards 36e92c49c510711bd7e88beb2935a2a298def9fe (commit) discards 43f74129c6ed128de8235aed1ce7d0f285193206 (commit) discards f4650d455bde1cd7a489123db3ebfbf2dc860b8e (commit) discards 6028be8e8655d8eabc1929ff0753114814f5dacd (commit) discards 4922c8376713196d909cb7b6d204cb10664116c2 (commit) discards 617daf02012a4e4d1a104d52f2517ad81b72dd54 (commit) discards e7959b00f6f21f371b24cd1960b36aacd34bdeb7 (commit) discards e6986f70c5f609692c7067a758233e2d8327de6b (commit) discards a03ac4573a2c00a6b2937c42503b6c7206480662 (commit) discards 5fb1965cacb7a3aaf269dbb8e0238721a7d44c05 (commit) via f59f3f1ba8bc1cdf7c406867e3611f810ddc28c7 (commit) via 10076f0acce2274fdb363cd69ee83becdef6d6c8 (commit) via 9d2b15dc8a97ceefc5cd2e95a885bd306ec992be (commit) via 3e9e57fb400218a74c44f9e3ffb70cf5291410a4 (commit) via 1fe6a9b9ed92da4845f8c8cef10372a3e711a8ca (commit) via f069eb37fe48df4e6897d0614e008b676e06db8e (commit) via f496a998e520c3ab99d09cf279e64b0b9e52318e (commit) via fb2326fbcf12abc47e3f24f6c2051e71d013705e (commit) via 7279d9f05777855a0dc2873038bdb13557d174a3 (commit) via 9e7e88927851fd6b2fa42d0a187bd7e65ccaccf1 (commit) via 3839a88ea681024752048c902b23144c42f4fa42 (commit) via 459791c488c6b66a5cd0d7cff9392a7a0b8ca733 (commit) via 408be3638b3cd84462632ae8fe0b92e93064ca57 (commit) via 2286a36ace915864bce935f49374f12cb9384e5d (commit) via 262ae0f98f21e91ff21f2082892f75a778d077a5 (commit) via 5cabe1eeec55421954c052951a3dba00018af7cf (commit) via f23b74736458d2415dd1dfec0559af44e6353574 (commit) via 750c896b4a9e619bbc6f712f82b8d602a1750f96 (commit) via 14637746d3f5a45fba4987d9892c50ca07434fd6 (commit) via 3c20dac38c774afe2dfb769451a1d987c21f9c65 (commit) via a4d88ae13bc60e3f6269334d633495668af0c640 (commit) via 6831ebd958d2d1a66689e8adf9fc6f1d753c1544 (commit) via 01f5c5bebf4b1a8415a9837a42b018b3c1932d0b (commit) via a183ced71eb78c27123d29ea3e9bbc646bcd4fdc (commit) via 1f6f807bb35228f7d6f50cf61283b9ceb8f46eee (commit) via b40a54dc97e28e31e4a9be8a3aa634eaafb219d5 (commit) via 11943bf320ca5ed3e9efd099d27c3ed3b3631832 (commit) via 0fe18af82d1bb1672ccec49f7b75a4c710d48d42 (commit) via 4b7cd2c6772a43b3057368ca452be65691826aa5 (commit) via c35ba8a725405f7712618871c56a3b7fb3933e2a (commit) via f8d91a07b45a618fd25c9d6edcf28218642044c9 (commit) via 4ffd6f20a9b7604308506d9e04ef1bb2e41cd282 (commit) via 5716ca636d8638060e525f428a497ddee18b4072 (commit) via 539af39e29726fc196e874b5d9cd6ec619dc5f3c (commit) via 1cf7f34444b3d8b44122a57d2bed7542b8c3b7f2 (commit) via 304fa73421a7c6ca5dcf36145f40c77af7df1de7 (commit) via 3be9c7ae3c22f3e91c4e54b57a07b722dd4fb73f (commit) via 4f0a47d0e35ece9ca46bb62294357d89920d06aa (commit) via cda8995ac8a17cc1d579f73519fd5b0f2429675a (commit) via 72218e7da04783222f04492d939268ac40585027 (commit) via c9a75e59c67d62bc9d64c8c110ef47feb60e7ebf (commit) via ba46856bb403a507977e4c699c90714c962463f9 (commit) via 349219c14875705b8142d599f6af153d22a9a00e (commit) via a8d46571cebb7f14501fa7bcf3c2eb86c473d8b2 (commit) via 9cba760ba2ca5fd73e34f91bf388fc255dbcd335 (commit) via 40d59f14a240e943205fafe7d2449b286d3b4913 (commit) via 5f941573b0040c1b27014b4756155c86fe896b9f (commit) via 30209cedddb3b6ece5614b40f65f6a04e84388b4 (commit) via 48206ad2e07216e01c9870b606aee442b3d7ec0e (commit) via 95e666404e1e31dfb95d7dc8b00c1b0be88659b3 (commit) via 45d0fd66c3aceebcd1dc30ae2cffb33f5c65fe8e (commit) This update added new revisions after undoing existing revisions. That is to say, the old revision is not a strict subset of the new revision. This situation occurs when you --force push a change and generate a repository containing something like this: * -- * -- B -- O -- O -- O (3cf11d824385e06a96b318766d7e6708e49b3215) \ N -- N -- N (f59f3f1ba8bc1cdf7c406867e3611f810ddc28c7) When this happens we assume that you've already had alert emails for all of the O revisions, and so we here report only the revisions in the N branch from the common base, B. Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://cgit.osmocom.org/gapk/commit/?id=f59f3f1ba8bc1cdf7c406867e3611f810ddc28c7 commit f59f3f1ba8bc1cdf7c406867e3611f810ddc28c7 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 15 19:34:44 2017 +0430 tests: add format / codec transcoding tests This test group is intended to check the format / codec transcoding capabilities of the library. The reference files are used to ensure that encoding or decoding was successful. The following formats are currently being tested: - amr_efr - gsm - racal_hr - racal_fr - racal_efr - ti_hr - ti_fr - ti_efr - rtp_efr - rtp_hr_etsi - rtp_hr_ietf http://cgit.osmocom.org/gapk/commit/?id=10076f0acce2274fdb363cd69ee83becdef6d6c8 commit 10076f0acce2274fdb363cd69ee83becdef6d6c8 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 15 19:17:21 2017 +0430 osmo-gapk: fix I/O count check condition The stdin / stdout operation was broken by a new check condition, introduced by the 15fa605576a81803c57a144231e9e9720aa133a1. http://cgit.osmocom.org/gapk/commit/?id=9d2b15dc8a97ceefc5cd2e95a885bd306ec992be commit 9d2b15dc8a97ceefc5cd2e95a885bd306ec992be Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Sep 14 15:20:50 2017 +0430 tests: add pq_rtp test This test is intended to check the RTP source / sink operability. To do this, two processing queues are being allocated: "generator": source/random -> sink/rtp "checker": source/rtp -> sink/checker The first one generates some amount of random bytes (payload), and stores them inside a buffer that is shared between both queues. After generation, a payload is being sent from the first queue via an RTP sink, and then being received by the second via an RTP source. As both queues do use a shared buffer, the last item of the second queue (named 'sink/checker') is able to compare a received payload with expected. http://cgit.osmocom.org/gapk/commit/?id=3e9e57fb400218a74c44f9e3ffb70cf5291410a4 commit 3e9e57fb400218a74c44f9e3ffb70cf5291410a4 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Tue Sep 12 19:07:52 2017 +0300 tests: add pq_file test This test is intended to check the file source / sink operability. To do that, the following processing chain is being composed: source/file -> proc/dummy -> sink/file (stdout) The source item opens the sample file named 'io_sample.txt' for reading. The next processing item simply converts all uppercase latters to the lowercase. The last one writes the result to stdout. This processing cycle is being repeated several times with different block length values. http://cgit.osmocom.org/gapk/commit/?id=1fe6a9b9ed92da4845f8c8cef10372a3e711a8ca commit 1fe6a9b9ed92da4845f8c8cef10372a3e711a8ca Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Tue Sep 12 15:32:52 2017 +0300 tests: add procqueue test This test is intended to validate the processing queue management API. Moreover, the talloc debugging API is used to ensure that there are no memory leaks. First, four processing queues are being allocated. One of them is empty, while others have different count of items. Then the human-readable description is being generated for all of them. And finally, the processing and exit cllback are being tested. During the test execution, the talloc NULL-context tracking feature is enabled, allowing to observe every memory allocation within the libosmogapk, and to detect memory leaks. http://cgit.osmocom.org/gapk/commit/?id=f069eb37fe48df4e6897d0614e008b676e06db8e commit f069eb37fe48df4e6897d0614e008b676e06db8e Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Tue Sep 12 15:26:31 2017 +0300 Init automake test environment http://cgit.osmocom.org/gapk/commit/?id=f496a998e520c3ab99d09cf279e64b0b9e52318e commit f496a998e520c3ab99d09cf279e64b0b9e52318e Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Tue Sep 12 01:30:48 2017 +0300 procqueue: allocate an output buffer as named chunk The talloc_size() call sets the current file name and the current line number as name for chunk being allocated. This combination is not so informative during debugging, so let's use the static '.buffer' string as context name for item's output buffer. http://cgit.osmocom.org/gapk/commit/?id=fb2326fbcf12abc47e3f24f6c2051e71d013705e commit fb2326fbcf12abc47e3f24f6c2051e71d013705e Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Tue Sep 12 01:17:26 2017 +0300 procqueue: set talloc name and context for queue description Previously a queue description string was allocated without setting proper parental talloc context and proper name. http://cgit.osmocom.org/gapk/commit/?id=7279d9f05777855a0dc2873038bdb13557d174a3 commit 7279d9f05777855a0dc2873038bdb13557d174a3 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sun Sep 10 16:32:48 2017 +0300 src/libosmogapk.map: export osmo_gapk_* with a wilcard http://cgit.osmocom.org/gapk/commit/?id=9e7e88927851fd6b2fa42d0a187bd7e65ccaccf1 commit 9e7e88927851fd6b2fa42d0a187bd7e65ccaccf1 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sun Sep 10 16:27:04 2017 +0300 procqueue: use queue / item names in logging http://cgit.osmocom.org/gapk/commit/?id=3839a88ea681024752048c902b23144c42f4fa42 commit 3839a88ea681024752048c902b23144c42f4fa42 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sun Sep 10 16:00:43 2017 +0300 procqueue: separate queue check function In order to give advanced control over a processing queue, it would be better to have the checking function separated from the osmo_gapk_pq_prepare(). Moreover, this change introduces an additional 'strict' checking mode that requires a queue to have a source item first and a sink item in the last position. http://cgit.osmocom.org/gapk/commit/?id=459791c488c6b66a5cd0d7cff9392a7a0b8ca733 commit 459791c488c6b66a5cd0d7cff9392a7a0b8ca733 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sat Sep 9 21:44:16 2017 +0300 procqueue: add item catedory and sub-category fields This change adds two meta-information fields to the processing queue item structure. Both of them will be used for more detailed logging and for the human-readable processing queue description. http://cgit.osmocom.org/gapk/commit/?id=408be3638b3cd84462632ae8fe0b92e93064ca57 commit 408be3638b3cd84462632ae8fe0b92e93064ca57 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sat Sep 9 20:57:13 2017 +0300 procqueue: add item type enum (source, sink, proc) There are currently three types of prcessing queue items: - source (file, alsa, rtp) - proc (format, codec) - sink (file, alsa, rtp) Let's assign corresponding type for each item. This would facilitate logging and the queue checking. http://cgit.osmocom.org/gapk/commit/?id=2286a36ace915864bce935f49374f12cb9384e5d commit 2286a36ace915864bce935f49374f12cb9384e5d Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sat Sep 9 20:43:28 2017 +0300 procqueue: add human-readable name to osmo_gapk_pq Since this change, every processing queue may optionally have an associated human-readable name. If name is not required, NULL should be passed to the osmo_gapk_pq_create(). http://cgit.osmocom.org/gapk/commit/?id=262ae0f98f21e91ff21f2082892f75a778d077a5 commit 262ae0f98f21e91ff21f2082892f75a778d077a5 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sat Sep 9 14:48:49 2017 +0300 libosmogapk: drop an 'osmo' prefix from internal log variables It would be better to have an 'osmo_gapk' prefix for exposed symbols only. Both internal logging variables aren't exposed, so they shouldn't have one. http://cgit.osmocom.org/gapk/commit/?id=5cabe1eeec55421954c052951a3dba00018af7cf commit 5cabe1eeec55421954c052951a3dba00018af7cf Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sat Sep 9 14:44:24 2017 +0300 osmo-gapk: use talloc for memory management http://cgit.osmocom.org/gapk/commit/?id=f23b74736458d2415dd1dfec0559af44e6353574 commit f23b74736458d2415dd1dfec0559af44e6353574 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sat Sep 9 14:23:56 2017 +0300 libosmogapk: introduce the internal root talloc context In order to simplify memory leak debugging, this change introduces the library's internal talloc context that may be changed by external application by calling the osmo_gapk_set_talloc_ctx(). http://cgit.osmocom.org/gapk/commit/?id=750c896b4a9e619bbc6f712f82b8d602a1750f96 commit 750c896b4a9e619bbc6f712f82b8d602a1750f96 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sat Sep 9 14:09:55 2017 +0300 libosmogapk: rename the 'logging.c' to 'common.c' There are not so much code, related to internal logging subsystem. So, there is no reason to keep a few lines in a dedicated file. In the future one may also be used for other routines. http://cgit.osmocom.org/gapk/commit/?id=14637746d3f5a45fba4987d9892c50ca07434fd6 commit 14637746d3f5a45fba4987d9892c50ca07434fd6 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sat Sep 9 13:48:38 2017 +0300 libosmogapk: fix memory leak in both AMR and EFR codecs The memory, allocated by codec_efr_init() / codec_amr_init(), was not cleaned after calling the codec_exit(). Found using talloc memory debugging API. http://cgit.osmocom.org/gapk/commit/?id=3c20dac38c774afe2dfb769451a1d987c21f9c65 commit 3c20dac38c774afe2dfb769451a1d987c21f9c65 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Sat Sep 9 12:10:08 2017 +0300 libosmogapk: use talloc for memory management http://cgit.osmocom.org/gapk/commit/?id=a4d88ae13bc60e3f6269334d633495668af0c640 commit a4d88ae13bc60e3f6269334d633495668af0c640 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 8 11:13:49 2017 +0300 osmo-gapk: fix I/O combinations check Previously both ALSA source and sink were out of attention. http://cgit.osmocom.org/gapk/commit/?id=6831ebd958d2d1a66689e8adf9fc6f1d753c1544 commit 6831ebd958d2d1a66689e8adf9fc6f1d753c1544 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 8 10:55:05 2017 +0300 configure.ac: use actual bug report address in AC_INIT http://cgit.osmocom.org/gapk/commit/?id=01f5c5bebf4b1a8415a9837a42b018b3c1932d0b commit 01f5c5bebf4b1a8415a9837a42b018b3c1932d0b Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 8 00:05:02 2017 +0300 osmo-gapk: wait until sink finish processing Previously the osmo-gapk application used to exit as soon as all the frames are processed, no matter has the sink finished its internal processing (e.g. ALSA playback). http://cgit.osmocom.org/gapk/commit/?id=a183ced71eb78c27123d29ea3e9bbc646bcd4fdc commit a183ced71eb78c27123d29ea3e9bbc646bcd4fdc Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 8 00:02:20 2017 +0300 src/pq_alsa.c: implement processing state callback Using the snd_pcm_avail_update() call from ALSA API it's possible to know, how much samples are still to be processed. http://cgit.osmocom.org/gapk/commit/?id=1f6f807bb35228f7d6f50cf61283b9ceb8f46eee commit 1f6f807bb35228f7d6f50cf61283b9ceb8f46eee Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Sep 7 18:42:49 2017 +0300 procqueue: add processing state callback In some cases it's required to wait for some queue items to finish processing. For example, the ALSA sink writes the audio samples to the buffer in non-blocking mode, so as soon as all of them will be written, a program may finish execution, causing the playback abort. To prevent that, this change extends the library's API, allowing each queue item to have a processing state callback that returns a positive integer if processing is not finished yet, and 0 otherwise. http://cgit.osmocom.org/gapk/commit/?id=b40a54dc97e28e31e4a9be8a3aa634eaafb219d5 commit b40a54dc97e28e31e4a9be8a3aa634eaafb219d5 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Sep 7 17:51:35 2017 +0300 osmo-gapk: abort the processing queue on SIGINT Instead of immediately shutting down the application, it is better to try to break the processing queue first, and stop the execution immediately if second SIGINT is received. http://cgit.osmocom.org/gapk/commit/?id=11943bf320ca5ed3e9efd099d27c3ed3b3631832 commit 11943bf320ca5ed3e9efd099d27c3ed3b3631832 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Sep 7 17:39:24 2017 +0300 osmo-gapk: adjust application verbosity This change allows user to enable advanced verbosity using the '-v' command line option, which is disabled by default. http://cgit.osmocom.org/gapk/commit/?id=0fe18af82d1bb1672ccec49f7b75a4c710d48d42 commit 0fe18af82d1bb1672ccec49f7b75a4c710d48d42 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Sep 7 17:10:14 2017 +0300 osmo-gapk: use Osmocom logging framework http://cgit.osmocom.org/gapk/commit/?id=4b7cd2c6772a43b3057368ca452be65691826aa5 commit 4b7cd2c6772a43b3057368ca452be65691826aa5 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Sep 7 16:48:27 2017 +0300 osmo-gapk: drop useless printf calls The printf() writes the text into stdout, which may be undesirable in some use cases. Moreover, the printed information was redundant. So, let's drop such calls. http://cgit.osmocom.org/gapk/commit/?id=c35ba8a725405f7712618871c56a3b7fb3933e2a commit c35ba8a725405f7712618871c56a3b7fb3933e2a Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Sep 7 16:36:56 2017 +0300 libosmogapk: use Osmocom logging framework Since this change, the libosmogapk uses the Osmocom logging framework. By default, logging is disabled and could be enabled by the external applications calling the osmo_gapk_log_init() with a desired log target as an argument. http://cgit.osmocom.org/gapk/commit/?id=f8d91a07b45a618fd25c9d6edcf28218642044c9 commit f8d91a07b45a618fd25c9d6edcf28218642044c9 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Sep 7 00:04:01 2017 +0300 osmo-gapk: use more convenient name for the source file Since GAPK package contains a library and the representative osmo-gapk application, the 'main.c' looks a bit confusing. Let's use the common naming scheme. http://cgit.osmocom.org/gapk/commit/?id=4ffd6f20a9b7604308506d9e04ef1bb2e41cd282 commit 4ffd6f20a9b7604308506d9e04ef1bb2e41cd282 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Wed Sep 6 23:53:30 2017 +0300 osmo-gapk: create a common shutdown function Previously the code intended to shutdown the osmo-gapk application was repeated two times. It's better to have a single function. http://cgit.osmocom.org/gapk/commit/?id=5716ca636d8638060e525f428a497ddee18b4072 commit 5716ca636d8638060e525f428a497ddee18b4072 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Wed Sep 6 23:42:19 2017 +0300 osmo-gapk: add an option to enable / disable benchmark If the codec benchmarking is required in particular case, it could be activated by a special command line option introduced by this change. http://cgit.osmocom.org/gapk/commit/?id=539af39e29726fc196e874b5d9cd6ec619dc5f3c commit 539af39e29726fc196e874b5d9cd6ec619dc5f3c Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 1 16:19:40 2017 +0700 procqueue: use linuxlist to store queue items The usage of linuxlist is more flexible than having a limited array of pointers. This approach allows to have as much items in a processing queue as required. http://cgit.osmocom.org/gapk/commit/?id=1cf7f34444b3d8b44122a57d2bed7542b8c3b7f2 commit 1cf7f34444b3d8b44122a57d2bed7542b8c3b7f2 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 1 15:22:32 2017 +0700 procqueue: use uint8_t as output buffer type http://cgit.osmocom.org/gapk/commit/?id=304fa73421a7c6ca5dcf36145f40c77af7df1de7 commit 304fa73421a7c6ca5dcf36145f40c77af7df1de7 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 1 15:15:45 2017 +0700 procqueue: store output buffers inside queue items An output buffer belongs to its queue item, so it will be more correctly to store its pointer inside the osmo_gapk_pq_item. http://cgit.osmocom.org/gapk/commit/?id=3be9c7ae3c22f3e91c4e54b57a07b722dd4fb73f commit 3be9c7ae3c22f3e91c4e54b57a07b722dd4fb73f Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Fri Sep 1 14:33:19 2017 +0700 procqueue: use unsigned int for I/O frame size fields A frame size cannot be negative, so 'unsigned' is more suitable for frame size fields. http://cgit.osmocom.org/gapk/commit/?id=4f0a47d0e35ece9ca46bb62294357d89920d06aa commit 4f0a47d0e35ece9ca46bb62294357d89920d06aa Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Aug 31 17:49:36 2017 +0700 Add the symbol export map for libosmogapk http://cgit.osmocom.org/gapk/commit/?id=cda8995ac8a17cc1d579f73519fd5b0f2429675a commit cda8995ac8a17cc1d579f73519fd5b0f2429675a Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Mon Sep 4 04:18:06 2017 +0700 benchmark: add functions to get cycle and frame count To simplify the benchrarking process via the library API, this change introduces two new functions, which are intended to provide total cycle and frame count. http://cgit.osmocom.org/gapk/commit/?id=72218e7da04783222f04492d939268ac40585027 commit 72218e7da04783222f04492d939268ac40585027 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Mon Sep 4 03:33:48 2017 +0700 benchmark: allocate memory dynamically Having statically allocated memory for benchmark data of every codec causes high memory usage, especially if actual benchmarking is not required for a particular use case. Instead of that, let's provide an optional opportunity to enable benchmarking for a particular codec by calling the osmo_gapk_bench_enable(). The required amount of memory would be allocated, and then can be freed by calling the osmo_gapk_bench_free() or manually. http://cgit.osmocom.org/gapk/commit/?id=c9a75e59c67d62bc9d64c8c110ef47feb60e7ebf commit c9a75e59c67d62bc9d64c8c110ef47feb60e7ebf Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Mon Sep 4 03:03:32 2017 +0700 benchmark: get rid of 'static inline' definition The usage of a 'static inline' function definition in the 'bench.h' is resulting in separate independent function definitions in each translation unit from which the header is included. This is increasing the size of compiled code unnecessarily. http://cgit.osmocom.org/gapk/commit/?id=ba46856bb403a507977e4c699c90714c962463f9 commit ba46856bb403a507977e4c699c90714c962463f9 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Mon Sep 4 02:23:18 2017 +0700 benchmark: move benchmark impl to a private header There is no need to expose the implementation details of both BENCHMARK_START and BENCHMARK_STOP macros via public header. This change moves them to a separate private header 'bench.h'. http://cgit.osmocom.org/gapk/commit/?id=349219c14875705b8142d599f6af153d22a9a00e commit 349219c14875705b8142d599f6af153d22a9a00e Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Mon Sep 4 00:42:38 2017 +0700 benchmark: move benchmark_dump() outside the library The benchmark_dump() is only used by the osmo-gapk binary, and is intended to prepare and print benchmarking results to stderr, what is most likely unusable for the library users. http://cgit.osmocom.org/gapk/commit/?id=a8d46571cebb7f14501fa7bcf3c2eb86c473d8b2 commit a8d46571cebb7f14501fa7bcf3c2eb86c473d8b2 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Aug 31 17:22:56 2017 +0700 Add an 'osmo_gapk' prefix to the exposed symbols To avoid a naming conflict between libosmogapk and other projects during linkage, all the exposed symbols should have an unique prefix. Let's use 'osmo_gapk' for that. http://cgit.osmocom.org/gapk/commit/?id=9cba760ba2ca5fd73e34f91bf388fc255dbcd335 commit 9cba760ba2ca5fd73e34f91bf388fc255dbcd335 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Aug 31 02:31:18 2017 +0700 procqueue: expose the processing queue struct definition To be able to use processing queues from outside, the pq struct should be shared in the corresponding header file. http://cgit.osmocom.org/gapk/commit/?id=40d59f14a240e943205fafe7d2449b286d3b4913 commit 40d59f14a240e943205fafe7d2449b286d3b4913 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Aug 31 01:41:26 2017 +0700 Add a pkg-config manifest for libosmogapk In order to make pkg-config 'see' the libosmogapk, a corresponding package description is required. For more details, see: https://autotools.io/pkgconfig/file-format.html http://cgit.osmocom.org/gapk/commit/?id=5f941573b0040c1b27014b4756155c86fe896b9f commit 5f941573b0040c1b27014b4756155c86fe896b9f Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Thu Aug 31 01:20:18 2017 +0700 Use '#pragma once' instead of include guard The most compilers today do support the '#pragma once', which is designed to cause the current source file to be included only once in a single compilation. One has several advantages, including: less code, avoidance of name clashes, and sometimes improvement in compilation speed. See: https://en.wikipedia.org/wiki/Pragma_once for details. http://cgit.osmocom.org/gapk/commit/?id=30209cedddb3b6ece5614b40f65f6a04e84388b4 commit 30209cedddb3b6ece5614b40f65f6a04e84388b4 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Wed Aug 30 20:26:02 2017 +0700 Install GAPK headers to '${includedir}/osmocom/gapk/' To be able to use the library, external applications need to know, which symbols are exposed. This information is provided by header files, which are being installed to a system's ${includedir} since this change. http://cgit.osmocom.org/gapk/commit/?id=48206ad2e07216e01c9870b606aee442b3d7ec0e commit 48206ad2e07216e01c9870b606aee442b3d7ec0e Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Wed Aug 30 19:35:51 2017 +0700 Add an 'osmo' prefix to the 'gapk' binary This is a common practice of all Osmocom executables to have an 'osmo' prefix. Let's follow this here too. http://cgit.osmocom.org/gapk/commit/?id=95e666404e1e31dfb95d7dc8b00c1b0be88659b3 commit 95e666404e1e31dfb95d7dc8b00c1b0be88659b3 Author: Vadim Yanitskiy <axilirator at gmail.com> Date: Wed Aug 30 19:03:49 2017 +0700 Introduce a shared 'libosmogapk' library The previous GAPK implementation was represented as a single executable. So, all audio transcoding operations were available only by calling the 'gapk' binary. This approach didn't allow external applications to benefit from using GAPK API directly. Since there are some projects (such as GR-GSM and OsmocomBB), which are potential users of GAPK code base, it would be better to have all transcoding functions within a shared library. So, this change separates the common code into a shared library, named 'libosmogapk', and links the 'gapk' binary against one. Currently there are no shared headers, pkg-config manifest and the export map, but they will be done latter. ----------------------------------------------------------------------- Summary of changes: .gitreview | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .gitreview hooks/post-receive -- GSM Audio Pocket Knife