From: Erik W. <om...@cs...> - 2000-01-31 22:55:34
|
On Mon, 31 Jan 2000, Wim Taymans wrote: > Directory /cvsroot/gstreamer/gstreamer/include added to the repository Uh, waitasec, what's that for? include/ directories are something I stay away from, since they are incompatible with using subdirectories in /usr/include. Specifically, all the headers in gstreamer/gst/ can be referred to as gst/gst*.h, whether their installed or not. What did you plan on putting in that directory? Erik Walthinsen <om...@cs...> - Staff Programmer @ OGI Quasar project - http://www.cse.ogi.edu/DISC/projects/quasar/ Video4Linux Two drivers and stuff - http://www.cse.ogi.edu/~omega/v4l2/ __ / \ SEUL: Simple End-User Linux - http://www.seul.org/ | | M E G A Helping Linux become THE choice _\ /_ for the home or office user |
From: Erik W. <om...@cs...> - 2000-02-04 22:12:49
|
On Fri, 4 Feb 2000, Wim Taymans wrote: > on a layer 1 or 2 stream (I have none) and together with the mp3parse? You can find recoded versions of Xing's (IIRC) demo.mp3 as demo-128.mp1 and demo-128.mp2 on gstreamer.sourceforge.net: http://gstreamer.sourceforge.net/demo-128.mp1 http://gstreamer.sourceforge.net/demo-128.mp2 Erik Walthinsen <om...@cs...> - Staff Programmer @ OGI Quasar project - http://www.cse.ogi.edu/DISC/projects/quasar/ Video4Linux Two drivers and stuff - http://www.cse.ogi.edu/~omega/v4l2/ __ / \ SEUL: Simple End-User Linux - http://www.seul.org/ | | M E G A Helping Linux become THE choice _\ /_ for the home or office user |
From: Erik W. <om...@cs...> - 2000-02-05 01:59:17
|
On Fri, 4 Feb 2000, Wim Taymans wrote: > Log message: > Fixed a nasty bug in mp3parse (partial buffer state remained) That reminded me of something when I looked at the diff (on sourceforge, which btw is very useful): the ref-counting setup should probably be changed a little, so the pushing and pulling of pads (which is about to change as well) does refcounting. That means that we'll probably adopt the same convention as Gtk: when you create something, reference it and then sink it. This removes the FLOATING flag from the object, which has potential benefits. On the other hand, FLOATING really doesn't have much meaning here for buffers, so maybe doing that would just be more complication. Currently there's a single reference on the buffer when you create it, and no ref/unref occurs until you're done with it, unless you tee the thing. > Added eos check for the test programs to stop them from allocating all > of your memory (had to use alt-sysreq-k a few times :-( ). Oooh, ouch. What I did to test things is use the launch command: tools/launch 60 disksrc something.m3 \| mp3parse \| mpg123 \| audiosink The first argument, if any, is the number of seconds to sleep before exit()ing. The launch program is not aware of the EOS signal at all, yet. I've got ideas as to how to handle media seek control, even over networks and such, that the launcher will be cognizant of in order to keep things running cleanly. Erik Walthinsen <om...@cs...> - Staff Programmer @ OGI Quasar project - http://www.cse.ogi.edu/DISC/projects/quasar/ Video4Linux Two drivers and stuff - http://www.cse.ogi.edu/~omega/v4l2/ __ / \ SEUL: Simple End-User Linux - http://www.seul.org/ | | M E G A Helping Linux become THE choice _\ /_ for the home or office user |
From: Erik W. <om...@cs...> - 2000-03-13 22:30:16
|
On Mon, 13 Mar 2000, Wim Taymans wrote: > A non functional avi parser. You might take a look at the WAV code. There's a whole bunch of stuff in there to handle RIFF files, which AFAICT is all AVI files are. I've thought of putting the generic RIFF code either in a library or a plugin. The thing with a plugin is that symbol matching gets hard. Probably what we should do is have glib do lazy loading, and plugins that require others can explicitely request that they be loaded. Thus a RIFF plugin could be reused by both AVI and WAV, even though it isn't an actual element. Erik Walthinsen <om...@cs...> - Staff Programmer @ OGI Quasar project - http://www.cse.ogi.edu/DISC/projects/quasar/ Video4Linux Two drivers and stuff - http://www.cse.ogi.edu/~omega/v4l2/ __ / \ SEUL: Simple End-User Linux - http://www.seul.org/ | | M E G A Helping Linux become THE choice _\ /_ for the home or office user |
From: Wim T. <wim...@tv...> - 2000-03-13 22:46:49
|
Erik Walthinsen wrote: > > On Mon, 13 Mar 2000, Wim Taymans wrote: > > > A non functional avi parser. > > You might take a look at the WAV code. There's a whole bunch of stuff in > there to handle RIFF files, which AFAICT is all AVI files are. I've Yes, I took a quick look at it. I think it does not handle recursive stuff well, WAV is much more flat than avi, I remember it didn't work as easy as I thought it would be. I plan to restructure the plugin tree a bit. It's going to get messy when we add encoders (I'm running out of directory names...). We'd have something like mpeg1/encoder /decoder /parser mpegsystem/encoder /decoder /parser riff/wav /avi filters/video/color /... audio/stereo /... also in the root dir some general libraries: libs/riff /... problem is that it involves removing/adding because CVS does not have a rename or move AFAIK. Better to do it now. > thought of putting the generic RIFF code either in a library or a plugin. > The thing with a plugin is that symbol matching gets hard. Probably what > we should do is have glib do lazy loading, and plugins that require others > can explicitely request that they be loaded. Thus a RIFF plugin could be > reused by both AVI and WAV, even though it isn't an actual element. That would be the idea. I want to try this with the videosink. I could move all the color conversion code into a filter plugin and have the videosink load that when needed. Wim -- Those who sweat in flames of hell, Leaden eared, some thought their bowels Here's the reason that they fell: Lispeth forth the sweetest vowels. While on earth they prayed in SAS, These they offered up in praise PL/1, or other crass, Thinking all this fetid haze Vulgar tongue. A rapsody sung. Some the lord did sorely try Jabber of the mindless horde Assembling all their pleas in hex. Sequel next did mock the lord Speech as crabbed as devil's crable Slothful sequel so enfangled Hex that marked on Tower Babel Its speaker's lips became entangled The highest rung. In his bung. Because in life they prayed so ill And offered god such swinish swill Now they sweat in flames of hell Sweat from lack of APL Sweat dung! |
From: Myers W. C. <my...@fi...> - 2000-07-13 15:58:56
|
Wim Taymans wrote: > Changed the mpegvideoparser to parse complete pictures. Added the PTS > timestamps to the pictures. > Added PTS timestamps to the MPEG audio frames. This also fixed my problem with the halting. "Shoot him if he starts to win" - Darph Bobo, Tripping the Rift. gstplay works like a charm now, unless you move the window while playing then things pause until you stop dragging it. > hopefully fix an mmx compilation problem. Fixed it for me, at least. Havn't tried any mpeg2 stream tho. myers -- You're just jealous because the voices only talk to me. |
From: Myers W. C. <my...@fi...> - 2000-07-13 16:59:27
|
"Myers W. Carpenter" wrote: > Wim Taymans wrote: > > hopefully fix an mmx compilation problem. > > Fixed it for me, at least. Havn't tried any mpeg2 stream tho. I dug some up from the libmpeg2 pages. http://heroine.linuxave.net/titanic512.mpg So far the only one I've downloaded (I'm on the bad side of a 28.8 for the next 5 weeks :(), but it doesn't work. Here's the output: numbers:~/video-hacking/gstreamer/gstplay$ ./gstplay ~/titanic512.mpg gsttypes: loaded 3 standard types gstelements: loaded 14 standard elements mpeg1parse: finding 'mpeg1parse' plugin mpeg1parse: added 'mpeg1parse' element mpeg2parse: added 'mpeg2parse' element mp1videoparse: added 'mp1videoparse' element mp3parse: added 'mp3parse' element parseavi: added 'parseavi' element parseavi: added 'video/avi' type videosink: added 'videosink' element videosink: found 16 bits display videosink: using 16 bits image 16 bits/pixel GstBin: adding complete element - GstElement: set 'video_render_thread' state 1 GstBin: adding complete element - GstElement: set 'main_pipeline' state 1 gstthread: turning ON the creation of the thread gstthread: flags are 0x00010008 GstBin: adding complete element - GstElement: set 'audio_render_thread' state 1 gstthread: turning ON the creation of the thread gstthread: flags are 0x00010008 should be using file '/home/myers/titanic512.mpg' GstElement: set 'disk_src' state 1 setting to PREROLL state GstElement: set 'video_render_queue' state 8 GstElement: set 'show' state 8 GstElement: set 'video_render_thread' state 8 GstElement: set 'audio_render_queue' state 8 GstElement: set 'play_audio' state 8 GstElement: set 'audio_render_thread' state 8 GstElement: set 'disk_src' state 8 GstElement: set 'typefind' state 8 GstElement: set 'main_pipeline' state 8 setting to RUNNING state GstPipeline: preparing pipeline "main_pipeline" for iterations: GstPipeline: preparing pipeline "main_pipeline" for playing GstElement: set 'video_render_queue' state 2 GstElement: set 'show' state 2 GstElement: set 'video_render_thread' state 2 gstthread: preparing thread "video_render_thread" for iterations: gstthread: element "video_render_queue" is the external source Connection for internal element "show" gstthread: have 1 entries into thread gstthread: flags are 0x00010008 gstthread: starting thread "video_render_thread" GstElement: set 'audio_render_queue' state 2 audiosink: attempting to open sound device audiosink: setting sound card to 44100KHz 16 bit stereo (65536 bytes buffer, 4096 fragment) audiosink: Capabilities audiosink: Full duplex audiosink: Trigger audiosink: Direct access audiosink: opened audio GstElement: set 'play_audio' state 2 GstElement: set 'audio_render_thread' state 2 gstthread: preparing thread "audio_render_thread" for iterations: gstthread: element "audio_render_queue" is the external source Connection for internal element "play_audio" gstthread: have 1 entries into thread gstthread: flags are 0x00010008 gstthread: starting thread "audio_render_thread" gstthread: thread "video_render_thread" is running with PID 1895 GstElement: set 'disk_src' state 2 GstElement: set 'typefind' state 2 GstElement: set 'main_pipeline' state 2 gst_typefind_chain: got buffer of 4096 bytes in 'typefind' gsttypefind: try type :10 gsttypefind: try type :9 gsttypefind: try type :8 gsttypefind: try type :7 gsttypefind: try type :6 gsttypefind: try type :5 gsttypefind: try type :4 gsttypefind: found type :4 have type 4:video/mpeg-system video/mpeg1-system video/mpeg ***** a new pad audio_00 was created gstthread: thread "audio_render_thread" is running with PID 1896 mpg123: added 'mpg123' element initialized layer1&2 tables initializing with down_sample_sblimit 32 finished building decode tables GstBin: adding complete element - GstElement: set 'audio_thread' state 1 gstthread: turning ON the creation of the thread gstthread: flags are 0x00010008 setting to RUNNING state GstElement: set 'parse_audio' state 2 GstElement: set 'decode_audio' state 2 GstElement: set 'audio_thread' state 2 gstthread: preparing thread "audio_thread" for iterations: gstthread: element "audio_queue" is the external source Connection for internal element "parse_audio" gstthread: have 1 entries into thread gstthread: flags are 0x00010008 gstthread: starting thread "audio_thread" gstthread: thread "audio_thread" is running with PID 1897 ***** a new pad video_00 was created mpeg_play: added 'mpeg_play' element GstBin: adding complete element - GstElement: set 'video_thread' state 1 gstthread: turning ON the creation of the thread gstthread: flags are 0x00010008 setting to RUNNING state GstElement: set 'parse_video' state 2 GstElement: set 'decode_video' state 2 GstElement: set 'video_thread' state 2 gstthread: preparing thread "video_thread" for iterations: gstthread: element "video_queue" is the external source Connection for internal element "parse_video" gstthread: have 1 entries into thread gstthread: flags are 0x00010008 gstthread: starting thread "video_thread" GstElement: set 'mpeg1_system_parse' state 1 gstplay: element "mpeg1_system_parse" state changed 1 gstplay: setting to PLAYING state GstElement: set 'video_render_queue' state 16 GstElement: set 'show' state 16 GstElement: set 'video_render_thread' state 16 gstthread: starting thread "video_render_thread" GstElement: set 'audio_render_queue' state 16 GstElement: set 'play_audio' state 16 GstElement: set 'audio_render_thread' state 16 gstthread: starting thread "audio_render_thread" GstElement: set 'disk_src' state 16 GstElement: set 'mpeg1_system_parse' state 16 gstplay: element "mpeg1_system_parse" state changed 16 GstElement: set 'audio_queue' state 16 GstElement: set 'parse_audio' state 16 GstElement: set 'decode_audio' state 16 GstElement: set 'audio_thread' state 16 gstthread: starting thread "audio_thread" GstElement: set 'video_queue' state 16 GstElement: set 'parse_video' state 16 GstElement: set 'decode_video' state 16 GstElement: set 'video_thread' state 16 gstthread: starting thread "video_thread" GstElement: set 'main_pipeline' state 16 gstplay: PLAYING gstthread: thread "video_thread" is running with PID 1898 DEBUG: mpeg_play:util extension ID = 1 DEBUG: MPEG2 detected DEBUG: sequence extension DEBUG: profile_and_level_indication=72 DEBUG: profile=4, level=8 DEBUG: progressive_sequence=0 DEBUG: chroma_format=1 DEBUG: horizontal_size_extension=0 DEBUG: vertical_size_extension=0 DEBUG: bit_rate_extension=0 DEBUG: vbv_buffer_size_extension=0 DEBUG: low_delay=0 DEBUG: frame_rate_extension_n=0 DEBUG: frame_rate_extension_d=0 DEBUG: mpeg_play:util extension ID = 2 DEBUG: sequence display extension DEBUG: video_format=2 DEBUG: color_description=1 DEBUG: color_primaries=5 DEBUG: transfer_characteristics=5 DEBUG: matrix_coefficients=4 DEBUG: display_horizontal_size=360 DEBUG: display_vertical_size=160 DEBUG: mpeg_play:util extension ID = 8 DEBUG: picture coding extension DEBUG: forward horizontal f_code=15 DEBUG: forward vertical f_code=15 DEBUG: backward horizontal f_code=15 DEBUG: backward_vertical f_code=15 DEBUG: intra_dc_precision=0 DEBUG: picture_structure=3 DEBUG: top_field_first=1 DEBUG: frame_pred_frame_dct=0 DEBUG: concealment_motion_vectors=0 DEBUG: q_scale_type=1 DEBUG: intra_vlc_format=1 DEBUG: alternate_scan=0 DEBUG: repeat_first_field=0 DEBUG: chroma_420_type=0 DEBUG: progressive_frame=0 DEBUG: composite_display_flag=0 FIXME: need to adjust the quantizer scale 14 and then it segfaults. bt from gdb: #0 0x406e1385 in ParseReconBlock () from /home/myers/video-hacking/gstreamer/./plugins/mpeg1/mpeg_play/.libs/libmpeg_play.so #1 0x406ebed4 in __DTOR_END__ () from /home/myers/video-hacking/gstreamer/./plugins/mpeg1/mpeg_play/.libs/libmpeg_play.so Cannot access memory at address 0x7824803. Yell at me if this doesn't help :) myers -- You're just jealous because the voices only talk to me. |
From: Wim T. <wim...@ch...> - 2000-07-13 18:38:38
|
"Myers W. Carpenter" wrote: > > "Myers W. Carpenter" wrote: > > Wim Taymans wrote: > > > hopefully fix an mmx compilation problem. > > > > Fixed it for me, at least. Havn't tried any mpeg2 stream tho. Please note that I do not currently use the correct timestamps for mpeg2 streams so video might be jerky. > > I dug some up from the libmpeg2 pages. > > http://heroine.linuxave.net/titanic512.mpg > > So far the only one I've downloaded (I'm on the bad side of a 28.8 for > the next 5 weeks :(), but it doesn't work. Here's the output: > > gsttypefind: try type :10 > gsttypefind: try type :9 > gsttypefind: try type :8 > gsttypefind: try type :7 > gsttypefind: try type :6 > gsttypefind: try type :5 > gsttypefind: try type :4 > gsttypefind: found type :4 > have type 4:video/mpeg-system video/mpeg1-system video/mpeg This is an mpeg1 system stream. > DEBUG: mpeg_play:util extension ID = 1 > DEBUG: MPEG2 detected > DEBUG: sequence extension > DEBUG: profile_and_level_indication=72 > DEBUG: profile=4, level=8 > DEBUG: progressive_sequence=0 > DEBUG: chroma_format=1 > DEBUG: horizontal_size_extension=0 > DEBUG: vertical_size_extension=0 > DEBUG: bit_rate_extension=0 > DEBUG: vbv_buffer_size_extension=0 > DEBUG: low_delay=0 > DEBUG: frame_rate_extension_n=0 > DEBUG: frame_rate_extension_d=0 > DEBUG: mpeg_play:util extension ID = 2 > DEBUG: sequence display extension > DEBUG: video_format=2 > DEBUG: color_description=1 > DEBUG: color_primaries=5 > DEBUG: transfer_characteristics=5 > DEBUG: matrix_coefficients=4 > DEBUG: display_horizontal_size=360 > DEBUG: display_vertical_size=160 > DEBUG: mpeg_play:util extension ID = 8 > DEBUG: picture coding extension > DEBUG: forward horizontal f_code=15 > DEBUG: forward vertical f_code=15 > DEBUG: backward horizontal f_code=15 > DEBUG: backward_vertical f_code=15 > DEBUG: intra_dc_precision=0 > DEBUG: picture_structure=3 > DEBUG: top_field_first=1 > DEBUG: frame_pred_frame_dct=0 > DEBUG: concealment_motion_vectors=0 > DEBUG: q_scale_type=1 > DEBUG: intra_vlc_format=1 > DEBUG: alternate_scan=0 > DEBUG: repeat_first_field=0 > DEBUG: chroma_420_type=0 > DEBUG: progressive_frame=0 > DEBUG: composite_display_flag=0 > FIXME: need to adjust the quantizer scale 14 > with an MPEG2 video stream... weirdness... What about the standards? This is hard to fix. It needs a lot of work in the typedetect department. I have to look deep into the stream to find out that it really is an mpeg2 stream. It also has a width that is not a multiple of 16 and it has a non- standard video rate of 15fps (this is done with the libmpeg2 package). I'll commit a fix so that it plays by forcing the mpeg2 decoder. for now. > and then it segfaults. Yes, no doubt. Wim > > Yell at me if this doesn't help :) I have a very fast internet connection so when I can get the stream, I'll try to fix it. -- You will be awarded a medal for disregarding safety in saving someone. |
From: Erik W. <om...@te...> - 2001-01-14 04:16:12
|
On Sat, 13 Jan 2001, Wim Taymans wrote: > Modified files: > gst : gstbin.c gstbin.h gstcaps.h gstelement.c > gstelement.h gstpad.c gstpad.h gstplugin.h > gstprops.h gstxml.h > > Log message: > include parser.h instead of gnome-xml/parser.h untill xml-config is > fixed... Beware that this breaks a lot of plugins. They reference parser.h by way of including the gst header files. If they don't have the appropriate -I/usr/include/gnome-xml in their CFLAGS, things break horribly. I've got a major update to the configure.in and Makefile.am's pending, it solves all these problems and dramatically cleans up the build as well. Should even speed it up. Erik Walthinsen <om...@te...> - System Administrator __ / \ GStreamer - The only way to stream! | | M E G A ***** http://gstreamer.net/ ***** _\ /_ |
From: Erik W. <om...@te...> - 2001-02-22 20:11:15
|
On Thu, 22 Feb 2001, Wim Taymans wrote: > Modified files: > examples/plugins: example.c > Log message: > Fixed an unclosed comment Oops. Another "compile before you commit" mistake. /me grabs the BPB Erik Walthinsen <om...@te...> - System Administrator __ / \ GStreamer - The only way to stream! | | M E G A ***** http://gstreamer.net/ ***** _\ /_ |
From: Myers C. <my...@fi...> - 2001-02-24 18:31:55
|
> CVSROOT: /cvsroot/gstreamer > Module name: gstreamer > Changes by: wtay 01/02/24 09:39:27 > > Modified files: > include/wine : msacm.h > libs/winloader : Makefile.am afl.c driver.c elfdll.c module.c > pe_image.c vfl.c > > Log message: > Refreshed the winloader with the latest xmmp code. > win32 codecs work again. It was a metter of turning of optimisations. Is this xmmp as in http://www.frozenproductions.com/xmmp/? If not I just ran into their entry on freshmeat.net. I'm going to try and find out why he's doing YAMS (yet another media system). Perhaps if he knew about this project he'd throw in here. myers |
From: Dennis S. <sy...@ar...> - 2001-02-24 18:53:54
|
Myers Carpenter wrote: > > CVSROOT: /cvsroot/gstreamer > > Module name: gstreamer > > Changes by: wtay 01/02/24 09:39:27 > > > > Modified files: > > include/wine : msacm.h > > libs/winloader : Makefile.am afl.c driver.c elfdll.c module.c > > pe_image.c vfl.c > > > > Log message: > > Refreshed the winloader with the latest xmmp code. > > win32 codecs work again. It was a metter of turning of optimisations. > > Is this xmmp as in http://www.frozenproductions.com/xmmp/? > > If not I just ran into their entry on freshmeat.net. I'm going to try and > find out why he's doing YAMS (yet another media system). Perhaps if he > knew about this project he'd throw in here. > > myers i also did mail him about gstreamer.. still waiting for a reply.. |
From: Wim T. <wim...@ch...> - 2001-04-01 14:04:33
|
On 01 Apr 2001 07:01:36 -0700, Wim Taymans wrote: > CVSROOT: /cvsroot/gstreamer > Module name: gstreamer > Changes by: wtay 01/04/01 07:01:36 > > Modified files: > gstplay : gstmediaplay.glade gstplay.c > > Log message: > This patch is now The Right Way(tm) to handle the stop button but at > least it doesn't crash... > s/now/NOT doh! > > _______________________________________________ > gstreamer-cvs mailing list > gst...@li... > http://lists.sourceforge.net/lists/listinfo/gstreamer-cvs > > |
From: Wim T. <wim...@tv...> - 2000-01-31 22:58:34
|
Erik Walthinsen wrote: > > On Mon, 31 Jan 2000, Wim Taymans wrote: > > > Directory /cvsroot/gstreamer/gstreamer/include added to the repository > > Uh, waitasec, what's that for? include/ directories are something I stay > away from, since they are incompatible with using subdirectories in > /usr/include. Specifically, all the headers in gstreamer/gst/ can be > referred to as gst/gst*.h, whether their installed or not. oops, you're right.. I commited mmx.h in there. I better put it in gst/include then? Wim > > What did you plan on putting in that directory? > > Erik Walthinsen <om...@cs...> - Staff Programmer @ OGI > Quasar project - http://www.cse.ogi.edu/DISC/projects/quasar/ > Video4Linux Two drivers and stuff - http://www.cse.ogi.edu/~omega/v4l2/ > __ > / \ SEUL: Simple End-User Linux - http://www.seul.org/ > | | M E G A Helping Linux become THE choice > _\ /_ for the home or office user > > _______________________________________________ > Gstreamer-devel mailing list > Gst...@li... > http://lists.sourceforge.net/mailman/listinfo/gstreamer-devel -- Pray to God, but keep rowing to shore. -- Russian Proverb |