Puteti downloada

arhivele necesare mai de sus....in cazul in care nu porneste downloadul intrati va rog pe FORUM si le puteti descarca de acolo fara probleme.

 

CUM SA FACI TV ONLINE

 

Streaming video cu material inregistrat

Streaming video live

 

Streaming video cu material inregistrat

Introducere

 

Scopul acestui material este de a explica cum se poate face transmisie video in direct, cu un material inregistrat. Deci puteti face stream video cu propriile videoclipuri de pe HDD, In acest fel puteti deci "emite" pe net sub forma unui post TV de muzica, unde transmiteti ce va doreste inima, in limita materialului video achizitionat pina in prezent. Foarte important este sa aveti ip public pentru a transmite pe net, daca nu aveti, va limitati la reteaua de cartier din care faceti parte

 

Mai intai downloadati kiturile de instalare necesare .Inainte de a trece mai departe trebuie mentionat faptul ca transmisia se face numai si numai cu fisiere .nsv. Dupa mai multe incercari am ajuns la concluzia ca winampul, culmea, este cea mai tare gaselnitza in video streaming, deci zic eu ca daca va pasioneaza sa va jucati cu asa ceva, merita efortul, pt ca aveti calitate f mare deoarece faceti transmisia p2p, in retea sau metropolitan. In comparatie cu yahoo messenger de ex (videoconferinta) e net superior vis-a vis de calitatea imaginii. Formate specializate care sunt utilizate pe net pt videostream ar mai fi quicktime si realmedia insa din testele pe care le-am facut eu consider ca nsv-ul necesita latime de banda ceva mai mica la aceeasi calitate, de aceea il recomand.

Deci trebuie sa convertim toate fisierele video din avi, mpeg sau alte formate in nsv. Aici e partea cea mai nasoala pentru ca dureaza. Pasii ar fi simpli: Inaintea convertirii propriu-zise a fisierelor in fisiere.nsv se face o configurare a parametrilor de encodare, apoi encodarea propriu-zisa in nsv si apoi transmisia propriu-zisa cu fisierele .nsv obtinute.

 

In primul rand trebuie instalate softurile necesare:

  • shoutcast-1-9-4-windows.exe, serverul shoutcast cu care facem transmisia (acelasi cu care se transmite radio, presupun ca ati ascultat posturi de radio pe net)
  • NSVtools_repack.exe - pachetul nsvtools_repack

Pentru o encodare optima trebuie folosit codecul video VP62 (ultima versiune), Ar fi recomandat totusi sa folositi si nsvenc_vp6_setup.exe care instaleaza deopotriva vp61 si vp 62

Pt audio, in loc de clasicul mp3 recomand AAC care zic eu ca se aude mai bine la bitrate-uri mai scazute........Puteti deasemeni sa folositi noul AACPlus care la bitrate-uri f mici se aude excelent. Pt a-l putea folosi, avetzi

c:\Program Files\Winamp\Plugins\enc_aacplus.dll . Winampul pe care-l folositi trebuie sa aiba suport aacplus, evident si numai v5.09, v5.1, v511, v512 au asa ceva. Copiati acest dll in c:\Program Files\NSVtools\ dupa care il redenumitzi

nsv_coder_aacp.dll

Deci instalati 1. pt stream cu winampul sau 2. pt stream in http:// cu ActiveX sau mai bine pe amandoua :D, e mai bine asa.

  1. on2_vp6_nsv.exe, codecul VP62 se instaleaza acolo unde este deja instalat nsvtools
  2. nsvenc_vp6_setup.exe, acesta instaleaza codecul vp 61 intr-un folder unde ii specificatzi.
  3. Pt cine nu intelege la varianta 1 "stream cu winampul" cel care va "vizioneaza" pune un url in winamp 5 si i se deschide "tv-ul" emis de voi in winamp in fereastra video

    In cazul in care optati pentru varianta 2, streamul de face pe http:// adica cel care va vizioneaza pur si simplu deschide Internet Explorerul la un anumit URL unde se afla montat tv-ul vostru. Aici aveti 2 posibilitati: Pagina html unde implementati tv-ul poate fi la voi pe hard sau undeva pe internet. Daca tineti neaparat sa fie la voi in calculator trebuie sa aveti instalat un server de web (de exemplu apache de aici) unde puneti fisierul tv.htm in care am pus eu tot ce trebuie....daca nu, uploadati acest tv.htm undeva pe net....oferta e mare. In sursa fisierului tv.htm trebuie sa modificati niste parametri, voi explica mai jos. Deci cel care va "vizioneaza" nu trebuie decat sa intre pe http://www.blabla.ro (daca aveti domeniu) sau de pe retea http:// 192.168.1.xxx:port si se conecteaza la serverul vostru unde i se deschide tv-ul in browser (am spus mai jos, merge numai cu Internet Explorer din pacate. Poate fi facut sa functioneze si cu firefox dar numai cu vp31, care e un codec mai vechi si se vede mai prost, deci nu merita). Asta nu conteaza decat la sfarsit, deci sa revenim...

    Dupa ce am instalat ce era de instalat putem trece la treaba . Cel mai bine e sa copiati in acest folder (unde e instalat nsvtools) toate videoclipurile pe care vreti sa le folositi. Pt a encoda fisiere mp(e)g e simplu, pt avi e posibil sa va trebuiasca ceva in plus....voi explica mai jos.

    Pentru asta, trebuie obligatoriu sa aveti instalat divX, de preferinta ultimul, de aici in care trebuie bifat obligatoriu la Quality Settings, Support Generic Mpeg-4

    P.S. De mentionat faptul ca marea majoritate a userilor au instalate in calculatoarele personale codec pack-uri care uneori duc la o functionare dezastruoasa a sistemului si implicit la imposibilitatea folosirii encoderului NSV. Deci dupa ce instalati windowsul, (la modul general) instalati doar divX, Xvid (sau ffshow daca doriti are suport full mpeg4),AC3 si quicktime 6.5.2 pt suport apple mov si 3gp, eventual realplayer....daca va intereseaza....restul vin preinstalate cu win XP! foarte rar veti gasi vreun fisier video care sa nu mearga daca aveti astea instalate.Chiar daca gasiti, nu instalati sub nici o forma codec-packuri! gasiti strict codecul de care aveti nevoie!

    In concluzie, daca aveti sistemul facut varza din cauza codecurilor instate aiurea, un simplu un-install nu va va rezolva problema, trebuie sa curatati din registri codecurile, sa stergeti niste dll-uri, dar e mai complicat, DECI, in cazul asta e posibil ca encoderul NSV sa nu functioneze ....asa ca pina nu curatati sistemul sau nu reinstalati windowsul, nu aveti nici o sansa sa faceti stream video cu metoda asta!...s-au vazut cazuri

     

    Deci ati copiat in folderul unde e instalat nsvtools, un nr de videoclipuri, mpeg1 sau 2 sau avi .

    Atentie! toate trebuie encodate cu acelasi bitrate audio si video, la acelasi nr de frameuri, etc....deci exact aceleasi setari pt fiecare fisier, altfel nu merge cum trebuie! Deci facem setarile, apoi encodam fiecare fisier identic.

     

    Configurare

     

    In folderul cu pricina deschideti cmd (deci in fereastra dos) si dati comanda nsvenc .Va aparea o lista cu parametri. Dati comanda nsvenc/config si va aparea fereastra NSVenc configuration.

     

     

    Aici bifatzi resizing, unde puneti 320*240 zic eu ca ar fi optim....se poate si mai sus, kiar 640*480 dar dureaza encodarea unui videoclip 100 de ani (in comparatie cu xvid dureaza mai mult). Bifatzi si High quality resize . La audio processing punem 44100 HZ stereo.Volume multiplier lasatzi 1 iar la Output frame rate bifatzi si puneti 25.00000 fps. Jos dreapta e butonul NSV encoder configuration.Apasati pe el. Vi se deschide acum fereastra de unde faceti setarile . In stanga alegeti codecul audio si bitrate-ul. Dupa cum am spus, se poate folosi mp3, aac sau aacplus. nu umblatzi decat jos unde selectati AACplus si bifati aacplus v2 (asta daca ati copiat dll-ul de mai devreme acolo unde e instalat nsvtools) si puneti bitrate 64k sa zicem sau kiar mai mic, se aude bine f bine. Din testele pe care le-am facut cu aacplus pot sa spun ca se aude bine si cu bitrate 32kbps, incredibil! Puteti folosi deasemeni AAC normal, se aude f bine si acesta....mp3-ul deja e depasit...

    In dreapta Video format aveti VP3 3.1, VF62/vfw si VF61/vfw pe care-l si alegeti. Dedesupt bitrate-ul. Aici e greu de ales. Daca faceti video stream pe LAN puteti sa puneti si 1000, dar pt net e enorm (ma rog pt fibra pe 100 metropolitan, nu).Eu am facut teste pe lan cu 800. De ex un film DVDRip avi Xvid pe un CD are cam pe acolo bitrate-ul imaginii. Daca vreti sa faceti stream pe net cu latime de banda mult mai mica alegeti bitrateul undeva la maxim 300-400kbps, nr frameuri<25 (eventual15-20), dim imagine 320*240.......dar calitatea va scadea simtitor. Puteti merge pe ideea de a face doua grupuri de fisiere, unul cu care faceti stream in retea si un altul cu care transmiteti pe net.

    Sub Bitrate aveti modul de encodare, unde trebuie ales parametrul in functie de ce va intereseaza. Pt o calitate foarte buna ar trebui folosit "One Pass - Best Quality", dureaza foarte mult encodarea dar calitatea este maxima intr-un pas. Teoretic in 2 pasi ar trebui sa rezulte un fisier.nsv si mai calitativ dar si asa dureaza f f mult intr-un singur pas....De obicei pt o transmisie la calitate buna se foloseste "Good Quality Fast Encoding".Comparativ cu prima varianta calitatea este insignifianta.

    Pt viteza trebuie selectat Realtime / Live Encoding, , fisierele se encodeaza mult mai repede dar si calitatea lasa de dorit.....Recomandat pt prepararea fisierelor .nsv cu care vreti sa faceti transmisie la calitate scazuta cu un bandwith f mic. In cazul in care ati optat la alegerea lui vp62 mai apar niste obtiuni: La End usage trebuie bifata obtiunea de jos, Local file playback(VBR). Bifati obligatoriu KeyFrame Auto Keyframe. Acestea se selecteaza apasand butonul Configure.Mai aveti de selectat distanta dintre keyframeuri, Max Frames between Keys;puneti 300,default e 360 parca. Cam asta ar fi toata configurarea pt a creea fisierele .nsv

     

     

    Encodarea propriu-zisa

     

    nsvenc/DS fisiersursa.ext fisierdestinatie.nsv - in general pt fisiere mp(e)g

    exemplu: nsvenc/DS videoclip1.mpg videoclip1.nsv

    nsvenc/DS /fr=xx.xx fisiersursa.ext fisierdestinatie.nsv - in general pt fisiere avi

    exemplu: nsvenc/DS /fr=25.00 videoclip1.avi videoclip1.nsv

    fr - reprezinta nr de frameuri al avi-ului pe care-l encodati si ca sa vedeti framerate-ul va trebuie gspot de aici

    In cazul in care aveti avi-ul in format 16/9, in urma encodarii, nsv-ul se va intinde pe verticala pina la 4/3. Pentru a evita acest lucruaveti 2 posibilitati la alegere:

    • 1. Instalati Avisynth 255 , il puteti dl de aici.Facetzi un mic fisier text pe care-l botezati parametri.avs sa zicem. In el scrietzi urmatoarele randuri:

    AVISource("c:\sursa.avi")
    Levels(0, 1, 255, 0, 255)
    AddBorders(0, 64, 0, 64)

    unde prima linie specifica locatia avi-ului, a doua modifica usor brightness-ul, iar a treia, cea mai importanta bune 2 benzi negre sus si jos cu cate 64 de pixeli (cazul nostru). Cu Avisynth puteti face f. multe modificari in parametri unui file.avi dar nu este subiectul nostru de discutie. Salvati fisierul.

    nsvenc parametri.avs videoclip.nsv ( nu mai este necesara specificarea nr de frameuri)

    • 2. Daca vi se pare greoaie folosirea avisynth atunci instalati ffdshow (filter foarte cunoscut si folosit), intrati in Configuration, bifati Resize and aspect, apoi bifati Specify aspect ratio unde trebuie sa fie selectat 4:3, in dreapta trebuie selectat Resize always iar mai jos trebuie bifat Keep originalaspect ratio, OK de jos si gata, encodati fisierul avi normal, ca in exemplul de mai sus.

    Repetati aceaste operatiuni de encodare pina strangeti un numar de fisiere.nsv (inca o data, trebuie sa aiba toate exact aceleasi setari, altfel nu va functiona cum trebuie!)

    Deci acum avem un numar de fisiere.nsv in folderul unde e instalat nsvtools.Faceti acum un subdirector MMM de ex, unde mutati toate fisierele.nsv.

    Streaming

     

    Inainte de a trece la transmisia propriu zisa, trebuie facut un fisier text in folderul unde e inst nsvtools pe care-l botezati "setari.txt" de exemplu.In fisier scrieti exact asa:

    changeme

    content-type:video/nsv

    icy-metadata:0

    icy-name:Rock videos

    icy-genre:Video

    icy-pub:0

    icy-br:128

    icy-url: http://www.shoutcast.com/

    icy-irc:#chan

    icy-icq:1234567

    icy-aim:SomeUser

    icy-reset:1

    Din tot acest script nu conteaza decat primul rand, unde e o parola, aceeasi din fisierul de configurare al shoutcast-ului si randul al 4-lea unde puneti ce nume vreti dupa doua puncte.restul nu prea conteaza.....

    deci salvati fisierul setari.txt cu acest continut.

    Acum rulati sc_serv.exe de unde e instalat shoutcastul. Aveti sus dreapta in meniu edit config. Daca dati clic va deschide fisierul de configurare sc_serv.ini in notepad binenteles. Aici modificati: MaxUser=10 (cati useri pot intra pe server), Password=changeme (deci trebuie sa fie exact aceeasi din fisierul facut mai devreme, setari.txt, primul rand!), PortBase=9150 (portul pe care faceti streaming, default e 8000 parca). Inchideti fisierul, salvati, inchideti serverul cu kill server si redeschideti cu sc_serv.exe binenteles, altfel serverul nu ia in considerare setarile........deci aveti shoutcast setat, il puteti minimiza cu Hide monitor.

     

    In sfarsit am ajuns la faza finala, la streaming-ul propriu zis.

    pt asta folositi comanda nsvscsrc

     

    Deschideti fereastra dos cu cmd in folderul unde e instalat nsvtools........si dati comanda asta:

    nsvscsrc /shuf /SC host:port:password:setari.txt directory

     

    unde:

     

    -/shuf (shuffle) parametru ce presupune transmiterea fisierelor .nsv in ordine aleatorie

    - host este ip-ul vostru, de ex 192.168.1.16

    - port este portul din shoutcast ales mai devreme `

    - password este parola din shoutcast aleasa anterior

    - setari.txt este fisierul pe care l-am creat mai sus

    - directory este folderul nostru cu fisierele.nsv pe care l-am denumit MMM

    deci iata cum ar trebui sa arate:

    nsvscsrc /shuf /SC 192.168.1.16:9150:changeme:setari.txt MMM

     

    Din ac moment streamul functioneaza ok, ruland videoclipurile.nsv din folderul MMM in ordine sau in mod aleator, depinde de parametrii alesi ai comenzii nsvscsrc.

     

    Proba si nu numai

     

    Daca tot ati ajuns pina aici trebuie sa faceti si proba, nu?

    In winamp 5 puneti acest URL: http://192.168.1.16:9150/;stream.nsv si va conectati la propriu stream.

    • Varianta TV old. Pt stream in browser exista fisierul tv.htm (stream in html cu ActiveX control) Copiati nsvplayx_vp6_aac.cab in acelasi folder unde se situeaza fisierul tv.htm ( trebuie specificata in sursa calea catre cab si linkul catre stream). Trebuie mentionat faptul ca momentan pentru Firefox sau Opera nu exista suport pentru vp61, decat pt vp31, care e cel mai vechi. Deci numai Internet Explorer poate rula vp61.Cu aceasta varianta mergeti numai pe vp61, cu vp62 nu merge!
    • Varianta TV new. Aceasta varianta de player este facuta de altcineva si fata de cea veche are imbunatatiri majore, in primul rand posibilitatea de a rula vp62!!!! Ideea este ca arata mai frumos si are unele buguri fixate ca de ex faptul ca cu cel vechi asteptai in unele cazuri foarte mult pina se incarca pagina. Pentru a-l folosi aveti nevoie de ampx_en_dl.cab pe care-l copiati linga tv.html. In sursa fisierului tv.html din folderul TV new, cautati var leakurl = "http://195.27.230.26:80;stream.nsv"si modificati acest ip cu ip-ul pe care emiteti adica : http://192.168.1.16:9150;stream.nsv

      Apoi cateva randuri mai jos aveti codebase=\"http://videostream.home.ro/tv/ampx_en_dl.cab\, unde se specifica calea catre cab. Acest lucru dupa cum vedeti se specifica in sursa de doua ori si trebuie modificat de asemenea de 2 ori. Veti modifica "http://videostream.home.ro" cu numele domeniului unde aveti uploadata pagina ...........Mai puteti modifica marimea ferestrei video daca doriti, adica in loc de 640*480 sa puneti o dimensiune mai mica, mai mare deja nu are sens. NU uitati sa modificati de doua ori asa cum este scris in sursa!

      Dupa ce salvati fisierul tv.htm, il uploadati undeva pe net cu tot cu fisierele adicente (cab-ul si gifurile) din folderul TV new. Mai exact uploadati folderul TV new cu totul. Dupa cum am mai spus, elegant ar fi ca tv-ul in browser sa fie hostat la voi pe HDD daca tot aveti ip public....dar trebuie sa aveti server de web si nu cred ca este o solutie simpla la indemana oricui...dar in cazul in care incercati, folositi apache.

      Fata de "TV old", "TV new"este recomandat pt o functionare mai stabila a streamului.

    OBS: cele 2 cab-uri cu playerele activeX si celelalte fisiere adiacente sunt arhivate intr-un fisier cu link cu parola. Daca e intr-adevar cineva interesat de toata polologhia asta si a incercat ce am explicat sa ma caute cu incredere.

    Daca nu ati gresit nimic pina acum, deschizand URL-ul respectiv nu faceti decat sa va conectati la propriul server shoutcast care e responsabil cu streamul video, asa cum poate face oricine de pe reteaua din care faceti parte sau de pe internet (daca aveti ip public).

     

    Sper sa fi fost de folos explicatiile mele, daca nu, ma gasiti pe FORUM Iata link mai jos catre o pagina ce contine stream video. Am folosit scriptul mai nou care se pare ca merge mai stabil.

     

    Streaming video live

     

    • Prin aceasta metoda voi explica cum se poate face stream video in direct cu un anumit device. Puteti Folosi o camera web, un tunner tv sau daca nu aveti ce sa atasati la calculator, puteti chiar sa capturati pur si simplu imaginea monitorului sau o anumita portiune din el. In cazul in care folositi o camera web, aceasta trebuie instalata in prealabil corect pt ca sistemul sa o poata detecta cum trebuie, sistemul de operare sa poata vedea driverul de captura. Acelasi lucru este valabil si in cazul tunerului tv. Fata de transmiterea fisierelor nsv cu metoda anterioara, transmisia live se face mult mai usor. In nsvtools, aplicatia responsabila cu encodarea fisierelor.nsv din metoda anterioara, nsvenc, cu anumiti parametri, poate fi folosita pt transmisie live. Mai exact face encodare in .nsv real time si trimite direct la serverul shoutcast materialul capturat, nu mai salveaza pe hard propriu zis fisierul.nsv. Nu este recomandata folosirea sa intrucat mai exista nsvcap.exe, care este o aplicatie separata, mai stabila si mai complexa, ce se ruleaza normal, nefiind nevoie de deschiderea consolei dos.

    Comentam varianta in care aveti o camera web conectata care functioneaza in parametri normali si un microfon de asemeni in stare de functionare. De mentionat faptul ca in cazul in care aveti o camera digitala si o placa firewire corect instalata(poate fi implementata si pe motherboard) win XP o detecteaza by default, nu este nevoie de nimic in plus. Avantajul este diferenta mare calitativa a imaginii fata de un webcam.

    In momentul in care lansati aplicatia nsvcap, treceti la configurare: Voi face o scurta trecere in revista a meniurilor, ce trebuie selectat si modificat in ele pt a facet transmisia. Inainte de toate trebuie specificat faptul ca shoutcast server trebuie sa fie online, evident.

    Prima data va duceti in File/Set capture Destination unde la Output selectati Shoutcast host, apoi la Shoutcast server scrieti ip-ul , portul, parola din shoutcast, iar in headers sunt parametri de genul celor care se gasesc in fisierul setari.txt din metoda anterioara, dar nu sunt cititi din acel fisier, ci sunt separat.....deci nu aveti nici o treaba cu acel fisier, modificati aici la headers numele, genul si ceilalti parametri daca va intereseaza. Mai departe in meniul devices trebuie sa apara deviceurile atasate la calculator, adica camera web si sound blasterul computerului prin care capturati sunetul cu microfonul. Selectati ambele, placa de sunet si web camul . La Obtions mai trebuie selectat Videoformat unde PUTETI selectata dimensiunea frameului streamului. Mai departe la Capture bifati Capture Audio ca sa aveti sunet, apoi NSV/Config unde sunteti familiarizati cu ce trebuie ales daca ati incercat medoda stremului cu fisiere independente pe care am explicat-o mai sus. Precizez faptul ca acelasi meniu de configurare se poate activa din consola, dar in acel caz setarile se fac pentru stream cu material inregistrat (cu nsvscsrc). Pentru activarea aceluiasi meniu pentru stream live (subiectul discutiei de la acest capitol) activati meniul de aici din nsvcap! Modificati in acel meniu setarile codecurilor audio/video exact ca in cazul transmisiei cu fisiere locale cum am explicat MAI SUS. Cam asta e tot, pentru inceperea transmisiei, selectati din meniu Capture/Start capture si transmisia a inceput! Faceti proba sa vedeti daca nu ati gresit ceva punand streamul in winamp, vedeti AICI.

    Cu aceasta metoda ati realizat un stream la un bitrate mic de o calitate EXCEPTIONALA comparativ cu cea pe care o poate face yahoo messenger. In loc sa faceti stream cum face tot omul cu yahoo messenger "view my cam",care se vede super infect, dati celui care va vizioneaza un link in care ati montat transmisia live in html si efectul e garantat! Totusi, pentru a putea face acest lucru aveti nevoie dupa cum am spus de ip public si de un calculator destul de performant, pentru ca nsvcap face encodarea in timp real ceea ce solicita sistemul foarte mult. Un singur dezavantaj apare cu metoda aceasta de live streaming si anume faptul ca shoutcastul transmite streamul cu un anumit delay, cateodata chiar de cateva secunde...Mai exista si alte servere in afara de shoutcast si anume steamcast sau icecast insa niciunul nu sta prea bine la acest capitol...

     

    • Prin aceasta metoda voi explica cum se poate face stream video in direct capturand o portiune de ecran sau chiar tot ecranul monitorului vostru cu CAMTASIA. Aceasta procedura este utila in cazul in care vreti sa faceti un post de radio cu fereastra video, fereastra in care sa apara niste fractali de exemplu, sau altceva...... Downloadati Camtasia, instalati si rulati camtasia studio. Apasati din stanga Record the screen si va deschide Camtasia Recorder unde aparea un wizard. Inchideti-l. Apoi in meniu Tools/Options aveti in tabul Live, "Enable live output" pe care-l bifati. Apoi reactivati wizardul cu Capture/Wizard unde alegeti o portiune de ecran sau intregul ecran,pozitia, dimensiunea ferestrei. In ultimul pas puteti bifa "Disable display acceleration during capture". Dupa ce setarile sunt gata, apasati F10 pentru a incepe captura. In acest mod camtasia recorder transmite captura la nsvcap. Setarile nsvcap raman aceleasi.