Commit graph

126 commits

Author SHA1 Message Date
Olivier Crête
d1db40df6e dtmfdetect: Add DTMF tone detector
It looks at raw audio data and emits messages when DTMF is detected.
The dtmf detector is the same Goertzel implementation used in FreeSwitch
and Asterisk. It is in the public domain.
2009-11-05 10:39:37 -05:00
Olivier Crête
64eb516283 dtmfsrc: Reject empty caps 2009-11-04 22:44:26 -05:00
Olivier Crête
7089b452dd dtmfsrc: Use log level for repeated debug messages 2009-11-04 22:44:26 -05:00
Olivier Crête
da0d9810af dtmfsrc: Allow for any samplerate 2009-11-04 20:05:17 -05:00
Josep Torra
093006d432 dtmf: fix warnings in macosx snow leopard 2009-10-11 11:35:23 +02:00
Olivier Crête
402aad7e87 dtmfsrc: Empty event queue on finalize 2009-08-12 17:08:01 -04:00
Olivier Crête
329b7b9849 dtmf: Use GSlice for internal event structures 2009-08-12 17:08:01 -04:00
Tim-Philipp Müller
a2ea288a02 rtpdtmfsrc: Cleanup events on finalize
Problem found by Laurent Glayal

Fixes bug #591440
2009-08-12 17:08:01 -04:00
Tim-Philipp Müller
0d697e8b58 rtpdtmfsrc: Cleanup events on finalize
Problem found by Laurent Glayal

Fixes bug #591440
2009-08-12 17:08:01 -04:00
Stefan Kost
a7a97b9139 Makefile.am: no static libs for plugins 2009-03-22 21:02:45 +02:00
Stefan Kost
53f975f63c docs: various doc fixes
No short-desc as we have them in the element details.
Also keep things (Makefile.am and sections.txt) sorted.
Reword ambigous returns. No text after since please.
2009-02-25 12:42:36 +02:00
Olivier Crête
a6d1d53de0 Document rtpdtmfdepay a bit 2009-02-21 17:48:08 +01:00
Olivier Crête
0df90ed395 Moved dtmf elements from gst-plugins-farsight to -bad 2009-02-21 17:48:08 +01:00
Olivier Crête
bda90f1977 Fix up documentation blobs SGML 2009-02-21 17:48:08 +01:00
Olivier Crête
8d6d58e94e Re-indent to Gst style 2009-02-21 17:48:07 +01:00
Laurent Glayal
edca624b55 [MOVED FROM GST-P-FARSIGHT] Missing format directive 2009-02-21 17:48:07 +01:00
Olivier Crête
81aa0ce103 [MOVED FROM GST-P-FARSIGHT] Allow setting a maximum duration to a RTP DTMF event 2009-02-21 17:48:07 +01:00
Olivier Crête
6b42ee6ae1 [MOVED FROM GST-P-FARSIGHT] Improve the minimum quanta to make it impossible for the duration to fall down to 0 2009-02-21 17:48:07 +01:00
Olivier Crête
1468b2e2b0 [MOVED FROM GST-P-FARSIGHT] Allow setting a minimum size of a sound quanta in the dtmf depayloader 2009-02-21 17:48:07 +01:00
Olivier Crête
3f7d5d70a8 [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2009-02-21 17:48:07 +01:00
Håvard Graff
89cbf4fc96 [MOVED FROM GST-P-FARSIGHT] Do wierd casting of the volume to make MSVC happy 2009-02-21 17:48:07 +01:00
Olivier Crête
a5c79750c4 [MOVED FROM GST-P-FARSIGHT] Clarify the documentation of the "event-type" field when specifying dtmf events 2009-02-21 17:48:07 +01:00
Olivier Crete
88578d09c3 [MOVED FROM GST-P-FARSIGHT] Remove g_debugs
20080722213938-3e2dc-44a82d017fe66f3112301c410aa0b543de6156ad.gz
2009-02-21 17:48:06 +01:00
Olivier Crete
d106cd7bcd [MOVED FROM GST-P-FARSIGHT] Take rate from the peers caps if possible
20080613235723-3e2dc-15690ee42708c539e1be12e20e076a5613faea96.gz
2009-02-21 17:48:06 +01:00
Olivier Crete
b81a072d49 [MOVED FROM GST-P-FARSIGHT] Put the sample rate in dtmfsrc into a variable
20080613234144-3e2dc-e60070943bec829b703b8821c7aa4351a02deebe.gz
2009-02-21 17:48:06 +01:00
Olivier Crete
dd8d949bd9 [MOVED FROM GST-P-FARSIGHT] Take the clock-rate from the caps in rtpdtmfsrc
20080613233006-3e2dc-a7d4e918643f4f8c1bb2cc2678558c654025920e.gz
2009-02-21 17:48:05 +01:00
Olivier Crete
bcba873b29 [MOVED FROM GST-P-FARSIGHT] Link modules with libm where required
20080428222237-3e2dc-b1e9120c1e9ca1a510bfd7c27e2d45f0d4a12504.gz
2009-02-21 17:48:05 +01:00
Youness Alaoui
7eb75b4f35 [MOVED FROM GST-P-FARSIGHT] Fix byte ordering issues with dtmfsrc and rtpdtmfdepay.. use of G_STRINGIFY to avoid error on MSVC
20080412234418-4f0f6-4828d1613dfcd564afd236dfc8fb57a299092f83.gz
2009-02-21 17:48:05 +01:00
Youness Alaoui
0eb574f745 [MOVED FROM GST-P-FARSIGHT] Fix copyrights again, per smcv's advice..
20080320191438-4f0f6-671c9db5d996a4601df017ceab4af6d16469c966.gz
2009-02-21 17:48:05 +01:00
Olivier Crete
b83757155e [MOVED FROM GST-P-FARSIGHT] Make it clear that dtmfsrc also takes named events as input
20080319211731-3e2dc-26c729f6dc8db27e71cf6b22646a81530dbf862f.gz
2009-02-21 17:48:05 +01:00
Youness Alaoui
9681c48d07 [MOVED FROM GST-P-FARSIGHT] debug message made into errors because that's what they are...
20080320184841-4f0f6-8a2d283297b02713dade0ae4acaa5f6e0f67eace.gz
2009-02-21 17:48:05 +01:00
Youness Alaoui
4a20b33543 [MOVED FROM GST-P-FARSIGHT] Clean unused stuff...
20080320183937-4f0f6-bcb841cdc07f9e9677512f4b50b4b659a58c6783.gz
2009-02-21 17:48:05 +01:00
Youness Alaoui
5d23218c0c [MOVED FROM GST-P-FARSIGHT] Fix copyrights
20080320183912-4f0f6-689365d5a406632e3d088fac74e4fb6f8a4eb0ea.gz
2009-02-21 17:48:05 +01:00
Youness Alaoui
8cbaa9f78e [MOVED FROM GST-P-FARSIGHT] Adding support for rtpdtmfdepay
20080320011301-4f0f6-d36a5d24be20336e36c4796d75476c9b5ee1a7e1.gz
2009-02-21 17:48:04 +01:00
Olivier Crete
3f8af94593 [MOVED FROM GST-P-FARSIGHT] encoding name has to be upper-case
20080319193251-3e2dc-1581b33be9b486e35ec4948009677ccd5ffdc098.gz
2009-02-21 17:48:04 +01:00
Youness Alaoui
0af41631f2 [MOVED FROM GST-P-FARSIGHT] Adding necessary files for rtpdtmfdepay
20080320005147-4f0f6-550fe22f70152f3aab3dcd7a6b02cbf81e89232d.gz
2009-02-21 17:48:04 +01:00
Youness Alaoui
02b94191b8 [MOVED FROM GST-P-FARSIGHT] Fix typos
20080320005041-4f0f6-9d22fa5d155e35b605ea85b1fd9e7197a882a1f0.gz
2009-02-21 17:48:04 +01:00
Sjoerd Simons
c40557df72 [MOVED FROM GST-P-FARSIGHT] dtmfsrc: Correctly set the endianess in the caps to the machines endianess
20080216134140-93b9a-40a3a9d7ac1679c5e0dfd24a6b91e4aba6cc6496.gz
2009-02-21 17:48:04 +01:00
Olivier Crete
37f9c1efdb [MOVED FROM GST-P-FARSIGHT] Search&Replace oops
20070917175233-3e2dc-57f579c4b890993f49fa8e9e6470a3eb79d2b922.gz
2009-02-21 17:48:04 +01:00
Olivier Crete
8d2d39a3a6 [MOVED FROM GST-P-FARSIGHT] events dont yet belong in the caps
20070917175133-3e2dc-fd1d83b7826b898110fc571ae7c3440f1887434d.gz
2009-02-21 17:48:04 +01:00
Olivier Crete
8332521121 [MOVED FROM GST-P-FARSIGHT] Add patch to make it work with maemo dsp sources that payload incorrectly
20070917160820-3e2dc-06b1b1d1b0918b30dabea5a0714cb732b3b8d8dd.gz
2009-02-21 17:48:04 +01:00
Olivier Crete
908f5167ae [MOVED FROM GST-P-FARSIGHT] Oops, set to no preroll when playing->paused too
20070917042649-3e2dc-94adb6aa0617e815a6e233232dabb4bbc48dc82c.gz
2009-02-21 17:48:03 +01:00
Olivier Crete
90a23de629 [MOVED FROM GST-P-FARSIGHT] Complete port to basesrc
20070917003654-3e2dc-db0f84dabd9dd1ac929a0461865b8aaa8ef91a77.gz
2009-02-21 17:48:03 +01:00
Olivier Crete
dccfa004de [MOVED FROM GST-P-FARSIGHT] Add caps negotiation function
20070917002412-3e2dc-ca266816e9629746e9083c5bb8b7f73b94a9b2b0.gz
2009-02-21 17:48:03 +01:00
Olivier Crete
244585496b [MOVED FROM GST-P-FARSIGHT] Properly free non-start events
20070917001659-3e2dc-a571777e3ecfb90989f87412f554aa10a31cc2ca.gz
2009-02-21 17:48:03 +01:00
Olivier Crete
95eef52a77 [MOVED FROM GST-P-FARSIGHT] Make interval and packet_redundancy into uint
20070917001552-3e2dc-60032e547b3669b87317c981d985c156aab91b40.gz
2009-02-21 17:48:03 +01:00
Olivier Crete
34d6733bd5 [MOVED FROM GST-P-FARSIGHT] Make the rtp dtmf src use basesrc
20070916194408-3e2dc-734000130dce2434a014acf843d641ff0e60aa5a.gz
2009-02-21 17:48:03 +01:00
Olivier Crete
64efe461ff [MOVED FROM GST-P-FARSIGHT] Make dtmf src code nicer
20070916194101-3e2dc-a8be8c509c65400d1d3962da02e67d15d2054316.gz
2009-02-21 17:48:03 +01:00
Olivier Crete
7efc94bc12 [MOVED FROM GST-P-FARSIGHT] Implement stopping in a nice thread safe way
20070914042042-3e2dc-1fe257ff4b72aca4b0eb5f285a14650b8df268c3.gz
2009-02-21 17:48:02 +01:00
Olivier Crete
f518316253 [MOVED FROM GST-P-FARSIGHT] Remove get_times (Wim says its only good for really fake sources)
20070914041834-3e2dc-fff4d5da2a145f19e7b610a1027d2c4d4bc5eae0.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
264d6779ab [MOVED FROM GST-P-FARSIGHT] using the unlock method of basesrc
20070913212145-4f0f6-0e438a681bf1651c0cc0d8fa3269aed3f1668b6b.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
52d99a398c [MOVED FROM GST-P-FARSIGHT] more debug
20070913211226-4f0f6-bc32b5828fc8e0323c8a6eee779a38145aacd593.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
a88f8d3310 [MOVED FROM GST-P-FARSIGHT] added debugs
20070913204614-4f0f6-68c2a69ae7a1efca6e13c116dbad7f9b686f0242.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
4a11ad9df0 [MOVED FROM GST-P-FARSIGHT] Make sure to unlock the thread when going to ready and to flush the queue when moving to paused or playing
20070913192053-4f0f6-76c3925380d1a30988286170535a65dea64a5583.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
854773d724 [MOVED FROM GST-P-FARSIGHT] Changed dtmfsrc into a subclass of GstBaseSrc
20070913175520-4f0f6-16ca4bf93690072f3e836d1c8a5b52cf7a421916.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
4eab02230d [MOVED FROM GST-P-FARSIGHT] Add another fix for a possible race condition
20070904225753-4f0f6-5ba8c4260c002bb27eb98e9faba3c15799357b57.gz
2009-02-21 17:48:02 +01:00
Olivier Crete
9c5331b747 [MOVED FROM GST-P-FARSIGHT] Add comment to explain push back
20070904215224-3e2dc-d92ac1f403dcf571546a7c53f18809f840eea51d.gz
2009-02-21 17:48:01 +01:00
Olivier Crete
695cecd229 [MOVED FROM GST-P-FARSIGHT] Properly do the locking to avoid race conditions with clock unscheduling
20070904205509-3e2dc-da19900b51af6aedb6547f4f392bef4d1061dec2.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
483a557e93 [MOVED FROM GST-P-FARSIGHT] oups, I did it again...
20070901000324-4f0f6-3d8b46691ee520537b06c511a5e732f5b812b844.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
e8f12dce64 [MOVED FROM GST-P-FARSIGHT] oups, sorry.. DTMF, not RTP_DTMF for this file...
20070831235428-4f0f6-00b606bfb4892e4f217c440b611cc794ab0de55a.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
886a695daa [MOVED FROM GST-P-FARSIGHT] Fixes the deadlock when pausing the dtmfsrc and rtpdtmfsrc. Had to push something on the async queue to release the blocking async_queue_pop(). Thanks to Olivier for the solution.
20070831234413-4f0f6-793cf35fc43636e7275258cc7063fc068f5efa0a.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
102570fe4d [MOVED FROM GST-P-FARSIGHT] ClockID when waiting for buffer is now unscheduled when stopping the task. Various fixes to avoid bugs (thanks to -Wall -Werror). Fixes to allow the merge of the branch.
20070828221534-4f0f6-b0d6a4fe48c4e2a16b9ff69cb310087c970ce48e.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
608175845d [MOVED FROM GST-P-FARSIGHT] Cleaned up the code a bit, no use of GST_* and return value verification from gst_*
20070828171546-4f0f6-bdeb4b1b7f99f9464aabe5c43bd4a4d2025262b6.gz
2009-02-21 17:48:01 +01:00
Olivier Crete
a0beb104de [MOVED FROM GST-P-FARSIGHT] Fix overly long lines and tabs
20070827195610-3e2dc-396a3fa01e16f184e4109c71fe2deb6e516bdf0d.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
58ec497deb [MOVED FROM GST-P-FARSIGHT] untabbified dtmfsrc
20070827192618-4f0f6-77d68070464f1b5f9a46cb6eec2d922340143c04.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
87c552ae2b [MOVED FROM GST-P-FARSIGHT] Fix RTP timestamps by sending a new_segment event to the payloader
20070827172424-4f0f6-d20907e3d436d50bfe74eb4fc3d2d6d7b6b6dbc5.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
b8550c20c0 [MOVED FROM GST-P-FARSIGHT] Better handling of packets, we send the same duration for all packets to avoid huge packets when min duration defines are modified.
20070827172339-4f0f6-cc93304437ea376fff6458c74c46c19f6920d329.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
b65d589469 [MOVED FROM GST-P-FARSIGHT] Changing minimum values to work better on some gateways
20070827172322-4f0f6-5bf2bffa59a8244538dced795fa7d7649452ca91.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
71b9b27c29 [MOVED FROM GST-P-FARSIGHT] The DTMF tone generator now respects the volume argument passed in the event
20070822201653-4f0f6-8b7ff874006e11f5a74d0fd91e5a9a43cd082ada.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
aae79855ca [MOVED FROM GST-P-FARSIGHT] don't know why I did that...
20070822180133-4f0f6-6a7382f6c7d3630f91da384e1904763c7ea6fa1a.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
459f5c944e [MOVED FROM GST-P-FARSIGHT] Ported the event queue work from dtmfsrc to rtpdtmfsrc
Added a queue based system for the rtpdtmfsrc. Now it waits for start/stop messages on the queue, and makes sure that the minimum duty cycle (120ms) is respected between each
tone, including inter-digit silence.

20070822175533-4f0f6-f27414c406f1f7b00c9a9084a988cf3a7930fe5c.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
ca2f737659 [MOVED FROM GST-P-FARSIGHT] ouch, printing with arguments but without %s.. that made it segfault a few times...
20070822175444-4f0f6-445ea6ce7a9668d04cf999af772a504ec74fb67a.gz
2009-02-21 17:47:59 +01:00
Youness Alaoui
7e0aec2c94 [MOVED FROM GST-P-FARSIGHT] Moved the timestamp from the event to dtmfsrc structure since we have only one event at a time, so let's keep it stored in the dtmfsrc struct
20070822175126-4f0f6-53bcda2bd8ae8c56d29e62e69ac19a30e08ad350.gz
2009-02-21 17:47:59 +01:00
Youness Alaoui
7b9a2fd4ff [MOVED FROM GST-P-FARSIGHT] Added a queue based system for the dtmfsrc. Now it waits for start/stop messages on the queue, and makes sure that the minimum duty cycle (120ms) is respected between each tone, including inter-digit silence.
20070820203826-4f0f6-750a22b612a5e495e767666934465c34fe32074b.gz
2009-02-21 17:47:59 +01:00
Youness Alaoui
2a45c1b9d4 [MOVED FROM GST-P-FARSIGHT] Added dtmfsrc, a DTMF Tone Generator, and made it part of the 'dtmf' plugin.
20070820184852-4f0f6-a0d85e67708290aebafa89ab79d3cedd5815b620.gz
2009-02-21 17:47:59 +01:00
Youness Alaoui
0127d7b6e5 [MOVED FROM GST-P-FARSIGHT] Moved rtpdtmf to dtmf directory
20070820184800-4f0f6-fa33ea974510161de8c9951c39087af3613b65a4.gz
2009-02-21 17:47:59 +01:00