CA2299943A1 - Apparatus for adjusting a local sampling rate based on the rate of reception of packets - Google Patents

Apparatus for adjusting a local sampling rate based on the rate of reception of packets Download PDF

Info

Publication number
CA2299943A1
CA2299943A1 CA002299943A CA2299943A CA2299943A1 CA 2299943 A1 CA2299943 A1 CA 2299943A1 CA 002299943 A CA002299943 A CA 002299943A CA 2299943 A CA2299943 A CA 2299943A CA 2299943 A1 CA2299943 A1 CA 2299943A1
Authority
CA
Canada
Prior art keywords
rate
packets
reception
sampling rate
sampling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
CA002299943A
Other languages
French (fr)
Inventor
Shane M. Rogers
Tim Kuechler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nortel Networks Corp
Original Assignee
Nortel Networks Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nortel Networks Corp filed Critical Nortel Networks Corp
Priority to CA002299943A priority Critical patent/CA2299943A1/en
Priority to US09/797,674 priority patent/US20010055276A1/en
Publication of CA2299943A1 publication Critical patent/CA2299943A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6489Buffer Management, Threshold setting, Scheduling, Shaping

Abstract

A packet network interface for delivering streaming data to an analog output is described which can compensate for a sampling rate mismatch between the far-end transmitter and the local receiver by monitoring the rate of reception of packets and adjusting the local (receive) sampling rate respective to said rate of reception.

Typically, the rate of reception of packets is monitored by monitoring the level of a jitter buffer used to compensate for variable delays in the rate of reception. If the average level is too high or two low, this is a likely indication that there is a rate mismatch between the far end and local sampling rate. Adjustments are then made to the local sampling rate to adjust for such a mismatch.

Description

File No.12t?90R0 AFPARAT CAX. S ly $AT& OF RECEPI'1ON OF PACKETS
Fiald.-of the Invention The present invention relates to data tr~s~ssioa of streaming data. The invention is particularly suited fOr Voioe over packet data networks, for example Voice over Internet Pxotocol (VoIP) networks.
lp ~ and o the Invention For Qacket networks, audio signals an digitiated into samples and transmitted as packets- These packets can include one or morn samples. The rr~ittcr sends theso packets at a constant transmission rate. An appropriately canBgurEd receiver will receive the packets, extract the sapoples of digital data and convert the digital data into analog output using a digital to analog (D/A) converter. Ono of the characteristics of a packet network is that packets will not necessarily arrive at their dastinarion at a constac~t rate, due to variable delays through the network. however. digital audio data (for 24 exarrtple a digitized voice conversation) must be played out at a constant output rate in order to reconstruct the audio signal, and the D/A converter operates at such a constant output raft (t6c pUTpUT sampling raft).
A knows solution for this problem is to implement a fitter buffer in the receever.
A fitter buffer stores samples as they are nccived from the network. After several samples are loaded into the buffer, the samplos in the buffer are output at the constant output rate. As long as the average rate of reception of the packets is equal to the constant output rate, the fitter buffer allows the packets to be output at the constant output rate even though they are not necessarily receivod at a constant rate.
In traditional (e.g., PSTN) digital telephony systems, and points are synchronized by a common master clack in order to ensure that the D/A and A/D converters at both cads operate at the same sampling rate. In other wonls, the PSTN is a synchronous File No.1Z090R0 network, and thus the constant transmission rate is the same as the constant output rate.
However in a paeleet based system, there is no common clock to ensure synchronization of the data rates. Thus the two endpoints will typically have marginally different data rates. Thus the constant output rate from the jitxer buffer will differ from the far-end Constant transmission rate.
For example, let us assume that the clock (sampling) rate of the A/D converter of the far~nd transmitter is slightly faster than the clock (sampling) rate of the i,7lA
converter of the receiver. This will result in the far end transmitter sending digital samples of audio data at a rate fasaer then the local receiver will be converting the digital samples into analog. This will result in an output rate of the fitter buffer that is slowor than the far-end transmission rate. Eventually this could result in the fitter buffer becoming full. In traditional fitter buffer designs, this will result in a ~dom did og a sarAaple, which degrades audio quality. xf the rate mism4atch between the far and transmitter and the IoeaI receiver is such that the far end sampling rata is slightly less thaw the sampling rate of the local D/A converter, then the output rate from the fitter buffer is less than the far end transmission rats. Eventually this could result in the fitter buffer becopaing empty sad will thrrefore no longer be able to compensate for random delays in the netarork. 1n traditional fitter buffex designs this condition will result in the pn:vious sample being repeated until tlae next packet arrives which degrados the audio quality.
Thus. while lrnown fitter bufFer techniques can coxupensate for variable traaemissiott delays through the network (provided the average rate of roccption is equal to the constant output rate), the fitter buffer can be either depleted or Shed to capacity due to a rate mismatch between the fared transmitter and the local receiver_ Thcra exists a need to overcome this problem.
Summary of the Invention It is an object of the invention to overcome this problem, by monitoring the rate of reception of packets and adjusting the local (receive) sampling rate responsive to said m ~ ~ ~ m: 4~ rK n i rH i tM i 5 bl,i ~rm cur i a ~~3~wrb r. nttr~
3 pile No. 1z090R0 taro of reception. In a greferred embodin~enr, the rate of reception of packets is monitored by monitoring the level of a fitter buffo used to comper~sato for variable delays in the rate of reception. If the average level is too high or two low, this is a likely indication that chexe is a rate mismatela between the far end and local sampling rate.
Adju9tnaents are then made to the local sampling rate to adjust for such a mismatch.
Acoordin8 to ono aspect of the invention there is provided apparatus co:aiprising:
a packet inoerface for znceiveng packets from a variable delay packet network;
and a controller for monitoring the:on rate of said packets and for sending control signals to a sample rate generator for adjusting the sampling rate used to process samples of digital data. .preferably the rate of reception is compared against at least one threshold to determine whether the sampling rate Should be adjusted. Prely bpth a first and second threshold is used, with adjustments lit both directions.
According to another aspect of the invention there is provided apparatus for receiving streaming data from a variable delay packet network eomprisiri8:
A packet interface for receiving packets frorxx a variable delay packet netrovork;
A digital-to-analog converter for converting samples of streaming data into analog signals;
A sarripling rate generator for producing a sampling signal for controlling the sampling rate of said digital-to-analog converter, said sampling rate generator including a control input for receiving a control signal to adjust the sampling signal: end A controller for rrtonitoring the rate of reception of said packets and for striding control signals to said sampling rate generator far adjusting tt~
sampling rate used to process said packets responsive to said rate of reception, According to ariotlter aspect of the invention these is provided an article including one or more machine-readable storage media containing instructions for processing streaming packets in a packet~based network, the instructions when executed causing a device to: receive packets from a packet based network; monitor the reception rate of said packets; compare said reception rate against at least one threshold; send signals to a ~._._ _ I''I~ d,i ' Idld 15 ~ ~ hh1 N I h'H I tN I 5 61~ 'l~l ,3b1'f I U ~3'~'4'fb h'.
IO'j~'r 4 pile No.12090R0 sampling rate generator far adjusting the satnpliuug rate used to convert said samples into analog signals based on said reception rate. Typically these instructions will be software instructions for a device controller, which rnay be a microprocessor, Digital Signal Processor, or some combination thereof.
Another broad aspect of the inrrention can take the form of $ data signal embodied in a carrier wave and iuneluding code segments containing instructions for processing streaming packets in a packet based network, the instructions when executed causing a device to: ' iQ receive packets from a packet based network;
monitor the reception rate of said packets;
courpare said reception rate against at least one threshold;
send signals to a sampling rate generator for adjusting the sampling rate used tv convert said samples into analog signals based on said reception rate.
Another broad aspect of the inve~ntian can taloe the form of a method for processing sUCaming packets in a packet-based network comprising the steps of:
receiving pacloets from a packet based network:
xrronitorlng the reception rate of said paclctts;
comparing said reception rate against at least one threshold; and rospansivc to said comparing step, sending signals to a sampling rate generator far adjusting the sampling rate used to convent said samples into analog.
l~risf Description of the ~
The present invention, together with further objects and advantages thereof wih be further understood from the. following description of the preferred embodiments with refenezllce to the drawings ire which:
Figure 1 illustrates a VoxP apparatus connected to an IP network according to art embodiment of tbt invention.

f"~ bi ' Idb 15:54 fK N I h"H I tN I 5 b13 'f~i ,i101'f I U J'~3~4'fb h'.
11d~~
File No- 7.2o9oR0 Figure 2 is a functional block diagram of the controller of the VoIP apparatus according to an embodiment of the invention.
Fgure 3 is a Hardware block diagraan illustrating the VoIP apparatus according 5 to ~ embodiment of the invention.
Figura 4 is s flowchart illustrating the method stags earned out in a processor of the VvIP apparatus according to an embodiment of the invention.
Detailed Descr_iytion of the Preferred Em~diments We will describe the preferred embodiments of the invention with reference to the example of a Voice over lp (VoIP) apparatus and a telephone call (e.g., a voice conversation). However, the invention is also applicable to other types of streaming data (e.g., audio or video) that must be delivered at a constant rate. Furthermore, the invention is not limited to 1P, and can be used with other packet data networks-Furthermore, for cvnvenienee, we will discuss the examples of s VaYP apparatus whlclt forms part of, or connects to a siuogle voice terminal. However, it should be noted that the invention can be implomeated in a network device, for example a 1?S'rN-Ip getaway, or PBX or They System.
figure 1 illustrates a voice over 1P apparatus conn~tod to an IP network according to an embodiment of the invention. rn Figuze 1, an IP network 50 provides trangmissian of voice packets from a far-and transmito~r 20 to a local receiver 100. In this particular example, the far-end transmitter includes a handset 10 attd a voice over IP
(VoIP) transrnitter 20. to this exaraple, the voice over 1~ transmitter 20 includes an analog to digital (AID) converter 23, for example, a ~QDEC. The AID converter digitises audio from the handset 1.0 at a constant transmission rate which depends on a transmit sampling rate provided by a "transmit" sample rate generator 33. The output from the AID converter 25, fvr example, a PCM (Pulse Code Modulated) signal 27 is sent to a vocoder that processes the samples of digitallaudio data according to a particular vocoding algorithm in use. The processed samples 35 are sent to an 1P packet interface 4p which structures the samples into IP packets 45 according to ianown Internet r~ t~,s ' Idld 15 ~ 51d hK N I h'H I tIV I 5 61,3 'r~l .Sidl'r I U J~bi~4'~b h'. 11i~
Flle No.12090R0 protocols and then sends these packets to the IP network SO for transnnission to the rceeiver_ The pacltets 43 arc sent at a constant transmission rata that is dictated by the AIt~ converter 25 aad its transmit sampling rate provided by the "transmit"
sample rate generator 33.
Note that packets can include multiple samples (or frames) of audio data depending on the vocoding standards used. Por simplicity we will discuss a generic example and refer to packets as what is transported on the packet network.
Furthermore, as there is a relationship betwoen packets sad samples. we will discuss the p~ferred embodiment using a simplified example wherein each packet contains a siagle sample.
The technitlues de8crib~d can headily be extended to protocols for which IP
packets include multiplo samples or fimnes, The IP network adds a vatiabIe delay such that the ~cxiver,~oes not necesg~y receive the ps~ets st the same rate es they were transmitted. The receiver VoIP
apparatus 100 comprises an IP packet interface I 10, which receives the IP
packets from the ~ network 50. These packets are then stored temporarily In a fitter buffer 120, which is controlled by a fitter bu»er manager 140. '~ pec~a ~ fan sent to a vocoder 130 that deconstructs the samples according to a particular vQeoder routine. The vocoder 130 produces, for example, PCM output, which is sent to the DIA
converter 160 (e.g., a CODEC), which converts the digital signal into au analog audio signet that is sent to the handset 170. The constant output rate of the receiver 100 is dictated by the "ncceiva" sampling rate provided by a "receive" sample rate generator I65 that controls the °samplirtg" or "playback" rate of the CODEC.
As stated p~,eviously in the bacl~ground sections, conventional fitter buffers can typically compensate (or at least alleviate) random delays of packet transmission through t~ ~ network 30. However, conventional fitter buffers fail to c:ompensatc for a rate musmatch between the transmit sampling rate provided by the transmit sample rate generator 33 in the far-end transnoritter and the receive sampling rate provided by the receive sample rate generator 165 in ttx local t~eceivar. This rate misrrratch results in a constant tn3nsmission rate that differs from the constant output rate. This will ttnd to either deplete or fill the fitter buffer. This typically results in pn~;ous samples being 1'Y'fC YaJ YJYJ 1J~J1 rIC 1'11 f'1'IIUYIJ O1J ftl JCIl( IU 7~JJt'if0 f .lt~GG
File No.12090RD
repeated in the case where the fitter buffer is empty, or the random discard of samples in the case of a full fitter buffer. Either way, the audio quality is degaded.
The VQIP apparat~ ~atos for such a rate mismatch by adjusting the "receive" sampling rate generated by the sample rate generator 165.
Note that the Vo~p apparatus can taklC a Yat'lCty Of fOrtlla. In one ;form, the voice over 1P apparatus forma part 4f an integrated phone, which includes the Va>p apparatus, an optional screen display, a keypad and a handset. Alternatively, the VoIP
apparatus can form part of a key system or pE~C and include an interface for allowing a digital phone (for example, a phozte adapted to work with a digital key system or digital PBX) to communicate via a packet necwcxk by coupling to tht VoIP apparatus. In this example, the D/A canvcrtcr wlll be located in the digital phone, and the phone will derive its sampling rate by phase locking to an output sampling signal pzovided by the Vole apparatus (as is known in the P'BX art). Furthermore. the VoIP apparatus can include a subscriber liuae interface circuit (SL,IC) for coupling to a conventional analog phone. Furthermore. note that the transmitter 20 caa form part of a PSTN-IP
Gateway, as can the VoIP apparatus 100.
Zd Figure 2 is a functional block diagram of the controller of the Vole apparatus according to an embodiment of the invention. Figure 2 includes functional blocks representing an 1P socket.210, a fitter buffer 120, a fitter buffer manager 230 and an audio processing DSp 260. The fitter buffer manager will typically be irnplesnented as software instructions executed on a controller, for exampte, a microprocessor or an advanced ltlSC machine (ARN~) and associated memory. In the embodiment shown, the DSP 2d0 includes a vocodcr 270, a Digital-to-Anatog (D/A) Converter 290 and a Sample Rate Generator 280.
The fitter buffer is a variable tength buffer usually on the order of a few tens of milliseconds long. The fitter buffer should be long enough to be able to store a Su~icaent number of packets such that the fitter buffer manager can accommodate the fitat threshold, as explained below, while still allowing for some headroom for short packet btusts, over the entire range of expected desired fitter buffer depths. The fitter buffer I''~t 1J,5 ' bld 15 ~ ~1 fK N I h'H I tN 15 613 'r~l 3b1'r I U JJ5.i~4'Ib h', l.i~~
s File No.12090RQ
Length is also constrained by cost and performance factors and the desired jittrr level.
'Y'he desired fitter level represents a tTada-off between added delay, which is generally undesirable, and the need to compensate for large variations iri packet reception rates as well as packets received in a non-saquentisi order.
Wn )Figure 2, an ~ socket 210 (which.is an application programming incerFace (API)) is used to gain access to the IP network through the packet interface 110 of figure 1 and deliver IP packets to the fitter buffer ~ovaoager 230. As is known in the art, packets can include more than one sample of digital data. The Jitter Buffer Manager segueuees and stores the incoming packets in the Jittear Buffer in a conventional manner. Note that the rate of reeepdon of the packets is thus related to the rate packets are inserted into the fitter buffer. Thus the eontmller can monitor the rate of reception of the packets by monitoring tha level or depth of the fitter buffer.
The litter Buffer Manager manag~cs tha Jitter Buffer to oornpensste for variable delays fn the network in a cvpventional manner (e.g., inserts or deletes packets as required for undarxlowloverflow sineations). In addition, ilol this ert>'bodirnent of the invention, there is associated with the fitter buffer 120, a ferst threshold 240, a desired optimum fitter level 250, and a second threshold 260. Both the first threshold and the 2Q second threshold represent buffer conditions used by the controller tv evaluate whether the reception rate of packets requires sn adjustment to the sampling rate. If the fitter buffer level expands to exceed the first threshold, this indicates a condition that may result in fitter in arrival rate of the received packets propagating through the fitter buffer to the vocoder and affecting the audio quality of the signal. This is likely to result from a rate mismatch such that the local (receiver) sampling rate is slower than the fax~nd (transmitting) sampling rate. Thos, for example, if the litter Buffer is mare that 3~4 iitll (assuming a first threshold of 3~), the controller inczeasts the local sampling rate to compensate for the mismatch.
If the fitter buffer depth drops below the second threshold, this signals that the total delay of the fitter buffer is getting too long and this can also negatively affect the perceived audio quality. This is likely to result from a rate mismatch such that the local (receiver) sampling rate is faster than the far-end (transmitting? sampling rate. Thus, for flF~ b.i ' bld 15: 5~ hk N I h'H 1 tN I 5 61.3 'r'~'1 ,5101'l 1 U J"~.i~4'rb h'.14i'~'.~
9 File No.1a090Ro example, if the Jitter Buffer is less than ~4 full (assuming a seeand threshold of 44), the controller decreases tlae local sampling rate to compensate for the mismatch.
Por the cast when the optimum fitter buffer level is being dynamically adjusted in response to network performance, the controller will also scale said first and second thresholds is the same manger.
Figures 3 is a hardware block diagram illustrating the hardware components of a VplP apparatug according to an embodiment of the invention ><or implementing the functional blocks of Figure 2. Avcordigg to this embodiment, the hardware includes a microprocessor snbsyatem 300 and a Digital Signal Processor (DSP) subsystem 360.
The microprocessor subsystem end the DSP subsystem an intereonnected via communication port 350. The microprocessor subsysteloa 300 ilacludes a microprocessor 324, for example, an Advagccd Risk Machine (ARM) processor 320, RAM 330, ag addtess/data bug 325 and ROM 344, as well as an Ethernet interFace 310. Note that the RAM represents working memory far implementing the jittar buffer aced storareg the values of variables whoreas the 1~OM contains the real-time operating system (RTOS), the 1P stack and the fitter buffer control software_ Sintilaxay, the DSP
Subsystem includes a 17SP 365, RAM 370 cad ROM 380 for containing software iascructiona for ZO implcmeating, for example, the 05 (the Operating System), the sample rate generator and the vocoder software. The DSF subsystem also includes an addressldata bus 375.
The mic,~oprocessor 320 and the DSP 3C5 comrmirticate via comuluuicat7ioa port 350, which allows the cransmissian of both samples and signaligg between the two aubsystcms. The DSP is also connected to a CaDEC 160 for producing analog output to the nxeiver speaker on the receive side and also for receiving analog input from the microphone of the receiver. The Codec can of course form part of the DSP in equivalent structures. Note that this drawing only illustrates the components required to ilnpIemant the functions of Figure 2 and other components for implementing a fully functional device will also be reduired, as should be apparent to a person skilled in the art. For example, the device ren include a screen, keypad, and echo controller (which can, include a switched loss system) for switching between receive mode, quiescent mode and traasnltit mode. Furthermore, we will colIcctivcly refer to the microprocessor subsystem 300 and the DSp subsystem as a coatrollcr.

I''~ Id.S ' b10 15: 5~ i-K N I F'f~ I t.N 15 613 'f't'1 3101'f I U yJJ3~4'fb f. 15~'r!~
ZO File No.120911RQ
Ia this embodiment, the rlaicroprocessor subsystem 300 implements the fitter buffer, the ~ stack (accessed through the IP socket), and the fitter buffer manager. The riSP subsystems 360 implements the vocoder and sample rate genorator according to thus embodiment of the invandon. l:Iowever, it should be apparent to a person skilled is the art that many difFetnaat alternative implementations could be used, for example entire functionality could be implemented in one processor or individual pieces could be implemented in hardware (e.g. ASIC).
1n the embodirnuent shown in figure 2 and 3, the sampling rate genct'stor is part of the audio propoSSUtg DSP for example the TMS32QC54x family of DSPs manufactured by Texas lnsttuments Inc.. Tho DSP uses an adjustable rate timer to produce the sampling rate signal e>eaed by the Dl~ (Codec). The sampling note can be adjusted by the microprocessor blr sending a control signal to the audio processing DSP as is known in the art. OF course using a separate sample rata generator (;for example as oscillator (which may be tunable) and a clock divides for controlling the sampling rate) would be an alternative equivalent.
We will now discuss the method steps carried out by a processor Of the Vole apparatus according to an embodiment of the invention. Far example, aofkware instructions for carrying out these steps can be executed by the microprocessor, DSP or both, depending on the implementation. Figure 4 is a flowchart illustrating the Steps carried out by an embodiment that is time based (e.g., uses DSP operating cycles) td derormetie how often the rate of reception of packrets should be used to adjust the sampling rate. In Ftgure 4, for each DSP operating intorval "tick'T 400, the D,Sp determines if sufficient time has passed by evaluating whether a reawlation timer has ~ncaehed rezo 410. If not, the DSP decreases the resolutiozt tuner 420 and waits for the next tick. If the resolution tinxr has reached zero, the DSP chlecks if the fatter buffer manager ig at a level that requires adjustrrtont to the sample rate (i.e.: the jittez buffer depth is either above the first threshold or below the second threshold). If This condition is true, then the DSP adjusts the sannplo rate accrn~dingly. As an example if the fitter buffer controller indicates that the fitter buffer level b~ excoedod a first threshold (e,g"
~), the DSP will increase the sampling rate 4.40 of the sample rate generator.
If however _._ ~1f-h 19.i ' bid 15~ 5~ fK N I h'H I tN 15 b1.5 'I~1 ,3b1'f I U yl~.i~4'fb h'.
lb~~
11 File No. ~2o9axo the fitter buffer controller indicates that the fitter buffer level is below a second threshold (e.g., ~h), the DSP docrcases the sampling rare 440 of the sample rate generator. Finally, the re4olution timer is reset to an adjust rate 470 and the system waits for the next tick.
Preferably the adjust rate is itself adjustable. Por cxanaple, if the DSP is required to adjust the sample rate is the same direction in N consecucivc periods of the adjust rate, this indicates a condition where it is preferable to increase the adjust rate to allow the adjustments to be implemented faster. N is chosen far the predicted network conditions.
Note that Pigure 4 illustrates a timer based process wherein the DSP operating cycles ase usod oo determine how often reception rate should be evaluated in order to determine whether the satnpling rate should be adjusted. OP course the process can be more event driven, for example, based on the arrival of a packot, in which case the entire process can be implemented is the microprocessor 300. For example, comparing steps 4301450 arc executed after a numlxr of packets have been received since the previous comparing step is exe~trd, wbemln said number is one or more.
Numerous modifications, variations and adaptations may be made to the particular embodiments of the invention described above without departing from the scope of the invontion, which is dined is the claims.

Claims (16)

1. Apparatus comprising:
a packet interface for receiving packets from a variable delay packet network; and a controller for monitoring the reception rate of said packets and for sending control signals to a sample rate generator for adjusting the sampling rate used to process samples of digital data.
2. Apparatus as claimed in claim 1 wherein said controller adjusts said sampling rate by monitoring said reception rate and responsive to said reception rate exceeding a first threshold said controller sends a control signal to said sample rate generator for increasing said sampling rate and responsive to said reception rate being below a second threshold said controller sends a control signal to said sample rate generator for decreasing said sampling rate.
3. Apparatus as claimed in claim 2 wherein said first and second thresholds are updated dynamically by said controller responsive to network performance.
4. Apparatus as claimed in clam 3 further comprising a jitter buffer for storing samples of streaming data carried in received packets, and said controller executes buffer management instructions for controlling said jitter buffers wherein said controller monitors said reception rate by determining the number of samples stored in said jitter buffer and compares said number to said first and second thresholds.
5. Apparatus for receiving streaming data from a variable delay packet network comprising:
A packet interface for receiving packets from a variable delay packet network;
A digital-to-analog converter for converting samples of streaming data into analog signals;
A sampling rate generator for producing a sampling signal for controlling the sampling rate of said digital-to-analog converter, said sampling rate generator including a control input for receiving a control signal to adjust the sampling signal; and A controller for monitoring the rate of reception of said packets and for sending control signals to said sampling rate generator for adjusting the sampling rate used to process said packets responsive to said rate of reception.
6. Apparatus as claimed in claim 5 wherein said controller compares said rate of reception against a first threshold and a second threshold and wherein said controller sends a control signal to said sampling rate generator to increase the sampling rate when said rate of reception exceeds said first threshold and wherein said controller sends a control signal to said sampling rate generator to decrease the sampling rate when said rate of reception is less than said second threshold.
7. Apparatus as claimed in claim 6 wherein said apparatus further comprises a jitter buffer for storing packets received by said packet interface and wherein said controller monitors the rate of reception by determining the number of packets stored in said jitter buffer.
8. The apparatus sa claimed in claim 7 wherein said controller updates said first and second thresholds dynamically responsive to network performance.
9. The apparatus as claimed in claim 9 further comprising an audio processing Digital Signal Processor (DSP) which includes said sampling rate generator, said DSP
operating at a timing cycle and wherein said controller compares said rate of reception at regular intervals based on an adjust rate which depends on said timing cycle.
10. An article including once or more machine-readable storage media containing instructions for processing streaming packets is a packet-based network, the instructions when executed causing a device to:
receive packets from a packet based network;
monitor the reception rate of said packets;
compare said reception rate against at least one threshold;

send signals to a sampling rate generator for adjusting the sampling rate used to convert said samples into analog signals based on said reception rate.
11. A data signal embodied in a carrier wave and including code segments containing instructions for processing streaming packets in a packet-based network, the instructions when executed causing a device to:
receive packets from a packet based network;
monitor the reception rate of said packets;
compare said reception rate against at least one threshold;
send signals to a sampling rate generator for adjusting the sampling rate used to convert said samples into analog signals based on said reception rate.
12. A method for processing streaming packets in a packet-based network comprising the steps of:
receiving packets is packet based network;
monitoring the reception rate of said packets;
comparing said reception rate against at least one threshold; and responsive to said comparing step, sending signals to a sampling rate generator for adjusting the sampling rate used to convert said samples into analog.
13. The method as claimed in claim 12 wherein said comparing step is executed after a number of packets have been received since the previous comparing step is executed.
14. The method as claimed in claim 13 wherein said number is one.
15. The method as claimed in claim 12 wherein said comparing step is executed after a duration of time expires since the previous comparing step is executed.
16. The method as claimed in claim 15 wherein said duration of time depends on a timer associated with a digital signal processor used in a device which carries out said method.
CA002299943A 2000-03-03 2000-03-03 Apparatus for adjusting a local sampling rate based on the rate of reception of packets Abandoned CA2299943A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CA002299943A CA2299943A1 (en) 2000-03-03 2000-03-03 Apparatus for adjusting a local sampling rate based on the rate of reception of packets
US09/797,674 US20010055276A1 (en) 2000-03-03 2001-03-05 Apparatus for adjusting a local sampling rate based on the rate of reception of packets

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA002299943A CA2299943A1 (en) 2000-03-03 2000-03-03 Apparatus for adjusting a local sampling rate based on the rate of reception of packets

Publications (1)

Publication Number Publication Date
CA2299943A1 true CA2299943A1 (en) 2001-09-03

Family

ID=4165436

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002299943A Abandoned CA2299943A1 (en) 2000-03-03 2000-03-03 Apparatus for adjusting a local sampling rate based on the rate of reception of packets

Country Status (2)

Country Link
US (1) US20010055276A1 (en)
CA (1) CA2299943A1 (en)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2448155A3 (en) 1999-11-10 2014-05-07 Pandora Media, Inc. Internet radio and broadcast method
US6389467B1 (en) 2000-01-24 2002-05-14 Friskit, Inc. Streaming media search and continuous playback system of media resources located by multiple network addresses
US8352331B2 (en) 2000-05-03 2013-01-08 Yahoo! Inc. Relationship discovery engine
US7162482B1 (en) 2000-05-03 2007-01-09 Musicmatch, Inc. Information retrieval engine
US7373413B1 (en) * 2000-06-28 2008-05-13 Cisco Technology, Inc. Devices and methods for minimizing start up delay in transmission of streaming media
US8271333B1 (en) 2000-11-02 2012-09-18 Yahoo! Inc. Content-related wallpaper
US7161905B1 (en) * 2001-05-03 2007-01-09 Cisco Technology, Inc. Method and system for managing time-sensitive packetized data streams at a receiver
US20030023745A1 (en) * 2001-07-26 2003-01-30 Neoplanet, Inc. Method and system for adaptively downloading data from a network device
WO2003073312A1 (en) * 2002-02-25 2003-09-04 General Electric Company Method and apparatus for minimally invasive network monitoring
US7263109B2 (en) * 2002-03-11 2007-08-28 Conexant, Inc. Clock skew compensation for a jitter buffer
US7707221B1 (en) 2002-04-03 2010-04-27 Yahoo! Inc. Associating and linking compact disc metadata
US7305483B2 (en) * 2002-04-25 2007-12-04 Yahoo! Inc. Method for the real-time distribution of streaming data on a network
JP3925311B2 (en) * 2002-06-03 2007-06-06 ソニー株式会社 Data distribution system
US7336678B2 (en) * 2002-07-31 2008-02-26 Intel Corporation State-based jitter buffer and method of operation
US20040062260A1 (en) * 2002-09-30 2004-04-01 Raetz Anthony E. Multi-level jitter control
US7746797B2 (en) * 2002-10-09 2010-06-29 Nortel Networks Limited Non-intrusive monitoring of quality levels for voice communications over a packet-based network
US8149810B1 (en) 2003-02-14 2012-04-03 Marvell International Ltd. Data rate adaptation in multiple-in-multiple-out systems
US7864678B1 (en) * 2003-08-12 2011-01-04 Marvell International Ltd. Rate adaptation in wireless systems
US20050048995A1 (en) * 2003-08-25 2005-03-03 Motorola, Inc. System and method for controlling the operating characteristics of a buffer
WO2005026916A2 (en) 2003-09-10 2005-03-24 Musicmatch, Inc. Music purchasing and playing system and method
US7697449B1 (en) 2004-07-20 2010-04-13 Marvell International Ltd. Adaptively determining a data rate of packetized information transmission over a wireless channel
US8543723B2 (en) * 2004-07-27 2013-09-24 Sony Corporation Home network system with transmission error recovery
US7894489B2 (en) * 2005-06-10 2011-02-22 Symmetricom, Inc. Adaptive play-out buffers and adaptive clock operation in packet networks
FR2904501B1 (en) * 2006-07-26 2008-09-12 Sagem Defense Securite METHOD FOR TRANSMITTING DATA SIGNALS IN A TELEPHONE NETWORK.
CN101506754B (en) * 2006-08-28 2011-05-25 艾利森电话股份有限公司 Clock skew compensation
US8483243B2 (en) * 2006-09-15 2013-07-09 Microsoft Corporation Network jitter smoothing with reduced delay
CN100426252C (en) * 2006-11-24 2008-10-15 华为技术有限公司 Device and method to regulate automatically data sampling dot of output interface of testing data
US7984209B1 (en) * 2006-12-12 2011-07-19 Altera Corporation Data interface methods and circuitry with reduced latency
US8111707B2 (en) * 2007-12-20 2012-02-07 Packeteer, Inc. Compression mechanisms for control plane—data plane processing architectures
US8059532B2 (en) * 2007-06-21 2011-11-15 Packeteer, Inc. Data and control plane architecture including server-side triggered flow policy mechanism
US9419867B2 (en) * 2007-03-30 2016-08-16 Blue Coat Systems, Inc. Data and control plane architecture for network application traffic management device
US8279885B2 (en) * 2007-09-25 2012-10-02 Packeteer, Inc. Lockless processing of command operations in multiprocessor systems
US7813277B2 (en) * 2007-06-29 2010-10-12 Packeteer, Inc. Lockless bandwidth management for multiprocessor networking devices
GB2514572B (en) * 2013-05-29 2020-05-27 Grass Valley Ltd Re-timing sampled data
US9246828B1 (en) 2014-06-18 2016-01-26 Juniper Networks, Inc. Traffic-aware sampling rate adjustment within a network device

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3754098A (en) * 1971-10-08 1973-08-21 Adaptive Tech Asynchronous sampling and reconstruction for asynchronous sample data communication system
US4528259A (en) * 1983-11-10 1985-07-09 Sullivan Donald F Printed wiring boards with solder mask over bare copper wires having large area thickened circuit pad connections
US4759041A (en) * 1987-02-19 1988-07-19 Unisys Corporation Local area network control system synchronization with phase-lock loop
US6044396A (en) * 1995-12-14 2000-03-28 Time Warner Cable, A Division Of Time Warner Entertainment Company, L.P. Method and apparatus for utilizing the available bit rate in a constrained variable bit rate channel
GB9525923D0 (en) * 1995-12-19 1996-02-21 Newbridge Networks Corp Delay minimization for circuit emulation over packet switched (atm) networks
US5790538A (en) * 1996-01-26 1998-08-04 Telogy Networks, Inc. System and method for voice Playout in an asynchronous packet network
US5778218A (en) * 1996-12-19 1998-07-07 Advanced Micro Devices, Inc. Method and apparatus for clock synchronization across an isochronous bus by adjustment of frame clock rates
US6061410A (en) * 1997-02-27 2000-05-09 Advanced Micro Devices Frequency ratio estimation arrangement and method thereof
US6243379B1 (en) * 1997-04-04 2001-06-05 Ramp Networks, Inc. Connection and packet level multiplexing between network links
US6263036B1 (en) * 1997-07-30 2001-07-17 Yamaha Corporation Asynchronous signal input apparatus and sampling frequency conversion apparatus
US5898696A (en) * 1997-09-05 1999-04-27 Motorola, Inc. Method and system for controlling an encoding rate in a variable rate communication system
US6434606B1 (en) * 1997-10-01 2002-08-13 3Com Corporation System for real time communication buffer management
US6301258B1 (en) * 1997-12-04 2001-10-09 At&T Corp. Low-latency buffering for packet telephony
US6259691B1 (en) * 1998-07-24 2001-07-10 3Com Corporation System and method for efficiently transporting dual-tone multi-frequency/multiple frequency (DTMF/MF) tones in a telephone connection on a network-based telephone system
US6252919B1 (en) * 1998-12-17 2001-06-26 Neomagic Corp. Re-synchronization of independently-clocked audio streams by fading-in with a fractional sample over multiple periods for sample-rate conversion
US6452950B1 (en) * 1999-01-14 2002-09-17 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive jitter buffering
US6449251B1 (en) * 1999-04-02 2002-09-10 Nortel Networks Limited Packet mapper for dynamic data packet prioritization
US6377931B1 (en) * 1999-09-28 2002-04-23 Mindspeed Technologies Speech manipulation for continuous speech playback over a packet network
US6683889B1 (en) * 1999-11-15 2004-01-27 Siemens Information & Communication Networks, Inc. Apparatus and method for adaptive jitter buffers
SE517156C2 (en) * 1999-12-28 2002-04-23 Global Ip Sound Ab System for transmitting sound over packet-switched networks
US6693899B1 (en) * 2000-02-15 2004-02-17 Verizon Corporate Services Group Inc. System and method for facilitating communication between dissimilar radio voice devices

Also Published As

Publication number Publication date
US20010055276A1 (en) 2001-12-27

Similar Documents

Publication Publication Date Title
CA2299943A1 (en) Apparatus for adjusting a local sampling rate based on the rate of reception of packets
US6658027B1 (en) Jitter buffer management
US8174981B2 (en) Late frame recovery method
EP1353462B1 (en) Jitter buffer and lost-frame-recovery interworking
US8565127B2 (en) Voice-activity detection based on far-end and near-end statistics
EP1443743B1 (en) Using communication network statistics for jitter buffer and echo canceller control
US8693646B2 (en) Packet based network exchange with rate synchronization
US7082143B1 (en) Voice and data exchange over a packet based network with DTMF
US7161931B1 (en) Voice and data exchange over a packet based network
US8976715B2 (en) System and method for operating a packet voice far-end echo cancellation system
US7529325B2 (en) Voice and data exchange over a packet based network with timing recovery
US6882711B1 (en) Packet based network exchange with rate synchronization
US6901069B2 (en) Sub-packet insertion for packet loss compensation in voice over IP networks
US9794417B2 (en) Packet voice system with far-end echo cancellation
US8605891B2 (en) Adaptive gain control based on echo canceller performance information
EP0921666A2 (en) Speech reception via a packet transmission facility
US20080097765A1 (en) Generic on-chip homing and resident, real-time bit exact tests
US20040190508A1 (en) Optimization of decoder instance memory consumed by the jitter control module
US20020110152A1 (en) Synchronizing encoder - decoder operation in a communication network
EP1434416B1 (en) Packet voice system with far-end echo cancellation

Legal Events

Date Code Title Description
FZDE Dead