Video Coding

Job ID: 32011378

Budget: £20 – £250 GBP

Task 1

1. Display the “carphone.qcif” video sequence using Myview or ImagicityViewer:

a) Obtain the usage instructions for the myview program as follows: “myview> myviewUsage.txt” (the ‘greater than’ symbol is used to provide ‘output redirection’ – if you don’t understand what this is, “just google it”)

b) The instructions will be saved in the myviewUsage text file in the same directory as the myview program was run from.

c) Run myview to display the first 11 frames of carphone.qcif at 30 frames/second in a continuous loop sequence.

d) *Note the command line for this in your logbook. e) Use the windows application ImagicityViewer to display video clips.

2. Encode the “carphone.qcif” video sequence using an H.264 video encoder:

a) Check through the encoder.cfg file in notepad, ensuring that you can identify the following fundamental configuration parameters (as a minimum!):

Input File
Frame to start encoding from
Number of frames to encode
Image size (width and height)
Output (bitstream) file name
Output (reconstructed) file name
Quantisation parameters for various frame types Frameskip.

b) Run lencod to encode the original sequence (carphone.qcif) from frame 0 (image to start) to frame 10 (image to stop) with 0 (zero) skipped frames; the encoded bitstream saved to carphone.264 and so that the output data from the encoder is saved to a text file (carphone_264enc.log).

c) *From the log file, note the following in your logbook: (1) the total luminance PSNR for the encoded video sequence (SNR_Y) and (2) the obtained bitrate in kilobits/second (kb/s).

3. Decode “carphone.264” using an H.264 video decoder (or play back the reconstructed output of the encoder):

a) Run myview to display the first 11 frames of the reconstructed (decoded) sequence at 30 frames/second in a continuous loop sequence.

b) *Note the command line for this in your logbook.

c) *Describe your observations about the visual quality of the decoded video sequence in your logbook. (This is the most important part!).

4. Encode the “carphone.qcif” video sequence using an HEVC video encoder

a) Open HMencoder.cfg using Notepad.

b) Change “FramesToBeEncoded” to 10, “QP ” to 36

c) Run the HEVC encoder (TAppEncoder) from the command line to encode the original sequence (carphone.qcif) according to the parameters set in the configuration file. Save the encoder output data to a log file (carphone_HEVCenc.log). The reconstructed video filename is set as rec.yuv.]

d) *Note the command line for this in your logbook.

e) *Open the log file and note the following in your logbook: (1) the total luminance PSNR for the encoded video sequence (SNR_Y) and (2) the obtained bitrate in kilobits/second (kb/s).

f) Run myview to ‘preview’ the decoded image quality of the first 10 frames of the reconstructed video at 30 frames/second in a continuous loop sequence.

g) *Note the command line for this in your logbook.

h) *Describe your observations about the visual quality of the reconstructed video sequence in your logbook.

Task 2 Intra Coded and Inter-Code Frames

1) Use the H.264 encoder to encode frame 15 only, as an Intra-coded frame (slice) with QP=8

2) *Record the luminance PSNR and number of bits of this coded frame.

3) Encode frame 15 of the same video sequence you used in step 1 as an inter-coded frame using the H.264 encoder with QP=8.

4) *Note the configuration changes for these experiments in your logbook.

5) *Record the luminance PSNR and number of bits of this coded frame.

6) *Explain why the intra-coded frame and inter-coded frames have different PSNR values and number of bits. In what circumstances, will an intra-coded frame be applied instead of an intercoded frame?

Task 3 Rate Distortion Performance

1) Encode one video sequence using the H.264 encoder with the following conditions:

a) Code frame 0 to frame 100

b) Do not skip any frames

c) Quantisation Parameter (QP) = 12, 20, 28, 36, 40, 44.
Related categories: Video Broadcasting