Hi,
It has been a long time but finally it's here; the first stable release of gst-openmax. Most likely it has been stable for quite some time, but only now the code-style has migrated to GStreamer one, and a bunch of patches from TI have been merged, so it seems like a good time to release. Also, this version now features a configuration mechanism, so you can select pretty much every combination of GStreamer elements you might need, and specify the OpenMAX IL library, component name, role, and even your desired rank. gst-openmax has been tested in multiple OpenMAX IL implementations, such as Bellagio, and Texas Instrument's OMAP. Depending on the implementation some changes might be needed, but ideally it should work straight out-of-the-box. If you find that some changes are needed, please contribute the changes back. Elements supported * MPEG-4 encoder/decoder * H.263 encoder/decoder * H.264 encoder/decoder * WMV decoder * Vorbis decoder * MP3 decoder * Volume filter Experimental elements (should work but not extensively tested) * AMR-NB encoder/decoder * AMR-WB encoder/decoder * AAC encoder/decoder * MP2 decoder * ADPCM encoder/decoder * G.711 encoder/decoder * G.729 encoder/decoder * iLBC encoder/decoder * JPEG encoder * video renderer * file reader Compared to previous pre-releases, this version now features a configuration mechanism, so you can select pretty much every combination of GStreamer elements you might need, and specify the OpenMAX IL library, component name, role, and even your desired rank. Tarballs can be found here: http://gstreamer.freedesktop.org/src/gst-openmax/ Compared to v0.10.0.5: Felipe Contreras (33): Update I420 to PackedPlanar util: trivial cleanup util: improve timeout messages util: cleanup ports when going to loaded util: increase timeout value base_videoenc: use 0 as automatic bitrate videodec: handle empty framerate build: update 'common' stuff util: fix compilation warning base_filter: trivial cleanup base_filter: more proper printf formatting base_sink: remove dead assignment videodec: fallback framerate to 0/1 tests: trivial fix Move component and library name fields to 'util' Reorganize core_new() Reorganize {library,component}-name assigns Make {component,library}-name read-only base: remove unused set_property() base: remove extra code plugin: reorganize code into get_config_path() plugin: add support for system-wide config Add example configuration plugin: reorganize element_table init plugin: make element_table const plugin: add support dependencies plugin: store element_table in plugin cache base-filter: improve EOS handling Fix compilation warnings Change to gst coding-style Generate ChangeLog build: remove patches extra dir build: add missing files to the dist Mark Nauwelaerts (1): base_filter: fix race condition when shutting down Rob Clark (21): Fixes for building for 64bit host Initial support for configuration file Add default configuration tests: update to use config file build: fixes for out-of-tree Use G_PARAM_STATIC_STRINGS basefilter: small fix for compile error Add GSTOMX_BOILERPLATE macros util: thread safety for _get_type() functions Construct GOmxPort objects in element constructor Simplify g_omx_port_setup() Don't hard-code port indexes core: call OMX_GetHandle in g_omx_core_new util: add some debug traces Add G_OMX_INIT_PARAM utility macro Add property helpers Add component-role support base: add input-buffers/output-buffers properties Add some debug traces Add GstOmxBaseAudioDec base class replace deprecated API Total contributions for v0.10.1: 1 David Schleef 2 Edward Hervey 370 Felipe Contreras 2 Frederik Vermelen 1 Frederik Vernelen 4 Jan Schmidt 1 Marco Ballesio 9 Mark Nauwelaerts 1 Olivier Crête 16 René Stadler 21 Rob Clark 4 Sebastian Dröge 1 Sriram Murthy 1 Stefan Kost 1 Tim-Philipp Müller Thanks to all the contributors! Cheers. -- Felipe Contreras ------------------------------------------------------------------------------ Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
I had use openmax in some of my applications and I want to see if I am doing wrong or indeed it is a bug.
I have two simple applications that decodes mp3 files : in first app I use the "mad" element for the decoder in my pipeline. Using threads , once I start the application the thread starts and begins to get the current time of stream ( I use "gst_element_query_position (pipeline, &fmt, &pos)" then with printf I display the current time on my output (like this <printf ("timestamp: %" , GST_TIME_FORMAT, GST_TIME_ARGS (pos));>. It works fine, but I put a sleep(1) in my thread to display once every 1 second. The second application, same thing but as a decoder I use "nv_omx_mp3dec" element. Once I compile (no errors) and start the application, I get the current time always zero. If anyone has the same problem or check if this is wrong and it works , please i would like to know. Cristi |
On Mon, Oct 4, 2010 at 5:27 AM, cristiurban <[hidden email]> wrote:
Could you give the pipeline you are using in either case? You may need an mp3parse before the decoder (if you don't already have one). BR, -R ------------------------------------------------------------------------------ Virtualization is moving to the mainstream and overtaking non-virtualized environment for deploying applications. Does it make network security easier or more difficult to achieve? Read this whitepaper to separate the two and get a better understanding. http://p.sf.net/sfu/hp-phase2-d2d _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
The pipeline I am using is :
gst-launch -v filesrc location=<path to media file> ! nv_omx_mp3dec ! audioconverter ! audioresample ! alsasink (used -v for debug) This is a command that you should verify that it is working, for these to work you must have the nvidia sound drivers. Of course, my app is in C source, and somewhere after I give the playing state I try to extract the current time and then I get zero. If this doesn't work try the same pipeline but you must replace the "nv_omx_decoder" with "mad" and works just fine, but this I know. In time I had beed looking in OMX API to see if something wrong there, but no result yet. Cristi. |
On Mon, Oct 4, 2010 at 9:44 AM, cristiurban <[hidden email]> wrote:
from filesrc, you will not get timestamps. So things like seek won't work unless your mp3 decoder is also a parser and generating it's own timestamps and supporting seeking. My guess is that mad does this, and your OMX component does not.
Please try putting mp3parse between filesrc and nv_omx_mp3dec BR, -R ------------------------------------------------------------------------------ Virtualization is moving to the mainstream and overtaking non-virtualized environment for deploying applications. Does it make network security easier or more difficult to achieve? Read this whitepaper to separate the two and get a better understanding. http://p.sf.net/sfu/hp-phase2-d2d _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
On Mon, Oct 4, 2010 at 6:04 PM, Clark, Rob <[hidden email]> wrote:
> On Mon, Oct 4, 2010 at 9:44 AM, cristiurban <[hidden email]> > wrote: >> The pipeline I am using is : >> gst-launch -v filesrc location=<path to media file> ! nv_omx_mp3dec ! >> audioconverter ! audioresample ! alsasink (used -v for debug) >> This is a command that you should verify that it is working, for these to >> work you must have the nvidia sound drivers. Of course, my app is in C >> source, and somewhere after I give the playing state I try to extract the >> current time and then I get zero. >> If this doesn't work try the same pipeline but you must replace the >> "nv_omx_decoder" with "mad" and works just fine, but this I know. In time >> I >> had beed looking in OMX API to see if something wrong there, but no result >> yet. > > from filesrc, you will not get timestamps. So things like seek won't work > unless your mp3 decoder is also a parser and generating it's own timestamps > and supporting seeking. My guess is that mad does this, and your OMX > component does not. > Please try putting mp3parse between filesrc and nv_omx_mp3dec Yes, this is exampled in the main page: http://freedesktop.org/wiki/GstOpenMAX -- Felipe Contreras ------------------------------------------------------------------------------ Virtualization is moving to the mainstream and overtaking non-virtualized environment for deploying applications. Does it make network security easier or more difficult to achieve? Read this whitepaper to separate the two and get a better understanding. http://p.sf.net/sfu/hp-phase2-d2d _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |