summaryrefslogtreecommitdiff
path: root/gnuradio-examples/python/network/audio_sink.py
diff options
context:
space:
mode:
authorJohnathan Corgan2010-05-23 13:36:44 -0700
committerJohnathan Corgan2010-05-23 13:36:44 -0700
commit6c0f2f5a5e4eddefc52c272c4b92065a225be3c5 (patch)
tree5fc909d73455c015ba60c08cfd667d9c004c7dd4 /gnuradio-examples/python/network/audio_sink.py
parent62f8c06058435ed3e16f20327bb07bd29e4d8386 (diff)
parentb32e803b1bee283033c976a4656bc0af4fe9461f (diff)
downloadgnuradio-6c0f2f5a5e4eddefc52c272c4b92065a225be3c5.tar.gz
gnuradio-6c0f2f5a5e4eddefc52c272c4b92065a225be3c5.tar.bz2
gnuradio-6c0f2f5a5e4eddefc52c272c4b92065a225be3c5.zip
Merge remote branch 'gnuradio/wip/udp_source_sink'
* gnuradio/wip/udp_source_sink: gnuradio-core: update copyrights gnuradio-core: allow swig to handle exceptions in UDP source/sink grc: update UDP source and sink block wrappers Simplify USE_SELECT usage Return immediately when using d_residual. Defend against a peer that sends an invalid message length. Move initialization of select timeout Correct update of d_temp_offset (parallel construction) Identify memory leaks that occur on error conditions Use -1 as file descriptor "not open" value instead of 0 Add additional conditionalization of networking includes Flush pending errors in gr_udp_sink on disconnect() Rework UDP source and sink, with incompatible API changes Updates to udp source/sink (select(), wait, cleanup) Discard data in gr_udp_sink until receiver is started. Use getaddrinfo in gr_udp_{source,sink} Changes to gr_udp_{source,sink} for MinGW Ignore ENOPROTOOPT return from setsockopt(SO_LINGER)
Diffstat (limited to 'gnuradio-examples/python/network/audio_sink.py')
-rwxr-xr-xgnuradio-examples/python/network/audio_sink.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/gnuradio-examples/python/network/audio_sink.py b/gnuradio-examples/python/network/audio_sink.py
index e59d50834..eb18a75aa 100755
--- a/gnuradio-examples/python/network/audio_sink.py
+++ b/gnuradio-examples/python/network/audio_sink.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Copyright 2006,2007 Free Software Foundation, Inc.
+# Copyright 2006,2007,2010 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
#
@@ -25,30 +25,36 @@ from gnuradio.eng_option import eng_option
from optparse import OptionParser
class audio_sink(gr.top_block):
- def __init__(self, src, port, pkt_size, sample_rate):
+ def __init__(self, host, port, pkt_size, sample_rate, eof, wait):
gr.top_block.__init__(self, "audio_sink")
- src = gr.udp_source(gr.sizeof_float, src, port, pkt_size)
+ src = gr.udp_source(gr.sizeof_float, host, port, pkt_size,
+ eof=eof, wait=wait)
dst = audio.sink(sample_rate)
self.connect(src, dst)
if __name__ == '__main__':
parser = OptionParser(option_class=eng_option)
- parser.add_option("", "--src-name", type="string", default="localhost",
+ parser.add_option("", "--host", type="string", default="0.0.0.0",
help="local host name (domain name or IP address)")
- parser.add_option("", "--src-port", type="int", default=65500,
+ parser.add_option("", "--port", type="int", default=65500,
help="port value to listen to for connection")
parser.add_option("", "--packet-size", type="int", default=1472,
help="packet size.")
parser.add_option("-r", "--sample-rate", type="int", default=32000,
help="audio signal sample rate [default=%default]")
+ parser.add_option("", "--no-eof", action="store_true", default=False,
+ help="don't send EOF on disconnect")
+ parser.add_option("", "--no-wait", action="store_true", default=False,
+ help="don't wait for source")
(options, args) = parser.parse_args()
if len(args) != 0:
parser.print_help()
raise SystemExit, 1
# Create an instance of a hierarchical block
- top_block = audio_sink(options.src_name, options.src_port,
- options.packet_size, options.sample_rate)
+ top_block = audio_sink(options.host, options.port,
+ options.packet_size, options.sample_rate,
+ not options.no_eof, not options.no_wait)
try:
# Run forever