gstreamer video playback , cannot play

Tim-Philipp Müller t.i.m at zen.co.uk
Tue Mar 12 07:27:32 PDT 2013


On Tue, 2013-03-12 at 10:17 -0400, Chuck Crisler wrote:
> Another answer is buried in the GStreamer docs. Elements are connected
> by pads. Pads have caps (capabilities). Those caps describe the
> stream, all of the relevant information is there. That is how
> decodebin works - it examines the caps and then 'does the right
> thing'. If you write code to parse the caps and then switch to use the
> right elements, you will be duplicating decodebin, though it is a good
> learning exercise.
> 
> You also really need to learn about caps to understand how to build
> encode pipelines also. Many of the elements are very restrictive in
> what they accept. If you don't follow what they need it won't work and
> it may not be obvious why, until you turn on detailed logging.
> 
> The short answer is: caps.

Most of these basic concepts are also explained in the Application
Developer's Manual:

http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/index.html

It is the first link on

  http://gstreamer.freedesktop.org/documentation/

the one marked with "Read this first". Buried in a rather unsightly html
table admittedly.

Cheers
 -Tim

> On Tue, Mar 12, 2013 at 5:53 AM, Ian Davidson
> <id012c3076 at blueyonder.co.uk> wrote:
>         There are sounds that we hear and things that we see. In order
>         to be able to record these things, they need to be converted
>         to some digital format – and there are many choices for these.
>         For example, a sound could be stored as a WAV file, a WMA
>         file, an OGG file (and many more). The sound could have been
>         recorded at 44100 samples per second (quite typical) or
>         perhaps 1100 samples per second (very poor quality).
>         
>         Many of the elements in a Gstreamer pipeline are used to
>         manipulate the data from one format to another. A typical
>         element will have a 'sink' (where you can 'pour in some data')
>         and a 'src' (which will supply data to the next element in the
>         sequence).
>         
>         Obviously, the data will need to come from somewhere – so if
>         you are reading a file, you will have a 'filesrc' which will
>         pick up the data from a file and pass it on to the next
>         element; such an element will have a 'location' parameter to
>         tell it where to find the file.
>         
>         At the other end of the pipeline you will want to do something
>         with this data you have been manipulating, so you will choose
>         a 'sink' such as 'alsasink' to play the sound.
>         
>         In between, you will need to manipulate the data that you read
>         from disk such that it can be played – so if your input is a
>         WAV file, you will need 'wavparse' to convert the data.
>         
>         It may be that 'wavparse' is not always ready to accept data
>         when your source wants to give it, so it is a good idea to
>         include a 'queue' between elements to handle such problems.
>         
>         I don't know exactly what you want to do. Go to
>         http://gstreamer.freedesktop.org/documentation/ and follow the
>         link to “Overview of all Plug-ins ” to see what plug-ins are
>         available. Many of the descriptions give an example of how you
>         might use them.
>         
>         Start by building a test pipeline using gst-launch. When you
>         have got that working, then look to writing a program to
>         replicate what you have tested using gst-launch.
>         
>         
>         
>         On 12/03/2013 02:06, aero wrote:
>         
>         > in brief my question is what are the elements required to play an audio and
>         > video. how to connect them.
>         > if elements depends on format of the flie (ogg,mp3,avi etc)  how to know
>         > what  to use for what type.
>         > 
>         > i just want to get some basic idea of properties of elements before i do any
>         > programming.
>         > 
>         > 
>         > 
>         > 
>         > 
>         > 
>         > 
>         > --
>         > View this message in context: http://gstreamer-devel.966125.n4.nabble.com/gstreamer-video-playback-cannot-play-tp4659024p4659054.html
>         > Sent from the GStreamer-devel mailing list archive at Nabble.com.
>         > _______________________________________________
>         > gstreamer-devel mailing list
>         > gstreamer-devel at lists.freedesktop.org
>         > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>         > 
>         
>         
>         
>         _______________________________________________
>         gstreamer-devel mailing list
>         gstreamer-devel at lists.freedesktop.org
>         http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>         
> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel




More information about the gstreamer-devel mailing list