tsdecrypt reads and decrypts CSA encrypted incoming mpeg transport stream over UDP/RTP using code words obtained from OSCAM or similar CAM server. tsdecrypt communicates with CAM server using cs378x (camd35 over tcp) protocol or newcamd protocol. https://georgi.unixsol.org/programs/tsdecrypt/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ChangeLog 6.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. xxxx-xx-xx : Version -next
  2. * Add new notification message STREAM_NOT_ENCRYPTED. When stream is not
  3. encrypted no NO_CODE_WORD notifications are sent.
  4. * Add --notify-wait (-9) option (not set by default). Using it prevents
  5. running of several notification scripts in parallel which can lead to
  6. races if the scripts are used for logging.
  7. * Start passing _INPUT_ADDR and _OUTPUT_ADDR variables to notify script.
  8. * Add --status-file (-0) option. This file keeps latest program status.
  9. * Add two new notification messages - OUTPUT_ENCRYPTED and OUTPUT_OK
  10. * Do not output the stream if it can not be decrypted. You can still
  11. enable the output (ignorring encrypt detection) by using
  12. --output-enc-pass option.
  13. 2013-09-12 : Version 10.0
  14. * Add --ecm-only (-v) option. This allows processing of ECMs but without
  15. decoding the input stream.
  16. * Add --ecm-and-emm-only (-q) option. This allows processing of ECMs
  17. and EMMs but without decoding the input stream.
  18. * Set newcamd client id to 0x7878 (tsdecrypt).
  19. * Fixed regression that apeared in 9.0 which prevented the output from
  20. working if the output address was not multicast.
  21. * Add support for Griffin CAS and for DGCrypt CAS.
  22. * Add support for setting multicast source address /SSM/ (--input-source).
  23. * Add support for EMM filters similar to DVBAPI filters (match + mask).
  24. * Add support for EMM filters based on section length.
  25. * Add support for Irdeto CHID filtering (tested with Raduga).
  26. 2012-09-10 : Version 9.0
  27. * Add --no-output-on-error (-u) option. By using this option output can be
  28. disabled if there is no currently received code word.
  29. * Remove deprecated --output-filter option. The option you should use is
  30. --no-output-filter.
  31. * Allow camd server address (--camd-server, -s) to be resolved, not only
  32. set by IP address.
  33. * Allow tsdecrypt to read ECM/EMM packet from text file. The added
  34. parameters are -n, -ecm-file <file> and -m --emm-file <file>.
  35. * Add support for CAMD server listening on IPv6.
  36. * Add support for input and output over IPv6.
  37. * Add support for forcing only IPv4 (-4, --ipv4) or only IPv6 (-6, --ipv6).
  38. * Add support for multiple CAMD addresses returned when resolving CAMD
  39. server hostname. tsdecrypt would try each of the addresses and use
  40. the one that works.
  41. * Change the way filenames are set in input/output options.
  42. Now file:// prefix is must be added before the filename otherwise
  43. the parameter is treated as network address.
  44. * Add --emm-filter (-a) option. This option implements EMM filtering.
  45. 2012-04-19 : Version 8.1
  46. * Add support for Bulcrypt CAS.
  47. 2012-04-12 : Version 8.0
  48. * Add --biss-key (-Q) option. This option enables BISS decryption.
  49. * Add FFdecsa support. In most cases FFdecsa decrypts faster than libdvcsa.
  50. To compile with FFdecsa support use "make ffdecsa".
  51. * Add --const-cw (-Y) option. This option allows using of constant
  52. code words for decryption.
  53. * Add "make help" target.
  54. * Display better timing information for ECMs and code word changes.
  55. * Filter special symbols in provider and service names before printing them.
  56. 2012-03-07 : Version 7.0
  57. * Add --input-buffer (-T) option. This option allows uninterrupted
  58. decryption even if OSCAM returns code words too late.
  59. * Add --log-file (-F) option.
  60. * Fixed newcamd protocol issues when OSCAM disappeared.
  61. * Fix (and optimize) decryption when the input is MPTS. Previously
  62. decrypting one stream broke the others.
  63. * notify: Add NO_EMM_RECEIVED event.
  64. 2012-02-24 : Version 6.0
  65. * Add --output-tos (-g) option used to set output TOS value.
  66. * Add --input-dump (-W) option used save input stream in file.
  67. * Add --pid-report (-j) option used to turn on PID reporting.
  68. * Add RTP output enabled by --output-rtp (-r) option.
  69. * Add --output-rtp-ssrc (-k) option used to set RTP SSRC.
  70. * A bug was fixed that prevented tsdecrypt from working if CAMD server
  71. was not available for couple of minutes.
  72. 2011-12-23 : Version 5.0
  73. * Add --bench (-b) option that benchmarks libdvbcsa decryption.
  74. * Remove --camd-pkt-delay (-y) option. This workaround is no longer needed.
  75. * Fix payload offset detection, a bug which broke packets that have
  76. adaptation with whole packet size (libtsfuncs).
  77. * Add --input-service (-M) option, to choose service id (program) in MPTS input.
  78. * When the input is MPTS and output filtering is enabled, rewrite output
  79. PAT to include only the single program that is decoded.
  80. * Parse SDT and display provider and service name.
  81. * Add --output-nit-pass (-y) to enable NIT pass through.
  82. * Add --output-eit-pass (-w) to enable EIT (EPG) pass through.
  83. * Add --output-tdt-pass (-x) to enable TDT/TOT pass through.
  84. * Add support for newcamd CAMD protocol.
  85. * Add ECM/EMM queues depth limit to avoid allocating too much memory.
  86. 2011-11-18 : Version 4.0
  87. * Set CAMD sockets NODELAY to avoid OSCAM errors when many packets are sent.
  88. * Add --syslog parameter to enable local syslog logging.
  89. * Set thread names under Linux.
  90. * notify: Added no_code_word/code_word_ok events.
  91. * notify: Added input_timeout/input_ok events.
  92. * notify: Added start/stop events.
  93. * notify: Added option to execute external script on event.
  94. 2011-11-14 : Version 3.2
  95. * Fixed bug that prevented tsdecrypt from working at all :(
  96. 2011-11-12 : Version 3.1
  97. * Add debug level 5 (full mpeg ts packet dump).
  98. * Fix PSI table gathering in invalid transport streams.
  99. * Fix EMM/ECM parsing (this fixes ORF1 decoding on Astra 19.2).
  100. * Process ECMs before EMMs, preventing the case where too much
  101. incoming EMMs interfere with decryption.
  102. 2011-09-30 : Version 3.0
  103. * Add man page.
  104. * Add support for long command line options.
  105. * Add make install/uninstall Makefile targets.
  106. * Add support for compilation on OS X.
  107. * Add tested support for Viaccess.
  108. * Add tested support for Mediaguard (Seca).
  109. * Add tested support for Videoguard (NDS).
  110. * Add untested support for Nagra.
  111. * Add untested support for DRE-Crypt.
  112. * Add option to disable ECM and CW logging (--ecm-no-log).
  113. * Add option to manually set EMM pid (--emm-pid).
  114. * Add option to manually set ECM pid (--ecm-pid).
  115. * Add option to manually set CAID (--caid).
  116. * Add ECM reports (--ecm-report-time).
  117. * Log warnings when there is no input data.
  118. * Log warnings when code word become invalid.
  119. 2011-09-15 : Version 2.0
  120. * Initial public release.