video_util_tv.h
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:5k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. #ifndef __VIDEO_UTIL_TV__
  2. #define __VIDEO_UTIL_TV__
  3. /*
  4.  * Worldwide channel/frequency list
  5.  *
  6.  * Nathan Laredo (laredo@broked.net)
  7.  *
  8.  * Frequencies are given in kHz 
  9.  */
  10. #define NTSC_AUDIO_CARRIER 4500
  11. #define PAL_AUDIO_CARRIER_I 6000
  12. #define PAL_AUDIO_CARRIER_BGHN 5500
  13. #define PAL_AUDIO_CARRIER_MN 4500
  14. #define PAL_AUDIO_CARRIER_D 6500
  15. #define SEACAM_AUDIO_DKK1L 6500
  16. #define SEACAM_AUDIO_BG 5500
  17. /* NICAM 728 32-kHz, 14-bit digital stereo audio is transmitted in 1ms frames
  18.    containing 8 bits frame sync, 5 bits control, 11 bits additional data, and
  19.    704 bits audio data.  The bit rate is reduced by transmitting only 10 bits
  20.    plus parity of each 14 bit sample, the largest sample in a frame determines
  21.    which 10 bits are transmitted.  The parity bits for audio samples also 
  22.    specify the scaling factor used for that channel during that frame.  The
  23.    companeded audio data is interleaved to reduce the influence of dropouts
  24.    and the whole frame except for sync bits is scrambled for spectrum shaping.
  25.    Data is modulated using QPSK, at below following subcarrier freqs */
  26. #define NICAM728_PAL_BGH 5850
  27. #define NICAM728_PAL_I 6552
  28. /* COMPREHENSIVE LIST OF FORMAT BY COUNTRY
  29.    (M) NTSC used in:
  30. Antigua, Aruba, Bahamas, Barbados, Belize, Bermuda, Bolivia, Burma,
  31. Canada, Chile, Colombia, Costa Rica, Cuba, Curacao, Dominican Republic,
  32. Ecuador, El Salvador, Guam Guatemala, Honduras, Jamaica, Japan,
  33. South Korea, Mexico, Montserrat, Myanmar, Nicaragua, Panama, Peru,
  34. Philippines, Puerto Rico, St Christopher and Nevis, Samoa, Suriname,
  35. Taiwan, Trinidad/Tobago, United States, Venezuela, Virgin Islands
  36.    (B) PAL used in:
  37. Albania, Algeria, Australia, Austria, Bahrain, Bangladesh, Belgium,
  38. Bosnia-Herzegovinia, Brunei Darussalam, Cambodia, Cameroon, Croatia,
  39. Cyprus, Denmark, Egypt, Ethiopia, Equatorial Guinea, Finland, Germany,
  40. Ghana, Gibraltar, Greenland, Iceland, India, Indonesia, Israel, Italy,
  41. Jordan, Kenya, Kuwait, Liberia, Libya, Luxembourg, Malaysa, Maldives,
  42. Malta, Nepal, Netherlands, New Zeland, Nigeria, Norway, Oman, Pakistan,
  43. Papua New Guinea, Portugal, Qatar, Sao Tome and Principe, Saudi Arabia,
  44. Seychelles, Sierra Leone, Singapore, Slovenia, Somali, Spain,
  45. Sri Lanka, Sudan, Swaziland, Sweden, Switzeland, Syria, Thailand,
  46. Tunisia, Turkey, Uganda, United Arab Emirates, Yemen
  47.    (N) PAL used in: (Combination N = 4.5MHz audio carrier, 3.58MHz burst)
  48. Argentina (Combination N), Paraguay, Uruguay
  49.    (M) PAL (525/60, 3.57MHz burst) used in:
  50. Brazil
  51.    (G) PAL used in:
  52. Albania, Algeria, Austria, Bahrain, Bosnia/Herzegovinia, Cambodia,
  53. Cameroon, Croatia, Cyprus, Denmark, Egypt, Ethiopia, Equatorial Guinea,
  54. Finland, Germany, Gibraltar, Greenland, Iceland, Israel, Italy, Jordan,
  55. Kenya, Kuwait, Liberia, Libya, Luxembourg, Malaysia, Monaco,
  56. Mozambique, Netherlands, New Zealand, Norway, Oman, Pakistan,
  57. Papa New Guinea, Portugal, Qatar, Romania, Sierra Leone, Singapore,
  58. Slovenia, Somalia, Spain, Sri Lanka, Sudan, Swaziland, Sweeden,
  59. Switzerland, Syria, Thailand, Tunisia, Turkey, United Arab Emirates,
  60. Yemen, Zambia, Zimbabwe
  61.    (D) PAL used in:
  62. China, North Korea, Romania, Czech Republic
  63.    (H) PAL used in:
  64. Belgium
  65.    (I) PAL used in:
  66. Angola, Botswana, Gambia, Guinea-Bissau, Hong Kong, Ireland, Lesotho,
  67. Malawi, Nambia, Nigeria, South Africa, Tanzania, United Kingdom,
  68. Zanzibar
  69.    (B) SECAM used in:
  70. Djibouti, Greece, Iran, Iraq, Lebanon, Mali, Mauritania, Mauritus,
  71. Morocco
  72.    (D) SECAM used in:
  73. Afghanistan, Armenia, Azerbaijan, Belarus, Bulgaria,
  74. Estonia, Georgia, Hungary, Zazakhstan, Lithuania, Mongolia, Moldova,
  75. Poland, Russia, Slovak Republic, Ukraine, Vietnam
  76.    (G) SECAM used in:
  77. Greecem Iran, Iraq, Mali, Mauritus, Morocco, Saudi Arabia
  78.    (K) SECAM used in:
  79. Armenia, Azerbaijan, Bulgaria, Estonia, Georgia,
  80. Hungary, Kazakhstan, Lithuania, Madagascar, Moldova, Poland, Russia,
  81. Slovak Republic, Ukraine, Vietnam
  82.    (K1) SECAM used in:
  83. Benin, Burkina Faso, Burundi, Chad, Cape Verde, Central African
  84. Republic, Comoros, Congo, Gabon, Madagascar, Niger, Rwanda, Senegal,
  85. Togo, Zaire
  86.    (L) SECAM used in:
  87. France
  88. */
  89. /* --------------------------------------------------------------------- */
  90. struct CHANNEL {
  91.     char *name;
  92.     int   freq;
  93. };
  94. struct CHANNEL_LIST {
  95.     char             *name;
  96.     struct CHANNEL  *list;
  97.     int               count;
  98. };
  99. #define CHAN_COUNT(x) (sizeof(x)/sizeof(struct CHANNEL))
  100. /* --------------------------------------------------------------------- */
  101. extern struct CHANNEL_LIST   NtscChannelLists[];
  102. extern struct CHANNEL_LIST   PalChannelLists[];
  103. extern struct CHANNEL_LIST   SecamChannelLists[];
  104. extern struct CHANNEL_LIST* ListOfChannelLists[];
  105. #endif /* __VIDEO_UTIL_TV__ */