Private:choudhary
From NMSL
Revision as of 12:51, 15 June 2010 by Kaushik choudhary (talk | contribs)
Summary of accomplishments by Kaushik Choudhary.
14June 2010
- Finished integration with mtv class. The PSISI table data can now be fetched from the ConfMgr XML files.
- Wrote unit test cases and tested code.
- Decided on the design of get_psisi_pkt and get_next_psisi_time. Currently writing API code.
TODO:
- Finish APIs.
- Merge all code and test.
- Update API documentation.
7 June 2010
- INTERFACE INFO:
- The entire PSISI module consists of eight classes. The Table class contains generic data pertaining to all the PSISI tables that inherit this information. The PSIS class acts as an interface with the rest of the system. The APIs getNextPsisiTime() and getPsisiPkt() are used by the Transmitter to determine whether and when to send any available PSISI table packets.
- The PSISI tables are able to obtain the configuration parameters from the ConfMgr class (XML file). Once populated they are used by the Transmitter (getpsisi()).
- Learned how to serialize vectors to write them out to files.
- Integrated pack function to write section files for each table using default constructor values (set from values taken from existing fatcaps code for now).
- Figured out how to call PSISI tables from Transmitter.
TODO:
- Finish getmethod() to create PSI/SI Tables from configuration file.
- Figure out how to pass the PSI/SI table data back to the transmitter (section files or buffers?)
- Check in the code.
- Update document.
31 May 2010
- Was successfully able to implement the python pack method in C++ using . The data (regardless of type) now gets packed into the requisite binary string of bytes in the network-byte-order (big-endian). Padding has also been taken into consideration.
- Understood vectors from STL and templates and used it to implement the method.
- Tested the method's capability of packing native data types into the binary string. Tests were successful.
- TODO
- Integrate method into the PSI/SI table generation framework and test the section files with the 'sec2ts' utility.
24 May 2010
- Implemented classes for the remaining tables - INT, SDT and PAT.
- Still working on the pack function to pack the table data into sections. Placing the pack section in the main PSI/SI class so it can be used by all the tables.
- Investigated test cases and found that the only independent test cases will be to use the section file generated from the tables and use it as a parameter for a utility to convert sections files into transport streams (sec2ts).
- TODO: Test the sections generated with sec2ts for each of INT, SDT, PAT, PMT, TDT and NIT.
17 May 2010
- Studied Figure 9 on page 21 of "Design Document of Mobile TV Base Station" for use as reference design for implementation of PSI/SI tables in C++.
- Started learning Python to understand old code for PSI/SI tables implemented in Python.
- Studied the specification documents for PSI/SI in DVB-h [2,3].
- Implemented classes for PMT, TDT and NIT Tables (these add up to the classes that were already implemented by Farid).
- Helped to compile FEC library.
- Will implement C++ equivalent of Python's pack method in the Psisi class to avoid duplication in each of the tables.
- TODO
- Finish implementation of all classes for all the tables for PSI and SI.
- Implement C++ equivalent for Python's pack method.
- Perform unit testing before integrating into the main source branch.
- Perform integration testing.