<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8">
<p class="western" style="margin-bottom: 0cm">There is no simple
algorithm – it is a matter of experience.</p>
<p class="western" style="margin-bottom: 0cm">The Gstreamer elements
are like a set of Lego bricks – if you have a set of Lego bricks,
you can build any shape you want. Gstreamer elements allow you to
manipulate audio and video in a wide variety of ways.</p>
<p class="western" style="margin-bottom: 0cm">What you need to know
is that a 'Video File' will typically contain one (or more) stream
of
video data and one (or more) stream of audio data. These streams
have been encoded (if you like, 'compressed') so as not to be
'just a
stream of bits', but something that is recognised as a set of
frames
(or whatever). The streams have also been multiplexed together so
that one file/stream contains both the audio and the video.</p>
<p class="western" style="margin-bottom: 0cm">If you want to work
with a video file as your input, the first thing you would
probably
need to do would be to de-multiplex the data – to separate out the
video and the audio. You would then have two paths in your
pipeline
– one for the video and one for the audio. You would then need to
decode the data to get the 'raw' audio or video data which you
could
manipulate. You might want to change the size of a video image or
the rate of an audio stream – whatever it is that you are working
on the data. Then, if you were planning to output a new file, you
would need to encode the data, and then multiplex the two streams
together.</p>
<p class="western" style="margin-bottom: 0cm">There are many
different formats to choose from, so you will need to study the
documentation to see what elements are available to work on your
data, depending on what you are trying to do.</p>
<p class="western" style="margin-bottom: 0cm">Your computer probably
has more then one CPU – but left to itself, your pipeline will be
a
single thread and will just use one core. The Queue element will
introduce a new thread into your pipeline – allowing another core
to take part in processing the data. You probably want more than
one
thread – but 20 would probably be overkill. It is up to you to
place the queue elements where they will work for you.</p>
<title></title>
<meta name="GENERATOR" content="OpenOffice 4.1.1 (Win32)">
<style type="text/css">
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
</style><br>
<br>
<div class="moz-cite-prefix">On 16/03/2015 23:29, doon wrote:<br>
</div>
<blockquote cite="mid:1426548565328-4671163.post@n4.nabble.com"
type="cite">
<pre wrap="">I want to build my own pipelines(not create) and understand that which
elements, pads and containers I can use on my OS(windows 7 in my case),
hardware and how? I mean that I seen enough prepared pipelines, but how they
are made? I know about basic concepts(src, sink...), but why in the specific
pipeline, we have to use just such a sequence of elements? Where we need to
encode and decode? Where demultiplex? Which elements we need to use? etc.
*So where I can find "algorithm" of preparing pipelines(which I'll can use
in CMD)?*
--
View this message in context: <a class="moz-txt-link-freetext" href="http://gstreamer-devel.966125.n4.nabble.com/Algorithm-of-preparing-pipelines-tp4671163.html">http://gstreamer-devel.966125.n4.nabble.com/Algorithm-of-preparing-pipelines-tp4671163.html</a>
Sent from the GStreamer-devel mailing list archive at Nabble.com.
_______________________________________________
gstreamer-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a>
<a class="moz-txt-link-freetext" href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a>
</pre>
</blockquote>
<br>
<div class="moz-signature"><br>
</div>
</body>
</html>