- Java Assignment: Week 7, Friday 03th March
- XML Assignment: Week 11, Friday 31st March
- The Java Assignment is now available. Additional notes may be found in this file, and relevant files may be found in the CSCU9T4 folder (Subfolder Assignment2017) in the groups on Wide filestore.
Frequently Asked Questions
Please email me with questions that you have about the Java assignment, and I will attempt to answer them. I will put answers that may interest the rest of the class on this page.
I have noted that there may be a problem with reading some of the .PHN files: the originals were saved in Unix format, with LF characters at the end of each line (and that works on a mac or Linux). I have now also created a subdirectory called Wintel which has the same files, but saved with CR LF at the end of each line, which corresponds to the Windows standard.
I am also providing a link to the (Unix format) valid files, invalid files, (wintel format) valid files, invalid files. Note that these links are to .zip files.
Q: In the document it states that we should write out the number of each phoneme present as well as the total number of phonemes. Are they meant to be written to each file, or just written out into the console?
A: to the console.
Q: Also in part 2 (2.2) we have to get a time offset, will this time offset be in seconds, or in the same format of the start and end times before converting to seconds?
A: The time offset will be in seconds: that is seconds from the start of the sound. Since the phonemes are non-overlapping, the result will be a single phoneme, with a start time and an end time, (or, if it's for example, after then end of the time of the sound, an appropriate message).
- Q: What's the sampling rate? What does it mean? (not asked as such, but clearly an issue!)
A: Sampling rate is how often the analogue signal representing sound is turned into a digital value, how many times per second (that is, how often it is sampled). It's usually 44,100 on a CD, but in this case is rather lower, at 16,000 samples per second.
Q: What exactly did I mean by the command line?
A: Basically, it's a very standard command line: it consists of the command (which is whatever you use to invoke the program), followed by a flag (flags are identified by starting with a '-' character: there's only one, in this case, -s). The flag is followed by a value (in this case the sampling rate). After that come the rest of the parameters that the program needs, in this case, an input file and an output file. If the -s flag and the sampling rate are omitted, you may assume the default sampling rate of 16000.
Q: Can I assume that the times in the .PHN file are in order?
Q: Often the time one segment ends is the same as the time the next segment starts. In part 2, what do I do if the time supplied one of these times?
A: Choose either the segment which that time finishes, or the segment which that time is the start of, and be consistent. Note what your did in the documentation (and in the comments inside the program).
Q: In the assignment text, the files are called xxx.dat, but in the folder they are xxx.PHN. Does this matter?
A: The input files are indeed fo the form xxx.PHN. The output files may use either the .PHN or .dat extension.
Q: One of the "invalid" files doesn't actually appear to be invalid: it contains data after the 3rd field on one of the lines (which is OK, according to the assignment), but looks othewise OK. Am I missing something?
A: No. This was my mistake.