Sound converting and network storage system

Abstract: A network sound channel which permits voice communication over a local area network (LAN). Plural workstations are connected via respective connection nodes to the LAN. Each workstation includes a sound processor for converting sound into digital information and digital information into sound, and each workstation is operable in (a) a talk mode in which the sound processor converts sound into digital information and the digital information is stored in the storage over the LAN, and (b) a listen mode in which digital information is retrieved from the storage over the LAN and the sound processor converts the digital information into sound.

Description: The present invention relates to a system for voice communication between workstations on a Local Area Network (LAN). More particularly, the present invention relates to a system for sending and receiving voice messages between workstations on a LAN that is completely independent of the network software in use. LAN's are known for coupling together a plurality of workstations so that information can be readily transferred between workstations and resources can be shared. Heretofore, communication between workstations has been largely limited to messages which are typed on a keyboard at a particular workstation and transmitted to one or more of the other workstations that are logged into a file server. This type of communication between workstations has several limitations. The speed at which a message can be transferred from one workstation to another workstation is limited by both the speed and accuracy at which the user of the workstation sending the message can type. In addition, the number of characters which can be transferred for each message transmission is limited depending on the network software being used. For example, Novell NetWare® LAN software allows messages to be sent to users or groups of users via a "SEND" command. However, the length of each message is limited to 45 characters, minus the number of letters in the user name. Another limitation in standard network communication is that multiple incoming messages to a particular workstation are generally "stacked up" in the order in which they are received. After each message is displayed, read and cleared by the user, the next received message is displayed to be read. Accordingly, although a lengthy message may be sent using consecutive SEND commands, another user may send an intervening message effectively breaking up the lengthy message. Such communication is therefore not practical for communicating messages with great speed or for communicating particularly lengthy messages. Recently, attempts have been made at broadcasting sound (e.g. audio messages) over a LAN. However, such attempts have required extensive network software modifications. The paper entitled "Cost-Saving Realization of Voice Storage Servers" by Krönert et al discloses a computer system in which a local area network is provided having a plurality of computer devices connected thereto. The computer devices in the network are arranged so that voice data can be stored in a file server and then retrieved by the other computer devices connected to the network. The present invention addresses the drawbacks noted above by providing a system that allows audio communication such as voice communication between users of a network by using the network's file server and conventional sound recording and playback equipment. According to one aspect, the present invention provides a network sound channel system comprising: a local area network (LAN) having a plurality of connection nodes for connecting computer devices and including storage means for storing digital information transmitted over said LAN; and plural computer devices connected via respective connection nodes to said LAN, each computer device including a sound processor for converting sound into digital information and digital information into sound; characterised in that said storage means is operable to transmit a network semaphore for said computer devices and in that each computer device is operable in: a talk mode to attempt to grab said network semaphore and, only if the device grabs the semaphore, to use its sound processor to convert sound into digital information and to store the digital information in said storage means over said LAN, and a listen mode to retrieve digital information from said storage means over said LAN and to use said sound processor to convert the retrieved digital information into sound. In a preferred embodiment of the invention, the LAN is a NetWare® software package, the sound processor is a Microsoft Sound System® or Sound Blaster Pro® and the personal computers or workstations are IBM PC's or PC compatibles. BRIEF DESCRIPTION OF THE DRAWINGS The above-noted advantages and features of the present invention will become more readily apparent from the following detailed description of the preferred embodiments when taken in conjunction with the drawings in which: Figure 1 is a block diagram of a Local Area Network according to a first embodiment of the present invention; Figure 2 is a perspective view of the external appearance of a workstation according to the invention; Figure 3 is a state diagram of the operation of the present invention; Figures 4A and 4B are flow charts depicting the program flow of the listen mode and talk modes, respectively; Figure 5 is a block diagram of a workstation operating in a talk mode; Figure 6 is a block diagram of a workstation operating in a listen mode. Figure 7 is a block diagram of a LAN according to a second embodiment of the present invention; Figure 8 is a block diagram of a workstation according to the second embodiment operating in the talk mode; and Figure 9 is a block diagram of a workstation according to the second embodiment operating in the listen mode. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Figure 1 is a block diagram showing a Local Area Network (LAN) according to a first embodiment of the present invention. Workstation 1, workstation 2, network administrator 3 and file server 4 are interactively connected to LAN 5. Workstation 1 and workstation 2 are coupled to LAN 5 through LAN interface 6. Network administrator 3 is also coupled to LAN bus 5 through a LAN interface (not shown). Although only two workstations are shown in Figure 1, any number of workstations can be on the network, and in addition workstations may be operably connected on a wide area network (WAN). Workstation 1, workstation 2 and network administrator 3 each comprise computing equipment such as an IBM-PC or PC-compatible computer. An example of such computing equipment is shown in Figure 2 and includes peripherals such as a mass storage device including a disk device 14 for storing data and application program files. The application program files may contain program instruction sequences by which the computing equipment manipulates data files and presents data in those files to a computer operator via display screen 11. For example, the application programs stored on disk drive 14 include an application program for transmitting and receiving data to and from sound system 17, and a program for transmitting and receiving data to and from a LAN over line 25. Keyboard 15 permits input of text data and allows operator selection and manipulation of data displayed on display screen 11. Pointing device 16, such as a mouse, may be provided to permit fast and easy manipulation and selection of objects on the display screen 11. The computing equipment may also include an optical disk drive 27 for storing information on optical disk 19. The information may be retrieved from disk drive 14 or optical disk 19 for subsequent processing by the computing equipment. An internal or external modem may be provided for communicating information over line 26. As shown in Figure 1, each workstation includes at least a CPU 8, a sound processor 9 such as a Microsoft Sound System®, or Sound Blaster Pro®, a timer 20, a program memory 21 for storing application programs and a data memory 22 for storing data. These elements are connected via a bus system 23. The bus system 23 can include, for example, a control bus, an address bus and a data bus (not shown). The other peripherals shown in Figure 2. (i.e., the optical disk, modem, scanner, etc.) are also interfaced to the bus system 23 via respective interfaces (also not shown). Program memory 21 includes Read-Only Memory (ROM) for providing CPU 8 with specialized and invariant functions such as boot-up programs and basic input/output system (BIOS) programs, as well as Random Access Memory (RAM) in which application programs can be stored. Data memory 22 includes RAM that provides CPU 8 with storage for data generated by application programs, as required. Normally, CPU 8 downloads an application program from disk 14 from an external storage media into the RAM in program memory 21. The program is then executed out of RAM. Sound processor 9 is controlled by CPU 8. Sound processor 9 includes a speaker for converting an analog audio signal into audio to be listened to by a user and a microphone for converting audio from a user into an analog signal. In a talk mode (discussed in more detail below), an analog audio signal received from the microphone is processed and digitized to generate digitized sound data. The digitized sound data is then stored in data memory 22 as sound data files. The sound data files are transferred to file server 4 and stored in file server 4 along with a file name, serial number and time stamp. In a listen mode (also discussed in more detail below) the digital sound data is retrieved from file server 4 and stored in data memory 22 and is converted into an analog signal which is then output through the speaker in sound processor 9 as audio. Sound processor 9 is controlled by CPU 8 through use of a control bus. Sound processor 9 transmits and receives data to and from data memory 22 over a memory bus comprising an address and data bus. Since in both talk and listen modes all files are transferred using normal network file protocol, no modification of the network operating system is needed. The network in the present invention may utilize any network software such as Novell or Unix software that allows the transfer of information between various network members. The present embodiments will be described with respect to a LAN utilizing Novell NetWare® software, although any network software may be used. A detailed description of the Novell NetWare® software package may be found in the publications "NetWare® User's Guide" and the "NetWare® Supervisor's Guide" by M&T Books, copyrighted 1990, incorporated herein by reference. Briefly, the file server 4 acts as a file manager for receiving, storing, queuing, caching and otherwise transmitting data files between LAN members (i.e., workstations). For example, as shown in Figure 1, data files created at workstation 1 may be routed to file server 4 which may order those data files and then transfer the ordered data files to a printer or to another workstation. In addition, the data files transferred from workstation 1, for example, may be simply stored by the file server to be retrieved at another time by one of the other workstations. The file server 30 may include or may be coupled to a large capacity storage member such as a 10 Gigabyte hard disk subsystem. According to an embodiment of the present invention, workstations 1 and 2 include a recording control program for operating in a "Talk Mode" and a playback control program for operating in a "Listen Mode." These programs, which can be stored in RAM or ROM in program memory 21 provide voice communication between workstations connected to the LAN. The control programs utilize a CB-radio-like metaphor for communicating (i.e., there can only be one talker at any time on the network and all other users (workstations) in the conversation group may only be listeners on the network.) Figure 3 shows a state diagram of the communication protocol in the network sound channel according to the present invention. After a start command 30 is given in a particular workstation, the workstation enters listen state 31 (listen mode). In listen state 31 a determination is made as to whether any sound data files exist in the file server by attempting to retrieve a sound data file having a predetermined file name from the file server. If such sound data files exist, each workstation in the conversation group can retrieve and listen to them. (The flow chart in Figure 4A depicts the software flow in the listen state and will be discussed in more detail below.) When button 12 on the user interface 18 (depicted in Figure 2) to the sound processor 9 is pressed when the system is in the listen state, the system attempts to enter talk state 32 (talk mode) by attempting to grab a network semaphore (sometimes called a "stick") from the file server. In general, a semaphore is used to limit how may tasks can use or change a resource at the same time. In this case, the semaphore is used to enable a workstation to "talk" and to let other workstations attempting to talk know that there is already a talking workstation. If the workstation is successful in grabbing the semaphore, a display 13 to the user, which in this embodiment is also on user interface 18 but can be on display 11, is set to indicate that the workstation is in the talk mode. When the workstation enters the talk mode, audio is converted into digital sound data by sound processor 9 and stored as sound data files in data memory 22. The sound data files are then transferred to the file server along with identifying information. The identifying information comprises a file name, serial number and a time stamp depicted in Figure 1 and will be described in more detail below. The sound is converted to digital data and transferred to file server 4 until button 12 on the user interface is again pressed. (The flow chart in Figure 4B depicts the system flow in the "Talk" mode and will be described in more detail below.) When button 12 on the user interface is pressed when the workstation is in the talk state 32, the workstation enters stop talking state 33 in which any remaining sound data files not already transferred are transferred to the file server, the semaphore is released, display 13 is set to indicate that the workstation is in the listen mode and the workstation returns to listen state 31. The workstation is then available to listen to any sound data files on the file server. Figure 4A depicts the software flow in the listen state. As shown in Figure 4A, the program begins by executing a start procedure S40 which initializes and sets different variables and sections of the workstation. In step S41, a display is set to indicate that the system is in the listen mode. In step S42, variables i and j are set to zero. Variable j is used in the talk mode to represent the file space in file server 4 in which the sound data file is to be written to. Variable i is used in the listen mode to indicate the file space in file server 4 containing the next sound data file to be read from file server 4 and listened to. In step S43 a determination is made as to whether button 12 on user interface 18 has been pressed. If button 12 has been pressed, the workstation enters the talk mode. If button 12 has not been pressed, the system determines in step S44 whether a file having a predetermined file name is present in the file server. If present, step S45 determines if a file i exists on the file server 4 to be listened to by attempting to retrieve file i. If file i does not exist, meaning that there is currently no information to be listened to, the program flow returns to step S43. If file i exists on the file server, the file is retrieved from the file server in step S46 and is listened to. In step S47 variable i is incremented by 1. In step S48, a determination is made as to whether i=999. The number 999 is a number selected depending on the amount of file space set aside on file server 4 for speech communication. In other words, the present invention operates using a circular file system, meaning that after a file is read from the 999th file location, the variable i is reset in step S49 to 0 and the system then begins again reading files from file location 0. If variable i does not equal 999, the system returns to step S43 and the procedure repeats. When a determination is made in step S43 that button 12 has been pushed, the workstation attempts to enter the talk mode by attempting to grab the semaphore. As discussed above, the semaphore provides a method of allowing only one workstation on the network to operate in the talk mode at a time. That is, only the workstation that successfully grabs the semaphore can operate in the talk mode. As shown in Figure 4B, after an attempt to grab the semaphore has been made in step S50, a determination is made in step S51 as to whether the semaphore was successfully grabbed. If the semaphore is not grabbed successfully, the system returns to the listen mode. If the semaphore is grabbed successfully, display 13 on user interface 18 is set in step S52 to indicate that the workstation is in the talk mode. In step S53, 1 second intervals of sound are converted by sound processor 9 into digital information and stored in a sound data file in data memory 22. In step S54, the sound data file is transferred and stored in file location j on the file server along with various other portions of information identifying the sound data file. The identifying information is described in more detail below. In step S55, variable j is incremented by one. In step S56, the file stored in location j on the file server is erased from the file server. By erasing the following file from the file server, any listening workstations are able to determine if the end of the present conversation has occurred. In step S57, a determination is made as to whether j=999. If yes, the variable j is set to zero in step S58. Again, this provides a circular file space, thus minimizing the amount of usable file space needed on the file server for communication. In step S57, if it is determined that variable does not equal 999, a determination is made in step S59 as to whether button 12 has been pushed. If button 12 has not been pushed, the program returns to step S53 to convert and record the next one second interval of sound data. If it is determined in step S59 that button 12 has been pushed this indicates to the workstation that the user desires to enter the listen mode. In that case, the semaphore is released in step S60 and the program returns to the listen mode. The general procedural architecture of a workstation operating in the talk mode is depicted in Figure 5. As described above, in the talk mode the workstation converts sound such as speech received from sound processor 9 into digital sound data which are then stored in data memory 22. Initially, however, mode discriminator 56 determines whether the workstation can operate in the talk mode, by attempting to grab semaphore (ST) from file server 4. If the semaphore is grabbed, mode discriminator 56 determines that the LAN is available for talking. Other workstations are now prevented from talking since only one workstation at a time can have the semaphore. The audio input to sound processor 9 is processed, digitized and then stored as digital sound data in data memory 22. Interval counter 52 counts off one second time intervals and enables the digital sound data to be recorded in data memory 22 so that each sound data file represents one second worth of sound data. The sound data files are then sent over the LAN to be stored in file server 4 as a sound file. The identifying data or information which is transferred along with the sound data files as mentioned above, comprise a time stamp (TS), a file name (FN) and a serial number (SN). Time stamp generator 53 generates a real-time time stamp indicating the time at which the data is being transferred to file server 4. File namer 54 creates a predetermined file name used to distinguish the sound files from other files stored in the file server. Serial number generator 55 serializes the sound files by generating consecutive serial numbers used for identifying the relative position of each sound file with respect to the other sound files stored on the file server. After each sound file is transferred and stored in the file server along with the corresponding serial number, serial number generator 55 increments the serial number by one to be stored with the next sound file. As noted above, the file space in file server 4 set aside for voice communication ranges from 0-999. Accordingly, 1000 files can be stored. The serial numbers therefore run from 0 to 999. Of course, the file space allotted for voice communication can be set to any desired size. The time stamp, file name and serial number are transferred with each sound file and stored in a corresponding file space in the corresponding file in file server 4 along with the sound data file. Workstation 2, which is shown as operating in the listen mode in Figure 1, constantly monitors the LAN for the appearance of sound files having the predetermined file name to determine if there are any sound files to be listened to. The general procedural architecture of a workstation operating in the listen mode is depicted in Figure 6. In the listen mode, file name discriminator 61 monitors the file server for files having a predetermined file name FN. When a sound file having the predetermined file name is present, the serial number corresponding to the sound data file having the predetermined file name is retrieved from the file server with the corresponding sound data file by serial number retrieve 68 so that the sound data files can be retrieved from the file server in the consecutive order in which they were filed. The corresponding sound data file is retrieved and listened to. If the next consecutive serial number is present, the sound data file corresponding to that serial number is then retrieved and listened to. If the next consecutive serial number is not present, no file is retrieved and the workstation waits for the next sound data file having the predetermined file name. Time comparator 64 retrieves the time stamp (TS) corresponding to the retrieved sound file. The time stamp (TS) is compared by comparator 44 with the real time generated by real time clock 65. The difference between the two times represents a lag time which is displayed to the user on display 11. From this lag time, a user can know how long ago the sound file was stored. The listener then has the option of controlling the file retrieve speed using speed control 66 to fast forward through the sound files to move to the most current sound file, or listen to the files at a normal listening speed. These capabilities are especially useful to late-joiners to the conversation group. The sound data files retrieved by file retriever 67 are transferred to sound processor 9 which converts the digital data in the files into an analog audio signal to be listened to by the user. The files are retrieved and listened to until all of the files for the current conversation have been listened to. Figures 7 to 9 depict another embodiment of the present invention. Elements having the same function as those described above in relation to the first embodiment are represented by the same element numbers and are not discussed in detail below. According to this embodiment of the present invention, consecutive sound files transferred to the file server 4 can be grouped in the file server into utterances as shown in Figure 7. In this embodiment each utterance consists of a grouping of ten sound files and each sound file consists of one second worth of data. Accordingly, each utterance represents a ten second block of sound. Each utterance can be treated the same as the sound data files as discussed in the above-described embodiment, in the sense that each utterance can be time stamped, serialized, named and written into file server 4. In this embodiment, each utterance includes a time stamp indicating the time the last file in the grouping of files in the utterance was stored in data memory 22. Of course, the time could instead indicate the time the first file (or any one of the files for that matter) in the grouping of files in the utterance was stored. As shown in Figure 8, each utterance is stored in file server 4 with an utterance serial number (USN) using serial number generator 35 which serializes each grouping of 10 sound data files. Each utterance is stored in file server 4 with an utterance name (UN) generated by utterance namer 84. The utterance name allows a listening workstation to know that there are sound data files on the file server to be listened to. As shown in Figure 9, an utterance is retrieved by utterance retriever 90. Time comparator 44 retrieves the time stamp TS corresponding to the utterance from file server 4 and compares it with the real time. The speed of utterance retrieval can then be controlled based on the lag time. During the listen mode, the utterance serial number USN is retrieved by utterance serial number comparator 92, and compared with the serial number of the utterance that was just previously listened to. If the retrieved serial number is greater than the previously listened to utterance serial number, it is determined that all utterances have been listened to. If the retrieved serial number is less than the serial number of the previously listened to utterance, it is determined that there are utterances to be listened to and utterance retriever 90 retrieves the utterances from the file server. During retrieval of the utterances, the ten sound data files forming the utterance are read from file server 4 and stored in data memory 22. Each consecutive sound data file is then read and converted to sound by sound processor 30. According to the present embodiment, the sound files can be managed in groups of 2 or more. It will be appreciated that the one second sound data files could be selected to be any time interval and that the number of sound data files forming an utterance can be selected to be more or less than the 10 as described above. While the present invention has been described with respect to what is considered to be the preferred embodiments, it is to be understood that the present invention is not limited to the disclosed embodiments. To the contrary, the present invention is intended to cover various modifications and equivalent arrangements included within the scope of the appended claims.

Claims: A network sound channel system comprising: a local area network (LAN) (5) having a plurality of connection nodes for connecting computer devices and including storage means (4) for storing digital information transmitted over said LAN (5); and plural computer devices (1, 2) connected via respective connection nodes to said LAN (5), each computer device including a sound processor (9) for converting sound into digital information and digital information into sound; characterised in that said storage means is operable to transmit a network semaphore for said computer devices and in that each computer device is operable in: a talk mode to attempt to grab said network semaphore and, only if the device grabs the semaphore, to use its sound processor (4) to convert sound into digital information and to store the digital information in said storage means (4) over said LAN (5), and a listen mode to retrieve digital information from said storage means (4) over said LAN (5) and to use said sound processor (9) to convert the retrieved digital information into sound. A network sound channel system according to claim 1, wherein said storage means (4) comprises a file server. A network sound channel system according to claim 2, wherein said file server (4) includes a predetermined amount of file space reserved based on a number of computer devices connected to said LAN. A network sound channel system according to claim 3, wherein the predetermined amount of file space includes a beginning and an end and wherein the digital information is written circularly into the file space from the beginning through to the end and then from the beginning again. A network sound channel system according to any preceding claim, wherein a said computer device is operable in the talk mode to divide sound into utterances for conversion into digital information, to create files having a predetermined length using the digital information, and to transfer the files over said LAN for storage in said storage means (4). A network sound channel system according to claim 5, wherein said computer device is operable to transfer the files at predetermined time intervals over said LAN (5) for storage in said storage means (4). A network sound channel system according to claim 5, wherein said computer device is operable to store said files in said storage means (4) together with corresponding serialisation information. A network sound channel system according to claim 7, wherein said serialisation information includes an utterance serial number, a file name and a time stamp indicating a present real time. A network sound channel system according to claim 8, wherein a said computer device is operable in the listen mode to retrieve the utterance serial number, the file name and the time stamp from said storage means (4) over said LAN (5). A network sound channel system according to claim 9, wherein the computer device is operable to compare the retrieved utterance serial number with a stored utterance serial number and if the retrieved utterance serial number is greater than the stored utterance serial number to retrieve the corresponding files. A network sound channel system according to claim 8, wherein a said computer device is operable in the listen mode to search files stored in said storage means (4) for a file having a predetermined file name and, if the file is found, to retrieve the file together with the corresponding utterance serial number and time stamp. A network sound channel system according to claim 11, wherein the computer device is operable to compare the retrieved time stamp with a time generated by a real time clock and wherein a rate at which the information is retrieved from said storage means (4) is determined accordingly. A network sound channel system according to claim 8, wherein a said computer device further comprises a display (11) and is operable in said listen mode to display on said display (11) a lag time which indicates how long the serialised files have been in the storage means (4). A network sound channel system according to claim 13, wherein a said computer device further comprises a speed control (66) for controlling a speed at which the digital information is retrieved from said storage means (4) and converted into sound. A network sound channel system according to any preceding claim, wherein each of said computer devices further comprises a memory (22) for temporarily storing retrieved digital information prior to being converted into sound by said sound processor (9). Programmed computer equipment (1, 2) for communicating over a local area network (LAN) (5) to a file server (4), said computer equipment comprising: a sound processor (9) for converting sound into digital information and digital information into sound; a memory (21, 22) storing processor implementable instructions; and a computer processor (8) for executing the instructions stored in said memory (21) to effect said communication over said LAN (5) to said file server (4); characterised in that said computer processor (8) is controlled by said instructions to operate either in: a talk mode to attempt to grab a network semaphore from the file server (4) and only if the semaphore is grabbed, to control the sound processor (9) to convert sound into digital information and to store the digital information in the file server (4); or a listen mode to retrieve digital information from the file server (4) over the LAN (5) and to control the sound processor (9) to convert the retrieved digital information into sound. Programmed computer equipment (1, 2) according to claim 16, wherein said computer processor (8) is controlled by said instructions in said talk mode, to divide said sound into utterances for conversion into digital information, to create files having a predetermined length using the digital information and to store the files in said file server (4). Programmed computer equipment according to claim 17, wherein said computer processor (8) is controlled by said instructions in said talk mode to store said files at predetermined time intervals in said file server (4). Programmed computer equipment according to claim 18, wherein said computer processor (8) is controlled by said instructions in said talk mode to store said files in said file server (4) together with corresponding serialisation information. Programmed computer equipment according to claim 19, wherein said serialisation information comprises an utterance serial number, a file name and a time stamp indicating a present real time. Programmed computer equipment according to claim 20, wherein said computer processor (8) is controlled by said instructions in said listen mode, to retrieve said utterance serial number, said file name and said time stamp from said file server (4). Programmed computer equipment according to claim 19, wherein said computer processor (8) is controlled by said instructions in said listen mode to compare the retrieved utterance serial number with a stored utterance serial number and if the retrieved utterance serial number is greater than the stored utterance serial number to retrieve the corresponding files. Programmed computer equipment according to claim 21, wherein said computer processor (8) is controlled by said instructions in said listen mode to search said file server (4) for a file having a predetermined file name and, if the file is found, to retrieve the file together with the corresponding utterance serial number and time stamp. Programmed computer equipment according to claim 23, including a display, and wherein said computer processor (8) is controlled by said instructions when operating in said listen mode to control said display to display a lag time which indicates how long the files have been in the file server (4). Programmed computer equipment according to claim 24, further comprising a speed control (66) for controlling a speed at which the files are retrieved from the file server (4) and converted into sound. A method for storing sound files from a computer device (1) into a file server (4) over a local area network (LAN) (5), the method comprising the steps of: determining if another computer device (2) is storing sound files in the file server (4) by attempting to grab a network semaphore from the file server (4); only if the computer device (1) grabs the semaphore, converting an analog sound signal into digital information; and transmitting the digital information over said LAN (5) to be stored in the file server (4). A method according to claim 26, wherein said converting step comprises the step of dividing the sound into utterances for conversion into digital information to create files having a predetermined length. A method according to claim 27, wherein said transmitting step transmits said files at predetermined time intervals over said LAN to be stored in said file server (4). A method according to claim 27, wherein said transmitting step transmits said digital information together with corresponding serialisation information. A method according to claim 29, wherein said serialisation information comprises an utterance serial number, a file name and a time stamp indicating a present real time. A method of communicating sound from one computer device (1) to one or more other computer devices (2) over a local area network (LAN) (5), the method comprising the steps of: transmitting a network semaphore from a file server (4) for said computer devices; at the one computer device (1): determining (S50) if another computer device is storing sound files in the file server by attempting to grab said network semaphore; only if the computer device grabs the semaphore, converting (S53) an analog sound signal into digital information; and storing (S54) the digital information in the file server (4); and at the one or more other computer devices: retrieving (S46) said digital information from the file server (4) over the (LAN) (5); and converting said digital information into sound. A method according to claim 31, further comprising the step of reserving a predetermined amount of file space in said file server (4) based on a number of computer devices connected to the (LAN) (5). A method according to claim 32, wherein the predetermined amount of file space includes a beginning and an end and wherein the serialised sound files are written circularly into the file space from the beginning through to the end and then from the beginning again. A method according to any of claims 31 to 33, further comprising the steps of, at said one computer device (1) dividing the sound into utterances for conversion into digital information, creating files having a predetermined length using the digital information and transferring the files over the LAN for storage in the file server. A method according to claim 34, wherein said step of transferring said files transfers the files at predetermined time intervals over the LAN for storage in said file server (4). A method according to claim 34, further comprising the step of, at said one computer device, transferring corresponding serialisation information together with said files. A method according to claim 36, wherein said serialisation information includes an utterance serial number, a file name and a time stamp indicating a present real time. A method according to claim 37, further comprising the step of, at said one or more other computer devices, retrieving said utterance serial number, said file name and said time stamp from said file server (4) over said LAN (5). A method according to claim 38, further comprising the steps of, at said one or more other computer devices, comparing the retrieved utterance serial number with a stored utterance serial number and if the retrieved utterance serial number is greater than the stored utterance serial number retrieving the corresponding files. A method according to claim 37, further comprising the steps of, at said one or more computer devices, searching said file server (4) for a file having a predetermined file name and, if the file is found, retrieving the file together with the corresponding utterance serial number and time stamp. A method according to claim 40, further comprising the steps of, at said one or more other computer devices, comparing the retrieved time stamp with a time generated by a real time clock and controlling at rate at which the digital information is retrieved from said file server (4) in dependence upon the result of said comparison step. A method according to claim 37, further comprising the step of, at said one or more other computer devices, displaying a lag time which indicates how long the serialised files have been in said file server (4). A method according to claim 42, further comprising the step of, at said one or more other computer devices, controlling the speed at which the digital information is retrieved from said storage means and converted into sound. A method according to any of claims 26 to 43, further comprising the step of, at said one or more other computer devices, temporarily storing retrieved digital information prior to said conversion step. A storage medium storing processor implementable instructions for controlling a processor to implement the method of any one of claims 26 to 44. Processor implementable instructions for controlling a processor to implement the method of any one of claims 26 to 44.

Inventors: FONTANA JAMES A, LUTHER WILLIS J, FONTANA, JAMES A., LUTHER, WILLIS J.
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1995
Main classification: H04L29
IPC codes: G10L19, H04L12, G06F13