Przesyt pewnym czarodziejem

Nie będę się nad tematem rozwlekał, będzie krótko i treściwie. 😉
Wczoraj znowu na którymś kanale RSS pojawiły się doniesienia, że pani Rowling jest kolejny rok najlepiej zarabiającą pisarką na świecie, to zaś z kolei skłoniło mnie, by wyrazić pewne odczucie, które we mnie jakoś ostatnio tylko narasta. Chodzi o pewien przesyt, absolutny przesyt Harrym Potterem.
Zawsze lubiłem te książki, w dzieciństwie, jak pewnie większość czytelników, zachwycałem się przygodami młodego czarodzieja. Już jako dziecko jednak nigdy nie wskazałbym Pottera jako najlepszej książki na świecie. Jest jednak w nim coś, co dało mu popularność, o jakiej inni pisarze, od Maya przez le Guin po Szklarskiego, mogliby tylko pomarzyć. Nie, nie wiem co to. Może wyrwanie się z zasad, które przecież dzieci na swój sposób pociąga? Że można dać szlachetnego na pozór bohatera, skrzywdzonego przez wujostwo, biednego, a jednak mężnego i odważnego, który w złości może zapewnić świnki ogon kuzynowi (wiem, to był Hagrid) albo wysłać ciotkę pod sufit? Tak, to była ironia.
Nie chcę przekonywać, że książki pani Rowling są pełne zła i ukrytych zagrożeń, głównie dlatego, że ludzie tak twierdzący wkurzają mnie jeszcze bardziej od wspominanych powieści. Nie ma lektur złych, możemy tylko z nich złe wartości wyciągnąć, a historie z Hogwartu uczą nas też wiele dobrego, mamy postać Lupina, dylematy Snapea, piękną przyjaźń (choć akurat wcale nie mówię tu o pierwszoplanowej trójce, a Lunie).
Tylko czasem ludzie zachowują się, jakby innych powieści nie było. Widać to nawet na Eltenie, a co dopiero w sieci? Do czego powstaje 99,99999 procent fanfików? O jakich książkach ludzie potrafią pisać całymi godzinami, zastanawiać się nad różnymi ewentualnościami?
Przyznam, że odczuwam przesyt, absolutny przesyt Potterem, dyskusjami o Potterze, a nawet przeróbkami z Pottera. I coś czuję, że szybko mi ta przypadłość nie minie.

Skoro nawet ja to słyszę?

Od kilku miesięcy staram się uzupełnić lokalną kolekcję muzyczną. Są Spotify, są inne Apple Musice i chwała im za to, sam bardzo chętnie i często z zasobów Spotify korzystam. Zawsze jednak lubiłem mieć wszystkie zasoby muzyczne także w sposób możliwie fizyczny. A że dziś płyty CD są średnio rozsądnym rozwiązaniem, chociażby dlatego, że mój laptop nie ma stacji płyt CD (choć oczywiście posiadam taką po USB), dotyczy to lokalnych zbiorów.
Zawsze piosenki moich ulubionych wykonawców czy moje ulubione albumy przechowywałem w formacie flac. Teraz, mając do dyspozycji dwa razy większy dysk, uznałem, że zasadniczo mógłbym przejść na flac już z całą swoją biblioteką. Ale okazuje się, że sprawa nie jest wcale tak prosta, o nie.
Pobrałem właśnie takie fajne archiwum akurat Skaldów, ponad 2GB danych. I powiem wam, że wybitna musi być to jakość, skoro taki laik jak Dawid słyszy po nagraniach, że Flac może i to jest, ale raczej konwertowany ze skompresowanego strumienia w MP3. I to tak serio skompresowanego, więcej niż 64kbps bym temu nie dał. 😀
Wychodzi na to, że problemy są już dwa: po pierwsze dorwanie wersji radiowej, a po drugie czegoś, co jest dźwiękiem nieskompresowanym bezstratnie, a nie tylko taki udaje.

Dysk, drugi upgrade XPS-a

Druga z trzech zaplanowanych przeze mnie aktualizacji Della XPS 15 9550 to, jak zapowiadałem przy okazji wymiany kości RAM, nowy dysk.
Dość długo zastanawiałem się nad modelem, ostatecznie zdecydowałem się na dysk Adata XPG SX8200 Pro. Ryzyko o tyle, że jest to moja pierwsza styczność z dyskami SSD Adaty.
Prawdopodobnie mój wybór padłby na Samsunga 970 Evo Pro, ale testy donoszą, że model ten ma ogromny problem z przegrzewaniem się, zwłaszcza w laptopach, a doniesień tych jest tak wiele, że coś musi być niestety na rzeczy.

Parametry dysku (wg specyfikacji)

Pojemność: 1TB (właściwie 953GB)
Interfejs: PCI-E x4 Gen3 NVMe,
Szybkość odczytu: 3500MB/s,
Szybkość zapisu: 3000MB/s,
Odczyt Losowy: 390000 IOPS,
Zapis Losowy: 380000 IOPS,
TBW: 640TB.

Zaletą tu niewątpliwie są duże szybkości odczytu i zapisu, o praktycznym aspekcie za moment. Także nie można nie wspomnieć o bardzo niskiej cenie, 700zł za tej klasy SSD to naprawdę nie jest dużo.
Zawodem pewnym są wartości operacji losowych, 400 tysięcy IOPS w porównaniu z 500-550 osiągalnymi przez Samsunga to parametry tylko nieco powyżej przeciętnej.
Także TBW 640TB przy pojemności 1TB jest daną, która na kolana nie powala. Z drugiej strony mówimy o naprawdę tanim dysku, a parametry i tak klasują go w randze, że tak to ujmę, topowej, na stan roku 2019 w teście Benchmarkowym był to piąty dysk pod względem osiągów, a porównywalny z modelami kosztującymi nawet dwa razy tyle.

Jak to wygląda

Dyski NVMe, jeśli ktoś nie wie, są małe… Jak, nie wiem, pendrive, z tych mniejszych. Ważą tyle co piórko i przypominają bardziej kartę do jakiegoś chipu niż dysk.
Adata przyszła w wielkim kartonie, w którym był nieco mniejszy karton, w którym było małe pudełeczko, w którym była folia z dwiema częściami wielkości karty bankowej. Jeden element to dysk, drugi to radiator.
Od razu chciałbym wyjaśnić małą niepewność. Zwykło się mówić na wiatraczek procesora radiator, błędnie. Wiatraczek to wiatraczek, a radiator to radiator. Radiator to odpowiednio wyprofilowany przedmiot, który usprawnia krążenie powietrza, chłodząc to, do czego go przykleimy lub na czym nałożymy. Nie jest jednak w żadnym sensie elektryczny, nie ma wiatraczka, chłodzi wyłącznie kształtem zapewniającym przepływ powietrza.
Dokumentacja podaje, że radiator dla tego dysku jest elementem opcjonalnym i, jeśli nie zmieści się w gnieździe M.2, należy pozostawić dysk bez niego. U mnie w laptopie się jednak zmieścił.

Odczucia

Generalnie wydaje się, że dysk Adaty lepiej od fabrycznej Toshiby dogaduje się z procesorem. To oczywiście uproszczenie, ale znacznie mniej wysiłku kosztuje komputer zapis losowy, marudziłem przed momentem, że 400 tysięcy IOPS to nie jest dużo, ale poprzedni dysk miał IOPS tysięcy 250, więc jest to poprawa o ponad 50 procent.
Nie policzyłem niestety czasu wymaganego na instalację Windowsa 10 na poprzednim dysku, na tym jednak instalacja od momentu pierwszego restartu do ukazania się okna konfiguracji trwała 7 minut i 47 sekund, wliczając ponowne rozruchy, wkrótce zaktualizuję wpis o dane dotyczące Debiana, bo jeszcze go nie postawiłem.

Kilka danych

Najpierw będzie technicznie, a potem praktycznie.
Testy wykonane dla 16GB w 5 rundach programem Crystal Disk Mark wskazują:
Odczyt sekwencyjny: 3377.18MB/s
Zapis sekwencyjny: 2825.27MB/s
Odczyt losowy (blok 1MB): 1355.54MB/s
Zapis losowy (blok 1MB): 1273.36MB/s
Odczyt losowy (blok 4kB): 52.48MB/s
Zapis losowy (blok 4kB): 131.61MB/s
Wyniki są śliczne, zwłaszcza parametry odczytu. Co zaskakujące, dla bloków po 4kB odczyt okazał się mniejszy od zapisu, być może wynika to z czasu lokalizacji komórki.

Testy praktyczne

W testach tych kopiowałem między partycjami NTFS plik lub pliki zapełnione zupełnie losowymi bajtami. Poniżej wyniki.

Jeden plik, 25GB:
Prędkość średnia: 1017MB/s,
Czas kopiowania: 25,17s.

25 plików, 1GB każdy:
Prędkość średnia: 1039MB/s,
Czas kopiowania: 24,64s.

25000 plików, 1MB każdy
Uwaga! Rozmiar nieco mniejszy od powyższych, 25000MB to nie 25GB. 🙂
Prędkość średnia: 211MB/s,
Czas kopiowania: 118,48s.

Warto dodać, że w czasie wszystkich przeprowadzanych testów maksymalna temperatura wyniosła 49 stopni Celsjusza, a temperatura średnia to 43 stopnie Celsjusza, dane z programu Crystal Disk Info.

Podsumowanie

Adata XPG SX8200 Pro to z pewnością jeden z najlepszych dysków SSD na rynku, a przy tym o cenie, nie umiem inaczej tego nazwać, w segmencie śmiesznie niskiej. Konkurencyjny Samsung 970 Evo o tej samej pojemności kosztuje 300zł więcej, zaś warto tu wspomnieć, że w benchmarkach modele te idą łeb w łeb.
Nie będę tu listował zalet i wad, bo dysk mam zbyt krótko, by je podać. Na pewno jednak z zakupu na razie jestem bardzo zadowolony.
Warto jednak tu wspomnieć o bardzo ważnym, a przemilczanym w reklamach i opisach produktu kompromisie – kompromisie, który z resztą dotyczy i Samsungów, i Toshib, i Adat, i Corsairów. Obecnie nie posiadamy technologii umieszczania w sensownej cenie produkcyjnej 1-bitowych komórek w dyskach o pojemnościach liczonych w terabajtach. Używamy zatem 3 bitów na komórkę, technologia TLC. Żeby zaś usprawnić odczyt, zapełniamy te komórki tylko jednym bitem, by zachowywały się, jak dyski SLC. Dzięki temu możemy mówić o tak wielkich odczytach i zapisach, jak tutaj.
I wszystko działa ładnie, jak długo mamy do dyspozycji wolne komórki. Z czasem jednak danych zapisujemy więcej i więcej, a wolnych komórek zaczyna ubywać. Wciąż możemy przeprowadzać optymalizację dysku, jeśli jednak o tym zapomnimy, jakoś na poziomie jednej trzeciej zapelnienia, dysk zauważalnie zwolni.
Regularnie optymalizując go możemy ten proces odsunąć w czasie, ale mniej-więcej przy zapełnieniu 75-80 procent, już żadne optymalizacje cudów nie zdziałają i po prostu dysk będzie 3-4 razy wolniejszy. Dlatego ja sam unikam zapełniania dysku w tym zakresie, ostatnie 20-30 procent miejsca zachowując na dane bardzo tymczasowe.

Wzruszyłem się, jakoś tak

Chyba najlepiej będzie, jak po prostu zacytuję.
W projekcie udział wzięli:
Teatr Muzyczny w Poznaniu, Teatr Muzyczny w Łodzi, Teatr Muzyczny w Gdyni, Teatr Muzyczny Capitol we Wrocławiu, Teatr Muzyczny ROMA w Warszawie, Teatr Rozrywki w Chorzowie, Kujawsko-Pomorski Impresaryjny Teatr Muzyczny w Toruniu, Opera Bałtycka w Gdańsku, Opera i Filharmonia Podlaska w Białymstoku

Bo z programowaniem to jest tak

Siedzicie kilka godzin, dokładniej 2 godziny i 40 minut, nad jakimś kodem.
Wreszcie… Gotowe! Zostaje tylko to skompilować i poczytać jakąś książkę.
A potem…

Kompilacja rozpoczęła się 25.06.2020 22:07:58.
Szczegółowość rejestrowania została ustawiona na: Normal.Projekt „c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc.sln” w węźle 1 (domyślne elementy docelowe).
ValidateSolutionConfiguration:
Tworzenie konfiguracji rozwiązania „Release|Win32”.
Projekt „c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc.sln” (1) kompiluje „c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj” (2) w węźle 1 (domyślne elementy docelowe).
InitializeBuildStatus:
Modyfikowanie „Release\eltenvc.tlog\unsuccessfulbuild”.
ClCompile:
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX86\x86\CL.exe /c /I"C:\Program Files (x86)\OpenSSL-Win32\include" /I..\..\.. /Zi /nologo /W3 /WX- /diagnostics:column /O2 /Oi /Oy- /GL /D WIN32 /D NDEBUG /D _WINDOWS /D _USRDLL /D ELTENVC_EXPORTS /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /MT /GS /Gy /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"Release\\" /Fd"Release\vc142.pdb" /Gd /TP /analyze- /FC /errorReport:queue ..\..\..\dllmain.cpp
dllmain.cpp
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(478,12): warning C4101: "op": lokalna zmienna, do której nie istnieje odwołanie [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(479,5): warning C4101: "ret": lokalna zmienna, do której nie istnieje odwołanie [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,7): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,19): error C2065: "opus": niezadeklarowany identyfikator [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,34): error C2065: "pcm_buf": niezadeklarowany identyfikator [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,48): error C2065: "opus": niezadeklarowany identyfikator [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,70): error C2660: "opus_encode": funkcja nie przyjmuje 4 argumentów [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\opus\opus.h(263,48): message : zobacz deklarację "opus_encode" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,10): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,10): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "b_o_s" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,10): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,10): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500): message : zobacz deklarację "op" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "e_o_s" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,15): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,15): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500): message : zobacz deklarację "op" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "granulepos" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,13): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,13): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500): message : zobacz deklarację "op" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "packetno" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,11): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,11): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500): message : zobacz deklarację "op" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "packet" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,10): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,10): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500): message : zobacz deklarację "op" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "bytes" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(507,5): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(507,18): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(507,18): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(507,7): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "granulepos" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(509,36): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(509,1): error C2365: "ogg_stream_packetin": zmiana definicji; definicja poprzednia była "funkcja" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\ogg\ogg.h(157): message : zobacz deklarację "ogg_stream_packetin" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(511,1): error C2059: błąd składniowy: "while" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(511,53): error C2143: błąd składniowy: brakuje ";" przed "{" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(511,53): error C2447: "{": brak nagłówka funkcji (stary styl formalnej listy?) [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(518,1): error C2059: błąd składniowy: "return" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(519,1): error C2059: błąd składniowy: "}" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(519,1): error C2143: błąd składniowy: brakuje ";" przed "}" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
Kompilowanie projektu „c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj” wykonane (domyślne elementy docelowe) — NIEPOWODZENIE.

Kompilowanie projektu „c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc.sln” wykonane (domyślne elementy docelowe) — NIEPOWODZENIE.

Kompilacja NIE POWIODŁA SIĘ.

„c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc.sln” (domyślny element docelowy) (1)->
„c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj” (domyślny element docelowy) (2)->
(element docelowy ClCompile) ->
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(478,12): warning C4101: "op": lokalna zmienna, do której nie istnieje odwołanie [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(479,5): warning C4101: "ret": lokalna zmienna, do której nie istnieje odwołanie [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]

„c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc.sln” (domyślny element docelowy) (1)->
„c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj” (domyślny element docelowy) (2)->
(element docelowy ClCompile) ->
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,7): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,19): error C2065: "opus": niezadeklarowany identyfikator [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,34): error C2065: "pcm_buf": niezadeklarowany identyfikator [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,48): error C2065: "opus": niezadeklarowany identyfikator [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(498,70): error C2660: "opus_encode": funkcja nie przyjmuje 4 argumentów [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,10): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,10): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(500,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "b_o_s" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,10): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,10): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(501,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "e_o_s" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,15): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,15): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(502,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "granulepos" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,13): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,13): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(503,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "packetno" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,11): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,11): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(504,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "packet" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,3): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,3): error C3484: błąd składni: oczekiwano "->" przed zwracanym typem [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,10): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,10): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,1): error C2086: "int op": zmiana definicji [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(505,4): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "bytes" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(507,5): error C3927: "->": nie można używać końcowego typu zwracanego po deklaratorze niebędącym funkcją [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(507,18): error C3613: brak typu zwracanego po "->" (przyjęto typ "int") [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(507,18): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(507,7): error C2146: błąd składniowy: brakuje ";" przed identyfikatorem "granulepos" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(509,36): error C4430: brak specyfikatora typu – założono, że int. Uwaga: C++ nie obsługuje domyślnie typu int [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(509,1): error C2365: "ogg_stream_packetin": zmiana definicji; definicja poprzednia była "funkcja" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(511,1): error C2059: błąd składniowy: "while" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(511,53): error C2143: błąd składniowy: brakuje ";" przed "{" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(511,53): error C2447: "{": brak nagłówka funkcji (stary styl formalnej listy?) [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(518,1): error C2059: błąd składniowy: "return" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(519,1): error C2059: błąd składniowy: "}" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]
c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\dllmain.cpp(519,1): error C2143: błąd składniowy: brakuje ";" przed "}" [c:\Users\dawid\Documents\rpgxp\ELTEN\C++\elten.dll\eltenvc\eltenvc\eltenvc\eltenvc.vcxproj]

Ostrzeżenia: 2
Liczba błędów: 52

Czas, który upłynął: 00:00:01.56

Widocznie nie tylko ja „żyję przeszłością”

Pisałem właśnie nieco kodu do klienta Tyflopodcasta. A że dodałem do menu pomoc link do strony TP, sprawdziłem czy działa.
I tak surfując, odkryłem, jak piękne były kiedyś… Albo teraz są… Czasy. W każdym razie gdybyście chcieli posłuchać podcastów, pozwolę sobie przekleić instrukcję. No łezka mi się w oku zakręciła. 🙂

Audycji zamieszczonych w serwisie tyflopodcast.net słuchać można na wiele sposobów. Najprostszym jest wybieranie konkretnego odcinka bezpośrednio z naszej strony internetowej, naciskając Enter na odpowiednim odsyłaczu, znajdującym się na liście, sąsiadującej z informacjami o danej audycji. W zależności od konfiguracji przeglądarki WWW – albo uruchomi audycję za pomocą skojarzonego z przeglądarką odtwarzacza, albo zapisze plik z audycją na dysku.
Dodatkowo, można subskrybować wybrane kategorie lub całość serwisu przez dostępne z naszej strony kanały RSS. Tyflopodcast jest także dostępny w aplikacji Klango, czyli udźwiękowionym społecznościowym narzędziu, z którego bardzo chętnie korzystają osoby niewidome. Klango można pobrać ze strony www.klango.net.
Nie zapominamy również o naszych mobilnych słuchaczach. Audycje Tyflopodcastu dostępne są w aplikacji Nokia Podcasting, z której mogą korzystać posiadacze telefonów Nokia z systemem Symbian. Użytkownikom systemu iOS proponujemy Nasze audycje dostępne w serwisie iTunes, oraz audycje Tyflopodcastu do słuchania z poziomu dedykowanej niewidomym aplikacji iBlink Radio. Wszystkich, korzystających z systemu Android informujemy, że iBlink Radio dostępne jest również z poziomu Android Marketu.