{"id":96001,"date":"2020-10-06T13:42:04","date_gmt":"2020-10-06T11:42:04","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/sdr-dvb-t2-receiver-na-c"},"modified":"2020-10-06T13:42:04","modified_gmt":"2020-10-06T11:42:04","slug":"sdr-dvb-t2-receiver-na-c","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/sdr-dvb-t2-receiver-na-c","title":{"rendered":"SDR DVB-T2-mottagare i C++","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Software Defined Radio (programmerad radioteknik) \u00e4r en metod f\u00f6r att ers\u00e4tta metallbearbetning (vilket i grund och botten \u00e4r bra f\u00f6r h\u00e4lsan) med huvudv\u00e4rk i programmering. SDR f\u00f6rutsp\u00e5s en stor framtid, och dess fr\u00e4msta f\u00f6rdel anses vara borttagandet av begr\u00e4nsningar i genomf\u00f6randet av radioprotocols. Ett exempel \u00e4r moduleringsmetoden OFDM (Orthogonal frequency-division multiplexing), som endast blev m\u00f6jlig genom SDR-metoden. Men SDR har ocks\u00e5 en annan, rent ingenj\u00f6rsm\u00e4ssig m\u00f6jlighet \u2014 n\u00e4mligen att kontrollera och visualisera signalen p\u00e5 valfri punkt med minsta m\u00f6jliga anstr\u00e4ngning.<\/p>\n<p><\/p>\n<p>En av de intressanta kommunikationsstandarderna \u00e4r markbaserad DVB-T2.<br \/>\nVarf\u00f6r? Sj\u00e4lvklart kan man bara sl\u00e5 p\u00e5 TV:n utan att resa sig, men det finns absolut ingenting att titta p\u00e5 d\u00e4r, och det \u00e4r inte bara min \u00e5sikt, utan en medicinsk fakta.<\/p>\n<p><\/p>\n<p>F\u00f6r att vara seri\u00f6s \u00e4r DVB-T2 utvecklad med mycket breda m\u00f6jligheter, inklusive:<\/p>\n<p><\/p>\n<ul>\n<li>inomhusanv\u00e4ndning<\/li>\n<li>modulering fr\u00e5n QPSK till 256QAM<\/li>\n<li>bandbredd fr\u00e5n 1,7MHz till 8MHz <noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/li>\n<\/ul>\n<p><\/p>\n<p>Det finns erfarenhet av att ta emot digital-TV med SDR-principen. DVB-T-standarden finns i det v\u00e4lk\u00e4nda projektet GNURadio. Det finns en block gr-dvbs2rx f\u00f6r DVB-T2-standarden (alla f\u00f6r samma GNURadio), men som kr\u00e4ver f\u00f6reg\u00e5ende signal-synkronisering, och den inspirerar (ett s\u00e4rskilt tack till Ron Economos).<\/p>\n<p><\/p>\n<p>Vad har vi?<\/p>\n<p><\/p>\n<p>Det finns standarden ETSI EN 302 755 som beskriver s\u00e4ndning ing\u00e5ende, men inte mottagning.<\/p>\n<p><\/p>\n<p>Signalen i luften har en samplingsfrekvens p\u00e5 9,14285714285714285714 MHz, modulerad COFDM med 32768 b\u00e4rv\u00e5gor inom ett band p\u00e5 8 MHZ.<\/p>\n<p><\/p>\n<p>Det rekommenderas att ta emot s\u00e5dana signaler med dubbla samplingsfrekvenser (f\u00f6r att inte missa n\u00e5got) och p\u00e5 en mellanliggande frekvens \u00f6ver bandbredden (superheterodyn mottagning), f\u00f6r att eliminera DC-offset och \"l\u00e4ckage\" fr\u00e5n den lokala oscillatorn (LO) vid mottagarens ing\u00e5ng. Enheter som uppfyller dessa krav \u00e4r f\u00f6r dyra f\u00f6r simple nyfikenhet.<\/p>\n<p><\/p>\n<p>SdrPlay med 10Msps 10bit eller AirSpy med liknande specifikationer \u00e4r betydligt billigare. H\u00e4r talas det inte om dubbla samplingsfrekvenser och mottagning kan endast ske med direktkonvertering (Zero IF). D\u00e4rf\u00f6r (av ekonomiska sk\u00e4l) g\u00e5r vi \u00f6ver till sidan av anh\u00e4ngarna av \"ren\" SDR med minimalt h\u00e5rdvaruomvandling.<\/p>\n<p><\/p>\n<p>Det var n\u00f6dv\u00e4ndigt att l\u00f6sa tv\u00e5 uppgifter:<\/p>\n<p><\/p>\n<ol>\n<li>Synkronisering. Att fastst\u00e4lla den exakta avvikelsen av radiofrekvensen med fasnoggrannhet och avvikelsen av samplingsfrekvensen.<\/li>\n<li>Skriv om DVB-T2-standarden bakl\u00e4nges.<\/li>\n<\/ol>\n<p><\/p>\n<p>Den andra uppgiften kr\u00e4ver mycket mer kod, men den kan l\u00f6sas med uth\u00e5llighet och kontrolleras enkelt med test-signaler. <\/p>\n<p><\/p>\n<p>Test-signaler finns tillg\u00e4ngliga p\u00e5 servern BBC ftp:\/\/ftp.kw.bbc.co.uk\/t2refs\/ med detaljerade instruktioner.<\/p>\n<p><\/p>\n<p>L\u00f6sningen p\u00e5 den f\u00f6rsta uppgiften beror starkt p\u00e5 egenskaperna hos SDR-enheten och styrm\u00f6jligheterna. Att anv\u00e4nda de rekommenderade frekvenskontrollfunktionerna, som det heter, har inte varit framg\u00e5ngsrikt, men det har gett mycket erfarenhet av att l\u00e4sa teknisk dokumentation, programmering, titta p\u00e5 serier, l\u00f6sa filosofiska fr\u00e5gor\u2026 kort sagt, projektet har inte blivit nedlagt. <\/p>\n<p><\/p>\n<p>Trots allt har tron p\u00e5 \"pure SDR\" bara st\u00e4rkts. <\/p>\n<p><\/p>\n<p>Vi tar emot signalen som den \u00e4r, interpolerar den praktiskt taget till en analog och extraherar redan en diskret men liknande signal.<\/p>\n<p><\/p>\n<p>Synchroniseringsdiagram:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"SDR DVB-T2-mottagare i C++\" src=\"\/wp-content\/uploads\/2020\/10\/b6362e201fb355fb63760fa901ecf73e.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>H\u00e4r \u00e4r allt enligt l\u00e4roboken. N\u00e4sta steg \u00e4r lite mer komplicerat. Det \u00e4r n\u00f6dv\u00e4ndigt att ber\u00e4kna avvikelser. Det finns mycket litteratur och forskningsartiklar som j\u00e4mf\u00f6r f\u00f6rdelar och nackdelar med olika metoder. Klassiska exempel inkluderar 'Michael Speth, Stefan Fechtel, Gunnar Fock, Heinrich Meyr, Optimum Receiver Design for OFDM-Based Broadband Transmission \u2013 Del I och II'. Men jag har inte tr\u00e4ffat en enda ingenj\u00f6r som kan och vill g\u00f6ra ber\u00e4kningar, s\u00e5 en ingenj\u00f6rsmetod till\u00e4mpades. Genom samma synkroniseringsmetod inf\u00f6rdes st\u00f6rningar i test-signalen. Genom att j\u00e4mf\u00f6ra olika metrik med k\u00e4nda avvikelser (de sj\u00e4lva inf\u00f6rdes) valdes de b\u00e4sta f\u00f6r prestanda och enkelhet i implementeringen. Avvikelsen f\u00f6r mottagningsfrekvens ber\u00e4knas genom att j\u00e4mf\u00f6ra integrationsintervallet och dess upprepande del. Fas av mottagningsfrekvens och samplingsfrekvens bed\u00f6ms utifr\u00e5n avvikelsen i pilot-signaler och anv\u00e4nds \u00e4ven i en enkel, linj\u00e4r equalizer f\u00f6r OFDM-signalen.<\/p>\n<p><\/p>\n<p>Egenskaper f\u00f6r equalizern:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"SDR DVB-T2-mottagare i C++\" src=\"\/wp-content\/uploads\/2020\/10\/d4a1bc8fc4d5e27cb7d376a810ea4485.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Och allt detta fungerar bra om man vet n\u00e4r ett DVB-T2-ram b\u00f6rjar. F\u00f6r detta \u00f6verf\u00f6rs en preambel-symbol P1 i signalen. Metoden f\u00f6r att detektera och dekoda symbolen P1 beskrivs i den tekniska specifikationen ETSI TS 102 831 (d\u00e4r finns ocks\u00e5 m\u00e5nga anv\u00e4ndbara rekommendationer f\u00f6r mottagning).<\/p>\n<p><\/p>\n<p>Autokorrelation av signalen P1 (den \u00f6vre punkten markerar b\u00f6rjan av ramen):<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"SDR DVB-T2-mottagare i C++\" src=\"\/wp-content\/uploads\/2020\/10\/10e052a169a20b16d28d01b1462f4ff3.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Den f\u00f6rsta bilden (det \u00e4r bara sex m\u00e5nader kvar till den r\u00f6rliga bilden\u2026):<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"SDR DVB-T2-mottagare i C++\" src=\"\/wp-content\/uploads\/2020\/10\/8c434965be9c2450afd3c82b3ebbb4f4.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Och h\u00e4r l\u00e4r vi oss vad IQ-obalans, DC-offset och LO-l\u00e4ckage \u00e4r. Som regel \u00e4r kompensationen f\u00f6r dessa specifika distorsioner av direkt omvandling implementerad i SDR-enhetens drivrutin. Det tog d\u00e4rf\u00f6r l\u00e5ng tid att f\u00f6rst\u00e5 att borttagandet av stj\u00e4rnor fr\u00e5n den v\u00e4nliga konstellationen QAM64 \u00e4r resultatet av kompensationsfunktioner. Allt fick st\u00e4ngas av, och jag fick skriva min egen l\u00f6sning.<\/p>\n<p><\/p>\n<p>Och bilden b\u00f6rjade r\u00f6ra p\u00e5 sig:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"SDR DVB-T2-mottagare i C++\" src=\"\/wp-content\/uploads\/2020\/10\/0ddb224d2e0a3890ac9d335c96ba24f0.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>QAM64-modulering med specifisk rotation av konstellationen enligt standarden DVB-T2:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"SDR DVB-T2-mottagare i C++\" src=\"\/wp-content\/uploads\/2020\/10\/b06328fa648125249ef9b0b74522e831.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Kort sagt, detta \u00e4r resultatet av att pressa k\u00f6ttf\u00e4rsen tillbaka genom k\u00f6ttkvarnen. Standarden f\u00f6ruts\u00e4tter fyra typer av blandning:<\/p>\n<p><\/p>\n<ul>\n<li>bit interleaving (bitblandning med vridning av kolumner)<\/li>\n<li>cell interleaving (blandning av celler i kodningsblocket)<\/li>\n<li>time interleaving (\u00e4ven k\u00e4nt i gruppen av kodningsblock)<\/li>\n<li>frequency interleaving (blandning av frekvenser i OFDM-symbolen)<\/li>\n<\/ul>\n<p><\/p>\n<p>I slut\u00e4ndan f\u00e5r vi en s\u00e5dan signal vid ing\u00e5ngen:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"SDR DVB-T2-mottagare i C++\" src=\"\/wp-content\/uploads\/2020\/10\/cb60687702c5f225840df30124a9ef68.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Allt detta \u00e4r en kamp f\u00f6r motst\u00e5ndskraften hos den kodade signalen.<\/p>\n<p><\/p>\n<h4 id=\"itog\">Resultat<\/h4>\n<p><\/p>\n<p>Nu kan vi se inte bara sj\u00e4lva signalen och dess form, utan \u00e4ven administrationsinformationen.<br \/>\nTv\u00e5 multiplex finns i s\u00e4ndningen. I varje finns tv\u00e5 fysiska kanaler (PLP). <\/p>\n<p><\/p>\n<p>En konstighet har observerats i den f\u00f6rsta multiplexen \u2013 den f\u00f6rsta PLP har en m\u00e4rkning \"multiple\", vilket \u00e4r logiskt eftersom den inte \u00e4r ensam i multiplexen, medan den andra PLP har en m\u00e4rkning \"single\" och det \u00e4r en fr\u00e5ga.<br \/>\n\u00c4nnu intressantare \u00e4r den andra konstigheten i den andra multiplexen \u2013 alla program finns i den f\u00f6rsta PLP, medan den andra PLP vid l\u00e5g hastighet har en signal av ok\u00e4nt ursprung. \u00c5tminstone k\u00e4nner VLC-spelaren, som f\u00f6rst\u00e5r runt femtio videoformat och lika m\u00e5nga ljudformat, inte igen den. <\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Oleg-Malyutin\/sdr_receiver_dvb_t2\">Sj\u00e4lva projektet kan hittas h\u00e4r<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Projektet skapades f\u00f6r att fastst\u00e4lla m\u00f6jligheten att avkoda DVB-T2 med hj\u00e4lp av SdrPlay (och nu \u00e4ven AirSpy), s\u00e5 detta \u00e4r inte ens en alfa-version.<\/p>\n<p><\/p>\n<p>P.S. Medan artikeln skrevs med sv\u00e5righet, lyckades jag koppla PlutoSDR till projektet.<\/p>\n<p><\/p>\n<p>N\u00e5gon kanske snabbt s\u00e4ger att det bara finns 6Msps f\u00f6r IQ-signalen p\u00e5 USB2.0-utg\u00e5ngen, men minst 9,2Msps beh\u00f6vs, men det \u00e4r redan ett separat \u00e4mne.<\/p>\n<p>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/522150\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Software Defined Radio (\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e-\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u0430\u044f \u0440\u0430\u0434\u0438\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430) \u2014 \u044d\u0442\u043e \u043c\u0435\u0442\u043e\u0434 \u0437\u0430\u043c\u0435\u043d\u044b \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u043c\u0435\u0442\u0430\u043b\u043b\u0443 (\u0447\u0442\u043e, \u0432 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435, \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0434\u043b\u044f \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u044f) \u043d\u0430 \u0433\u043e\u043b\u043e\u0432\u043d\u0443\u044e \u0431\u043e\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. SDR \u043f\u0440\u043e\u0440\u043e\u0447\u0430\u0442 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0431\u0443\u0434\u0443\u0449\u0435\u0435 \u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u043e\u043c \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0441\u043d\u044f\u0442\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0434\u0438\u043e\u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432. \u041f\u0440\u0438\u043c\u0435\u0440\u043e\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434 \u043c\u043e\u0434\u0443\u043b\u044f\u0446\u0438\u0438 OFDM (Orthogonal frequency-division multiplexing), \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u0442\u0430\u043b\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0442\u043e\u0434\u043e\u043c SDR. \u041d\u043e \u0435\u0441\u0442\u044c \u0432 SDR \u0438 \u0435\u0449\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":96002,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-96001","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Software Defined Radio (\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e-\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u0430\u044f \u0440\u0430\u0434\u0438\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430) \u2014 \u044d\u0442\u043e \u043c\u0435\u0442\u043e\u0434 \u0437\u0430\u043c\u0435\u043d\u044b \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u043c\u0435\u0442\u0430\u043b\u043b\u0443 (\u0447\u0442\u043e, \u0432 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435, \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0434\u043b\u044f \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u044f) \u043d\u0430 \u0433\u043e\u043b\u043e\u0432\u043d\u0443\u044e \u0431\u043e\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/sdr-dvb-t2-receiver-na-c\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47SDR DVB-T2 receiver \u043d\u0430 C++ | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"Software Defined Radio (\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e-\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u0430\u044f \u0440\u0430\u0434\u0438\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430) \u2014 \u044d\u0442\u043e \u043c\u0435\u0442\u043e\u0434 \u0437\u0430\u043c\u0435\u043d\u044b \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u043c\u0435\u0442\u0430\u043b\u043b\u0443 (\u0447\u0442\u043e, \u0432 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435, \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0434\u043b\u044f \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u044f) \u043d\u0430 \u0433\u043e\u043b\u043e\u0432\u043d\u0443\u044e \u0431\u043e\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/sdr-dvb-t2-receiver-na-c\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-06T11:42:04+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-06T11:42:04+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47SDR DVB-T2-mottagare i C++ | ProHoster","description":"Software Defined Radio (programmerbar radiomottagare) \u00e4r en metod f\u00f6r att ers\u00e4tta metallarbete (vilket i grunden \u00e4r bra f\u00f6r h\u00e4lsan) med huvudv\u00e4rken av programmering.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/sdr-dvb-t2-receiver-na-c","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47SDR DVB-T2 receiver \u043d\u0430 C++ | ProHoster","og:description":"Software Defined Radio (\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e-\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u0430\u044f \u0440\u0430\u0434\u0438\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430) \u2014 \u044d\u0442\u043e \u043c\u0435\u0442\u043e\u0434 \u0437\u0430\u043c\u0435\u043d\u044b \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u043c\u0435\u0442\u0430\u043b\u043b\u0443 (\u0447\u0442\u043e, \u0432 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435, \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0434\u043b\u044f \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u044f) \u043d\u0430 \u0433\u043e\u043b\u043e\u0432\u043d\u0443\u044e \u0431\u043e\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.","og:url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/sdr-dvb-t2-receiver-na-c","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-06T11:42:04+00:00","article:modified_time":"2020-10-06T11:42:04+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"96001","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:53:26","updated":"2022-09-28 21:02:51","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/96001","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=96001"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/96001\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media\/96002"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=96001"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=96001"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=96001"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}