Description
A video streaming or video chat application needs to work in various wireless network conditions. For example: variable bandwidth, packet drops etc. These network conditions put lot of constraints to video encoder. Encoder needs to adapt these network constraints dynamically and needs to produce bitstream for best possible user experience. Encoder needs to produce better quality video, higher resolution, better frame rate etc. to achieve best possible user experience within available network bandwidth based on variable network conditions. Also, encoder needs to use commonly available tool sets (e.g. constrained baseline profile) which are available for most of mobile devices. This thesis looks at various encoder tools/properties using a GStreamer based sample application. It analyzes encoded bitstream for various coding tools (e.g. bitrate, resolution, frame rate etc.) which H.264 encoder could use for network adaptation.