Enkodowanie Przezentacji dla Zoltodziobow.
Transkrypt
Enkodowanie Przezentacji dla Zoltodziobow.
Encodowanie prelekcji dla żółtodziobów Grzegorz „GREY” Ponikierski Sprzęt: ● kamera ● operator kamery ● komputer z: ● złączem IEEE1394 (FireWire) ● naprawdę pojemnym dyskiem ● paroma szybkimi rdzeniami procesora Plan działania: 1. zgraj 2. wyedytuj 3. wybierz kodeki i kontener 4. zencoduj audio 5. oblicz videobitrate i rozmiar ramki 6. sprawdź czy nagranie ma przeplot 7. zencoduj video 8. zmuksuj 9. wystaw DV info: ● rozdzielczości obrazu 720x576 ● dźwięk stereo PCM ● 1h nagrania = 12.7 GB ● złącze IEEE1394 (FireWire) Software: 1. modułu jądra raw1394, Device Drivers -> IEEE 1394 (FireWire) support -> IEEE 1394 (FireWire) support -> Raw IEEE1394 I/O support 2. bibliotek libdv, libraw1394, libavc1394, libiec61883, 3. jednego z narzędzi potrafiących skorzystać z tych bibliotek, np.: - Avidemux (tylko edycja) - Cinelerra - dvgrab (tylko zgrywanie) - Kino - LiVES Teraz przejdziemy do programu Kino aby zgrać sobie trochę nagrania z naszej wyimaginowanej kamerki, a następnie wyciąć sceny, które nas interesują. +---------------------+-----------+-----------+-----------+ | File | Video | Audio | Container | +---------------------+-----------+-----------+-----------+ | prelekcja-audio.ogg | --| Vorbis | Ogg | +---------------------+-----------+-----------+-----------+ | prelekcja.ogv | Theora | Vorbis | Ogg | +---------------------+-----------+-----------+-----------+ | prelekcja.mkv | H.264 | Vorbis | Matroska | +---------------------+-----------+-----------+-----------+ Software: - ffmpeg2theora - mkvtoolnix - MPlayer+MEncoder - oggenc Główne zależności: - (FFMPEG) libavcodec, libavformat, libavutil - (Xiph.org) libogg, libtheora, libvorbis - libmatroska - x264 Najpierw encodujemy dźwięk po to by: 1. obliczyć videobitrate'u 2. my mieć osobny pliku audio 3. by odciążyć procesor przy encodowaniu video Wyciąganie dźwięku: $ mplayer prelekcja.dv -ao pcm:file=prelekcja.wav -vc dummy -vo null Encodowanie: $ oggenc prelekcja.wav -a GREY -l "Jesień Linuksowa 2007" -t "Encodowanie prelekcji dla żółtodziobów" -–downmix -o prelekcja.ogg Obliczenia: videobitrate = (docelowy_rozmiar_w_MB rozmiar_audio_w_MB) * 1024 * 1024 / dlugosc_nagrania_w_s * 8 / 1000 UWAGA! ABR, CBR, multipass. Rozmiary ramki dla: ● Theory muszą być podzielne przez 8 ● H.264 muszą być podzielne przez 16 UWAGA! Zachowaj proporcje rozmiaru! UWAGA! Przeplot! Encodowanie video (H.264+Vorbis+Matroska) $ mencoder prelekcja.dv -ovc x264 -oac lavc -of lavf -x264encopts bitrate=xxxx:opcje_jakosci -lavcopts acodec=vorbis -lavfopts format=matroska -o prelekcja.mkv Bardzo wysoka jakość: subq=6:partitions=all:8x8dct:me=umh:frameref=5:b frames=3:b_pyramid:weight_b Wysoka jakość: subq=5:8x8dct:frameref=2:bframes=3:b_pyramid:wei ght_b Szybka: subq=4:bframes=2:b_pyramid:weight_b Encodowanie video (H.264+Vorbis+Matroska) Usuwanie przeplotu: -vf pp=fd Skalowanie: -vf scale=x:h Wielowątkowość x264: threads=auto Encodowanie video (Theora+Vorbis+Ogg) $ ffmpeg2theora prelekcja.dv -v10 -Vxxxx -c1 -o prelekcja.ogv Usuwanie przeplotu: --deinterlace Skalowanie: -x -y Muksowanie Matroska $ mmg $ mkvmerge -o "/home/grey/prelekcja.mkv" -d 0 -A -S /home/grey/prelekcja.avi --language 0:pol -a 0 -D -S /home/grey/prelekcja-audio.ogg --trackorder 0:0,1:0 Gotowe! ● wystaw pliki na FTP ● opatrz pliki licencja Creative Commons ● podlinkuj je do strony konferencji ● napisz o tym na 7thGuardzie itp. Dziękuję za uwagę! ^__^ Czy są jakieś pytania?