H.263
# H.263

Il codec video H.263 fu originariamente creato dall'ITU-T nel 1995/1996 come codec compresso con un basso bitrate per applicazioni di videoconferenza.

Esso fa parte della famiglia H.26x ed è stato progettato per essere utilizzato nei sistemi basati su H.324 (PSTN e altre reti commutate di videoconferenza e telefonate), ma ha anche trovato uso nel protocollo H.323 (video-conferenze basate su RTP/IP), H.320 (video-conferenze basate su ISDN), RTSP (Streaming) e SIP (conferenze via Internet). Molti dei contenuti FLV (video flash usati su siti come YouTube, Google Video, MySpace ecc.) sono compressi con questo codec, anche se alcuni siti usano adesso la compressione VP6, supportata da Flash a partire dalla versione 8. I video H.263 possono essere decodificati con la libreria libavcodec (con licenza LGPL e parte del progetto FFmpeg) che è usata da programmi come ffdshow, VLC media player e MPlayer.

L'H.263 è stato sviluppato come un miglioramento del codec H.261, il precedente standard ITU-T per la compressione video, e gli standard MPEG-1 e MPEG-2. La prima versione fu completata nel 1995 ed era un sostituto adeguato al codec H.261 a tutti i bitrate. Fu ulteriormente migliorato nei progetti conosciuti come H.263v2 (conosciuto anche come H.263+ o H.263 1998) e H.263v3 (conosciuto anche come H.263++ o H.263 2000).

Molti telefoni celluari e smartphone degli anni 2000 e dei primi anni 2010 registrano i video con la loro fotocamera, utilizzando come codec l'H.263 e come formato contenitore il 3gp.

Lo standard supporta vari formati video, ad esempio i formati di tipo CIF (SQCIF, QCIF, CIF, 4CIF, 9CIF e 16CIF).

Il codec successivo sviluppato dall'ITU-T VCEG (in collaborazione con MPEG) dopo l'H.263 è lo standard H.264, conosciuto anche come AVC e MPEG-4 part 10. Poiché l'H.264 fornisce un miglioramento significativo rispetto all'H.263, lo sviluppo di quest'ultimo è considerato ormai solo per questioni di retrocompatibilità. La maggior parte dei prodotti per le video-conferenze includono ora sia l'H.264, sia l'H.263, sia l'H.261.

L'H.263 supporta risoluzioni video fino a 1408×1152 pixel (16CIF).

Risoluzioni video superiori come il Full HD e il 4K necessitano l'utilizzo d'altri codec, ad esempio dell'H.264.

## Versioni

Dall'originale ratificazione dell'H.263 nel marzo 1996 (con l'approvazione di un documento prodotto nel novembre 1995), ci sono state due seguenti aggiunte che migliorarono il codec originale con l'aggiunta di estensioni opzionali (annexes). Per esempio, l'H.263v2 aggiunse un filtro debloccante (deblocking filter) attraverso l'Annex J.

L'originale H.263 specificava le seguenti estensioni:

* Annex A - Specifica precisione della trasformazione inversa (Inverse transform accuracy specification)
* Annex B - Decodificatore ipotetico standard(Hypothetical Reference Decoder)
* Annex C - Considerazioni per il Multipoint (Considerations for Multipoint)
* Annex D - Metodo non restrittivo sui vettori di moto (Unrestricted Motion Vector mode)
* Annex E - Metodo di codifica aritmetica (Syntax-based Arithmetic Coding mode)
* Annex F - Metodo avanzato di predizione (Advanced Prediction mode)
* Annex G - Immagini P-B (PB-frames mode)
* Annex H - Correzione errori per il segnale video (Forward Error Correction for coded video signal)

Nel marzo 1997, l'estensione Annex I che descriveva il tracciamento degli errori (Error Tracking) — una tecnica di codifica per migliorare la robustezza di fronte alle perdite di dati e agli errori — fu approvata per fornire informazioni per l'aiuto degli sviluppatori che avevano intenzione di implementare questa tecnica.

### H.263v2

L'H.263v2 (conosciuto anche come H.263+ o come la versione 1998 dell'H.263) è il nome informale della seconda edizione dello standard ITU-T H.263. Conserva tutte le capacità della versione originale dello standard, ma potenzi le capacità dell'H.263 aggiungendo molte estensioni che possono migliorare sostanzialmente l'efficienza della codifica e fornire altre funzioni (come la robustezza migliorata contro le perdite di dati nel canale di trasmissione). Il progetto H.263+ fu ratificato dall'ITU nel febbraio del 1998 e aggiunse le seguenti estensioni:

* Annex I - Modalità di codifica avanzata INTRA (Advanced INTRA Coding mode)
* Annex J - Filtro debloccante
* Annex K - Slice Structured mode
* Annex L - Supplemental Enhancement Information Specification
* Annex M - Migliorata modalità Immagini PB (Improved PB-frames mode)
* Annex N - Reference Picture Selection mode
* Annex O - Metodo di scalabilità temporale, SNR e spaziale (Temporal, SNR, and Spatial Scalability mode)
* Annex P - Reference picture resampling
* Annex Q - Reduced-Resolution Update mode (see implementors' guide correction as noted below)
* Annex R - Independent Segment Decoding mode
* Annex S - Alternative INTER VLC mode
* Annex T - Modified Quantization mode

L'H.263v2 aggiunse inoltre il supporto flessibile per personalizzare il formato delle immagini e il tempo (picture clock frequencies). Precedentemente i soli possibili formati supportati dall'H.263 erano stati Sub-QCIF, QCIF, CIF, 4CIF, e 16CIF, e l'unica frequenza delle immagini era 30000/1001 (approssimativamente 29.97) clock ticks al secondo.

L'H.263v2 specificava un set di modalità raccomandate in un'appendice informativa (Appendice II, deprecata da allora):

| | Livello 1 | Livello 2 | Livello 3 |
| - | - | - | - |
| Advanced INTRA Coding | Sì | Sì | Sì |
| Filtro debloccante | Sì | Sì | Sì |
| Supplemental Enhancement Information (Full-Frame Freeze Only) | Sì | Sì | Sì |
| Quantizzazione modificata | Sì | Sì | Sì |
| Metodo non restrittivo sui vettori di moto | No | Sì | Sì |
| Slice Structured Mode | No | Sì | Sì |
| Reference Picture Resampling (Soltanto modalità Implicit Factor-of-4) | No | Sì | Sì |
| Metodo avanzato di predizione | No | No | Sì |
| Immagini PB migliorate | No | No | Sì |
| Independent Segment Decoding | No | No | Sì |
| Alternate INTER VLC | No | No | Sì |
| | Livello 1 | Livello 2 | Livello 3 |

### H.263v3

La definizione dell'H.263v3 (conosciuto anche come H.263++ o come la versione 2000 dell'H.263) consisteva nell'aggiunta di tre estensioni. Queste estensioni e un'estensione aggiuntiva che specificava i profili (approvata l'anno seguente) furono originariamente pubblicate come documenti separati dal testo principale dello standard. Le estensioni aggiuntive specificate erano:

* Annex U - Enhanced reference picture selection mode
* Annex V - Data-partitioned slice mode
* Annex W - Additional supplemental enhancement information specification
* Annex X (specificata originariamente nel 2001) - Definizioni di profili e livelli (Profiles and levels definition)

L'informativa precedente Appendix II (miglioramenti opzionali raccomandati) diventò obsoleta con la creazione della normativa Annex X.

Nel giugno 2001 un'altra informativa (Appendix III, Esempi per l'implementazione di un encoder/decoder H.263) fu approvata. Descrive le tecniche di codifica e ciò che riguarda gli errori e le perdite dei decoder.

Nel gennaio 2005, un documento unificato di specifica h.263 fu prodotto (con l'esclusione dell'Appendix III, che rimane un documento pubblicato separatamente).

Nell'agosto 2005, una guida degli implementatori fu approvata per correggere un piccolo errore nella poco usata estensione Annex Q reduced-resolution update mode.

## Applicazioni

* I video H.263 possono essere decodificati con la libreria gratuita (sotto licenza LGPL) libavcodec (parte del progetto ffmpeg) che è usata da programmi come ffdshow, VLC media player e MPlayer.
* La maggior parte dei contenuti FLV (usati su siti come YouTube, Google Video, MySpace etc.) è codificata in questo formato, anche se alcuni siti usano adesso la compressione VP6, supportata da Flash a partire dalla versione 8.
* La versione originale del codec Real Video era basata sull'H.263 fino alla distribuzione di RealVideo 8.
