Encoding a new media representation
Encoding creates an encoded stream from prepared pictures or samples, with output configuration and rate-control decisions determining its compatibility, size and processing cost.
An encoder creates a new stream representation from prepared pictures or audio samples. A video encoder does not simply relabel the source's compressed packets. It makes new coding decisions for the pictures it receives.
If H.264 is decoded and then encoded into H.264 again, the codec family remains the same while the stream representation changes.
The input is already prepared
An encoder receives pictures or samples in a format it can use. Their dimensions, cadence, channel layout and other properties have been established or transformed by upstream work.
| Requirement | Relevant output property |
|---|---|
| The player accepts another codec/configuration | Encoded format and parameters |
| The picture was scaled | Output dimensions |
| Audio was mixed to stereo | Output channel presentation |
| Delivery has a rate constraint | Rate-control/output policy |
| A cadence change was requested | Encoded picture timing/cadence |
Encoding cannot make a wrongly selected commentary track become the intended main programme. It can faithfully encode the samples it was given while the selection remains wrong.
Rate, quality and time interact
A bitrate target constrains one aspect of the output. The quality obtainable under that constraint depends on content, dimensions, cadence and the encoder's decisions.
A constant-quality approach aims at another control variable and lets size/rate vary. An encoder preset can alter the amount of search or analysis. These choices affect work and compression efficiency; they are not interchangeable names for one quality slider.
The existing rate-control and preset articles develop those subjects. Here the important boundary is that their decisions occur when a new encoded representation is created.
A lossy mode approximates reconstructed input. A lossless mode has another preservation objective and can carry different rate/compatibility consequences. The mere presence of an encoder does not define one universal percentage of quality loss.
Encoder output still needs packaging
A video encoder can supply encoded packets and configuration. A muxer writes the container or delivery package that carries them.
That is why “the encoder supports H.264” and “the target path accepts this MP4 resource” are different statements. Container structure, selected audio, subtitle handling and timing remain relevant outside the encoder.
The send/receive model can also have delayed output. An encoder can buffer input for its decisions, then produce packets later. Initial output latency and sustained encoding throughput need their own measurements.
Hardware identifies a stage
A named hardware video encoder describes a supported implementation path for that stage. It does not establish that the decoder or filters use the same accelerator, that all frames remain in one memory domain, or that the complete job is fast enough.
A pipeline can use hardware encoding after software picture processing. Another can move surfaces between devices. Bottlenecks depend on those complete relationships.
See Also
- Decoding media streams
- How a transcoding pipeline works
- Video Bitrate
- Constant Rate Factor (CRF) for Video
- Video Encoder Presets
- Playback quality limits and output constraints