Help us keep the list up to date and submit new video software here.

Software Home »

Complete Version history / Release notes / Changelog for TSReader Lite

Version 2.8, build 56:
All: Fixed a crash with certain DVB T2-MI streams
All: Fixed an issue with browsing for the PotPlayer and FFPlay locations
All: Added support for the TBS 6504 quad-tuner card
All: Added the loopback adapter ( to the network interface list in the UDP/RTP and HRTP multicast source modules
All: Added support for DVB-S2 ISI to all TBS compatible source modules
All: Added support for DVB-T2 PLP to all TBS compatible source modules
Pro: Fixed a crash in the ccextract program with certain H.264 video streams carrying very long SEI NALs
Pro: Added time offset to the generated files created with ccextract when H.264 and H.265 video is processed
Pro: Added the ability to add a description to the list of tuner commands in TSWatcher
Pro: Added an option to hide the TSReader running status when using TSWatcher
Pro: TSWatcher no longer stalls when stopping the scanning process. Now a dialog is shown with the number of TSReader instances still running with the option to immediately terminate them all
Pro: TSWatcher now generates an alarm when no data is being sent - useful for a UDP stream that's dead
Std/Pro: The IPTV source module now accepts MRLs on the command-line
Std/Pro: For UDP, RTP and HRTP protocols, the MRL can now include the Ethernet NIC address to bind to by adding a dash and the address after a dash at the end of the MRL. For example: udp://
Pro: TSWatcher now supports importing the IPTV.m3u playlist file and is compatible with the IPTV source module
Pro: Multiple SCTE-35 streams per program are now supported. This results in the SCTE-35 log file changing slightly - it now includes a column for the stream number in the case of multiple SCTE-35 streams
Pro: Fixed an issue with the SCTE-35 stream icon not showing correctly if the CEUI registration descriptor was attached to the stream in the PMT and not the program
Std/Pro: UDP port numbers seen by the IP/DVB decoder are now shown when clicking on an IP address in the tree-view
Pro: Fixed an issue with infrequent packet loss when multiple clients were connected to the TCP/IP forwarder
Std/Pro: Fixed an issue with some source modules not tuning correctly when the "Retune to this mux" function is used
All: When a single program transport stream is detected, TSReader now selects and displays the PMT rather than the PAT
Pro: Added the ability to do video/audio timing analysis with J2K video and PCM audio
Pro: Add a command-line tool called PCAPtoTS which extract multicast UDP, RTP and HRTP streams from PCAP and PCAPNG files
Pro: Added decoding of color primaries, transfer characteristics and matrix coefficients for H.265 video (if present in the stream)
Pro: Added the ability to scan every n minutes to TSWatcher
Pro: TSWatcher now shows the program name and logical channel number when reporting a program number
All: The UDP (and related) source modules now have a debug window option
Pro: The TCP/IP forwarder module can now do straight TCP or HTTP. In HTTP mode, requesting the root sends the entire mux. Requesting a program number sends just that single program over the connection - for the entire mux and sends program 2
Pro: Added -E nnnn or -E 0xnnnn to set the EIT PID and G to set the SDT/BAT PID
All: The Ethernet adapter list shown in the UDP/RTP/HRTP source modules is now sorted by the adapter's name
All: The UDP, RTP and HRTP multicast/unicast source modules now show a warning dialog if they detect packets coming from multiple addresses. Useful should you start multiple encoders with output to the same address
All: The H.264 frame rate is now shown correctly - previously it could be twice the actual frame rate
Pro: The UDP forwarder setup now shows the Ethernet NIC description in addition to the address
All: Fixed an issue with an errant space in HTML exports
Pro: Changed the format of longitude/latitude when logging the signal with GPS position. Degrees west and south are now negative which works much better for mapping programs
Pro: TSWatcher setup now allows multiple selection of command-line and profiles
All: Increased the allowable number of UDP entries to 5000. Previously it was 2500.

Version 2.8, build 55:
Lite: Fixed a bug where pressing F5 didn't refresh the thumbnail view
Pro: Added DVB/SCTE-27 subtitle streams to the video/audio timing function since these also contain PTS
All: Added support for DVB Modulator Interface (T2-MI) streams. These are transport streams that contain full DVB-T2 transmission frames and are used to provide streams and timing information to DVB-T2 transmitters. When this mode is enabled, TSReader shows the resulting transport stream as if it were looking at the modulated output
Std/Pro: Added support for IPV6 UDP and RTP to the IPTV source module
All: The Dektec QAM sources now support the DTU-238
All: Fixed an issue with ATSC channel names containing special characters
All: Added decoding of ISO extended descriptors
Std/Pro: Added decoding for H.265 chroma encoding format
All: The H.264 thumbnail decoder no longer stops on an I-slice that isn't a scene change I-slice
All: Added support for the following TBS cards: 6504 (quad multi-tuner), 6522 (dual multi-tuner), 6528 (multi-tuner CI), 6590 (dual multi-tuner CI), 6903x (dual DVB-S/S2/S2X), 6904x (quad DVB-S/S2/S2X) and 6909x (octa DVB-S/S2/S2X)
All: Updated the internal TSID table used for ATSC stations. Now includes the latest repack RF channels, Canadian and Mexican stations. Many thanks to the guys at RabbitEars for the data
All: Moved a number of stream parser options from the Settings menu onto their own dialog as that menu was becoming too long
Pro: Added column descriptions to the Log CC/TEI report and added milliseconds to the time written to the log
Lite: The option to reset MPEG statistics (also triggered by the F6 key) now works
Pro: Fixed an issue with the TSWatcher status pages and system-wide HTML page not showing thumbnails from single channel streams
Pro: Added the ability to show thumbnails for single channel streams on top of the main TSWatcher window
All: Added decoding of the H.264 profile
All: Removed code and playback options for the now obsolete Stradis hardware decoders
All: Updated the Playback menu with support for VLC, PotPlayer and FFplay. Documentation on playback with these three players is here

Version 2.8, build 54:
Pro: The Stream Monitor window now displays the stream source data making multiple instances of the stream monitor easier to read
Pro: Added the -A switch to TSWatcher to allow it to start automatically
Pro: Changed TSWatcher to handle streams with more than 64 programs
Pro: Added an alarm to TSWatcher to allow it to monitor the NULL (stuffing) data rate. Useful should the stream feeding a modulator stop
All: Added a delay when switching mode on the TBS 5590 due to an error on some Windows 10 machines
Pro: Fixed an issue with TSWatcher where some alarms wouldn't be written to the log file correctly
Pro: Added the STREAMMONITOR command to the Control Server
All: Fixed an issue with the aspect ratio of MPEG-2 SD 16:9 video with AFD data
Std/Pro: Added support for 8K SUHD video using the H.265 codec
All: Added support for the TBS-6205 quad tuner card in DVB-C, DVB-T/T2 and QAM-B (MCNS) modes
All: Added support for the satellite XML list from SatBeams. Currently the satellites.xml needs to be downloaded from their website and then placed in the TSReader install folder manually. This will be automated in the future
Std/Pro: Fixed an issue where the chroma and luma sampling data on H.265 video streams (HDR) didn't show correctly
Pro: Changed the SCTE-35 processor to ignore the network type. This prevented SCTE-35 messages from being shown on some streams
Pro: Added the n switch to disable Stream Monitor logging
Std/Pro: Updated the -c switch to allow the Control Server to listen only a specific interface
Std/Pro: Added the p switch to allow the TSReader window position and size to be specified
Pro: Added the N switch to allow the window position of the Stream Monitor window to be specified
All: Updated the RTP and HRTP source modules so that SMPTE 2022-4 processing could be turned off. Some encoders put garbage after the MPEG-2 transport stream packets in RTP frames and this was causing TSReader to crash thinking it was SMPTE 2022-4 data
All: Fixed an issue where the channel name from a CVCT might not be shown on a thumbnail
All: Fixed a problem where exporting HTML with only thumbnails would result in an empty HTML file
Std/Pro: Added support for https to the IPTV source module
Std/Pro: The Save Thumbnails function now writes audio thumbnails if they are available
All: The Dektec QAM sources now support the DTU-236
Pro: Added the ability to include tuner data in the Stream Monitor log
Pro: Improvements to the SCTE-35 decoder. When a time signal message is received, the actual time between the splice time and PCR time is calculated and shown
Pro: Added INFO VIDEO command to the Control Server. This sends the video codec, resolution, interlace type and black percentage for each program in the mux
Pro: Added the t switch to enable tuner info logging in the Stream Monitor
Pro: Added the T switch to allow the PMT timeout to be set
All: Fixed a crash that could occur feeding short non MPEG-2 transport stream files into the File source module
Std/Pro: Updated the processing of MPEG AAC audio streams. They are now listed as ADTS or LATM format rather than MPEG-2 and MPEG-4 AAC which is a better description. Audio parameters such as sampling rate and channel mode are now shown for these streams
All: Added source modules to handle IPv6 in both UDP and RTP formats
Pro: Added a forwarder module to output IPv6 in UDP and RTP
Std/Pro: Fixed an issue with the -X+ switch
All: Fixed a crash in the TBS 5590 DVB-C2 source module
Pro: Added logging and analysis of PCR, PTS and DTS (Export/Log Video/Audio timing). A text file is generated - a sample is here
Pro: Added support for the timing analysis above to the Control Server via the TIMING START and TIMING STOP commands
All: Added a warning for TBS devices that some versions of Windows require TSReader to run at least once in Administrator mode in order for the device to work correctly
All: Added decoding of E-AC3 audio header

Version 2.8, build 53a:
All: Fixed a crash with some Dektec devices
All: Fixed a memory leak when the H.264 decoder fails
All: Fixed an issue where TSReader would set the wrong VLC directory path on 64-bit operating systems
All: In the UDP, RTP and HRTP source module stream selection dialog, the friendly name for the network adapter is now shown
Pro: The stream monitor filename can now be set. If left blank, TSReader uses its default name which is StreamMonitor-yyyymmdd.txt in the TSReader folder
All: The TBS 5590 source modules now show the signal level in dBm, the carrier-to-noise ratio in dB and the bit-error-rate (BER)
All: The ISDB-T tuner dialog now allows selection between the channel numbers used in the Americas and Japan
All: A new TBS 5590 source module is included that supports variable symbol rate QAM-B signals. The default QAM-B source module uses the two fixed symbol rates used for 64QAM and 256QAM modes that's supported in North America
Pro: Added the ability to print TSWatcher error reports
Pro: Added the + option to the -N switch to allow the Stream Monitor log filename to be specified

Version 2.8, build 53:
All: Added support for the following TBS products: 5301 (HDMI to H.264 encoder), 6290SE (2xDVB-T/T2/C), 6301 (HDMI to H.264 encoder), 6304 (4xHDMI to H.264 encoder), and 6909 (8xDVB-S/S2)
Std/Pro: Added support for Media Highway 2 format EPG. This is enabled with the -EM switch
All: Fixed an issue with the aspect ration and frame rate for H.264 video when a sequence scaling matrix was present
All: Increased the size of the description column in the stream selection dialog used for HRTP, RTP, TCP and UDP protocols
All: Added support for the TBS 5590 USB probe. This device supports DVB-ASI, DVB-S/S2/S2X, DVB-T2/T2, DVB-C2/C2, ISDB-T and QAM-B
Std/Pro: Added an option to XMLTV export that allows selection between channels and EPG events mixed together (the format supported by TSReader for many years) and channels first, followed by programs. Additionally added an option to the the -X+nn switch to allow selection between these modes
Pro: Added an option to TSWatcher to log the exchange with SMTP email servers. This can be useful in debugging email sending issues
All: Added a source module for SAT>IP DVB-T servers
Pro: Fixed a problem in TSWatcher where the wrong command line would be set when importing 8VSB and QAM-B channel lists with channel descriptions
Pro: Fixed an issue with Korean closed-captions containing multiple user-data streams with the 0x64088408 prefix
Std/Pro: Fixed an issue with the multicast UDP, RTP and HRTP sources where source specific streams using IGMPv3 via the the command-line would return an erroneous error message
Pro: Added a new switch -9 to both TSReader and TSWatcher to allow multiple UDP Multicast lists

Version 2.8, build 52:
All: The UDP multicast source modules (UDP, RTP, HRTP) and the TCP/IP source module now accept udp://addr:port and tcp://addr:port on their command-lines. This is predominantly for support of CrazyScan working with TSReader Pro
Pro: RTP packet loss logging now logs the time difference (in milliseconds) between the packet where loss was detected and the prior packet
Pro: Fixed a crash with badly formatted SCTE-35 messages
Std/Pro: Fixed an issue with the TCP/IP source module where a command-line address that couldn't be connected to resulted in a looping error message
All: If the HTTP source module detects a webpage without any M3U tags (such as an error 404), it will now display the webpage for better diagnostic information. The webpage rendering is done inside TSReader and doesn't start a web browser
All: Added support for TBS-5580 USB multi-standard tuner
All: Added commas to separate the thousands and millions in the multiplex bit rate. This makes reading the mux-rate much easier
Pro: The tier level in SCTE-35 cue messages is now decoded
All: Fixed a bug that caused thumbnails to disappear when the thumbnail refresh rate was zero (one thumbnail pass when TSReader starts) and the PMT version number changes
Std/Pro: Added the multi protocol IPTV source module. It handles HRTP, HTTP, RTP, TCP and UDP streams with a unified stream selection interface. More information is here
All: When the HTTP source is reading a list of transport stream files from an M3U playlist and it reaches the end of this list, it displays a warning that the end of the playlist has been reached. This makes it much more like the File source module's behavior. This message isn't displayed when reading plain HTTP streams without an M3U playlist or with a playlist that updates such as when reading a live HLS/MPEG-DASH stream
Pro: Fixed an issue with the Closed Caption decoder where multiple languages might cause display corruption of EIA-608 captions
Pro: Fixed an issue with TSWatcher that would cause it to hang on a mux if the mux contained rapid SCTE-35 CUE messages
Pro: Changed the display of segmentation_upid in SCTE-35 CUE messages to hex since this field can contain binary data. The specification is quite unclear as to proper decoding of this field so this is a good balance
All: TSReader is now aware of PotPlayer and will shut it down like VLC if that is chosen to play live video versus VLC via Playback/VLC/Settings. PotPlayer is free and very good media player that decodes faster than VLC. TSReader should be pointed at the C:Program FilesDAUMPotPlayerPotPlayerMini.exe file
All: Added support for VLC 3.0
All: Updating decoding of the DVB E-AC3, S2 delivery and NIT service list descriptors
All: Frame rate and aspect ratio from H.264 & H.265 video is now shown if present in the stream
All: Added support for all four tuners on the DVB-T and ISDB-T Silicon Dust HDHomeRun Quattro tuners
All: Depreciated support for recording program streams. This is really a dead format and there are much better third party programs that can be used to generate these files
All: Added support for ALPTS files. This format allows MPEG-2 transport stream files to be compressed by removing the sync byte, removing similar PID headers and dropping NULL packets - all done in such a way that this data can be recovered exactly as recorded - in other words lossless compression. Compression amount depends on the number of NULL packets
Std/Pro: Added command-line utilities ALPtoTS.exe and TStoALPTS.exe to convert these formats in addition to the support inside TSReader

Version 2.8, build 51:
All: The Alitronika ASI source module now supports the AT4R1 ASI to USB adapter
All: The HDHomeRun DVB-T source module now works correctly with DVB-T2 signals without reporting a false failure to lock
All: Recording and playing streams with E-AC3 audio now correctly records the audio stream
Std/Pro: Improvements to the H.265 decoder. Interlaced video is now decoded correctly
Std/Pro: Fixed an issue when exporting to XML where a long rating string in an EIT event could corrupt the event's start date
All: H.264 and H.265 decoders now display a "Wait..." thumbnail before the thumbnail is decoded. MPEG-2 video decodes very rapidly but H.264 and especially H.265 with a 4K picture can take a second or more to get a thumbnail. This makes it much clearer that TSReader is working on it
All: The YUV to RGB conversion required to get a thumbnail on MPEG-4, H.264 and H.265 video is significantly faster
Pro: Fixed an issue with CEA-708 caption service numbers greater than six
All: DVB NIT entries in the tree-view now display the network name if transmitted
All: The DVB NIT maximum multiplexes was 2,048. This has now been increased to 8,192 to handle some European DVB-C networks
All: Added support for the ASI input port on the Alitronika AT-290 DVB-S modulator
Std/Pro: Added the ability to view the MPEG-2 start codes or the H.264/H.265 NALU codes. This can be very useful for finding strange problems in video streams especially when some NALU codes are missing
All: Added option to right-click a "Decoder Disabled" thumbnail in order to enable that decoder
Std/Pro: Right clicking a video thumbnail now displays menu options to allow quicker access to decoder settings, offers to refresh thumbnails and allows the thumbnail size to be changed
Std/Pro: Changing the thumbnail size now refreshes the thumbnails
All: Alitronika input ASI devices that use DvsStation V4 are now supported using the AlitronikaASI_v4 source-module
All: Added support for the TBS 690A four-port ASI input card
Pro: Cleaned up the caption decoder messages and made the caption display easier to read by adding some color
All: Some DVB-T NIT entries carry terrestrial system delivery decoder that's all ones (which means reserved). This was incorrectly shown as -0.0MHz
Std/Pro: The RTP and HRTP source modules now count the number of RTP packets lost at the IP level
Pro: The RTP and HRTP source modules can now log the RTP packet loss to a comma-separated file
Pro: TSWatcher: Added the ability to include thumbnails in the alarm report
Pro: TSWatcher: Added a new function to generate a standalone webpage containing thumbnails from all multiplexes being monitored
All: Fixed an issue where service names on DCII muxes would sometimes be blank
All: Depreciated support for Dish Network switches and changed the code to support DiSEqC 1.1 switches instead which support up-to 16 satellite inputs
All: Updated links to reference the new website
Std/Pro: Removed documentation from the installer. TSReader documentation is all on-line now
Lite: Video resolution is now exported to HTML for H.264 video

Version 2.8 build 50:
Known issues
Captions from H.264 streams are not saved correctly in archive mode
Captions carried in SCTE-20 format and written in the archive mode will sometimes be jibberish
Changed in 2.8, build 50:
Std/Pro: Fixed an issue with the MPEG INFO command where CRC counters would always report zero
Std/Pro: Fixed the Ctrl+A accelerator key (which does Record/Record Mux) that accidentally got removed in 2.8.49
All: SAT>IP sources only set the &fe= parameter when the front end is non-zero
All: Added optional comma-separated PID list for SAT>IP sources to allow operation with tuners not supporting the &pids=all command. Use of this is not recommended, but is provided for those using these type of SAT>IP tuners
All: Alitronika DVB-C source module no longer erroneously reports failure to lock
All: DVB-T NIT can now be exported
All: Plugin now included for BISS Mode 1 scrambling. This is often used for satellite feeds and can accept either 12 character (same odd/even keys) or 32 characters for different odd/even scrambling keys. This is documented here
Pro: Added an option to select between local and UTC time when logging CC/TEI errors
Pro: Added output folder selection for TSBitCounter data, the ability to set how often TSBitCounter data is written and if the total or an average should be written
Std/Pro: Checking for a new version now will correctly show a new version available when using a pre-release version and the actual release version is available
All: The setup program now adds an exception to the Windows firewall for TSReader since that often seems to get in the way of some source modules
All: When decoding the rating level on ATSC transmissions, if the RRT (Region Rating Table) isn't present, TSReader now has region 1 (US) rating data included so the rating level is always shown
Std/Pro: New chart added that displays the "Last Sec" rate that's shown in the TSReader MPEG-2 Statistics display. This is useful for watching the rate on variable rate streams typically carried over IP networks
All: Dolby AC-4 audio streams are now supported
Std/Pro: The "Last Sec." counter in the MPEG-2 statistics now alternates between the data received in the last second and the maximum per second that has been received
Std/Pro: The setup program can now associate .ts files with TSReader. It will automatically switch to the File source module when these files are opened by Windows. For TSReader Professional users, we always suggest having the "Default" profile use the File source
All: ATSC virtual channel numbers are now displayed much more predominantly much like logical channel numbers in the DVB system
Pro: Revived the live mosaic option. VLC 1.1.9 is the maximum version of VLC that supports this function.Configuration details are here
Std/Pro: Added the ability to display the user data carried in MPEG-2, H.264 and H.265 video streams
Pro: When the Table Viewer is used to look at raw data from a table, multiple sections from the selected table are now shown
Pro: Changed the TSBitCounter logging format to make it much easier to use the data with spreadsheets
All: Minor changes to TSReader for better compatibility with Wine which allows TSReader to run without Windows on MacOS or Linux. Only modules that are compatible with Wine are shown when selecting the source module and in TSReader Pro's Forwarder menu.We've documented how to get TSReader running on MacOS and Ubuntu Linux here
Pro: Added an option to TSWatcher to import the Multicast UDP/RTP lists
All: Added support for the Silicon Dust HDHomeRun Connect Quatro with four 8VSB/QAM tuners
Changed in 2.8, build 49:
All: Added source modules for the TBS 6902 DVB-S/S2 card
Pro: Fixed a problem with SCTE-35 messages getting corrupted on networks with a weak and noisy signal.
Pro: Added a network-wide monitoring program called TSWatcher. More details can be found here
Std/Pro: Added an option to the -R switch (-Rt) to tell TSReader to split files in the number of seconds specified rather than the number of MB
Pro: TSWatcher: Added support for monitoring DVB System Information PID rates
Pro: TSWatcher: Added support for importing DVB-T/T2 and 8VSB multiplex lists
Pro: TSWatcher: Added option to write alarms to a plain text file in the TSReader/TSWatcherLogs folder
Pro: TSWatcher: Added alarm for a particular PID falling below a specified data rate
Pro: TSWatcher: All alarm values can now be changed
Pro: Added a forwarder module for TCP
Std/Pro: An H.265 thumbnail decoder is now included with TSReader
Pro: Added display of closed captions carried in H.265 video
Pro: ccextract program also supports H.265 video
All: UDP/RTP/HRTP source modules now show the source address of the stream
All: Added support for SAT>IP DVB-C interfaces
Pro: TSWatcher: Add alarm for checking the presence of listed PIDs
Pro: Updated the ITW-9500 (DVB-T modulator) forwarder module to support more than one of these modulators at a time using different TSReader Profiles
Pro: Added the ability to ignore SCTE-35 NULL CUE messages. This is toggled by right-clicking on any CUE elementary stream in the tree view. This does not affect logging of CUE messages - just their display
All: Added support for Silicon Dust HDHomeRun ISDB-Tb models
Pro: Changed the behavior of the Control Server's FORWARD ON command so that if a forwarder module has a setup dialog, this dialog is not displayed. This means before using this command, the forwarder must be run manually to set the parameters
Pro: Updated the ITW-9500 code to use the latest manufacturer API
Pro: Adds logging support for the upcoming TSBitCounter program
Pro: Added LOG command to the control server. Sub-commands are TSBitCounter or SCTE35. TSBitCounter is then followed by either ON or OFF and SCTE35 is followed by either the file name to log to or OFF to disable
Pro: Added support for the ITW-9517 low-cost ISDB-T modulator
All: Added support for SMPTE 2022-4 to the RTP source modules. TSReader does not process any FEC included but it does handle the extra SMPTE 2022-4 data added to the MPEG-2 payload part of the RTP packets. If the sender is using the SMPTE 2022-4 packet counter mode, TSReader will re-generate the NULL packets discarded by the sender
Pro: RTP and RTP with SMPTE 2022-4 modes added to the UDP mux forwarder
All: Depreciated the D-VHS, Roku HD-1000 and XNS playback modules. These technologies and devices are all obsolete
Lite: TSReader's window is now resizable
Std: The thumbnail processor now runs multiple streams in parallel - this will make thumbnail decoding much faster on multiple program transport streams
Pro: A one time per profile warning is now shown if the parallel thumbnail thread count is lower than recommended and can automatically fix this. Like the Standard version this speeds up thumbnail generation but is even faster in Pro

Version 2.8 build 48b:
Known issues
Captions from H.264 streams are not saved correctly in archive mode
Captions carried in SCTE-20 format and written in the archive mode will sometimes be jibberish
Changed in 2.8, build 48b:
All: The easy reader and widescreen flags in the ATSC caption descriptor are now displayed
Std/Pro: Fixed an issue with XML and XMLTV export where the wrong options were displayed when choosing the output file
Std/Pro: The SAT>IP source module now supports the tuner address and number on the command line in the format [tuner-address:tuner-number]
Std/Pro: Added the DVB EPG category to XMLTV exports
All: The HTTP source module now understands .m3u files without the need for them to be described by an HTML 5 <video> tag.
All: HLS/MPEG-DASH live streams are now supported by the HTTP source module
Pro: The ccextract command-line utility now processes captions from H.264 video
Pro: XML export now includes SCTE 35 cue messages in raw hex format
Pro: The Stream Monitor window is now bigger so the entire alarm text gets displayed
Pro: Added a button to copy all the Stream Monitor alarm text to the clipboard
Pro: Added a function to the Stream Monitor to generate an alarm if a certain PID's bitrate drops below a certain level. This level can be set by clicking the Settings button in the Stream Monitor window
Std/Pro: Added the ability to save MPE IP data not carrying UDP or TCP traffic
Pro: Added the ability to log all SCTE-35 messages into a comma separated file
Pro: Fixed an issue where H.264 captions would sometimes be gibberish if B slices were present - fix applies to both TSReader and the ccextract command-line program

Version 2.8 build 48a:
Known issues
Captions from H.264 streams are not saved correctly in archive mode
Captions carried in SCTE-20 format and written in the archive mode will sometimes be jibberish
The HTTP source runs at the rate the server will dole out data and not at the mux speed
Changed in 2.8, build 48a:
All: Added support for the Blonder Tongue MTSA device. This supports 8VSB, QAM-B, ASI and SMPTE-310M inputs and ASI & SMPTE-310M output in TSReader Pro
All: Display of the SDT version number
All: Fixed the Sencore/Dektec DTU-236 source module to correctly detect front-end lock and switch cleanly between RF & ASI inputs
All: Fixed missed DiSEqC commands on some TBS DVB-S/S2 satellite cards
Pro: Added the ability to record 10 second files in the archive function.
All: Updated to Alitronika's latest API
Pro: Fixed an issue with exporting CUE messages to XML
All: Added decoding of the resolution of H.265 video streams
All: Added chroma and luma bit depth for H.265 video. Anything above 9 bits is considered HDR
All: Added support for the TBS 5927 tuner
All: Fixed an issue where right clicking a DVB NIT and selecting "Tune to this mux" would fail on TBS DVB-S2 cards
Std/Pro: Fixed an issue with the -I switch not working on DSS muxes and dropping source module parameters
All: Improved the reliability of the H.264 thumbnail decoder
Std/Pro: Fixed a crash on XML export when hundreds of programs are defined in the PAT
All: Added support for SAT>IP tuners

Changed in 2.8, build 48:
All: DVB EIT events now compared by start date/time rather than event id
All: ISO 6937 character set codings are now added
All: Fixed an issue where the progressive/interlaced flag for MPEG-2 would occasionally report incorrectly
Std/Pro: Added STALL xx NODATA to the control server
Std/Pro: Added MENU xxxxx to the control server to send clicks to plugins
Std/Pro: Added TSREADER_MDAPI_SET_TSR_TEXT and TSREADER_MDAPI_SET_TSR_TEXTW to allow plugins to set the main text window in TSReader
All: Fixed a bug where the UDP Multicast and Unicast sources might stop delivering data
All: Added support for DVB-T2 frequency tables
All: Added a new option to always treat stream type 0x80 as DC-II video - even if the network is DVB
All: SCTE-27 subtitle streams are now recognized when on DC-II or SCTE networks
All: Started the process of adding H.265 (HEVC) support. There is no video decoder for H.265 in TSReader at this point, so you don't get a thumbnail
All: Better support for detecting AFD in MPEG-2 streams
All: Ability to export DVB-C NIT into DVB-C tuning file (right click the NIT root)
All: Fixed some issues with non-Latin character sets and descriptors from DTMB streams
All: Added support for Dektec DTA-2136 and DTA-2139 QAM receiver cards
All: Added support for TBS cards 6220, 6982 and 6983
All: NIT entries with no frequency defined (like some DVB-T2 NITs) now show the Network ID number in the tree-view
All: Fixed issue with naming of the CVCT versus the TVCT in the ATSC system
All: Fixed issue with Canadian ratings in the EIT wouldn't show the link to the RTT correctly
Pro: SCTE CUE message descriptors are now decoded correctly and fixed an issue where false CRC errors were reported for CUE message sections
All: Fix for the HTTP source so it no longer fills up your hard drive with cached data. Oops!
All: File source module now has an option to filter PCRs that are carried in video streams but carry incorrect timing data when the PCR is carried on a seperate PID. This is used when calculating the mux rate for playback through TSReader.
All: UDP related source modules now have an option to set minimal buffering. This is useful when using TSReader on UDP streams below 1Mbps
All: Fixed an issue with text display in the BAT
Pro: The caption decoder can now export CEA-708 captions (both the one in TSReader and the standalone ccextract program)
Pro: Korean captions carried in CEA-708 data are now handled correctly
Std/Pro: Fixed a crash on some DVB-C sources where command-line tuning was used
All: Improved detection of AFD in H.264 streams
Std/Pro: Fixed lockup issue with the control server's TUNE command on some HDHomeRun tuners.

Version 2.8, build 47c
Known issues
Captions from H.264 streams are not saved correctly in archive mode
Captions carried in SCTE-20 format and written in the archive mode will sometimes be jibberish
The HTTP source runs at the rate the server will dole out data and not at the mux speed

Changed in 2.8, build 47c
Pro: The warning that's displayed when ending archiving mode can now be disabled
Pro: Added an option to terminate TSReader once archive mode is terminated
Pro: Added an option when clicking a profile in the profile-browser to launch the profile without command-line parameters
All: Added support for the HDHomeRun Prime Cable Card receiver
Pro: Fixed a bug in the archive Disk Transfer utility which caused the video file to not be deleted from the source drive
All: Fixed a problem with setting the default VLC path on non-English or 64-bit Windows
Pro: UDP forwarder now accepts domain names in addition to IP addresses
All: Added decoding of the ATSC Genre descriptor
Pro: New look to the Disk Transfer utility
Std/Pro: Added -2 switch to force the "Allow PC to Sleep" option on
Pro: The UDP forwarder can now use a TTL of zero
All: Added the ability to export the subscription status on the HDHomeRun Prime tuner to a comma-separated file
All: Fixed an issue with the HDHomeRun Prime not resuming the stream after a power cycle or network interruption
All: Added support for UTF-8 encoded ISO 10646 character sets
All: Updated the Service Type table to reflect the latest ETSI specification
All: Fixed an issue with multiple extended event description descriptors causing characters to be lost
All: Added an option to show the video first in the Program Usage chart
All: Updated Dektec and Sencore source modules for compatibility with their latest drivers
All: Current program text from the EPG is only shown on video thumbnails
Std/Pro: The Table Viewer now shows multiple tables carried in the same section
Pro: Fixes to cure a once every two week issue with channels being archived going encrypted when being recorded from an HDHomeRun Prime
Pro: Added option to not save thumbnails when running archive mode
All: Added decoding of the ATSC service_type, hidden & hide_guide fields from the TVCT & CVCT
Pro: Increased the number of archive channels from 32 to 96
Pro: Forwarder now displays channel names correctly
Pro: Fixed an issue with deleting newly created profiles
All: If multiple Dektec devices are found, TSReader now shows a dialog allowing selection of the device.
All: The DektecUSB source module is now depreciated and will be automatically removed by TSReader. Use the Dektec source module for all Dektec devices
All: Support for Chinese & Korean character sets
All: Fixed an issue with the TVCT Extended Channel Descriptor when Huffman coded
Std/Pro: Added support for UTF-8 character sets in XML, XMLTV and HTML exports.
Std/Pro: Added "-4 ISO-8859-1" and "-4 UTF-8" command-line switches to select XML/XMLTV & HTML export character set
Std/Pro: Added "-M h" switch to run TSReader hidden. You must use command-line parameters if you specify this switch.
Pro: Fixed an issue when using the archive function where channels swapped to 30 minute recordings because of lack of EPG wouldn't switch back to EPG mode automatically.
All: TSReader now includes source modules from TBS. The command-line parsing bug these source modules had is now fixed Thanks to the guys at TBS for their help
Pro: Lots of improvements to the Archive Viewer. Added the ability to attach notes to a recording, print a list of recordings and Closed Caption extraction and viewing
Lite: H.264 thumbnails are now generated!
All: Added input support for Stream Labs ASI cards. Only one card is supported at present
Pro: Added forwarder support for the ITW-9507 low-cost DVB-T modulator
Pro: Fixed an issue with CEA-708 captions specifically when using 3D extensions
All: SCTE-65 support completed
All: Multiple ATSC descriptors of the same type in the EIT are now displayed correctly.
All: Added DVB-S2 support to the Alitronika AT-660 series receivers.
All: Fixed an issue with PMTs being placed on PIDs 0x1ffb & 0x1ffc (reserved for ATSC & SCTE).
All: 16:9 thumbnails now have the correct aspect ratio in the TSReader thumbnail display
Std/Pro: Control Server RECORD command now includes the elapsed recording time in its response
Std/Pro: Thumbnail generation for most video types can be disabled by setting the Maximum Pictures value to zero in the Settings/Thumbnail Thread/Refresh Rate & Maximum Pictures dialog
Std/Pro: Control Server PROGRAM command now indicates if a service is scrambled
All: The DVB BIT outputs non-Latin characters correctly now
Std/Pro: Added the -4 switch to select XML and HTML export chararcter-sets
Std/Pro: Added the -5 switch to set and enable the EIT language filter.
All: Changed the processing of the DVB EIT extended event descriptor to prevent character loss on some streams.

Version 2.8, build 47b
All: Fixed an issue with VCT names in ATSC muxes being displayed in the wrong character set in the tree-view
Lite: Fixed a bug where the tree-view's size was incorrect.
Version 2.8, build 47a
All: Subtitling descriptor now decoded correctly
All: When recording a program if only one program is present in the mux, it will be automatically selected
All: Recording times can now accept hh:mm:ss (or mm:ss) in addition to seconds
Pro: When reloading from XMLTV EPG files via the control server, if the new XMLTV has less events than the old, the new file is now ignored
Pro: Fixed a bug when switching from EPG to timed recording, the 30 minute programs wouldn't be aligned to half hours
All: Added Original Network ID to the SDT display
All: Increased the PES buffer size which caused odd things to happen with some MPEG-2 HD video sources
All: Fixed bug with unaligned TS in HTTP module and added the ability not to parse HTML5 video tags
Pro: Fixed bug with ATSC captions in H.264 video streams
All: Fixed various screen painting issues when using the Aero display on Windows 7
Pro: Added Live Video Mosaic. This shows all clear programs in the mux live at the same time using VLC.
All: Added support for the Sencore DTU-236 8VSB/QAM demodulator
Std/Pro: Bug fix for the XML export so that non-North American ratings are included in the XML.
All: Started support for non-Latin character sets. Right now, Greek and Cyrillic character sets are supported in the display part of TSReader.
All: Added support for the EPG format used in UK DVB-T2 Freeview and Freesat.
All: Fixed an issue with the BDA interfaces using -q and not being able to lock.
Std/Pro: Added signal and source-module information to the XML export.
All: Fixed a problem with the file source when the command-line specified a file that TSReader then couldn't read.
All: Added Japanese character set support. If odd characters are seen when looking at non-Japanese ISDB streams, switch the "Ignore ARIB characters" option on in the settings.
All: Fixed bug with scanning QAM cable systems where a channel 0 would sometimes get created
Pro: Correct an issue with manual channels and the Record all Programs function.
Std/Pro: Fixed a bug where & characters from the DVB NIT would get exported incorrectly.
Pro: Corrected a bug with the Closed Caption decoder and H.264 streams containing emulation prevention bytes.
All: Fixed a bug in the file sources that caused a crash with very long filenames.
Std/Pro: Fixed a crash in XML export with bad BAT
Pro: Fixed an issue with forwarding manual channels to UDP
Std/Pro: Double clicking PID in PID list toggles PID continuity check
Pro: Fixed issue with archiving ATSC channels with the HDHomeRun and PID filtering
Pro: Only send archive scrambled channel warning after a significant number of encrypted packets
All: Added the ability for source-module developers creating satellite interfaces to provide an autoscan function
All: Added support for more HDHomeRun tuners (Tech DVB and Prime). The HRHR Prime receiver currently works in 8VSB/QAM only mode and supports two out of the three tuners
All: Added forwarder support for the Dektec DTU-205 and DTU-235 USB ASI adapters
All: Added compatibility with streams carrying PMT entries pointing to the same ES PID.
All: Added decoding for AC3 audio descriptor
All: Fixed a bug with muxed containing more than 255 programs
All: Corrected a bug with non parsing of PMTs with program number 65535
All: Added support for ISO/IEC 8859-2 character set
All: Added decoding of AVC descriptors 0x28 & 0x2a
Pro: Improved the email setup dialog and added a trace to allow the SMTP exchange in test mode to be seen.

Version 2.8, build 47
Pro: Option to generate MD5 checksums on archived MPEG files.
Pro: Added CAPTION-FILE tags to the XML generated in archive mode.
Pro: Changed the archive status window to show more channels on smaller monitors.
Std/Pro: Enhanced the -X (XMLTV export) switch to allow control of all the export parameters (see the command-line.html file).
All: Fixed decoding of AFD data when the user data also contains private data.
Pro: Fixed an issue with the archive mode when special characters were in the event name which sometimes caused XML files to be not generated.
Std/Pro: Ability to turn off the "Control server failed to start warning"
All: Satellite tune dialog position is remembered
Pro: Archive mode supports 60 minute recordings
Std/Pro: Fixed issue where pre-releases always showed a new version available
All: Fix Tevii signal chart
All: Fix DVB-S2 retune with wrong FEC selected
Pro: Correct a bug where the command-line parameters for the tuner would sometimes get deleted.
Pro: Corrected the time display for timed channels when first starting an archive session.
Pro: Added the ability to write EIA-608 caption data to plain text files (press F1 in the caption decoder to see all the keystrokes).
Pro: Fixed a problem with the Archive Viewer app where it wouldn't delete caption files when deleting an event.
Pro: Corrected some issues with viewing captions from H.264 streams.
Std/Pro: Fixed a problem with the EXPORT XML function where the XML sent over the control server would be truncated after the first event from the EIT.
All: Updated to Alitronika's lastest SDK - if you use Alitronika hardware, please make sure you're using their latest drivers.
Pro: Fixed a bug where deleting PIDs from the PID list in the Forwarder/Settings immediately after loading a PID list file would fail.
Pro: The UDP Forwarder can now send a mux without a PAT/PMT structure.
All: PID 1FF6 now shows as ATSC M/H in the PID list on ATSC muxes.
Std/Pro: XML export now adds the AUDIO-TYPE AC3 tag for DCII, ATSC and SCTE networks even if AC3 descriptors aren't in the PMT
All: HDHomeRun tuners now recover from network/power cable disconnects and reset the PID filter if this mode is being used in TSReader's Pro archive mode.
Pro: <NEXT-FILE> and <PRIOR-FILE> tags added to archive XML
Pro: Fixed bug with archive XML & characters not being quoted correctly
All: DVBTBDASource now correctly detects a signal lock - previously it would indicate a lock on every frequency even if no signal was present
Pro: Archive limit emails option - this limits the number of email messages sent by the archiver when there's an issue to the number specified per minute
Pro: The archive status dialog now shows the EPG availability length in days and doesn't corrupt file/event names when resized
All: Fix problem with the Video Composition chart sometimes crashing TSReader when being closed
Std/Pro: -G pid switch for specifying PAT PID
Pro: UDPFORWARD command in the control server
Pro: A new dialog shows missing PIDs, i.e. PIDs called out in the mux's SI, but not being used.
Std/Pro: Control Server can now have an optional password - the PASSWORD command must be sent along with the right password before any other Control Server commands can be sent.
All: Improvements to BDA support: DVB-C now reports non-locks correctly, DVB-C and DVB-S support multiple devices and all three DVB BDA sources now return clearer error information.
All: MD filters can now request hooks during start
All: Fixed an issue with the EIT where multiple descriptors of the same type were being discarded
All: Fixed a memory leak relating to expiring old EIT entries
Pro: Changed the way the XMLTV command in the control server works. This fixes an issue where very occasionally a number of EIT events would be discarded
All: Added an option to discard packets with the TEI flag set
All: Fix File/Restart Source with File.dll when close on end-of-file is set
All: Fixed a bug in MPEG audio parsing
All: Corrected a problem parsing PMTs on PID 0x0024 (same as ISDB BIT)
Std/Pro: More AFD fixes
Std/Pro: Allow recording from the scheduler using UDP muxes when the PAT points to a DVB Network table
Pro: Fixed an issue running archive mode on QEMM
All: Added DVB-T bandplan for Region 2 using 6 MHz channels
All: Added decoding of the Auxiliary PAT/CAT location descriptors used in the Sony Passage system
All: Added decoding of many of the DVB-T2 related descriptors
All: Added support for Alitronika AT78XUSB
All: Added support for Alitronika AT660
All: Performance tweaks
Std/Pro: Fixed XMLTV export to drop an erroneous "-" character if no channel name was defined
Std/Pro: Added rating export to XMLTV
Pro: Added location export to XML in archive mode
Pro: Added EPG warning in archiver for when EPG gets to a certain number of days
Pro: Added low rate UI option to archiver
Pro: UTC offset in archive XML is now generated when the event is started, not finished
Pro: Added INFO ARCHIVE command to the control server
Pro: Fixed bug where if the EPG ran out, multiple files would be created when the EPG was reloaded
Pro: Added INFO ARCHIVE-SPACE command to the control server
All: Added support for TSReader_GetMiscString() in source modules. Returned text shown below the signal.
Pro: Added INFO ARCHIVE-EPG command to the control server
Pro: Added RETUNE and WRITE-ERROR tags to the XML generated for each program in archive mode.
All: Added support for the RoVer Instruments BIT-1.
Pro: Added the ability to log CC/TEI errors to a CSV file
All: Added HTML-5 video support to the HTTP module. A sample URL is

Version 2.8, build 46g

* All: Fixed a problem with DiSEqC switch commands on Tevii interfaces.
* All: Hidden registry DWORD value: ForceH264ProgramNumber - forces the specified program to use H.264 for video. This allows TSReader to operate correctly with the ITV HD channel on Astra 2 which advertises itself as H.263.
* All: Fixed a problem there an empty PAT would show a single program.
* Std/Pro: Fixed an issue with the control server GRAPH SEND function if a graph hasn't been saved manually.
* Pro: Improvements to the PID filtering in the UDP forwarder.
* Std/Pro: Fixed a crash when processing some MPEG-4 audio.
* All: Fixes for more than 64 muxes in ATSC/QAM networks.
* Pro: Added support for forwarding to Alitronika DTA-2145 devices.
* Std/Pro: The -y switch now accepts a negative value for the timeout which causes an export after the specified number of seconds regardless of table processing.
* Std/Pro: The control server now sends the correct response code for the SOURCE command.
* Std/Pro: NIT tables up to 4096 bytes can now be processed.
* Std/Pro: The -I switch now accepts a + sign in the front of the first " character around the PID numbers. If the + sign is there, the quoted text becomes the name of a PDL file which specifies the PIDs to record.
* All: Initial support for the SCTE 65 system used in cable systems in the Americas.
* Pro: Added decoding of SCTE 35 CUE messages including XML export support.
* Pro: UDP forwarder can now forward just the PIDs specified.
* All: Added an option to allow the PC to go into sleep mode when TSReader is running. This may cause lots of problems with various source modules/drivers so please use with care.
* All: Fixed a bug with HDHomeRun sources where if the frequency was on the command line one might not see the tuner selection dialog.
* Pro: Added the -g switch which allows TSReader to run from a memory stick and keeps the profiles as files on the memory stick.
* All: Added support for the latest Alitronika AT40X devices.
* All: Added support for DVB-S BDA interfaces. This is the standard XP implementation so no DiSEqC control nor DVB-S2 is possible, however, we will be adding support for the Windows 7 enhancements which will resolve this.
* All: Fixed detection of ATSC/SCTE tables when the base PID for these systems is used for other purposes.
* Pro: UDP Forwarder window is now minimized when TSReader is started minimized.
* All: TSReader now warns if it is unable to write to a recording file (for example if out of disk space or a removable drive is disconnected).
* All: Added an option to always select all audio streams when the record program function is used.

Version 2.8, build 46f:

* All: We've decided to remove passwords from the setup utility for TSReader.
* All: Ctrl+N now launches VLC configuration #1 and Ctrl+Shift+N launches VLC configuration #2. These can be used to toggle playback on and off.
* All: HDHomeRun source now retunes if the symbol quality goes to zero. This corrects an issue when the HDHR is tuned for many days on the same mux and then starts sending junk.
* All: Fixed the 100% CPU usage issue on Twinhan cards when TSReader attempts to retune after lock is lost. Thanks to Greg Farris for the fix.
* All: Updated Hauppauge source modules with various fixes.
* Pro: When a new profile is created using the Profile Browser, there is now an option to set the device number when a multicard device is selected.
* All: Fixed a bug with the SDT item count shown in the treeview.
* All: Much improved support for ISDB networks. This is still in progress in this prerelease.
* Pro: More improvements to archiving mode stability.
* All: Support for the 0.9 versions of VLC.
* Pro: There is now a check for duplicate channel names when starting the archiver. This would prevent the duplicate channel from being recorded.
* Std/Pro: HTML export now includes the PCR PID.
* Pro: The Caption logger (accessed via the L key when the CC display is active) can now log the PTS/DTS stamps.
* Std/Pro: The control server now has two new options for the GRAPH command: SAVE to write a PNG file of the graph and SEND to send that same PNG over the socket connection. More details are in the control server docs.
* All: Fixed an issue with descriptor decoding on virtual channels.
* Pro: Fixed a bug where erroneous descriptors might be seen in the PMT list displayed in View/Descriptor Usage.
* All: These are still in development for this release: DVB-C BDA support, the file source will support PCAP files, PID waterfall chart.
* All: Added an option to the file loop source to mask CC errors when the file wraps around.
* Pro: The profile browser can now remember the command-line parameters on a profile by profile basis.
* Pro: Added the XMLTV command to the control server.
* All: The program usage stacked bar chart has been re-arranged to show the CBR streams like audio, teletext and other ancilliary data before the video This makes the chart much easier to see when running in real-time mode.
* All: Corrected a problem with erroneous characters getting into the EPG data on some satellite services.
* Standard/Pro: Null PIDs can now be recorded.
* All: Added support for the Linear Systems ATSC Master range of PCI cards that use the SMTPE-310M protocol.
* All: There's now a thumbnail option to place the ES PID onto the thumbnail.
* Pro: Fixes for the SMTP client to correctly start communiucations with servers that are not using SMTP authentication.
* Pro: Archive mode rate charts don't eventually end up as very small lines over long periods of time.
* Pro: Archive mode now has an option to hide the main TSReader window. When this is activated, the vital stream statistics like CC/TEI error counts and so on are displayed at the top of the archiver status window.
* Pro: When setting the address of the SMTP server used by TSReader, you can now specify a non-standard port by adding the port number after a colon.
* Pro: Fixed an issue with the -c switch being ignored because of the -L switch.
* Std/Pro: Null PIDs can be recorded
* All: Added a new source module for Linear Systems SMPTE310M cards.
* All: Option to show the ES PID on thumbnails
* Pro: The internal email client used by the stream monitor and archiving functions now correctly communicates with both open and password protected SMTP servers.
* All: Added support for the European version of the HDHomeRun which works with DVB-T and DVB-C tuners.

Version 2.8, build 46e:

* Pro: Bug fixes for the caption logging in the Record All Programs function
* All: The File sources now show the filename of the file being processed in the main TSReader window.
* Pro: The T key in the EPG Grid now displays a dialog that allows selection of where the base time used by the EPG comes from. This can be the PC Time, DVB TDT or TOT tables, or the ATSC STT time. This option along with the Settings/Keep Past EIT data is great for looking at EPG data from recordings in grid format.
* Pro: Fixed an issue with the GPS log output of longitude and lattitude being rounded incorrectly.
* Pro: Greatly improved the archive recording viewer which is also available as a seperate program now to all users.
* Pro: The forwarder subsystem can now null stuff output streams which is useful when dealing with a VBR input stream to TSReader and you need to output to a device at a constant rate. This does not remultiplex the stream to match the exact rate, so errors may exist in the stream generated by TSReader.
* Pro: Corrected an issue with authenticating on some SMTP servers when sending email from TSReader. Additionally, the stream monitor and archiver emails can now have a subject prefix added which is useful when organizing email into folders based on subject contents.
* All: Added the ability to import the "All Transponders" CSV file that's generated by the SatcoDX Suite Updater program. This regenerates the satellite list shown by TSReader from data that's automatically updated from SatcoDX.
* All: Updated the TSReader Sample Source Module source-code and rewrote the documentation on Source Modules.
* All: Clicking on a PID in the PID chart now causes an On_PID_Click event to occur in MD plugins that support this feature.
* Pro: The Closed Caption display window now remembers its size and position.
* Pro: The Stream Monitor function now lists up to eight PIDs with continuity errors when generating a 1.4 alarm.
* Pro: There is now an option to limit the number of emails sent by the Stream Monitor in one minute.
* All: Corrected a crash that could occur on noisy QAM signals using the ATSC cable tables (CVCT etc).
* All: Added a setting to control scaling of the CC and TEI counters - with this feature on, TSReader will scale the counters down to kilo and mega counts (k or m suffix).

Version 2.8, build 46d:

* All: If the File or FileLoop source modules hit the end of file and are displaying the "Reached end of the transport stream file" dialog box and you close TSReader, it now properly closes rather than waiting for that dialog box to be closed.
* Std/Pro: Control server now adds a scrambled/clear indicator to the end of each line when the PIDS command is used. See the control server documentation for details.
* All: Fixed a bug with PMT CRC errors and/or missing AC3 descriptors when performing recordings on channels manually defined.
* All: User data from MPEG-2 video streams is now extracted both from the picture and sequence headers. This was preventing AFD decoding from showing up in some streams.
* All: Fixed a bug where TSReader used a lot more memory than it actually needed.
* Pro: PID forwarder can now drop packets, replacing them with NULL packets.
* Std/Pro: Fix for the -i switch to ensure that prior TSReader instance has actually ended before starting the new one.
* Std/Pro: Improvements to the way TSReader handles a channel that can't be recorded when running from a schedule. The "TSReader runs in quiet mode" on the EPG Settings dialog should also be checked.
* Std/Pro: TSReader now remembers graph settings (such as window position and size) on a chart by chart basis. Additionally, graphs can now be customized correctly by simply double-clicking the graph and using the popup dialog to setup the chart. This means that the menu options to set the graph style have been removed since they can be accessed more easily by double-clicking the graph.
* Pro: Since TSReader Pro can display multiple charts at the same time, there's now an option to display charts non-modally - this means they can act independently of the TSReader main window.
* Std/Pro: Fixed a bug that caused the -P switch to fail.
* All: The automatic expanding PMTs setting (and the shortcut keys to open/collapse the PMT ) now also apply to the CAT.
* All: Corrected an issue in the MD-API where only the first filter in each plugin would get called.
* All: A new callback into MD-APIs can now occur - void On_PID_Click(int nPID) - gets called if present when the user clicks on an item in the tree-view.
* All: Another new MD-API callback - void On_Source_Restart() - gets called when the source is restarted (or TSReader is about to exit). This gives MD-API plugins a chance to reset themselves in case a new stream is tuned.
* Std/Pro: TSReader now supports searching of the decoded text from the tree-view. Press Ctrl+F to search and then F3 for the next occurrence.
* Std/Pro: The satellite tuner dialogs are now sizable and remember their new size. This allows the height of the satellite and transponder lists to be expanded.
* Pro: Fixed a crash that occurred when parsing audio title data and the data wasn't in audio title format.
* Std/Pro: The Alt with + and Alt with - keystrokes (and their menu items on the File menu) now restart TSReader and automatically tune to the next or prior mux in the list on 8VSB, QAM and ISDB-T interfaces.
* Std/Pro: All the ATSC tables supported by TSReader are now exported to XML. The tables missing were CVCT, RRT and MGT.
* All: Fixed a problem with DVB EIT events with multiple extended event descriptions.
* Pro: Added the ability to run a set of control server functions from a text file. This "script" can be run from the the command-line with -F filename.
* All: The source module selection dialog now has the ability to ask the selected source module
* All: Custom DiSEqC commands can now be sent via the DiSEqC positioner dialog.
* All: Cleaned up the source selection dialogs and added labels for parameters like frequency.
* Std/Pro: When the satellite positioner command-line switches are used, the DiSEqC switch input command (if specificied) is now sent before the positioner command. This allows DiSEqC positioners to be connected behind switches.
* All: Fixed an issue where if the input transport stream has a lot of errors and TSReader chooses a new PCR PID for the muxrate calculation and that PID is itself junk, TSReader might get stuck showing "n/a" for the muxrate. Now, if no valid PCR packets are seen on the chosen PCR PID for 250 ms, TSReader resets the PCR PID and the muxrate no longer gets stuck at "n/a".
* Std/Pro: TSReader Standard now uses the same multi-threaded stream parser as TSReader Pro, but limited to two simultaneous threads. TSReader Pro can use up to 64 seperate ES parsing threads which works really well with Quad Core processors (especially two of them!).
* Pro: The Closed Caption decoder window is now properly sizable.
* Std/Pro: The ATSCBDASource now supports multiple hardware devices concurrently. If more than one ATSC BDA device is attached, TSReader users should add the -S switch to select which device to use. TSReader Pro users simply create a profile for each device and assign each an ascending device number.
* Pro: The Stream Monitor window is now non-modal by default. This means that the window can be placed behind TSReader. The Stream Monitor Settings now has an option to make the window modal.
* Std/Pro: Fixed an issue with decoding the Bell ExpressVu Extended EPG (using the -Eb switch).
* Pro: Fixed a problem decoding captions from encoders that use the full range of temporal reference values in the MPEG-2 picture start code.
* MD-API PID filtering back to the original way - should allow plugins to work.
* MD-API now outputs the debug names of all the exports from a DLL
* Non-modal charts menu wasn't checked on startup.
* The profile name is shown on Pro charts now.

Version 2.8, build 46c:

* Pro: Audio title thumbnail function now correctly follows the "Ignore table CRC errors" option.
* Pro: If audio title data contains a CRC error, a thumbnail with this fact is now created.
* All: If the fast PMT parser is disabled (which is always the case in TSReader Lite), adaptation fields in the PSI data now are handled correctly.
* Std/Pro: Corrected an issue with program selection with the -a and -A switches.
* Std/Pro: Option to add the -q option to the command-lines created by the EPG Grid's recording scheduler. This runs TSReader in quiet mode and won't get stuck when the source module is unable to lock the signal.
* Pro: Added an option to allow XDS data to be decoded by the caption decoder on the odd field. Technically all XDS should be on the even field, but some systems like SCTE-20 sometimes use the odd field.
* All: Added support (Settings menu) for the QPSK-R mode used on some Spanish satellite signals.
* Pro: Added support for output on Dektec DTA-145.
* All: Fixed an issue with charting the signal on some Hauppauge interfaces.
* All: The CC indicator on the video thumbnails is now correctly shown on non-ATSC closed-caption systems.
* Std/Pro: Fixed a problem with the EPG grid's cell elements size was being reset each time TSReader ran.
* All: Updated all of the Hauppauge source modules and made the number of source modules much less complicated. If you use a Hauppauge interface, there's a good possibility that TSReader will remove the obsolete source module and therefore you'll have to select a new module. If in doubt which module to select, there's a file called HCW_SupportedProducts.txt in the TSReader/Sources folder that has a full list of hardware supported.

Version 2.8, build 46b:

Std/Pro: XML export now correctly closes the MUXRATE-BPS item.
All: Updated the DVB-S2 FEC selection to reflect the latest DVB-S2 spec.
All: Fixed issue with multiple Dektec USB interfaces.
All: Fixed issue with CI-CAMs only receiving channel change messages if there were plugins loaded.
Std/Pro: Added a new switch (-Eb) to support the EEPG on Bell ExpressVu in Canada.
Std/Pro: Fixed an issue where certain command-line parameters could lead to source modules being passed an invalid command-line.
Pro: Added some new functions to the Closed-Caption decoder. The M key allows masking of multiple CC streams and the L key toggles logging of raw user data and extracted EIA-608 and EIA-708 to a text file.
All: The USALS positioner code has been re-written and now includes buttons for east/west, north/south which makes it much easier to setup and use. This means the -PU command-line switch has changed since it now requires an east/west indicator. See the command-line documentation for the latest.
Std/Pro: Fixed an issue with the -u switch not selecting teletext subtitle streams.
All: Counts for the DVB EIT, NIT and SDT tables are now displayed in the tree-view.
Std/Pro: Corrected a problem with the -u option not recording all teletext/subtitle streams.
Std: The faster and more robust H.264 decoder from TSReader Professional is now included with TSReader Standard.
Std/Pro: After recording with a time limit, the next record session resets the recording time back to its original value rather than zero.
Std/Pro: If an automatic (command-line) recording is started and the program to be recorded doesn't exist in the mux, TSReader now displays a warning dialog.
Std/Pro: In the EPG grid when scheduling tasks its now possible to change the recorded program number via a translation file - look at the FAQ for details (look for EPGMAP.INI).

Version 2.8, build 46a:

* All: Fixed a bug with the TechnoTrend DVB-S2 USB2 interface that created a c:tsreader.ts recording every time the source module is used.
* All: Fixed an issue with all most Hauppauge source modules not working with 2.8.46 and added support for more Hauppauge interfaces and generic QAM-B cards.
* All: Removed the FutureTel source module. It was causing too many missing DLL errors and the DLLs required to fix this are quite large. The support package to make this PCI encoder work with TSReader are available as a free download at
* Lite: The "Check for New Version" function is now available in TSReader Lite.
* All: Some corrections to the ATSC TSID tables.
* All: Fixes for the HDHomeRun operating on HRC cable networks.
* All: The IGMPv3 joins in the UDP Multicast source can now be specified from the command-line. For example " 1234@" would send the IGMPv3 join message to for stream port 1234.

Version 2.8, build 46:

* Pro: Fixed an issue with Scientific Atlanta formatted captions not being decoded correctly.
* All: Multiple device support for Alitronika products.
* Pro: TSReader can now output the transport stream to devices like Alitrokina, Dektec and Linear System ASI devices. Devices that support output are listed on the Forward menu. The forwarder supports 188, 188+16 byte nulls and 204 byte packets with DVB standard Reed-Solomon codes. The Reed-Solomon codes are generated in software so a powerful processor will be required to use this option.
* Pro: Fixed an issue with the automatic deletion of files when recording with the "Remove old files when recording space less than n GB".
* All: Fixed a problem with retuning on TechnoTrend DVB-S2 cards.
* All: Fixed a lockup that occured when a program is selected, plugins are loaded and no CAT is present in the mux yet there are CA descriptors in the PMT.
* Std/Pro: New control server command to reset counters.
* Std/Pro: When recording a program TSReader can now optionally include CA ECM/EMM streams, the CAT and appropriate PMT or PMT-ES level CA descriptors. The option to control this is on the record file dialog.
* All: File source now has the ability to shutdown TSReader when the end-of-file is reached.
* All: Fixes for the TechnoTrend Budget series PCI cards to better support CI-CAMs.
* All: Fixed an occasional crash that occurred on some IP/DVB streams.

Version 2.7, build 45f:

* Pro: The Table Monitor function can now dump sections as Hex/ASCII.
* Standard/Pro:New command-line option: -B prevents TSReader from blacklisting elementary streams
* All: Fixed a bug in the IP parser where more than one MPE packet in a section would be ignored.
* Pro: Fixed a bug in the UDP forwarder which caused the output PAT's continuity counter to not update.
* All: Updates to some of the Hauppauge source modules to support Windows Vista.
* Pro: The UDP forwarder can now set the TTL on multicast IP packets.
* All: On ATSC networks, Cable VCTs with major/minor channel numbers of zero are now displayed.
* All: Hauppauge HVR-950 source module now works correctly on Windows Vista.
* All: Null length PMT ES lists no longer cause a false ES entry to be displayed in TSReader.
* Standard/Pro: Improved the -H command-line switch to include the ability to control which tables are decoded in the resulting HTML. See the command-line.html file in the documentation folder for details.
* All: Added support for the Dektec 2145 PCI Express adapter.
* Pro: Fixed an issue with the Record All Programs function where SCTE formatted closed-captions weren't being written as text files correctly.
* Pro: Added display of current clients to the EIT Server setup dialog.

Version 2.7, build 45e:

* All: Previouly if you changed channel with playback active, TSReader would only select the first audio stream of the newly selected program. Now it selects all audio streams.
* All: Fixed an issue where EIT data wouldn't be processed in ATSC muxes when the GPS Offset specified in the STT was zero. Technically, transmitting this way is illegal since the GPS Offset is currently 14 seconds (Dec 2006).
* All: Added wider support for Dektec products including the new DTA-160 card.
* Pro: When forwarding programs over UDP as individual transport streams, a new option to include the CAT, EMM and ECM tables is included. This allows downstream descrambling for authorized programs.

Version 2.7, build 45d:

* Pro: It's now possible to select the PID used for muxrate calculation by right clicking a PCR PID in the tree-view.
* Std/Pro: Manual EPG recordings now default the MPEG program number if there is only one channel in the mux.
* Std/Pro: Fixed a problem with manual EPG recordings running at the wrong time (difference between local and UTC time).
* Std/Pro: Added a button to the manual EPG recording setup dialog to fill in the tuning parameters for the current mux.
* All: Updated the RF Central RFX-MDR source module to allow operation with a wider range of encoders.
* All: Added decoding of the Channel Extended Text Table in ATSC networks. The resulting text is shown by selecting the TVCT in the tree-view.
* All: Added support for the HDHomeRun Ethernet 8VSB/QAM tuner.
* All: Minor fixes to the EPG Grid when a very large monitor is used.

Version 2.7, build 45c:

* All: Added support for the newer DVBWorld DVB-S/DSS tuner which uses a 9 volt power supply rather than a 5 volt supply on the older model.
* All: Updated all the Hauppauge source modules and added support for the HVR-950 ATSC stick tuner.
* Pro: Added the -n switch to automatically start TSReader's Record All Programs function when TSReader is launched.
* All: For plugin users, if TSReader sees a PMT version change and that PMT is for the currently selected program, TSReader will send any plugins a channel change message to inform them the PMT changed.
* All: Update all the Alitronika devices to use their latest API.
* Std/Pro: Changed the -D switch to allow selection of all network types supported: -Da for ATSC, -Dd for DVB, -Di for ISDB and -Dm for DCII.
* Pro: The rate graphs shown when using the Record All Program function no longer average out the data-rate over time and therefore show a much better represnetation of the data rate on each channel being archived.
* Pro: Fixed a bug in the Record All Program function where one second programs would occasionally be recorded on ATSC networks.
* All: Fixed a bug where the USER icon would show up on all MPEG-2 thumbnails even if the video stream wasn't carrying user data.
* Std/Pro: Changes for the EPG scheduler. Once a recording is scheduled, double-clicking the event again now shows a pop-up menu that allow the recording to be cancelled and now allows pre/post-roll times to be set.
* Std/Pro: Manual scheduled recordings can now be set - press the M key when the EPG grid is shown. Please feel free to suggest improvements in the manual recording process!
* Pro: The Stream Monitor, UDP Forwarder and Record All Programs functions can now be used if there are no programs defined in the PAT, but there are manual channels defined.

Version 2.7, build 45b:

* All: Fixed a crash with DCII muxes with very long service names.
* All: Added support for the Nextorm DVB-S2101 USB interface. This is the "new" DVBWorld DVB-S/DSS tuner - looks identical to the DVBWorld tuner but needs a different source module because of differences in the hardware. If you can't get the DVBWorld source module to lock, try using this one instead.
* Std/Pro: Added support for USALS positioners.
* Std/Pro: Added the -PU command line option to allow the USALS position to be set from the command-line.
* Pro: Added thumbnail decoding for VC-1 video streams.
* All: Added a source module to read from HTTP servers. Currently there's no rate control so it should only be used with "live" HTTP servers like VLC's.
* All: The UDP Multicast sources now support IGMP v3 add/drop membership messages on XP and above. To use IGMPv3, specify the multicast source in dotted notation, @-sign, and then the multicast address. For example
* Pro: Fixed a bug in the thumbnail generator where ES data from the incorrect channel would sometimes get included when running parallel thumbnail decoders.
* Std/Pro: Fixed a bug in retuning from the EPG Grid on some devices.
* Std/Pro: TSReader can now export satellite INI files from the NIT by right clicking on the root NIT entry in the tree-view.
* All: Added support for DVB-S2 TechnoTrend Budget cards and USB2 interfaces. You must use the TechnoTrend standard drivers and not their BDA drivers.
* Std/Pro: Added a menu item to refresh the thumbnails immediately. Very useful if you have the thumbnail rate set to zero (so you just get thumbnails when TSReader starts) and you want to update them without restarting the source. This function can also be accessed by the F5 key.
* All: Improvements to the DVB-T BDA source module.
* All: Added three new bandplans for DVB-T scanning. These run from 118-858 MHz stepping at 1 MHz either as 7, 8 or 7/8 MHz bandwidth. Scanning this way will take a long time but will find carriers not adering to any particular real bandplan.

Version 2.7, build 45a:

* All: Fixed a crash with very long formatting strings for split filenames.
* All: Fixed the MD API to correctly set the teletext PID.
* All: New source module - FileContinuous. This is designed to work with transport stream files that are in the process of being recorded. When using this source, the rate controlled option must be turned off. Unlike the normal file sources, when this one hits end of file, it keeps trying to read the file (that's being made larger all the time) until it gets end of file for five seconds.
* Pro: Stream Monitor now uses local time throughout. Previously there was a mixture of local time and UTC.
* Pro: -N switch to automatically start the stream monitor.

Version 2.7, build 45:

* Pro: Fixed a problem with decimal PIDs not being displayed correctly.
* All: Corrected a problem with the PID chart where stream rates shown a Kbps or Mbps were slightly incorrect.
* Std/Pro: Changed manual channel definition dialog to allow decimal PIDs.
* Pro: Fixed an occasional crash when the caption decoder first started.
* All: Added an option to warn when recorded files are about to be overwritten.
* Std/Pro: Added a new control server command to send DiSEqC sequences.
* All: Corrected DVB-S2 modulation decoding where it could corrupt the polarity display on certain streams.
* All: Updated descriptor decoding to match ETSI EN 300 468 V1.7.1 (the latest DVB-SI spec).
* Std/Pro: Fixed an issue with XML export dropping accented characters.
* Std/Pro: XML export now includes the results of the ES stream parsers in TSReader - for example the video chroma format, audio mode etc.
* All: Added an option to filter EIT descriptions based on language.
* Pro: Closed Caption decoder bug fixes.
* All: The thumbnail CC, DTVCC and User icons now show up correctly on H.264 streams.
* Pro: Closed Caption decoder now supports H.264 video.
* All: Video thumbnails now include an icon in the top right that shows the video type - MPEG-2, MPEG-4 or H.264.
* Std/Pro: Added an option to allow scheduled recordings to be recorded in Program Stream mode.
* All: Another source module for Linear Systems cards is now included. This version synchronizes with the MPEG-2 TS in software for some old Linear cards that don't handle TS sync correctly in hardware.
* All: Added decoding for the DVB Time Slice/FEC descriptor.
* All: A number of TSReader source module use the MPEG-2 transport stream synchronization function provided by TSReader. This routine can now sync with any length MPEG-2 packet - previously, it was limited to 188 and 204 byte packets.
* All: Fixed a crash that sometimes occured when running up and down the EIT tree on some DVB-T networks.
* All: Updated to Alitronika's latest SDK. All users running Alitronika hardware must update to the latest drivers from their website.
* All: Corrected a problem with some extended event descriptions on some DVB networks.
* All: Added support for the RF Central RFX-MDR-PC USB 2.0 2 GHz DVB-T receiver.
* Pro: Added a Record Table function to record combinations of PIDs/tables. Files can be saved as binary or hex/ASCII.
* All: Added detection of ISDB streams. Once TSReader sees an ISDB stream (a BIT on PID 0x0023 is required), it treats the MPEG-4 audio type in these streams correctly but currently does not parse any additional ISDB descriptors.
* All: For Hauppauge products: Added a WinTV-HVR-930 source moduler (rather than sharing the HVR900 source), added WinTV-HVR1110 (DVB-T / Hybrid) support and fixed bugs related to the HVR9x0 series of tuners with intermittent stream corruption.
* All: Cleaned up a few icons
* Pro: UDP forwarder parameters have changed - previously the destination IP address and port were seperate, now the addr:port format is used ( for example). Related to this, multiple addresses:ports can now be specified when seperated by commas - up to eight outbound streams per program are currently supported.
* Std/Pro: The Program Usage Stacked Bar chart now fixes the Y-axis to the maximum rate for any program. This makes viewing the chart much easier on the eyes!
* All: Improvements to the tuning on the DVBWorld USB tuner.
* All: Improvements to the Firewire source module - the Firewire_DVHS module hasn't changed but I suspect it'll be obsolete now. Multiple devices are now supported and a greater range of Firewire transport stream providers should now work. Thanks to Hamasaki for these fixes.
* All: Fixed a problem with erroneous characters in the EPG data from the EIT stream at 28.2 East.
* All: Improved the way thumbnails are painted on the TSReader window.
* Std/Pro: Option to display thumbnails top-down (the default) and new left to right mode.
* All: Fixed a memory leak each time a thumbnail was generated.
* All: Playback can now occur in VLC if one or more of the elementary streams are scrambled.
* Pro: -f switch added to automatically start UDP forwarding.
* Std/Pro: -Ed switch to handle Dish Network EEPG - this previously required messing around with .reg files.

Version 2.7, build 44:

* Corrected another ATSC string related crash
* Fixed the UDP sources to allow a bigger list of IP addresses and to not crash when the limit (currently 1000 items) is reached.
* Right clicking a DVB-C NIT entry and selecting "Retune to this mux..." now sends the correctly frequency.
* Right clicking the TDT/TOT (DVB) or STT (ATSC) now allows the PC time to be set to the stream time.
* Fixed an issue with the record mux limit not being turned off correctly.
* Improvements to the CI-CAM interface with a new menu option to specify which CA system gets sent to the CAM.
* Fixed a problem with the EXPORT HTML command in the control server not exporting thumbnails.
* Added an option to the control server STALL command to wait until both SI decoding and thumbnail decoding is completed.
* Right clicking entries in the SDT now allows retuning to the mux carrying the SDT entry. This requires DVB networks that transmit a network wide SDT.
* Lots more options for the EPG Grid - Ctrl+G brings up a dialog allowing entry of a channel number to start the display at. Double-clicking a channel name on DVB networks will attempt to retune to the mux and launch VLC to play the channel. And Ctrl+F (and F3) allows searching.
* Fixed the -c command-line option.
* Increased the size of VLC command-strings. Some people are using 350+ character strings to tell VLC to do some pretty neat things!
* Export to HTML now includes ability to export MPEG-2 statistics and source information.
* Updated the CHART command to allow all currently supported chart types.
* The EXPORT HTML command now has a new variant, EXPORT HTML-nnn which allows control over the tables exported to HTML. See the control server documentation for details.
* For satellite users, TSReader now can now automatically select a DiSEqC/toneburst port based on the orbital location or network ID carried in the DVB-NIT. This information is used once TSReader is running when retuning by right clicking the NIT, SDT or double-clicking the channel name in the EPG grid.
* A new option to show the PCR PID icon in the SI tree for non-video streams. By default the PCR PID is only shown on video streams since it's only used there.
* TSReader's documentation files (the website) is now included in the build.
* Fixed an issue with exporting false TDT/TOT tables from prior muxes to XML.
* New -b switch - limits thumbnail generation to the program number specified. Useful for running TSReader over slow links.
* When doing an HTML export all thumbnails are now exported - previously only the first thumbnail made it into the HTML.
* Added a source module for the Dibcom DVB-T BDA interfaces (thanks to Terry Wu).
* New -Mm command-line option to launch TSReader minimized to the tray notification area.
* The TSReader icon shown in the tray notification area blinks if TSReader is currently performing a recording.
* Fixed various EPG Grid display issues related to long or single events.
* For DVB and ATSC users, TSReader can now schedule recordings from the EPG Grid. Double-click an event to turn on recording - double-click again to turn off. TSReader uses the Windows Scheduler service to launch the recording sessions, so keep this in mind - TSReader will abruptly stop when a recording starts up. You must be on a DVB network with correct EIT, SDT and NIT tables for this to work correctly or be tuned to an off-air ATSC mux -- cable ATSC tables aren't supported because they're always wrong. If using satellite you must setup the input DiSEqC configuration to automatically select a port based on the network or orbital location if you're recording from a service across multiple networks.
* Added support for the B2C2-based 8VSB/QAM card from Broadband Technologies Inc and fixed an issue with all B2C2 cards where restarting TSReader would cause a small chunk of the prior transport stream to enter TSReader erroneously with the result that usually the multiplex bitrate calculated would be incorrect.
* TSReader now shows logical channel numbers for all channels defined with an LCN descriptor in the DVB-NIT.
* Changes to the CSV import: Now frequencies with different symbol rates (typically used DSNG links) are imported correctly and the first name found in the CSV is used as the mux name.
* Added the ability to add, edit and delete satellite listings (DVB/DSS sources) and multiplex listings (ATSC/QAM sources).
* Fixes to get the Stradis interface working correctly without blanking out the screen from time-to-time.
* New control server commands: WINDOW to manipulate the TSReader main window and INFO to send back info about the source or mux.
* The control server command PROGRAM now sends an extra line at the end of the program list to show the list is complete.
* Changed the control server TUNE command to not display the standard "Failed to lock signal" message should the retune not result in a lock. After the TUNE command, wait about three or four seconds to give the hardware a chance to lock the carrier and then use the new INFO SOURCE command to see if the tuner has a lock.
* The file source now supports rate-controlled operation in DSS mode and the DSS mux-rate is now calculated.
* New control server command - PIDS to list the active PIDs in the mux.
* Fixed a problem with EIT/ETTs greater than 11 not being processed correctly and expanded EIT/ETT to handle EIT0-EIT63/ETT0-ETT63 (ATSC networks).
* Updated the THUMBNAIL control server command with five new options: OFF, LOW, NORMAL and HIGH to control operation of the thumbnail thread and REFRESH to set the thumbnail refresh rate.
* Fixed a problem with the control server's TUNE command when used with the File source.
* Added source modules for Harmonic's HRTP protocol.
* Enhanced the GRAPH command in the control server. GRAPH AVERAGE and GRAPH REALTIME select between the two graphing modes and GRAPH REFRESH nnn specifies the update time for graphs in milliseconds.
* Added a graph to show signal strength from the input source if supported.
* Added MANUALCHANNEL command to the control server.
* Source added for the Twinhan DTT-CI card.
* Corrected an issue with very large PMTs (typically close to the 1KB limit).
* Added support for Hauppauge Computer Works Nova-S2 Plus, Nova-SE2 satellite cards and the WinTV-HVR900 DVB-T USB 2.0 receiver.
* Corrected a crash related to the EIT stream on the Orbit satellite network.
* Fixed a problem XML exporting CAT descriptors other than the CA descriptor.
* Added -y switch to delay autoexport by the specified number of seconds. Useful for muxes with slowly sent tables.
* TSReader now continuously parses PMTs. If a PMT version number is changed, the tree-view information is updated. Recordings/Streaming in process for a PMT that changes does not currently update the output stream.
* Change to the PMT parser to better handle stuffing bytes that occur in some transport streams.
* Fixed an issue with Dektec input cards when fed with very high-rate streams (> 100 Mbps).
* Fixed a problem with the mux-bitrate switching to "n/a" after a PCR packet with the TEI bit is set (i.e. a corrupted packet).
* Added support for Alitronica DVB-S, DVB-C and DVB-T interfaces.
* Corrected shutdown problems with the -x and -V switches.
* New SETTING command for the control server. Set the control server documentaiton for information.
* Prevented the H.264 decoder from crashing TSReader. If the decoder now terminates incorrectly, TSReader will continue to run and display an thumbnail with fixed text indicating there's a problem with the stream and the reference decoder TSReader is using. This doesn't fix H.264 thumbnail issues completely (since there are some streams TSReader's decoder can't handle) - we're going to be looking at alternate H.264 decoders in the future, but this may take some time as there's a lot of compatibility issues between encoders and decoders at present.
* Added serial receiver control support for the Newtec 2063 satellite demodulator.
* Serial receiver control modes are no-longer embedded in TSReader - they're now provided as seperate DLLs along with source-code in the TSReaderSourcesReceiverControl folder. If you develop your own serial control modules and would like to have them included with the TSReader distribution, please let me know.
* The DTVWorks DVB-SPI interface now supports up to eight interfaces on a single system - the USBProgrammer utility in the DTVWorks driver folder is used to set the device-id (0 - 7).
* Device Number (i.e. the board number for boards with multiple-card support) can now be selected from the source selection dialog (hold Ctrl down when starting TSReader).
* Changed the way source modules that can use the serial receiver control work when displaying the tune dialog. Now if the tune dialog is cancelled, TSReader will continue to run and obtain data from the source mode rather than aborting. This is useful when you're already tuned to the target mux and don't want to go through the delay of retuning which seems to take forever on most commercial receivers.
* Added support for the MPlay application on the Roku HD-1000. Roku HD-1000 users will need to change the Roku settings to call out the full application name: /mnt/flash1/MPlay/ for MPlay and /mnt/flash1/CinemaSix/CinemaSix.cmd for CinemaSix (assuming the apps are loaded on a Compact Flash memory card).
* Fixed an issue with pseudo CRC errors in the NIT when the NIT is carrying Stuffing Tables (ST).
* Added decoding for MPEG-4 video streams.
* When recording in automatic mode and TSReader is minimized, you'll see a much more informative tooltip if you hover the mouse over the TSReader icon.
* Fixed a crash related to corrupted ATSC Huffman encoded strings.
* Fixed an issue with zero length CATs erroneously showing a descriptor type 0xd5.
* Fixed the video composition chart to show all pictures in the GOP - previously the last picture wasn't shown.
* The Stradis decoder interface can now support multiple audio streams (provided the hardware has multiple audio stream decoding like the SDM-290).
* The Stradis interface now has a setting that allows selection between the 1.2 and 1.6 versions of their API. The 1.2 works with older cards like the SDM-275 and the 1.6 with their latest products.
* Fixed an issue with ATSC networks where the TCVT was carried in the same packet at the MGT.
* Updated to TechnoTrend's latest SDK which should support new cards like the TT-Budget S-1401.
* Added a new feature to ignore networks on DVB networks. If the NIT contains more than one network (for instance multiple orbital locations on DVB-S networks), the SDT and EIT for that network can be masked - useful if you can't receive the network and don't want memory used for SDT/EIT entries on that network. Right click a NIT entry to toggle.
* Added support for the Teleview in TSP102 card in ASI or SMTPE 310M modes. Source code is included in the SampleSource folder. Thanks to Robert Blazewicz for writing this.
* More sources for Hauppauge products (TODO - document/list)
* Hauppauge sources now correctly parse the command line, provide their parameters and support multiple cards simultaenouusly active.
* Added support for the AutumnWave OnAir USB2 8VSB/QAM receiver. This needs to be installed like the Sasem USB2 receiver.
* Added support for Sencore's DTU-234 8VSB/QAM receiver/analyzer.
* New keys added to EPG grid: Ctrl+D shows a calendar allowing automatic EPG scrolling to that date, S shows scheduled recordings and H allows hiding of channels - in this mode, click the channel name (the bit in yellow) to toggle between shown and hidden. Full a full list of supported keystrokes, press F1 when the EPG grid is shown.
* Charts showing historical data (signal, mux rate, video rate) now show the time on the X asis.
* Fixed a bug that caused a few erroneous CRC errors in the PMT when TSReader first parses the stream.
* Added QAM support for the Autumn Wave USB2 receiver.
* Fixed an issue where old thumbnails might sometimes show up after restarting TSReader.
* Fixed a problem where the EIT provided program name wasn't shown on top of MPEG-4 and H.264 thumbnails.
* Added support for the Alitronika AT4 "AsiPod". This is a ultra-compact ASI to USB2 adapter.
* Corrected high CPU load issue when Alitronika USB devices are unplugged with TSReader active.
* Fixed a problem with the file-loop source not looping on files containing Reed-Solomon FEC.
* Multi-card support for Technisat/BBTI cards based on the B2C2 chip. You must upgrade to version 4.4 or later drivers from or Up to 16 cards are supported in a single system.
* Added decoding for DVB-S2 FEC rates/modulation modes in the NIT.
* Fixed a bug where under very rare circumstances TSReader would incorrectly see a continuity error on a PID right after startup.
* Corrected a problem where clicking on the ATSC STT icon in the tree-view wouldn't show the DS (Daylight Savings) information correctly.

Version 2.6, build 43:

* Corrected an erroneous dialog box advising the file ATDV_API.dll couldn't be found.
* Corrected a problem with the B2C2 DVB-C source not tuning correctly.
* Fixed a crash with some ATSC zero length strings.
* Time tables (TDT and TOT in DVB and STT in ATSC) are now exported to XML.
* Corrected a problem with the video thumbnail decoder where streams containing neither PTS or DTS timestamps would cause noise and the occasional crash. This would only occur on streams transcoded in software from program to transport stream since almost all transport stream video PES packets have at least PTS.
* Fixed a bug with the Multicast UDP source that would lock up TSReader when attempting to close after inputting an invalid multicast IP address.
* Changed the timing of the DiSEqC positioner commands sent by the -P switch so that the position command would get sent before the tune attempt.
* Slight changes to the layout and tab order of the manual channel definition dialog - makes the flow much better.
* Fixed a bug where thumbnails wouldn't show on a mux with no channels defined in the PAT but loaded as manual channels.

Version 2.6, build 42:

* Corrected a problem with the IP address display in the multicast source "tune" dialog.
* Fixed the drag/drop function in the file sources.
* Added a very preliminary H.264 thumbnail decoder.
* Added an ATSC BDA source thanks to David R. Cattley ( Two versions of the source are provided - one for BDA devices that return tuner status correctly and another that assumes the frontend locked - this later one works with more BDA cards, but obviously the scan function to find channels won't work right.
* Added an "Always on Top" option to the View menu.
* Fixed an issue with stuffing bytes in MPEG-2 video streams causing noise in the thumbnail display.
* Added an option to disable the beep generated when TSReader automatically restarts.
* Fixed an issue with the file loop source causing ES streams to be blacklisted because time goes backwards when the file loops.
* Added support for 192 and 204 byte MPEG-2 files when the file source is running in rate-controlled mode. Previously only 188 byte packet files were supported.
* Fixed a crash with very long ATSC ETT (event text).
* The thumnbnail generator now spots DCII video streams which only use B & P pictures and decodes many more pictures to build a noise free thumbnail.
* Added decoding for Active Format Descriptors (AFD) carried in the MPEG-2 video user data. When AFD is being carried, an AFD icon appears on the thumbnail and the format can be shown by selecting the video elementary stream in the tree-view.
* Added an option to the View/Chart/Settings menu - Real Time Charting. By default, TSReader reports in it's charts (including the PID chart on the main menu) the average bitrate for streams since TSReader was started. With this option enabled, TSReader bases all charts on a sample of the data rates every 250 ms. This results in much more widely swinging charts which can be useful for VBR encoder monitoring.
* Added supported for TechnoTrend's new USB 2.0 series of products and fixed a bug with the Budget DVB-S source not sending the correct DiSEqC command.
* Added support for Twinhan 1032 DVB-S card (same source as 1030/1030a) and for the new DVB-C CI card.
* Corrected a problem with PAT entries pointing to PMTs with a PID value of 0x1fff.
* The SI tree and PID chart now size correctly as the TSReader window is resized.
* Better support for Cable VCTs.
* When recording/streaming a single program, TSReader can now include auxiliary ES streams like subtitles, teletext etc.
* Sync-loss counting is now supported on certain sources.
* Added two new Reset items (on the Help menu). Reset PIDs resets all statistics used in the PID chart (average or real-time depending on the chart setting) and Reset All resets all TSReader counters.
* Added the ability to control the priority of the TSReader process.
* Multi-card support is now functional for Linear Systems cards. The -S switch is used to select the interface.
* Colors used on the main PID chart can now be changed.
* The EPG grid and EIT display now display the source of the EIT data. For DVB networks this will be current/next and schedule for the current or other transport. For ATSC, the EIT number is shown (EIT0, EIT1 etc).
* The charts and EPG grid now remember their window position and size.
* Added a new chart: Program Usage Stacked Bar. This shows the video, audio and other usage across the mux on a program by program basis.
* The satellite list is now sorted correctly so that the furthest satellite east is at the start of the list, the middle of the list is 0 degrees and the end of the list is the furthest satellite west. This way the list matches the arc.
* Major improvements to the satellite tuner dialogs. TSReader now has a list of LNB frequencies and can calculate the correct LO frequency, tone and voltage settings based on the frequency and polarity of the target signal. Single band, dual band and stacked LNBs are supported with dual band LNBs switching using either tone or voltage. Additionally, TSReader can automatically select the correct DiSEqC/Tone-burst input port based on the frequency. All satellite card users should click the new Input Setup button on the satellite tuner dialog to ensure the settings are correct. Note that the command-line interface currently doesn't take into account any of these settings - these are for user tuned frequencies only.
* The HTML exported PID chart now contains continuity and TEI error counts.
* For the full version of TSReader, a much faster PMT parser has been implemented. Previously, TSReader would process each of the PMT PIDs in turn to determine ES PIDs. Now, each PMT PID is processed simultaneously as data comes in on that PID. On a lot of networks - especially those with each PMT on a seperate PID - the older method would cause TSReader to take a long time to start up completely. For example decoding the PMTs for Hotbird's 12.558 GHz transponder takes about 30 seconds with the old parser and 5 with the new. The new parser is compatible with all non-demultiplexed interfaces - the old parser is used forced on automatically on these cards. If there are issues with the new parser you can force the old one on by creating a registry value in TSReader's settings: FastPMTParserDisabled [DWORD] = 1
* Fixed a bug where keyboard accelerators (like Alt+R) wouldn't always work.
* New FirewireDVHS source that reads from D-VHS tapes. Thanks to Matt Johnson for writing this.
* Couple new View menu options to expand and contract the ES PIDs listed in the PAT/PMT tree. Keyboard accelerators are also available: Alt+X to expand and Alt+C to contract.
* The Record PID and IP/DVB PID selection dialogs now have functions to load and save the list of PIDs to be recorded or IP/DVB parsed.
* The Record PID function can now generate PCR packets when recording to a single file. The PCR packets are fed from a PID on the input source and are placed on PID 0x1ffe. When this option is used with TSReader's file source in rate-controlled mode, TSReader can read back the packets at the rate at which they were transmitted even if the recorded PIDs don't carry PCR.
* Updated statistics area and various other UI cleanup.
* Added a source for the Digital Now Tiny USB2 DVB-T receiver from Australia.
* Added a source for the Tongshi DVB-S card.
* Rewrote the Nebula DVB-T source to support their latest design using the MT352 tuner.
* Added a Video Composition chart to show the bitrate and picture coding type for MPEG-2 streams (not available in Lite).
* Added an option for MDPlugins - if PID 0x9FFF is selected, TSReader will send the entire transport stream to the MDPlugin. This is not supported in the Lite version.
* Two file/file loop source changes: .tp files generated by MyHD software are now supported including sequencing through multiple files and the sources do a much better job keeping track of the last selected file type.
* Preliminary CI-CAM support for Twinhan CI-CAM compatible cards. Note that this has only been tested with the MediaGuard (SECA) system. Feedback on other CI systems would be appreciated.
* Added a source for the DVBWorld DVB-S USB 2.0 receiver. This operates with both DVB-S and DSS streams.
* Improvements to the DVB BAT decoder to allow multiple BAT versions to be shown simultaneously.
* New Load PIDs option on the File menu. This allows a list of PIDs (hex ASCII one per line) to be loaded into TSReader to make PIDs appear in the chart. This is useful for recordinging/monitoring PIDs that only come by very infrequently. A corresponding -T switch has also been added to load these files from the command-line.
* When using Record Program, descriptors from the PMT (program info) are now copied to the generated PMT.
* Improvements to the H.264 decoder. Now decodes streams from Harmonic encoders but still crashes with Scientific Atlanta encoders.
* Added a source for Alitronica DVB-ASI and DVB-SPI to USB 2.0 input devices.
* New control server command: THUMBNAIL. Writes a JPEG file containing the decoded thumbnail for the selected program.

Version 2.6, build 41:

* The DVB Boquet Allocation Table (BAT) is now decoded.
* XML export has a number of new fields including raw versions of many of the values exported.
* The UDP Multicast source can now specify the interface address to listen on. Useful for machines with multiple network interfaces.
* The DTVWorks 8VSB/QAM sources now report the SNR.
* A STALL command has been added to the control server interface. This tells TSReader to wait until all system tables have been decoded.
* The ATSC System Time Table (STT) now shows the GPS/UTC offset and daylight-savings settings.
* Corrected a problem with extended event descriptions in the EIT parser on DVB networks.
* TSReader now counts packets with the Transport Error Indicator set. Not all tuners set this bit in the transport packet but for those that do, TEIs are now shown on the continuity counter field and next to each PID in the PID chart.
* Multiple audio streams can now be recorded and streamed (not just one as before).
* Corrected a problem with the -a and -A switches when the service number specified wasn't correct or zero.
* Corrected a problem with the -A and -R switches to force spliting of files based on MB recorded per the documentation. Depending on how the last record was performed recordings would get split based on time which doesn't match the documentation.
* If one of the tables contains multiple descriptors with the same descriptor tag, these are now all processed by TSReader -- not just the first one as before.
* Fixed an issue with false continuity errors on DSS format streams.
* Added a recently used list of addresses to the UDP Multicast source dialog.
* Added support for the Pinnacle PCTV Sat CI DVB-S card.
* Added an EPG grid display function. Press F1 when viewing the grid to see the keystrokes that are supported.
* When using the -r or -R switches programs would record in the last selected format. By default TSReader with -r/-R now always records transport stream files unless you also use the -p switch.
* More EITx/ETTx tables are now processed on ATSC muxes allowing up to 72 hours of EPG data.
* Fixed a problem with decoding the ATSC TCVT where an extended channel name descriptor would cause no other descriptors to be displayed.
* The Sasem QAM source now locks 64QAM signals and correctly detects a front-end lock on QAM networks.
* Fixed a problem with the Record Program function where the SDT generated for the file's description had it's transport stream ID set incorrectly.
* Add output files from TSReader are now opened to allow read-mode sharing. So you can now start recording a file and point VLC at the file while still recording.
* Corrected a problem where sometimes the calculated mux rate would go to an almost random number after TSReader had been running for some time.
* Added -P command-line switch to handle DiSEqC positioners.
* Fixed a bug that caused false continuity errors on some DCII networks.
* Corrected a lockup that could happen on DCII networks carrying ECM streams for non-Motorola CA systems.
* Added support for the Twinhan DTC DVB-C card and their new ATSC card.
* Fixed a bug that sometimes caused noise to appear on the thumbnail pictures.
* Thanks to Jeremy Quirke, TSReader now comes with a preliminary source for DVB-T cards using Microsoft's BDA interface. This is supplied in both binary and source formats in the TSReader/SampleSource folder in the file. Check out Jeremy's README.TXT file for more info. If anyone makes changes to the BDA source, please be good enough to pass a copy of the code back this way so I can include changes in future versions of TSReader.
* NOTE - In order to support tuning on BDA interfaces, the frequency in KHz must be specified for DVB-T and DVB-C interfaces. As a result, the command-line interface on these networks now expects the frequency in KHz. If you have scripts for TSReader, these will need to change to reflect the full frequency now required.
* Added a command-line option to record PIDs automatically.
* Added an option to the file source to disable the "Reached end of file" message.
* Added sources for Hauppauge Nova USB2-T and 90002 DVB-T sources. These were developed by Hauppauge and we look forward to any feedback regarding their use. You can either email me ( or the author (
* Corrected a problem with table CRC error reporting that could cause erroneous CRC errors on tables sent with stuffing sections.
* Added a table display function - allows you to see the tables being carried on a PID and their average, maximum and minimum cycle time in milliseconds (full version only).
* The DVB Time Offset Table (TOT) is now decoded.
* Minor changes to the Tandberg TT1260 serial control.
* Fixed the Huffman text decoder used for ATSC strings.
* Fixed a problem with the thumbnail decoder that caused it to not display a picture if the stream was encoded as MPEG-1 or had padding between the sequence and MPEG-2 extension headers.
* A new option to specify the chart refresh rate (default is 1 second).
* Fixed a bug that caused the UDP source to loose data on high-rate streams.
* Added a UDP Unicast source.
* Added an option to automatically restart when data from the source stops for a specified number of seconds. This might not work with all TSReader sources since some send junk data if the signal goes away.
* Fixed a bug that could cause the split filename dialog to crash TSReader.
* Added both Multicast and Unicast RTP/UDP sources.
* Added the ability to have the File and File Loop sources operate in rate controlled mode. You can either specify the bitrate or have it calculated automatically. Turning this option on results in data being sent to TSReader at it's original rate. Useful for streaming out of TSReader from a file for example.
* Added a source for Firewire devices that are compatible with the "meidvhs" driver (like cable and terrestrial set top boxes). The driver and setup instructions are on the AVS Forum.
* Added a source for the Terratec Cinergy T (USB 2.0 DVB-T interface).
* Preliminary code: Added audio thumbnails to show activity on audio streams. Disabled by default (Settings/Thumbnail Thread/Audio thumbnails enabled to turn on).
* TSReader finally remembers it's window position and size!
* Updated the Nebula source to support their latest line of receivers that use a Zarlink demodulator.
* Added a new switch -u. This tells TSReader to include any streams with a subtitle descriptor when doing a program recording.
* Added four buttons to the DiSEqC positioner dialog to select DiSEqC inputs - useful if the DiSEqC positioner is connected via a DiSEqC switch.

Version 2.5, build 40:

* Charting capabilities added: PID usage pie charts, Video bitrate line and area charts, Mux utilization line and area charts. If you have suggestions for other charts, please feel free to get in touch.
* Option to decode CA descriptor data in plain format.
* Fixed a problem with streaming and recording where the video or audio PIDs clashed with the hard coded PMT PID (0x0020). This now changes automatically should a clash occur.
* Moved the setup menu items for the Roku, XNS and VLC to the Playback menu since the Settings menu is getting crowded.
* Fixed a bug where using decimal PID mode would cause the Record PIDs and IP/DVB modes to not work right.
* Changed the way EIT events are stored in memory. This means significantly less memory usage when providers are sending more than current/next in the EIT.
* Added an option to the IP/DVB Save Payload function. This can now save just the Payload, the Payload and xxx/IP headers or the Payload, xxx/IP headers and the MPE header.
* Some statistics changes: The CAT section counter now increments all the time and the DVB Statistics area switches to DCII mode if a DCII mux is input - previously TSReader only handled switching between DVB and ATSC modes.
* Added support for Dish Network legacy switches for those sources that support that protocol (DTVWorks 8PSK and DVB-S interfaces currently).
* The ATSC CVCT table is now decoded.
* Changes for the Dektec USB source to support the latest driver which reduces CPU load by a few percent. You must update to the driver provided in the TSReaderDriversDektec folder.
* Added a -C switch to enable/switch serial receiver control.
* Corrected a problem where the limit recording option would only work one time and then record zero length files.
* Fixed a tuning issue with the B2C2 DVB-C card.
* Added a -p switch to force command-line recordings into Program Stream format.
* Fixed a problem with copying the PID usage list to the clipboard and then pasting to applications like Notepad.
* Moved the two Show commands from the Help menu to the View menu (Show PID usage/Show Memory usage).
* The PID list and PID tooltips now indicate IP/DVB traffic when switched to IP/DVB mode and the PID is being parsed for IP data.
* When TSReader is running it'll now prevent the system going into standby mode which you probably don't want due to the excessive packet loss!
* For satellite users, added the ability to import SatcoDX SDX files, North American DVB and DCII CSV files and also now compatible with the Satellite List Toolkit generated INI files.
* Also for satellite users, TSReader now remembers the LNB frequency and switch input on a satellite by satellite basis. I know this isn't as good as knowing what type of LNB is connected to each switch port and calculating the correct LOF, but then TSReader is an analyzer so you should really know this stuff!
* You can now right click on DVB-S and DVB-C network entries and get a "Retune to this mux" option. Previously supported in DVB-T networks only.
* Many improvements to the Sasem OnAir USB adapter source. 8VSB (off-air) and 256QAM (cable) are currently supported - no 64QAM at present. Read this before attemtping to use this source.
* TSReader now understands 192 byte MPEG-2 packets. These are a four byte time stamp followed by 188 bytes of transport data. Currently the Dektec cards are the only sources that allows time stamping mode to be enabled.
* A Redistribution Control (RC) icon is now placed onto video thumbnails if this descriptor is detected in the channel's PMT (ATSC networks).
* The multicast UDP source can now have the IP address and port number to listen to specified on the command-line.
* Added a new GRAPH command to the control server.
* Major changes to the XML export function to include a lot more data and handle more than DVB-S networks. This should be transparent to existing parsers - documentation is provided here.
* Command-line documentation is now in it's own file and has received a major update - a number of switches were missing from the docs.
* Fixed a bug that would cause automatic recordings to sometimes crash TSReader when the recording completed and TSReader was shutting down.
* Added support for Broadlogic/V@box 2030 series cards. This card has an eight PID maximum demux so performance is limited with TSReader.
* Added IP/DVB data reception in MDPlugins. See the sample in in the TSReaderMDPlugins folder.
* Added a source for the DVBWorld DVB-S2101 USB 2.0 adapter - very cool and very tiny. Supports DVB-S and DSS modes.

Version 2.4, build 39:

* In IP/DVB mode the IP icons change to show recording or streaming, the PID or MAC levels can now be right clicked allowing all IPs carried on that PID or to that MAC to be either saved or streamed.
* Fixed a problem the Twinhan DVB-T source related to scanning.
* Minor updates for the Nebula DVB-T source.
* Fixed a bug that caused DCII SIT and TDT tables to be missing when TSReader was restarted.
* Corrected a problem parsing MPEG-2 PAT/PMTs that include stuffing.
* Added support for the Dektec DTU-225 ASI adapter for USB interfaces.
* Fixed a problem with the record timer.
* Corrected a problem with bitrate calculation when the stream included duplicate PCR packets.
* TSReader's main window is now sizable by default. TSReader Lite remains unsizable.
* Added very preliminary support for the Sasem OnAir USB HDTV adapter. Make sure you read this before attempting to get this source to work.

Version 2.4, build 38:

* Added decoding of AC3 flags: Center Mix Level, Surround Mix Level, Dolby Surround Mode, LFE enabled and Dialogue Normalization.
* Fixed a small GUI problem related to switching the input thread to critical priority.
* Changed the mux rate calculation code to attempt to ignore bogus values when the front end unlocks and sends junk into TSReader.
* Added a recording time limit - if you manually start a recording you can now specify how long in seconds the recording should run.
* TSReader now (finally) understands Digicipher II channel names. In their brilliance Motorola buried it in the CA ECM PID!!
* Full version has a new option to auto restart when the PAT version number changes. This is useful for input cards like DVB-ASI and DVB-SPI interfaces and you retune the external receiver. Provided the PAT version number is different (and it almost always will be), TSReader will beep and automatically restart processing the new mux.
* TSReader now separates (and displays separately) the DVB EIT short and long event descriptions on-screen and when exported as HTML. When exporting as XML, if both fields are present they're combined as before.
* Card number (-S switch) can now be specified for Dektec sources.
* Changed the name of the SkySeeker drivers to reflect the new name (Digital TV Workshop or DTVWorks) under which they will be sold.
* Added a recording elapsed counter to the main display.

Version 2.4, build 37:

* Corrected a problem with the B2C2 sources related to using BBTI's 4.3.x.x software.
* Corrected a bug that caused the Transport Stream ID to be shown as zero if the PAT's version number was zero.
* Fixed a bug that caused the continuity counter to increment erroneously on duplicate packets.
* Added the ability for third parties to write source drivers for TSReader. Have a look in the SampleSource folder for sample source code. If you write a source for TSReader, please let us know so we can add you to a mailing list to keep developers up to date.
* Full version users can now specify the number of tuning attempts before timing out. This is documented in the registry.html file in the registered users area.
* Fixed a problem generating XML where EIT entries would get junk written.
* Changed DVB-T sources to include a band scanner and to keep a list of muxes in a file that's read/write. Previously, DVB-T sources needed a file from TechnoTrend's software which was read-only.
* Added an option to run the input thread at priority critical. This should be used with care since if the source driver goes into a tight loop, it will most likely crash the system (or appear to).
* TechnoTrend sources now have multi card support . This allows up to four TechnoTrend budget cards to be active in the system at any given time. By default, TSReader will use the first card in the system. The -S switch is used to select the other commands. This inherently means you need to start TSReader from the command-prompt or a batch file.
* Fixed a bug in the TechnoTrend satellite source that would cause it to stop receiving data if the satellite signal was lost. Now when the signal returns, the source restarts sending data to TSReader.
* Fixed a bug in the TechoTrend DVB-T source that prevented TSReader from restarting the source.
* When DVB-T network tables are shown in the NIT tree, you can now right click the NIT entry and choose a new menu item "Retune to this mux". TSReader will then restart on that mux. We're going to add the same to DVB-C and DVB-S in future builds.

Version 2.4, build 36:

* Corrected a crash with Finnish DVB-T muxes that use very long EIT descriptions.
* Added a tree-view icon for ES streaming carrying DVB subtitling descriptors.
* Fixed the IP parser to handle MPE packets containing LLC_SNAP fields.
* Corrected a bug where only the first selected UDP/IP would be retransmitted.
* Corrected a bug where sources that continue to send bogus data after the signal is lost (TechnoTrend DVB-C card as an example). This could cause TSReader's main parsing thread to lock up in effect killing TSReader and requiring it to be shutdown by the Windows task manager.

Version 2.4, build 35:

* Added a multicast UDP source. This allows TSReader to work with receivers that take in MPEG-2 transport and retransmit it to the LAN as multicast UDP packets like the Novra S75 DVB-S Receiver.
* Corrected a bug in the B2C2 DVB-T source that prevented it from tuning correctly.
* Fixed an error dialog that showed up if WinPcap wasn't installed.

Version 2.4, build 34:

* Corrected a bug that prevented the audio selection dialog from being shown when streaming to XNS and Roku HD-1000 devices when there are more than one audio stream in a channel.
* The full version of TSReader has improved IP/DVB support including the ability to save the payload data from IP/DVB streams and/or retransmit UDP multicast packets onto your LAN in effect making TSReader act like a IP/DVB router. This is documented in a private file for registered users only.
* Corrected the IP/DVB parser to work with both DVB and ATSC encapsulated IP traffic.
* Now up to 16 PIDs at a time can be recorded or parsed by the IP/DVB code.
* Fixed some bugs related to restarting TSReader while in IP/DVB mode.

Version 2.4, build 33:

* Added decoding of the operator ID in the CAT descriptor.
* Fixed a problem generating ETSI-mode AC3 descriptors.
* Improved the performance of the HTML export, added thumbnail option to HTML export and added PID use to the HTML PID graph.
* Fixed a problem decoding certain NIT descriptors.
* Better Logical Channel Number (LCN) display in TSReader. LCNs are used on some DVB networks, particually on DVB-T networks. If TSReader detects LCNs, MPEG program numbers are displayed as "xx/yy" where xx is the LCN and yy is the MPEG program number.
* Added -H command-line switch to automatically export to HTML.
* Added the %v option to insert the event name (from the EIT) when automatically generating filenames.

Version 2.4, build 32:

* Added an icon to show user data being carried in the MPEG video stream. This requires thumbnail generation turned on and an unscrambled video stream.
* Corrected a problem that showed false continuity errors on some DSS streams.
* Corrected a problem with DiSEqC commands being sent via Twinhan 1020/1020a cards when the power is first turned on.
* The DiSEqC positioner interface is now available as a menu item within TSReader - useful for peaking up a dish after getting a lock. It's on the File menu.
* The PMT's Program Info descriptors are now decoded correctly.
* Updated the PID list and PID tooltips to show ECM streams.
* Added code to passthrough the ATSC Redistribution Control descriptor (the broadcast flag) when recording. This can be disabled by users outside the FCC's jurisdiction and authorized users (like TV stations).
* Corrected a problem that caused DVB-C symbol rates to get displayed incorrectly.
* The VBI/Teletext parser now updates each time TSReader updates a thumbnail so the icons displayed with the thumbnail are now accurate all the time - not just when TSReader first generated thumbnails.
* Added thumbnail icons signaling 4:3, 14:9 and 16:9 aspect ratios when such data is sent via WSS.
* Corrected a problem with the LNB control voltage on some Twinhan 1030/1030a cards.

Version 2.4, build 31: (private beta - not released)

* Fixed a problem with parsing type 0x80 streams (sometimes video on Digicipher networks) on DVB muxes.
* Corrected a problem with selecting channels by thumbnail when the thumbnail display is scrolled.
* Added BER display to the TechnoTrend card (in addition to SNR). On their DVB-S card this always seems zero so I'd be interested in knowing if there's correct BER on DVB-T and DVB-C cards.
* Added an option to display PIDs in decimal rather than the default hex.
* Added DiSEqC 1.2 positioner control to TechnoTrend, Twinhan and SkySeeker satellite sources.

Version 2.4, build 30:

* Fixed a problem with the -r and -a switches failing when split recording was enabled.
* Added -l (lower case L) switch to force TSReader into the low-res mode it uses when encountering 800x600 or lower resolution displays.
* Fixed a problem displaying channel names with & characters in the thumbnail display.
* Fixed a problem that would sometimes crash TSReader when the file source was restarted.
* Added support for transport streams with DTS audio.
* Added better decoding of many DVB descriptors used in European networks.
* PMT stream type 0x06 is now displayed as AC3, PCM, DTS audio or VBI/Teletext when carrying these services.
* Changed the layout of the record dialog to make it easier to read.
* Added an option to select between "Defacto" and "ISO" recording for AC3, PCM and DTS audio stream. This is explained in the FAQ.
* Fixed a problem that could cause TSReader to lock up when quitting and it was parsing a stream.
* Added decoding for VBI/Teletext streams (PMT type 0x06 with a VBI/Teletext descriptor). TSReader looks for Teletext, Subtitle, VPS, WSS, CC and monochrome 422 data being sent in this stream and displays appropriate icons at the bottom of decoded thumbnails. This parsing is done by the thumbnail thread and requires the PID carrying the VBI/Teletext data to be unscrambled.
* On ATSC transmissions, Closed Captions (CC) and DTVCC (Digital Television Closed Captions) carried as user data in the video stream are now noted and the associated thumbnail gets a CC or DTVCC icon if this data is present.
* Selecting a new source in TSReader no longer requires a restart - the source is loaded and the tune dialog appears. This doesn't apply to the Lite version.
* Add a "browse for folder" dialog to the Record PIDs dialog.
* Added -1 (figure one) switch to force TSReader to run on a single processor in multiprocessor environments.
* Changed the B2C2 source (used on SkyStar2 and BBTI cards) to support the latest BBTI driver which allows the entire transport stream to be sent to TSReader. At press time this driver is in beta but should be available on the Broadband Technologies website shortly. This vastly improves TSReader's performance on these cards and therefore the upgrade from BBTI is strongly recommended.

Version 2.4, build 29: (private beta - not released)

* Fixed a problem with -V switch.
* Fixed a bug with the MultiDec plugin interface that caused DSS packets to not stream correctly.
* Added support for both the old "MpegPSPlay" and the newer "CinemaSix" playback applications for the Roku HD-1000. Additionally, the Roku trace window's contents can now be copied to the clipboard.
* Updated a number of satellite sources to correctly report their tuner and signal status. The remainder will get done in the next release.

Version 2.4, build 28:

* Fixed a problem with thumbnail generation in folders where a period is part of the folder name (like C:Program FilesCOOL.STFTSReader !!)
* Added a -V switch to allow a time limited run of VLC streaming. See the command-line documentation below.

Version 2.4, build 27: (private beta - not released)

* Added support for SkySeeker DVB-S, DSS and cable QAM sources
* Fixed a bug that caused TSReader to lock up with screen resolutions lower than 1024x768. In low resolution mode, TSReader now also fits an 800x600 display.
* Added support for the Dektec line of ASI and SPI receive cards. The first receive card in the system is used - only support at this time for the first card.
* Since the first 2.4 beta we've been stripping : (colon character) from exported XML - this is causing others problems so in this version there's a new "Keep Special XML Characters" option on the Settings menu to keep these characters.
* Added support for myHTPC. Read this excellent HOWTO from Blueman2 on configuring and using TSReader with myHTPC.
* Fixed a bug that caused the SDT and EIT to be out of order when the restart option is used.
* Added serial remote control support for the Tandberg TT1260 commercial receiver.
* New PID List on the Help menu - lists the active PIDs and shows what the tables say they carry
* Tooltip function for the PID chart. Hover the mouse over a line in the PID chart and TSReader will figure out what the PID is used for and display a tooltip with this information.
* Added an option to allow only SDT tables from the current mux. This can prevent erroneous SDT decoding if the mux is running SDT sections for the current and other muxes using the same program numbers.
* Improved the SI parser to automatically detect DVB streams even if the PAT doesn't include a network entry.
* Switched to a new setup utility.

Version 2.4, build 26: (private beta - not released)

* If more than one copy of TSReader is installed, TSReader reselects the source from the current version being used so you no longer need to manually reselect the source when switching versions.
* Supports type 0x40 PMT entries commonly found on digital cable.
* Added support for serially controlled commercial receivers. In this version support is present for the Tandberg Alteia Plus and Motorola DSR-4800 receivers. The serial control allows tuning and program selection when used in conjunction with a non-tuning source such as the Linear Systems DVB-ASI card and the SkySeeker DVB-SPI interface.
* Added an option to generate thumbnails after the Conditional Access (CA) system has had a chance to descramble the program. This is designed for commercial broadcasters that have an authorized receiver and a connection to the PC via ASI or SPI along with serial control. TSReader will cycle through the channels in each mux, tell the external receiver to select the program (therefore descrambling it) before grabbing a thumbnail. It's assumed the receiver is authorized for all channels in the mux.
* Added decoding for the ATSC EIT0-3 and ETT0-3 tables - these provide 24 hour EPG on those few channels sending EPG data.
* Added an option to display a fixed thumbnail if the channel is scrambled.
* Clicking on a thumbnail now selects that channel. Double clicking with no recording or streaming active will launch VLC in Play mode.
* Added support for the official TSID tables used in ATSC muxes - if the TSID is sent right you'll see the locale where the transmission occurs.
* Added a -D switch to force TSReader into DVB decoding mode. Useful on muxes that contain both ATSC and DVB tables.
* Thumbnails generated by TSReader now include the current event based on data sent in the event tables - both DVB and ATSC muxes will display the current program title.
* Corrected a bug with DVB/IP address decoding.
* Added a remote control server to TSReader. See this document for more details. In this beta this interface is not yet completed. The next beta will finish up this interface but we're looking for feedback on the current system.
* TSReader's recording and streaming now supports audio-only and video-only streams. In the at least one audio and one video stream were required before recording or streaming.
* Fixes to handle text in the DVB EIT's short event description.

Version 2.4, build 25: (private beta - not released)

* Record Program option can now split files based on either size or time. The new time option selects the number of seconds and the time is based on the time stamps (PCR) in the stream. So if you use with the file source (which typically processes data faster than real-time) file splits may occur faster than the time you set, but the resulting files will be the right length.
* There's now complete control over the filenames that TSReader generates when it splits a recorded file. This is controlled via the Settings/Split Record Filenames... menu. Full details are shown on the settings dialog.
* Added a proper status bar with activity and recording/streaming indicators.
* Added playback support for the Roku HD1000 Digital Media Player when used with the CinemaSix Media Player. TSReader will automatically telnet to the Roku HD1000 and start the CinemaSix player when you select playback in TSReader. Channel changes in TSReader are also handled correctly. The HD1000 supports both SD and HD streams up to around 50 Mbps.
* Added support for the SkySeeker line of USB 2.0 interfaces. These cards support 8PSK, 8VSB/QAM and DVB-SPI interfaces.

Version 2.3, build 24:

* Option to hide TSReader when minimized - icon is created in the tray area.
* New -M option to startup TSReader minimized
* New -i option to control instances of TSReader - with this option TSReader will check to see if another instance is running and if it is will shut it down prior to it's startup.
* Fixed a bug with detecting modulation mode and exporting to XMLTV format
* Corrected a possible crash with certain network tables
* Support for DVB-C delivery descriptors
* Full support for the Nebula Electronics USB 2.0 DVB-T interface
* Added -X option for automatic XML:TV export
* Fixed a bug where if you have record program mode set to program-stream, streaming into VLC, the Stradis or D-VHS interfaces would fail.
* Corrected a crash when drawing thumbnails on muxes that have an empty SDT for the channel
* Corrected thumbnail display when the MPEG video encoder is generating only P-frames.
* The internal HTTP server (used to stream into VLC) now sends a (bogus) file length when the remote client connects. As a result, more programs including Windows Media 9 can now connect reliably to the TSReader HTTP server and stream video.

Version 2.3, build 23:

* Fixed a problem with the NIT and SDT decoders where not all descriptors were displayed.
* Added support for logical channel descriptors. These are used on DVB-T networks in the UK and Australia. TSReader still refers to the channel by it's MPEG program number, but the overlay put onto thumbnails now contains both the MPEG program number and logical channel number.
* New option to bypass PMT parsing for channel numbers above 65500. Many DCII networks have a bogus entry in the PAT pointing to a non-existent PMT. This prevents TSReader spending about 30 seconds waiting for the PMT to come along.
* Corrected a problem with all the tuner dialogs so that the parameters aren't overwritten by the last selected mux item.
* Added a warning to the satellite tuner dialog if the LNB frequency is zero.
* Added an option to force ATSC compatible PIDs when recording to D-VHS.
* All command-line switches that use filenames now support spaces in the filename provided the name is surrounded by double-quote marks, i.e. "C:My DocumentsA Recording.ts".
* Fixed a problem with the command-line for DVB-T Twinhan sources.
* Added an option to show the continuity error count for each PID in the PID chart.
* Corrected a problem where a PAT with only an NIT entry entry (no real programs) could cause TSReader to continuously loop thinking it was decoding a new PMT.
* New -d option. This disables elementary stream parsing and thumbnail decoding for the current TSReader session. Add this to recording scripts with the -a and -r options and you won't have to keep turning thumbnails back on.
* Fixed some issues with -a and -r switches being parsed correctly.
* Changed the file source to search up to 512MB into an MPEG-2 transport stream file for the sync pattern.
* New -v option. This selects a stream and automatically starts it playing via a VLC configuration.
* Now prompts to save manual channels when you quit without saving them.
* Added support for LPCM audio streams. These are either streams with a type of 0x06 and a format descriptor of BSSD or have a type of 0x83. TSReader will record programs with these streams as type 0x83 with a BSSD format descriptor. Currently we haven't found any software (including VLC) that plays them correctly - although VLC gets close.
* Corrected a problem with the TechnoTrend Budget DVB-C source - now fully operational.
* Added support for exporting program guide info (from the DVB EIT table) into XMLTV format for use with myHTPC. There is a plugin coming for myHTPC that will interface with TSReader.
* Hopefully made some improvements to the reliability of the Stradis decoder interface.

Version 2.3, build 22:

* Fixed shut-down lockup on B2C2 sources
* Added ability to save thumbnails continuously to the same filename. Very useful for monitoring muxes remotely since a web-page can be pointed at the generated JPEG files. These images can also be saved as resized thumbnails or full broadcast size pictures.
* Whenever the EIT is displayed or exported, the data in the table is now sorted by date. Although most DVB systems send the EIT in date order, there was a possibility that TSReader would receive them out of order.
* DiSEqC and tone-burst switch options now get enabled correctly depending on the source. For example, Twinhan cards don't support tone-burst switches (they do support DiSEqC switches however), so now when the Twinhan source is used, the tone-burst options in the tune dialog are disabled.
* Corrected a problem with the source selection dialog when TSReader was already running.
* Cleaned up support for the Nebula range of DVB-T receivers
* Added the ability to change the PID used for the EIT. This is very useful on some DBS services such as Dish Network that transmit a long-range event table on a special PID. To enable this function you need to create a DWORD registry entry with the PID to substitute called "EITPID" in HKEY_CURRENT_COMPUTERSoftwareCOOL.STFTSReader. There are two sample .reg files provided that switch TSReader's parser between 0x0012 and 0x0300 on Dish Network. Their long range EIT is carried at 110 west on 12.632 GHz RHCP 20MSps. Keep in mind that the Dish Network long-range event table carries data for all their channels out to nine days - this means you need a fast processor to keep up with the stream and a lot of RAM in your PC; it takes about 300 MB to buffer 9 days worth of data.
* Two new thumbnail options both related to the "Save all thumbnails" function. There's a new option to save the thumbnails at transmitted size (by default, they're scaled down to true thumbnails) and another option to force TSReader to name each thumbnail generated over time with the same filename. This is useful for remote monitoring a mux and having a webpage pointed to the JPEG files generated by the "Save all thumbnails" function.

Version 2.3, build 21 (private beta - not released):

* Preliminary support for the Nebula Electronics line of DVB-T receivers (PCI and USB 2.0)
* Corrected a bug with the -m and -r/-R switches being used simultaneously
* Changed the filenames used when recording a single PID to remove the space - for example "PID 0x0400.bin" is now called "PID_0x0400.bin"
* Started cleanup of the satellite data files supplied with TSReader. This prevents DSS carriers showing up when using DVB sources (and vice-versa) and also adds support for advanced modulation carriers for some hardware we know is on it's way. Take a look at Satellites2500.ini for a good example.
* Added support for tone-burst satellite switches.

Version 2.3, build 20 (private beta - not released):

* Added -t switch to select the audio track when doing an automatic command-line recording with the -r or -R switch.
* Fixed a bug that caused the tree-view of the tables to get totally screwed up when switching between IP/DVB and MPEG-2 modes.
* Added support for DVB-T (terrestrial) and DVB-C (cable) B2C2-based cards.
* Bug fixes in the Twinhan 1020 source to support more variations of this card.
* A new TSReader NoTune source - useful for non-standard Twinhan cards that don't tune correctly with TSReader. You need to first tune the card using another program and then switch to TSReader to process the data from the mux.
* Corrected a problem that caused the TDT (Time Definition Table) to not show up when TSReader's source is restarted.

Version 2.3, build 19 (private beta - not released):

* Correct operation with a wider range of MD plugins including BISS.dll.
* Correct operation with the newly released VLC 0.7.
* The thumbnail decoder now supports 4:2:2 profile MPEG-2 video. This also has the benefit of now displaying 4:2:0 encoded material when the chroma type field isn't set correctly.
* Up to 16 VLC configurations can now be stored. This allows you to prebuild command-line parameters for VLC and run them at will just as if you were to use VLC for playback. For example you can setup a VLC configuration to take video data from TSReader, decode it locally in VLC, write it to the hard drive in a number of different formats plus multicast it onto your network. Nifty.
* Added a looping file source. This is just like the normal file source (reads MPEG-2 transport stream files) but loops when it reaches the end of the file. This is useful for looking at small transport stream captures and there isn't enough data available to decode the stream correctly without multiple passes of the stream.
* Some internal buffer sizes can now be specified using the Buffer Sizes item added to the Settings menu. This is primarily for people experimenting with solving buffer overrun problems that sometimes occur when streaming to devices like D-VHS where the CPU must load a ton of components to get the video streaming.
* Added support for TechnoTrend-based DVB-C cards.
* Changed the way single program streams (and therefore streaming to output devices) generate tables. Previously, tables would be added to the output stream when they appear in the input stream. These tables (PAT/PMT and perhaps SDT) are now inserted every 100 ms per the MPEG-2 specifications (1000 ms for the SDT packets).
* Added a new -a/-A switch to automatically record the entire transport stream. See documentation below for more info.

Version 2.3, build 18 (private beta - not released):

* Added support for the Twinhan DTT (DVB-T) card.
* Added support for B2C2-based cards like the SkyStar 2 and Air2PC-ATSC. Please read this note for more information about support in TSReader for these cards.
* Added tuning support for the Twinhan 1030/1030a cards.
* Fixed a bug that would cause TSReader to crash when recording in program stream format with certain encoders.
* Continuous thumbnail export function added. With this function enabled, each time TSReader generates a thumbnail it will be saved to a unique JPG file stamped with the date and time. Great for IDing video streams that don't have an on-screen logo and you don't want to watch the program continuously.
* XML export function now exports event date and time in both UTC and local formats.
* Spectrum inversion and bandwidth settings for DVB-T cards are now saved.
* Command-line options can now be specified in any order.
* New -m switch to pre-load manual channels.

Version 2.2, build 17:

* Changed TSReader into two products. The registered version has all functionality enabled and is available to everyone that's purchased TSReader. TSReader Lite limits some features and is free.
* Tweaks to the TechnoTrend DVB-T source for compatibility with the Australian 7 MHz system.
* Now understands Dolby AC3 audio when sent on pure DVB systems like DVB-T in Australia.
* Removed the "old" Twinhan source since it's no longer supported.
* Changed the File source to allow reading of DIRECTV streams.
* Fixed a problem with the Twinhan polarity voltage.

Version 2.2, build 16 (private beta - not released):

* In the TechnoTrend DVB-T source, you can now tune in 100 KHz steps - previously this was limited to 1 MHz.
* Added support for real-time decoding on the PC using VLC from As part of this, TSReader also now has an internal HTTP server which can stream the currently selected program. So you can receive TV from a PC with a satellite card and then stream the video over to another PC by connecting to the TSReader HTTP server. If both TSReader and VLC are on the same PC, TSReader will control VLC so channel changes happen right.

Version 2.2, build 15 (private beta - not released):

* Finally got a source written for the Twinhan 1020/1020a card that tunes properly. Users of these cards should stop using the "old" Twinhan source (although it's still provided)
* Added very initial support for the DIRECTV system. You see the PIDs (called SCIDs in DIRECTV parlance), but there's no table decoding since I have no idea how the tables are structured. You can record the transport stream or individual PIDs but that's about all. If you know anything about DIRECTV tables, please let me know! This works on Twinhan 1020a (red) cards only.
* Added a new source for the Twinhan 1030/1030a. This source doesn't tune yet, but does transfer data perfectly once tuned by another application.

Version 2.1, build 14:

* Cleaned up some packet loss issues with the TechnoTrend Budget PCI Satellite card. If you experience continuity errors with the satellite card, try turning off LNB power and power the LNB from another source.
* Added support for the TechnoTrend PCI Terrestrial card (DVB-T)
* Changed the PAT scanner to look for the latest PAT version - this was causing issues on Nimiq 2 at 82w where two PATs (one old and one new) are being sent
* Changes to the DVB NIT parser to handle systems other than DVB-S. The parser now supports DVB-S and DVB-T network tables - if you have a cable TechnoTrend card, please contact us!
* Added an activity indicator to the main window. I was running TSReader for hours and it was very hard to see that it was still alive, so every time 1 MB of satellite data is processed by TSReader, the indicator changes.

Version 2.0, build 13:

* Added support for XBox Media Center streaming with the XNS protocol.

Version 2.0, build 12:

* Rewrote the data source code in TSReader. Now there's a DLL for each of the input sources (like the Twinhan card) and now there's only one program - TSReader.exe.
* Setup program included - no more dealing with ZIP files
* Channels that are not indexed by MPEG-2 tables (like the WB mux on Galaxy 11 at 91 degrees West) can now be defined with manual channels (on the File menu). There's a sample included for that WB mux.
* Automatic recording from the command line can now write to the D-VHS deck. This is accomplished by setting the record filename to "d-vhs" or "D-VHS".
* The TechnoTrend Budget line of satellite cards is now supported. If you have a cable or terrestrial version of one of these cards, please contact me!
* A new interface for the Twinhan series of satellite cards is available. This should eventually support all their cards, but has been tested with the 1020 and 1030. Currently, this source cannot tune properly, so you have to use another application (like WinDVB which came with the card) to tune, close that application and launch TSReader. We're working on getting the tuning working and all cards supported.
* Please note that version 2.0 does not include a DirectShow decoder. We have to rewrite this and will include it with the next version of TSReader.

Version 1.1, build 11 (private beta - not released):

* Added ability to record a program as either program or transport stream. Program stream recording multiplexing isn't quite right yet, so for the time being we suggest staying with transport streams.
* Added a option to record a program directly to a D-VHS deck via FireWire. This requires the right drivers loaded (see this website for more information) and also requires Windows XP. Since D-VHS records the transport stream you can use this to record either SD or HD material from the currently tuned mux. For this option to work, you also need the DirectShow filter loaded on your system. Easiest way to do this is to install the excellent DVHSTool utility.
* Added compatibility with MyTheatre satellite and multiplex files for tuning the Twinhan version of TSReader. To make this work, download and install MyTheatre (easily found on the Internet) and then copy the Satellites folder from the MyTheatre installation folder into TSReader's folder. The Twinhan tune dialog will then display all the satellites and multiplexes defined in the MyTheatre files.
* Fixed problems with the Twinhan tune dialog
* Fixed a problem with generating thumbnails on some HD channels
* Added a dialog to select the interval at which thumbnails are generated

Version 1.1, build 10 (private beta - not released):

* When using the PID record function, if an output file can't be opened (in use in an editor for example), TSReader now shows an error message.
* A number of memory leaks have been plugged.
* Corrected satellite polarity control (voltage level on the LNB connector) on Twinhan cards.
* Fixed DiSEQc switch input labels - inputs are now correctly 1 through 4 and not 0 through 3.
* PID recording can now either record the data from each PID to a separate file (that's how it's done it until now) or to a single file in the order in which the packets from those PID(s) were received.
* Removed the function buttons - TSReader now uses a normal menu.
* Menu options added to retune the Twinhan, open a different file or restart TSReader from a new ASI source (depending on version).
* Option to save the thumbnails generated by TSReader as JPEG files.
* Fixed the flicker problem in the tree display.
* There are now options to set the priority of the threads responsible for reading data, processing the data and decoding the thumbnails. If you experience continuity errors that are not signal related, try adjusting the thread priorities to see if it resolves the errors or disable the thumbnail thread.
* When selecting a new channel with the Stradis Professional MPEG-2 decoder active, TSReader will now setup the new channel correctly.
* Added very preliminary DirectShow playback - this will probably crash TSReader and use way too much CPU time but it does decode. Please read the support page first for information on setting up DirectShow playback.
* Added playback via XNS which is a protocol used by the XBox Media Player. This allows TSReader to demux a stream and send it over the network to the XBox for real-time playback.
* Added support for MultiDec plugins - see the support page for more information.
* Added an option to expire EIT events in the past. This will reduce memory loading when TSReader is run for a long period of time.
* Added memory tracking to catch any memory leaks. Don't turn this option on unless we tell you!

Version 1.0, build 9:

* Fixed problem that caused an access fault when closing the Linear Systems version of TSReader.
* Fixed a problem that caused an error indicating the Stradis decoder couldn't be located each time TSReader started on a system without a Stradis card.
* Turbo-coded QPSK transponders in the NIT are now decoded correctly (Dish Network DBS system in the USA uses these).
* The automatic text export mode has been replaced with automatic and manual XML export. See here for details.

Version 1.0, build 8:

* Fixed a bug that caused the stream decoder built into TSReader to fail if the tables pointed to a non-existent stream
* The internal MPEG decoder now only attempts to decode profiles it can handle - previously it would attempt to decode 4:2:2 encoded streams although the decoder can't currently process these.
* Real-time output to Stradis Professional MPEG decoder cards is now supported.

Version 1.0, build 7:

* When making a split recording, the size at which TSReader switches to a new file can now be specified. Previously it was set at 4 GB. Please note that as a result, the -R option now takes an additional parameter. See below for details.
* When making a single program recording, TSReader now adds an SDT to the recorded stream containing the date and time the recording was made and user specified text. If you have a bunch of MPEG files and can't remember what they contain, just drop them into the file version of TSReader and look at the SDT decode.
* An experimental mode has been added to allow possible reception via the Twinhan COFDM terrestrial card. To enable this mode, set a DWORD value of 1 called DontTune to HKEY_CURRENT_USERSoftwareCOOL.STFTSReader. You can also double click on the notune.reg file in the explorer to enable this mode.
* If your version of TSReader has expired and you'd like to try the new features for a futher month, please email me and I can send you a special unlock code for the extended evaluation.
* MPEG video stream decoding is now semi-continuous. After all the clear MPEG video streams are decoded, TSReader pauses video decoding for five seconds and then decodes the video streams again. This results in lighter CPU load than decoding continuously and still gives you an idea of what's on each channel. If you prefer faster updates, create a DWORD value called ESParsingCounterReload with a value of 1 in HKEY_CURRENT_USERSoftwareCOOL.STFTSReader.

Version 1.0, build 6:

* Finally corrected the internal buffering bug that caused false continuity errors. TSReader should now record streams perfectly provided the signal level is high enough.
* Unscrambled video elementary streams are now decoded and displayed. Switching between the PMT entries puts the current channel at the top of the image list.
* If no command-line is specified in the Twinhan version, a tuning dialog is now displayed.

Version 1.0, build 5:

* Updated to reflect correct Digital River sales page.

Version 1.0, build 4:

* Not released - internal use only

Version 1.0, build 3:

* Decodes MPEG video, MPEG audio and AC3 elementary stream headers. When one of these streams is selected (and it's not scrambled), TSReader will display data about the stream. Note: the MPEG audio decode is a little broken right now and may result in bizarre results.
* Small internal bug fixes based on testing TSReader with some European streams.
* Updated internal CA table with Canal Plus, RAS and SkyPilot CA systems now displayed correctly.
* ATSC MGT table now decoded.
* In file mode if no filename is specified on the command-line, TSReader now uses the standard Windows dialog to select the file.
* Also in file mode, TSReader now acts as a drop target for files. If you want to analyze another recorded MPEG-2 transport stream, you can drop the file from the Windows Explorer onto TSReader which will then switch to that stream.
* Understands HiPix .ts files. These are generated by the HiPix ATSC PCI card and record one minute of transport stream per file. As each file is processed, TSReader will switch to the next file in sequence.
* All options are now saved and restored each time TSReader starts.
* Corrected a bug that caused erroneous continuity errors when duplicate packets were detected.
* If continuity errors are detected, TSReader will indicate which PIDs have these errors by appending a * to the bitrate shown for each PID in the graph.

Version 1.0, build 2:

* Added button to select all Export to HTML options.
* Added PID recording capability. Up to eight different PIDs can be recorded to individual files.

Version 1.0, build 1:

* TSReader is now released. You get 28 days to use TSReader for free then it must be registered.
* 8PSK modulation in the NIT is now decoded correctly.
* -t option added for automatic text export

Beta Version Build 7:

* Added PID usage chart to output HTML file.

Beta Version Build 6:

* Added option to sort PID chart by PID number as well as bitrate
* Added option to allow the PID chart to be sorted both ascending and decending
* When recording, a new option allows files to be split when they are greater than 4 GB in size. This allows continuous recording on file-systems like FAT32 which restrict the file size.
* New command-line option to allow automatic recording. See below.
* Handles incomplete SDT segments found on some material encoded with Tandberg gear (specifically CBC's 8PSK mux on Anik F1).
* Estimated bitrate is now shown on all PIDs (provided the bitrate can be calculated from one of the stream's time-stamps). To indicate that the bitrate is estimated, the percentage of the stream and bitrate are separated by the ~ character whereas if the bitrate for a PID is calculated from the PCR, the - character is used to separate percentage and rate.

Beta Version Build 5:

* Still looks the same, but internally changes are being made. Added support for DiSEqC 1:2 and 1:4 switches on the Twinhan card.

Beta Version Build 4:

* No major visible changes. Internally, TSReader has had a lot of window related work done, but this wasn't complete for this beta with the result that the display looks identical - next month's will look a lot different.

Beta Version Build 3:

* Now handles compressed EIT program name and description on Dish Network

Cards with demultiplexers

TSReader was designed around hardware interfaces that send all packets from the transport stream. Some cards, such as those using the B2C2 control chip with pre 4.3.0 drivers, cannot send the entire transport stream over to the PC but instead only allow a certain number of PIDs from the mux active at any one time. TSReader does support these cards but with a few restrictions:

* The calculate bitrates will be inaccurate. TSReader calculates the mux and PID bitrates based on the arrival time of packets. Since the demux is not letting all packets through, TSReader can't accurately calculate the rate.
* There is a limit of 39 active PIDs on the B2C2 cards. TSReader will decide automatically which PIDs are active and setup the demux correctly, but this may not work for all cases. We obviously welcome feedback if you're having a problem receiving a particular channel.
* In the PID chart, you may notice that with cards using a demux there are not only red/green PIDs (scrambled/clear) but also dark-red/dark-green. The darker PID indicators indicate that the PID is active, but currently the demux isn't processing any packets from this PID.
* TSReader only supports muxes with correct tables on cards with demultiplexers. If you tune a mux without MPEG-2 tables, TSReader has no way to decide which PIDs to enable in the demux.

Search   Contact us   Privacy Policy   About   Advertise   Forum   RSS Feeds   Statistics   Software   

Site layout: Default Classic Blue