Frequencies(3pm)
β¨ NAME β¨
okay so bestie, meet Video::Frequencies π β it's a Perl module (section 3pm, from the User Contributed Perl Documentation) and it is literally just many, many frequency constants and lists. That's the whole vibe. No cap. π
πΈ SYNOPSIS πΈ
use Video::Frequencies;
while (my($name,$list) = each %CHANLIST) {
print "$name\n";
while (my($channel,$freq) = each %$list) {
printf " %-4s %9d\n", $channel, $freq;
}
print "\n";
}
π¦ DESCRIPTION π¦
So this module exports (yes, exports!! it's giving generous π
) frequency constants, and it also ships hashes that map channel => frequency for digital and analog video and audio broadcast. The short way to say it: it's a worldwide channel/frequency list. πβ¨ Every single frequency in here is given in kHz.
pro tip from the module itself: it's a good idea to run perldoc -m Video::Frequencies so you can actually see what all the constants and lists look like. peek behind the curtain, bestie π
π Exported Audio Carrier Frequencies π
NTSC_AUDIO_CARRIER
PAL_AUDIO_CARRIER_I
PAL_AUDIO_CARRIER_BGHN
PAL_AUDIO_CARRIER_MN
PAL_AUDIO_CARRIER_D
SEACAM_AUDIO_DKK1L
SEACAM_AUDIO_BG
NICAM728_PAL_BGH
NICAM728_PAL_I
okay so about NICAM 728: that's 32-kHz, 14-bit digital stereo audio, and it gets transmitted in 1ms frames. Each frame is packed with 8 bits frame sync, 5 bits control, 11 bits additional data, and 704 bits audio data. The bit rate gets reduced by transmitting only 10 bits plus parity of each 14 bit sample β and the largest sample in a frame is what determines which 10 bits get sent. π The parity bits for audio samples also specify the scaling factor used for that channel during that frame. The companded audio data is interleaved so dropouts have less influence, and the whole frame except for the sync bits is scrambled for spectrum shaping. Then it's modulated using QPSK, at below following subcarrier freqs. π
πΈ Broadcast Format by Country πΈ
(M) NTSC
Antigua, Aruba, Bahamas, Barbados, Belize, Bermuda, Bolivia, Burma, Canada, Chile, Colombia, Costa Rica, Cuba, Curacao, Dominican Republic, Ecuador, El Salvador, Guam Guatemala, Honduras, Jamaica, Japan, South Korea, Mexico, Montserrat, Myanmar, Nicaragua, Panama, Peru, Philippines, Puerto Rico, St Christopher and Nevis, Samoa, Suriname, Taiwan, Trinidad/Tobago, United States, Venezuela, Virgin Islands
(B) PAL
Albania, Algeria, Australia, Austria, Bahrain, Bangladesh, Belgium, Bosnia-Herzegovinia, Brunei Darussalam, Cambodia, Cameroon, Croatia, Cyprus, Denmark, Egypt, Ethiopia, Equatorial Guinea, Finland, Germany, Ghana, Gibraltar, Greenland, Iceland, India, Indonesia, Israel, Italy, Jordan, Kenya, Kuwait, Liberia, Libya, Luxembourg, Malaysa, Maldives, Malta, Nepal, Netherlands, New Zeland, Nigeria, Norway, Oman, Pakistan, Papua New Guinea, Portugal, Qatar, Sao Tome and Principe, Saudi Arabia, Seychelles, Sierra Leone, Singapore, Slovenia, Somali, Spain, Sri Lanka, Sudan, Swaziland, Sweden, Switzeland, Syria, Thailand, Tunisia, Turkey, Uganda, United Arab Emirates, Yemen
(N) PAL
Argentina (Combination N), Paraguay, Uruguay
(M) PAL (525/60, 3.57MHz burst)
Brazil
(G) PAL
Albania, Algeria, Austria, Bahrain, Bosnia/Herzegovinia, Cambodia, Cameroon, Croatia, Cyprus, Denmark, Egypt, Ethiopia, Equatorial Guinea, Finland, Germany, Gibraltar, Greenland, Iceland, Israel, Italy, Jordan, Kenya, Kuwait, Liberia, Libya, Luxembourg, Malaysia, Monaco, Mozambique, Netherlands, New Zealand, Norway, Oman, Pakistan, Papa New Guinea, Portugal, Qatar, Romania, Sierra Leone, Singapore, Slovenia, Somalia, Spain, Sri Lanka, Sudan, Swaziland, Sweeden, Switzerland, Syria, Thailand, Tunisia, Turkey, United Arab Emirates, Yemen, Zambia, Zimbabwe
(D) PAL
China, North Korea, Romania, Czech Republic
(H) PAL
Belgium
(I) PAL
Angola, Botswana, Gambia, Guinea-Bissau, Hong Kong, Ireland, Lesotho, Malawi, Nambia, Nigeria, South Africa, Tanzania, United Kingdom, Zanzibar
(B) SECAM
Djibouti, Greece, Iran, Iraq, Lebanon, Mali, Mauritania, Mauritus, Morocco
(D) SECAM
Afghanistan, Armenia, Azerbaijan, Belarus, Bulgaria, Estonia, Georgia, Hungary, Zazakhstan, Lithuania, Mongolia, Moldova, Poland, Russia, Slovak Republic, Ukraine, Vietnam
(G) SECAM
Greece, Iran, Iraq, Mali, Mauritus, Morocco, Saudi Arabia
(K) SECAM
Armenia, Azerbaijan, Bulgaria, Estonia, Georgia, Hungary, Kazakhstan, Lithuania, Madagascar, Moldova, Poland, Russia, Slovak Republic, Ukraine, Vietnam
(K1) SECAM
Benin, Burkina Faso, Burundi, Chad, Cape Verde, Central African Republic, Comoros, Congo, Gabon, Madagascar, Niger, Rwanda, Senegal, Togo, Zaire
(L) SECAM
France
π Channel->Frequency Relations π
The Channel->Frequency relations live in the following hashes. The keys are the Channel names, and the values are the corresponding frequency in kHz. Example time: "arte" is channel "SE6" in the town in Germany the author lives in, so consequently $PAL_EUROPE{SE6} equals 140250 β the frequency you'd have to tune your receiver to. πΊβ¨
US broadcast %NTSC_BCAST
US cable %NTSC_CABLE
US HRC %NTSC_HRC
JP broadcast %NTSC_BCAST_JP
JP cable %NTSC_CABLE_JP
Australia %PAL_AUSTRALIA
Europe %PAL_EUROPE
Europe East %PAL_EUROPE_EAST
Italy %PAL_ITALY
Ireland %PAL_IRELAND
Newzealand %PAL_NEWZEALAND
CCIR frequencies %FREQ_CCIR_I_III
%FREQ_CCIR_SL_SH
%FREQ_CCIR_H
OIRT frequencies %FREQ_OIRT_I_III
%FREQ_OIRT_SL_SH
%FREQ_UHF
π«Ά The List of Lists π«Ά
The hash %CHANLIST holds name => channel-list pairs, so for example $CHANLIST{"ntsc-bcast"} contains a reference to %NTSC_BCAST. it's a list of lists, bestie, inception but make it broadcast π«
π AUTHOR π
Nathan Laredo (laredo@broked.net), adapted to perl by Marc Lehmann <schmorp@schmorp.de>
and that's a wrap, bestie π this page is from perl v5.40.1, dated 2025-04-13, and it's Frequencies(3pm) β go tune something iconic. πβ¨π»
π¦ where this page comes from
- debian trixie: libvideo-capture-v4l-perl 0.902-6 Β· GPL-2.0-only
- ubuntu resolute: libvideo-capture-v4l-perl 0.902-6 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms