Jurnal ELEMENTER. Vol. 1, No. 1, Mei 2015
51
Jurnal Politeknik Caltex Riau http://jurnal.pcr.ac.id
Pengaruh Panjang Segmen Video pada Dynamic Adaptive Streaming over HTTP (DASH) terhadap Kualitas Pengiriman Video H.265 Hamid Azwar Politeknik Caltex Riau, email:
[email protected]
Abstrak Saat ini sudah muncul video coding terbaru yaitu H.265 atau dikenal dengan nama High Efficiency Video Coding (HEVC). Dalam penerapan layanan video streaming menggunakan MPEG-DASH, representasi tingkat kualitas video yang terdapat pada Media Presentation Description (MPD) disusun oleh beberapa segmen video. Permasalahan yang muncul saat pengaturan panjang segmen video tersebut adalah pengaruh kualitas video yang diterima pada klien pada saat segmen video tersebut dikirimkan menggunakan MPEG-DASH. Penelitian ini menggunakan video H.265 untuk dikirimkan menggunakan MPEG-DASH yang dicampur dengan trafik background dari server FTP pada jaringan WLAN. Hasil penilitian ini menunjukkan video H.265 dapat digunakan untuk pengiriman secara adaptif menggunakan MPEG-DASH. Panjang segmen video yang semakin kecil akan menghasilkan nilai PSNR yang semakin besar. Segmen video yang semakin besar berdampak positif terhadap processor usage karena menghasilkan nilai yang semakin kecil. Kata kunci: HEVC, MPEG-DASH, H.265, PSNR, segmen Abstract Currently it appears the latest video coding H.265 or known as High Efficiency Video Coding ( HEVC ) . In the application of streaming video services using MPEG - DASH , the video quality level representations contained in the Media Presentation Description ( MPD ) composed by several video segments . The problems that arise when setting the length of the video segment is the influence of the received video quality at the client at the time of the video segments are transmitted using MPEG - DASH . This study uses H.265 video to be sent using the MPEG DASH mixed with background traffic from the FTP server on the WLAN network . The results of this research indicate H.265 video can be used for delivery of adaptively using MPEG - DASH . The length of the smaller video segment will generate greater PSNR . Video segments greater positive impact on processor usage because it produces smaller value. Keywords: HEVC, MPEG-DASH, H.265, PSNR, segmen
1. Pendahuluan Pada saat ini layanan streaming video merupakan teknologi yang sangat populer dimana layanan tersebut berupaya mengirimkan konten video secara kontinyu dari server menuju klien. Namun metode streaming video tersebut perlu ditingkatkan karena faktor kemampuan jaringan
52
Hamid Azwar
dan jenis pengguna yang heterogen. Teknologi pengiriman video dengan memberikan kualitas terbaik secara otomatis kepada pengguna telah menjadi tantangan yang sangat penting pada saat ini. Dengan menggunakan Hypertext Transfer Protocol (HTTP) yang merupakan protokol de facto dari layanan internet pada saat ini, metode streaming yang baru telah telah dilakukan penelitian dan pengembangan. HTTP Streaming telah menjadi pendekatan populer untuk memberikan konten multimedia melalui Internet. Pendekatan ini memiliki beberapa keuntungan. Pertama, infrastruktur internet telah berkembang secara efisien mendukung HTTP. Misalnya, fasilitas Content Delivery Network (CDN) menyediakan cache lokal sehingga mengurangi trafik yang diakses dari jarak jauh. Selain itu hampir semua firewall membuka port untuk mendukung koneksi terhadap HTTP tersebut. Kedua, dengan HTTP Streaming klien dapat mengelola streaming tanpa harus mempertahankan sesi pada server. Oleh karena itu , penyediaan layanan streaming dalam jumlah besar untuk klien tidak memaksakan biaya tambahan pada sumber daya server dan dapat dikelola oleh CDN menggunakan teknik optimasi HTTP. Untuk semua alasan ini, HTTP streaming telah menjadi pendekatan yang dominan dalam penyebaran konten secara komersial streaming platform seperti Apple HTTP Live Streaming, Microsoft Smooth Streaming dan Adobe HTTP Dynamic Streaming. Semua paltform tersebut menggunakan HTTP streaming sebagai metode pengiriman kontennya. Namun dalam implementasinya platform tersebut menggunakan format yang berbeda. Oleh karena itu untuk menerima konten dari setiap server, perangkat pengguna harus memiliki protokol yang mendukung pengiriman video dari server tersebut. Sebuah standar untuk HTTP streaming konten multimedia akan memungkinkan interoperabilitas antara server dan klien dari vendor yang berbeda. Mencermati hal tersebut pada tahun 2012 MPEG berkolaborasi dengan 3GPP mengeluarkan sebuah standar pengiriman video melalui HTTP secara adaptif yang dikenal dengan MPEG Dynamic Adaptive Streaming over HTTP (MPEG-DASH). Selain metode streaming video, teknik kompresi video juga mengalami perkembangan. Hal ini dikarenakan standardisasi terhadap kompresi video diperlukan untuk memfasilitasi pertukaran data berupa video digital secara global dalam bentuk aplikasi video streaming. Sebuah standardisasi pengkodean dikatakan efisien bila mendukung algoritma kompresi yang baik dan mengimplementasikan rancangan enkoder dan dekoder yang efisien. Untuk komunikasi multimedia, terdapat dua organisasi standard yang utama yaitu ITU-T dan International Organization for Standardization (ISO). Selama beberapa dekade belakangan ini, sejumlah standar kompresi video dari ITU-T dan ISO, seperti MPEG-1, MPEG-2, MPEG-4, H.261, H.263 dan H.264 telah dikembangkan untuk mendukung banyak aplikasi pengiriman video. Pengembangan tersebut dapat dilihat dimana pada tanggal 13 April 2013 ITU telah merekomendasikan sebuah standar video coding baru yaitu H.265 atau dikenal dengan nama High Efficiency Video Coding (HEVC) [1]. H.265/HEVC tersebut merupakan joint research yang dilakukan oleh organisasi ITU-T Video Coding Experts Group (VCEG) dengan organisasi ISO/IEC Moving Picture Experts Group (MPEG). Joint research tersebut juga dikenal dengan nama Joint Collaborative Team on Video Coding (JCT-VC). Kinerja efisiensi video coding HEVC sudah dilakukan pengamatan dimana dengan nilai PSNR yang sama HEVC Main Profile memiliki pengurangan bit rate sebesar 35,4% dibandingkan dengan H.264/AVC High Profile. Selain itu berdasarkan subjective assessment, HEVC Main Profile memiliki pengurangan bit rate sebesar 49,3% dibandingkan dengan H.264/AVC High Profile [2]. Efisiensi yang bagus dari video coding HEVC tersebut dan metode pengiriman video secara adaptif dengan MPEG-DASH merupakan perpaduan yang sangat mendukung untuk meningkatkan kulitas pengiriman video pada pengguna.
Pengaruh Panjang Segmen Video pada Dynamic Adaptive Streaming…
53
2. Dasar Teori Standardisasi terhadap kompresi informasi audio-visual diperlukan untuk memfasilitasi pertukaran data berupa video digital secara global dalam bentuk aplikasi video streming. Sebuah standardisasi pengkodean dikatakan efisien bila mendukung algoritma kompresi yang baik dan mengimplementasikan disain enkoder dan dekoder yang efisien. Untuk komunikasi multimedia, terdapat dua organisasi standard yang utama yaitu ITU-T dan International Organization for Standardization (ISO). Selama beberapa dekade belakangan ini, sejumlah standard dari ITU-T dan ISO, seperti MPEG-1, MPEG-2, MPEG-4, H.261, H.263 dan H.264 telah dikembangkan untuk banyak domain aplikasi. Standard-standard tersebut mendefinisikan bitstream dari data audio-visual dan menentukan sekumpulan aturan yang harus dipatuhi dalam pengembangan hardware maupun software untuk solusi kompresi. Berdasarkan ISO/IEC 14496-10, Standar H.264/AVC pertama kali diterbitkan pada Mei tahun 2003 dan dibangun berdasarkan pada konsep awal standar seperti MPEG-2 dan MPEG-4 Visual [3]. H.264 menawarkan efisiensi kompresi yang lebih baik yakni kompresi video yang lebih berkualitas dan fleksibilitas yang lebih besar dalam melakukan kompresi, transmisi dan penyimpanan video. Video encoder pada H.264 dapat melakukan prediksi, transform dan proses encoding untuk menghasilkan kompresi bitstream H.264. Sedangkan video decoder H.264 dapat melakukan proses decoding secara lengkap, inverse transform dan rekonstruksi untuk memnghasilkan sebuah urutan video yang telah diencode. Dibandingkan dengan standar seperti MPEG-2 dan MPEG-4 Visual, H.264 memiliki kelebihan antara lain [4]: 1. Kualitas gambar yang lebih baik pada bitrate kompresi yang sama 2. Kecepatan bit kompresi yang lebih rendah untuk kualitas gambar yang sama. Standar H.264 menawarkan fleksibilitas yang lebih besar dari segi kompresi dan transmisi. Sebuah encoder H.264 dapat memilih dari berbagai jenis alat kompresi, sehingga cocok untuk aplikasi mulai dari bit rate rendah hingga transmisi HDTV ke konsumen televisi. Namun setelah munculnya video coding H.264/AVC tersebut, pada tanggal 13 April 2013 ITU telah merekomendasikan sebuah standar video coding baru yaitu H.265 atau dikenal nama High Efficiency Video Coding (HEVC) [1]. H.265/HEVC tersebut merupakan joint research yang dilakukan oleh organisasi ITU-T Video Coding Experts Group (VCEG) dengan organisasi ISO/IEC Moving Picture Experts Group (MPEG). Joint research tersebut juga dikenal dengan nama Joint Col-laborative Team on Video Coding (JCT-VC). Kinerja efisiensi video coding HEVC sudah dilakukan pada penelitian [2]. Dari penelitian tersebut berdasarkan dengan nilai PSNR yang sama, HEVC Main Profile memiliki pengurangan bit rate sebesar 35,4% dibandingkan dengan H.264/AVC High Profile. Selain itu berdasarkan subjective assessment, HEVC Main Profile memiliki pengurangan bit rate sebesar 49,3% dibandingkan dengan H.264/AVC High Profile. HTTP streaming telah menjadi pendekatan yang dominan dalam penyebaran konten secara komersial streaming platform seperti Apple HTTP Live Streaming (HLS) [5], Microsoft Smooth Streaming [6] dan Adobe HTTP Dynamic Streaming [7]. Semua paltform tersebut menggunakan HTTP streaming sebagai metode pengiriman kontennya. Namun dalam implementasinya platform tersebut menggunakan format yang berbeda. Oleh karena itu untuk menerima konten dari setiap server, perangkat pengguna harus memiliki protokol yang mendukung pengiriman video dari server tersebut. Sebuah standar untuk HTTP streaming konten multimedia akan memungkinkan interoperabilitas antara server dan klien dari vendor
54
Hamid Azwar
yang berbeda. Mencermati hal tersebut pada tahun 2012 MPEG berkolaborasi dengan 3GPP mengeluarkan sebuah standar pengiriman video melalui HTTP secara adaptif yang dikenal dengan MPEG Dynamic Adaptive Streaming over HTTP (MPEG-DASH) [8]. Struktur MPEG-DASH sebagian besar terdiri dari tiga jenis file yaitu "Manifest" (.mpd) yang merupakan file XML yang menggambarkan segmen, "Inisialisasi File" yang berisi header yang dibutuhkan untuk memecahkan kode byte pada segmen dan "Segmen Files" yang berisi media yang dimainkan. Media Presentation Description (MPD) menyediakan metadata untuk media meminta segmen melalui URL dalam rangka untuk mencari dan melakukan download segmen. Hal ini juga memberikan informasi mengenai jumlah representasi serta karakteristik setiap representasi yang digunakan untuk keperluan adaptasi level seperti minimum waktu penyangga, representasi bandwidth dan durasi segmen. MPD terdiri dari tiga komponen utama yaitu periode, representasi dan segmen. Periode merupakan urutan dari satu atau lebih periode, merupakan bagian terluar dari MPD. Biasanya periode ini mewakili potongan-potongan yang lebih besar dari media yang dimainkan keluar secara berurutan. Setiap periode berisi satu atau lebih set adaptasi atau grup. Setiap kelompok dapat berisi satu atau lebih pengkodean konten dari media yang sama. Setiap encoding alternatif disebut representasi. Representasi dapat memiliki bit rate, frame rate atau resolusi video yang berbeda. Setiap representasi menggambarkan serangkaian segmen oleh HTTP URL. Masingmasing representasi terdiri dari satu atau lebih segmen. Segmen adalah unit yang dapat direferensikan oleh HTTP URL. Segmen mewakili unit terbesar dari data yang dapat diambil oleh klien. Segmen tersebut dalam bentuk media data atau metadata berfungsi untuk memecahkan kode dan menyajikan media. Durasi segmen dapat bervariasi sesuai dengan yang diinginkan. Pada penelitian ini akan dilihat dampak yang dihasilkan dari panjang segmen video pada MPEG-DASH. 3. Desain Sistem dan Implementasi Desain sistem pada penelitian ini terdiri dari 6 bagian yaitu sumber video yang akan dikodekan, bagian encoding video H.265, segmentasi dan pembentukan MPD, instalasi server DASH, jaringan transmisi menggunakan jaringan LAN, instalasi satu klien sebagai klien DASH dan pengukuran kulitas pengiriman video. Desain sistem ini ditunjukkan pada Gambar 1 berikut ini. Proses awal pada sistem ini yaitu menentukan spesifikasi video source yang digunakan untuk dikirimkan melalui MPEG-DASH. Adapun video source yang digunakan pada sistem dapat ditunjukkan pada Tabel 1.
Video Source (YUV)
Encoding H.265 dengan variasi bit-rate
Pengukuran Troughput, PSNR & Buffering Time
Segmentasi & Pembentukan MPD
Instalasi klien DASH
Gambar 1. Blok diagram sistem
Instalasi server DASH
Jaringan LAN
Pengaruh Panjang Segmen Video pada Dynamic Adaptive Streaming…
55
Tabel 1. Spesifikasi Video Source
Nama video Elephan Dream
Resolusi (Piksel) 1280 x 720
Jumlah Frame 3000
Deskirpsi Animasi
Tabel 2. Target Encoding Video H.265
Bit rate rata-rata (Kbps) 100 500 1000 4000
Resolusi (Piksel)
Frame rate (fps)
1280x720
25
Video source ini digunakan sebagai video masukan untuk dilakukan proses encoding video H.265. Encoding video H.265 dapat dilakukan menggunakan DivX265 berdasarkan variasi bit rate yang diinginkan. Variasi bit rate video ini digunakan untuk sebagai level video untuk MPEG-DASH. Adapun level video berdasarkan bit rate pada encoding H.265 ini ditunjukkan pada Tabel 2. Pada sistem ini menggunakan 19 level video untuk mendukung pengiriman video dengan MPEG-DASH. Level video tersebut didasarkan pada bit rate video seperti yang terlihat pada Tabel 2. Video tersebut memiliki durasi sebesar 2 menit dengan frame rate 25 fps. Setelah dilakukan encoding video H.265, tahapan selanjutnya adalah melakukan segmentasi dan pembentukan Media Presentation Description (MPD). Segmentasi dilakukan untuk menghasilkan segmen video pada setiap level video H.265. Durasi segmen video yang digunakan terdiri dari 2 detik, 10 detik, 20 detik dan 30 detik. Hasil segmentasi ini akan disimpan pada server untuk diakses melalui MPEG-DASH oleh klien. Setiap segmen video yang dihasilkan akan dicantumkan pada MPD sebagai deskripsi mengenai segmen video tersebut. MPD akan digunakan oleh klien untuk memilih segmen video yang diinginkan berdasarkan kondisi bandwidth yang terjadi pada saat itu. Proses segmentasi dan pembentukan MPD dapat dilakukan menggunakan MP4Box yang merupakan keluaran dari GPAC. Server DASH pada prinsipnya dibangun menggunakan server HTTP. Pada sistem ini server dibangun menggunakan apache yang terintegrasi pada XAMPP menggunakan sistem operasi Windows XP. Agar video H.265 dapat dikirimkan melalui server DASH, maka file HTML yang diletakkan pada server DASH harus diintergrasikan menggunakan GPAC yang memiliki ActiveX control untuk mendukung layanan pemutaran video H.265 pada klien. Topologi jaringan LAN yang digunakan pada penelitian ini dapat dilihat pada Gambar 2 berikut ini. Pada penelitian ini menggunakan sebuah klien untuk mengakses video H.265 melalui MPEG-DASH menggunakan jaringan wireless LAN (WLAN) dengan protokol IEEE 802.11g. Selain server DASH, pada jaringan ini juga terdapat server FTP untuk membangkitkan trafik background agar terjadi fluktuatif bandwidth saat pengiriman video. Adapun spesifikasi klien yang digunakan pada sistem ini dapat dilihat pada Tabel 3.
56
Hamid Azwar
Server DASH Wireless Router
Klien DASH
Server FTP Gambar 2. Topologi jaringan LAN yang digunakan Tabel 3. Target Encoding Video H.265
No
Komponen
Spesifikasi
1 2
Processor RAM Sistem Operasi Browser
Intel Core 2 Duo 2,2 GHz DDR2 4 GB
3 4
Windows 7 32 bit Mozilla Firefox
Gambar 3. PSNR hasil encoding H.265
Untuk mendukung proses DASH pada klien, maka pada browser klien harus dilakukan instalasi plugin yang mendukung browser tersebut dapat melakukan playout video H.265 pada klien. Dalam hal ini menggunakan plugin Osmozilla versi 1.0.1.0 yang merupakan keluaran dari GPAC. Parameter yang diperoleh pada saat pengiriman video adalah nilai Peak Signal to Noise Ratio (PSNR) yang merupakan kualitas video yang diukur berdasarkan penilaian video secara objektif. Selain nilai PSNR, paramter lain yang diukur adalah processor usage saat pemutaran video pada klien.
Pengaruh Panjang Segmen Video pada Dynamic Adaptive Streaming…
57
4. Hasil dan Analisa Gambar 3 menunjukkan nilai PSNR video hasil proses encoding H.265 dengan resolusi 1280x720 dan frame rate 25 frame per detik. Ada sebanyak 4 level video yang dihasilkan untuk mendukung pengiriman video melalui MPEG-DASH. Nilai PSNR dihitung dengan membandingkan video source dan video yang sudah dikodekan. Hasil encoding video H.265 seperti yang ditunjukkan pada Gambar 3 dan 4 menunjukkan bahwa video yang memiliki bit rate rata-rata yang tinggi akan memiliki nilai PSNR yang tinggi juga sehingga kulitas video yang dihasilkan akan semakin bagus. Hal ini disebabkan video dengan bit rate yang tinggi memiliki kandungan informasi yang banyak untuk merepresentasikan video tersebut. Hal ini berbeda dengan video yang memiliki bitare yang rendah dimana nilai PSNR yang dimiliki bernilai kecil sehingga memiliki kualitas video yang kurang bagus. Secara umum video yang dihasilkan pada encoding H.265 pada pengujian ini memiliki nilai PSNR yang tergolong baik dengan nilai diatas 31 dB sesuai dengan rekomendasi ITU-R BT.500-11 [9]. Hasil proses segmentasi pada sistem ini ditunjukkan pada Tabel 4. Segmen video dengan durasi yang lebih pendek tentunya akan menghasilkan jumlah segmen yang lebih banyak dibandingkan dengan segmen video dengan durasi ssegmen yang lebih panjang. Hal ini merupakan suatu kekurangan sebuah kekurangan terhadap durasi segmen video yang lebih pendek karena membutuhkan proses yang lebih lama untuk menghasilkan sejumlah video dengan segmen yang kecil tersebut. Setelah proses segmentasi dilakukan, proses selanjutnya melakukan pembentukan MPD untuk diletakkan pada server DASH. Klien akan melakukan permintaan streaming video dan membaca deskripsi level segmen yang terdapat pada MPD. Pada skenario pengujian ini, proses streaming video dicampur dengan trafik background lainnya yang dihasilkan dari server FTP. Adapun nilai PSNR yang didapatkan saat klien menerima video dari server DASH dapat ditunjukkan pada Gambar berikut ini. Pada Gambar 5 menunjukkan panjang segmen video pada MPEG-DASH memberikan pengaruh terhadap kualitas video yang diterima pada klien berdasarkan parameter PSNR. Panjang segmen video yang lebih kecil memiliki nilai PSNR yang lebih besar dibandingkan panjang segmen video yang besar. Hal ini didukung dengan data throughput untuk setiap segmen video tersebut seperti yang ditunjukkan pada Gambar 6.
Gambar 4. PSNR rata-rata hasil encoding H.265
58
Hamid Azwar Tabel 4. Hasil segmentasi video H.265 durasi 2 menit
No
Bitrate rata-rata (Kbps)
1 2 3 4
100 500 1000 5000
Segmen 2 detik 60
Jumlah Segmen Segmen 10 Segmen detik 20 detik 12
Segmen 30 detik
6
Gambar 5. PSNR rata-rata video yang diterima pada klien
Gambar 6. Throughput rata-rata pengiriman video dengan MPEG-DASH
Gambar 7. Processor usage untuk segmen video yang berbeda
4
Pengaruh Panjang Segmen Video pada Dynamic Adaptive Streaming…
59
Nilai PSNR yang besar pada panjang segmen video yang kecil didukung dengan nilai throughput rata-rata pada saat pengiriman video melalui jaringan LAN. Hal ini disebabkan karena besarnya nilai throughput menunjukkan kapasitas infromasi video yang dilewatkan pada jaringan bernilai besar. Sedangkan informasi video yang dilewatkan tersebut sangat erat kaitannya dengan level bit rate video yang digunakan. Video yang memiliki level bit rate yang besar akan menghasilkan nilai PSNR yang besar pula. Hal ini ditunjukkan pada Gambar 4. Dampak terhadap panjang segmen video lainnya adalah faktor processor usage pada saat klien menerima video melalui MPEG-DASH. Pada Gambar 7 menunjukkan klien memiliki processor usage yang semakin besar pada saat menerima video dengan panjang segmen yang semakin kecil. Hal ini disebabkan karena penggunaan segmen video yang kecil menghasilkan switching stream dengan frekuensi yang tinggi. Klien akan melakukan peninjauan bandwidth setelah proses download segmen video telah dilaksanakan. Jika segmen video semakin kecil, maka frekuensi peninjauan bandwidth semakin sering dilakukan sehingga membutuhkan resource processor yang tinggi. 5. Kesimpulan Penelitian ini menunjukkan pengirman video H.265 dapat dilakukan melalui MPEGDASH. Encoding video H.265 dapat dilakukan dengan menggunakan DivX265 dan penerapan MPEG-DASH dapat dilakukan menggunakan GPAC. Dengan skenario pengujian menggunakan satu klien pada jaringan WLAN, nilai panjang segmen video pada MPEG-DASH memiliki pengaruh terhadap kualitas penerimaan video pada klien. Segmen video yang semakin kecil akan menghasilkan nilai PSNR yang semakin besar. Namun kondisi ini menyebabkan klien harus memiliki resource yang tinggi karena persentase processor usage juga semakin besar.
Daftar Pustaka [1]
ITU, “ITU-T Home : Study groups : ITU-T Recommendations : ITU-T H.265 (04/2013),” Retrieved 2013-04-16
[2]
H. Schwarz, G. Sullivan, T. Tan, and T. Wiegand, “Comparison of the coding efficiency of video coding standards–including high efficiency video coding (HEVC),” vol. 22, no. 12. pp. 1669–1684, 2012
[3]
ITU-T, “H. 264,‘Advanced video coding for generic audiovisual services,’” ITU-T Rec. H. 264-ISO/IEC 14496-10 AVC, 2005
[4]
ITU, “GENERIC CODING OF MOVING PICTURES AND ASSOCIATED AUDIO,” 1994
[5]
May W and P. R, “HTTP live streaming.” http://www.ietf.org/rfc/ rfc3344.txt, 2012
[6]
Z. A, “Smooth Streaming technical overview.” http://learn.iis.net/ page.aspx/626/smoothstreaming-technical-overview/, 2009
[7]
A. S. Inc, “HTTP dynamic streaming on the Adobe http://www.adobe.com/products/httpdynamicstreaming/pdfs/ httpdynamicstreaming_wp_ue.pdf, 2010
Flash
platform.”
60
Hamid Azwar
[8]
ISO/IEC, “ISO/IEC 23009-1:2012: Information technology -- dynamic adaptive streaming over HTTP (DASH) -- part 1: Media presentation description and segment formats,” Retrieved from ISO website http//www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumb er=57623, 2012
[9]
ITU, “500-11. Methodology for the subjective assessment of the quality of television pictures,” Int. Telecommun. Union, Geneva, …, pp. 1–48, 2002