You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
(7) |
Oct
(54) |
Nov
(46) |
Dec
(26) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(3) |
Feb
(11) |
Mar
(25) |
Apr
(31) |
May
(52) |
Jun
(43) |
Jul
(54) |
Aug
(50) |
Sep
(86) |
Oct
(48) |
Nov
(45) |
Dec
(99) |
2003 |
Jan
(78) |
Feb
(27) |
Mar
(58) |
Apr
(46) |
May
(61) |
Jun
(53) |
Jul
(23) |
Aug
(78) |
Sep
(20) |
Oct
(52) |
Nov
(57) |
Dec
(22) |
2004 |
Jan
(16) |
Feb
(55) |
Mar
(54) |
Apr
(26) |
May
(17) |
Jun
(32) |
Jul
(26) |
Aug
(17) |
Sep
(7) |
Oct
(12) |
Nov
(1) |
Dec
(11) |
2005 |
Jan
(10) |
Feb
(8) |
Mar
(27) |
Apr
(27) |
May
(42) |
Jun
(3) |
Jul
(3) |
Aug
(4) |
Sep
(9) |
Oct
(42) |
Nov
(19) |
Dec
(2) |
2006 |
Jan
(6) |
Feb
(18) |
Mar
(9) |
Apr
(4) |
May
(8) |
Jun
(4) |
Jul
(11) |
Aug
|
Sep
(10) |
Oct
(5) |
Nov
|
Dec
|
2007 |
Jan
(8) |
Feb
(5) |
Mar
(6) |
Apr
(33) |
May
(14) |
Jun
(16) |
Jul
(4) |
Aug
(7) |
Sep
(3) |
Oct
(1) |
Nov
(4) |
Dec
(4) |
2008 |
Jan
(11) |
Feb
(40) |
Mar
(4) |
Apr
(25) |
May
(23) |
Jun
(1) |
Jul
(13) |
Aug
(3) |
Sep
(6) |
Oct
(10) |
Nov
(2) |
Dec
(1) |
2009 |
Jan
(2) |
Feb
(4) |
Mar
(9) |
Apr
(1) |
May
(3) |
Jun
(2) |
Jul
(7) |
Aug
|
Sep
(14) |
Oct
(6) |
Nov
(5) |
Dec
(4) |
2010 |
Jan
|
Feb
|
Mar
(5) |
Apr
(1) |
May
(7) |
Jun
(8) |
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(9) |
Jun
(3) |
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
2012 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(4) |
Jul
(4) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Matthew M. <mmc...@gm...> - 2010-04-27 02:47:14
|
Hi, I have the same problem. Any advice appreciated. Thanks, Matt Hi , I will use libmpeg2 project in FPGA and trying to build the vc++ project first but the problem is when I try to open the workspace(mpeg2dec.dsw) with ViSual Studio 2003, 2005 or 2008 it says "cannot load project to a corrupt project file". Could you please help me on this issue, who did prepared the solution and at which version of visual studio? Thanks, Murat Karatoprak Vestel Electronics SW R&D Phone:+90 236 2330131 (2061) |
From: Hoyt, D. <ho...@ll...> - 2010-03-18 18:45:47
|
Hello, When compiling libmpeg2 using GCC 4.4.3 under windows (GCC 4.4.3 available here: http://komisar.gin.by/mingw/index.html), I get crashes all over the place. Using an older version of GCC seems to work. Does anyone have some suggestions on what I could do? The version of GCC 4.4.3 I'm using does have graphite loop transformations enabled, but I'm turning them off using CFLAGS="-fno-loop-block -fno-loop-strip-mine -fno-loop-interchange -fno-tree-loop-distribution -fno-tree-loop-im". I appreciate any help anyone could offer. Thanks, - David Hoyt |
From: R. Denis-C. <re...@re...> - 2010-03-14 20:18:48
|
Le dimanche 14 mars 2010 20:32:01 Joo Martin, vous avez écrit : > where can I find the up to date cvs / svn / git repository of libmpeg2 or > mpeg2dec ? svn://svn.videolan.org/libmpeg2/trunk -- Rémi Denis-Courmont http://www.remlab.net/ http://fi.linkedin.com/in/remidenis |
From: Joo M. <joo...@us...> - 2010-03-14 18:32:15
|
Hello, where can I find the up to date cvs / svn / git repository of libmpeg2 or mpeg2dec ? Ciao, Joo |
From: Murat K. <mur...@ve...> - 2010-03-03 11:32:48
|
Hi , I will use libmpeg2 project in FPGA and trying to build the vc++ project first but the problem is when I try to open the workspace(mpeg2dec.dsw) with ViSual Studio 2003, 2005 or 2008 it says "cannot load project to a corrupt project file". Could you please help me on this issue, who did prepared the solution and at which version of visual studio? Thanks, Murat Karatoprak Vestel Electronics SW R&D Phone:+90 236 2330131 (2061) Dogayla Dost Teknoloji Vestel, hepimizin cevreye daha duyarli olmasini ve e-posta ciktisi almadan once bir kez daha dusunmenizi rica ediyor. / Vestel, your nature-friendly technology provider, kindly encourages you to consider our planet Earth before printing this email. |
From: Sameer N. <sam...@da...> - 2010-03-02 11:30:00
|
Hi, I am trying to study a gstreamer plugin that is using libmpeg2 to decode the obvious. I have a few questions on the libmpeg2 side of things. Through my understanding of the mpeg2 standard, the coding order is not the same as the display order (atleast when there are B-Frames in the stream), i.e. the order in which frames are encoded in a stream are not the order in which they are displayed. And that the decoder, will actually give out frames in the display order after reordering. The documentation available here, http://tonelli.sns.it/pub/mennucc1/mplayer/debug/tmp/mpeg2dec-0.4.0b/doc/libmpeg2.txt says that mpeg2_tag_picture, allows you to associate a timestamp (or tag) to the next picture that starts after the tag was set. Here i would like to know, whether the tag is associated with the next picture in the encoded stream, or the next picture that is returned as decoded and ready to be displayed. Where, in the former case, due to reordering that particular timestamped frame could come after a few frames. Secondly, in the structure, typedef struct mpeg2_info_s { ... ... const mpeg2_picture_t * current_picture; const mpeg2_picture_t * display_picture; ... ... } mpeg2_info_t; What pictures do current_picture and display_picture variables hold. Through my study i have found that display_picture holds the picture that currently has to be displayed. What does current_picture hold? Please comment. Thanks & Regards ~Sameer |
From: Keith W. <ke...@MI...> - 2009-12-25 14:07:07
|
Andrey, Please post foo.mpg somewhere we can get to it as well, please. We need that to see if it's a valid MPEG-2 video elementary stream. Just the first 10 megabytes is enough. Just to emphasize: libmpeg2 decodes MPEG-2 video elementary streams (streams that can contain video only). If the stream is multiplexed inside a different kind of stream (like an MPEG-2 program stream or transport stream, which can both include multiple video streams and audio streams), you'll need to extract the video stream you want first before handing it off to libmpeg2. The demo "mpeg2dec" program has rudimentary support for this with the -s and -t options. Thanks, Keith On Fri, 25 Dec 2009, Andrey Chinkov wrote: > Hi. > I have done the following steps consistently: > > 1) Download libmpeg2-0.5.1.tar.gz, unpack it; > > 2) Execute in terminal: > > ./configure --enable-static --disable-shared > make > make install > > 3) Launch "mpeg2dec foo.mpg" > > In the output window a saw malformed image (see attached > libjpeg2_malformed_image.jpg). > > MY QUESTIONs ARE: > > - Perhaps someone has already met with this problem? How did you solve > it? > - Whether the developers tell me how to solve this problem with the > malformed image? > > Thanks in advance. > > > |
From: Joo M. <joo...@us...> - 2009-12-07 17:45:28
|
Hello Michel, ---- Am Sun, 6 Dec 2009 01:04:41 -0800 schrieb Michel Lespinasse <wa...@zo...>: > * Does your crash go away if you clear the MPEG2_ACCEL_X86_MMXEXT flag ? Gour had tested this with a patch for libmpeg2 and it don't crash anymore. > In libmpeg2, MMXEXT indicates the availability of pshufw and > pavgb instructions. My understanding is that CPUs advertising the > SSE capability must support these instructions. It seems there are a difference between AMD-CPUs and Intel-CPUs. But over the all, there is an option "--accel" in transcode, with which I could manual define the usable cpu accelerations. But libmpeg2 (or transcode ?) ignore this manual definition. So its not possible for user to disable the using of cpu accelerations inside transcode / libmpeg2. Or is there another way? This option would be a simple solution for dvdwizard. Ciao, Joo |
From: Michel L. <wa...@zo...> - 2009-12-06 09:28:21
|
On Sat, Nov 28, 2009 at 03:58:00PM +0100, Gour wrote: > The solution to this particular problem is to fix the following bug in > libmpeg2: > > >#if defined(ARCH_X86) || defined(ARCH_X86_64) > >static inline uint32_t arch_accel (uint32_t accel) > >{ > [...] > > if (accel & (MPEG2_ACCEL_X86_SSE2 | MPEG2_ACCEL_X86_SSE3)) > > accel |= MPEG2_ACCEL_X86_MMXEXT; > > "MMXEXT" should be changed to "MMX" here (or the clause should be deleted > entirely if the MMX flag is not needed in SSE environments). > </quote> * Does your crash go away if you clear the MPEG2_ACCEL_X86_MMXEXT flag ? * Do you know what CPU instruction the crash happens on ? In libmpeg2, MMXEXT indicates the availability of pshufw and pavgb instructions. My understanding is that CPUs advertising the SSE capability must support these instructions. -- Michel "Walken" Lespinasse A program is never fully debugged until the last user dies. |
From: Gour <go...@go...> - 2009-11-28 14:58:13
|
On Sat, 28 Nov 2009 13:22:21 +0200 >>>>>> "Rémi" == "Rémi Denis-Courmont" <re...@re...> wrote: Rémi> AFAIK, MMX extensions are the subset of SSE which is safe on Rémi> operating systems that don't support SSE. Hence, it is perfectly Rémi> normal that you don't find it in the CPU flags - it is implied by SSE. Here is the reply I got on transcode list which confirms my 'theory'... <quote> >Francesco> `mmxext' is deep jargon (mostly found on linux field AFAIK) >Francesco> for some MMX extended instructions that aren't explicitly >Francesco> advertised; I can't recall the exact details but those were >Francesco> added together with the first round of SSE or something like >Francesco> that. >Francesco> So, unless I missing something huge, the core i7 definitley >Francesco> support them :) I'm afraid you're missing something. (: MMXEXT (like 3DNow!) is an AMD-specific extension that was added in some old AMD CPUs back before AMD and Intel settled on a common SIMD instruction set. The MMXEXT instructions have since been superseded by SSE in both AMD and Intel CPUs, so Intel never added support for them. The solution to this particular problem is to fix the following bug in libmpeg2: >#if defined(ARCH_X86) || defined(ARCH_X86_64) >static inline uint32_t arch_accel (uint32_t accel) >{ [...] > if (accel & (MPEG2_ACCEL_X86_SSE2 | MPEG2_ACCEL_X86_SSE3)) > accel |= MPEG2_ACCEL_X86_MMXEXT; "MMXEXT" should be changed to "MMX" here (or the clause should be deleted entirely if the MMX flag is not needed in SSE environments). </quote> Sincerely, Gour -- Gour | Hlapicina, Croatia | GPG key: F96FF5F6 ---------------------------------------------------------------- |
From: Gour <go...@go...> - 2009-11-28 10:59:02
|
Hiya! Everything started with crashes I experienced with dvdwizard which lead us to transcode. However, transcode dev says it's the problem with libmpeg2 lib. What is the issue? When invoking transcode I get the following: > cmove asm decode_mpeg2.c libmpeg2 acceleration: mmxext which means that libmpeg2 says that mmxext instruction set can be uses, although my CPU (i7 860) does not support it, according to cpuinfo: flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology tsc_reliable nonstop_tsc pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ida tpr_shadow vnmi flexpriority ept vpid Inspecting the libmpeg2 code I've found the following: #if defined(ARCH_X86) || defined(ARCH_X86_64) static inline uint32_t arch_accel (uint32_t accel) { if (accel & (MPEG2_ACCEL_X86_3DNOW | MPEG2_ACCEL_X86_MMXEXT)) accel |= MPEG2_ACCEL_X86_MMX; if (accel & (MPEG2_ACCEL_X86_SSE2 | MPEG2_ACCEL_X86_SSE3)) accel |= MPEG2_ACCEL_X86_MMXEXT; if (accel & (MPEG2_ACCEL_X86_SSE3)) accel |= MPEG2_ACCEL_X86_SSE2; in cpu_accel.c which, if I read C correctly means, that libmpeg2 sets MMXEXT set if the following is true: (MPEG2_ACCEL_X86_SSE2 | MPEG2_ACCEL_X86_SSE3) which is not the case with my cpu having support for SSE2, but not MMXEXT. Am I right, or something else is going on that libmpeg2 sends 'wrong' info about acceleration to the transcode? Sincerely, Gour -- Gour | Hlapicina, Croatia | GPG key: F96FF5F6 ---------------------------------------------------------------- |
From: Ilya Murav'j. <mu...@ya...> - 2009-11-26 16:42:11
|
Rémi Denis-Courmont пишет: > Le jeudi 26 novembre 2009 00:16:47 Ilya Murav'jov, vous avez écrit : >> I use libmpeg2 for navigating mpegs & vobs (timeline, non-linear access >> to images). It would be nice if my site' link is added to libmpeg2 >> homepage, http://libmpeg2.sourceforge.net/ (as one states "let us know!"). > > As far as I know, that site is dead. I doubt anyone updates it. > Ok. |
From: Ilya Murav'j. <mu...@ya...> - 2009-11-25 22:38:47
|
Hello! My name is Ilya Murav'jov and I am the author of the DVD authoring program, Bombono DVD: http://www.bombono.org I use libmpeg2 for navigating mpegs & vobs (timeline, non-linear access to images). It would be nice if my site' link is added to libmpeg2 homepage, http://libmpeg2.sourceforge.net/ (as one states "let us know!"). Thanks in advance, Ilya |
From: Bikramjeet S. <bik...@lo...> - 2009-11-06 08:37:23
|
Hi There, Thanks in advance.. Will u please Suggestion me a fast Open source Mpeg2 Encoder. I need to encode RAW .ppm frames with speed of 25fps. Still i have ./mpeg2enc tool it could encode maximum upto 7fps, Its not sufficient for me. Please help. -- Thanks and Regards Bikramjeet singh Logic Eastern India Private Limited B-2, Sec- 31, Noida http: www.logiceastern.com Phone: +0120-2455112 ext: 212 Mobile +919971030527 |
From: Deepak G. <gde...@gm...> - 2009-10-29 08:41:28
|
Hello, I just started familiarizing myself with the libmpeg2 code recently. I need to measure the video quality for my project. Hence, i need to know the pixel intensities of frames. In the decoder code, how/where can i get the completely decoded frame pixel intensity values? Any help is appreciated. Regards Deepak Gangadharan ############################# Research Student School of Computing National University of Singapore ############################# |
From: Bikramjeet S. <bik...@lo...> - 2009-10-28 05:25:19
|
Hi Rémi Denis, I have extract the Presentation video frames from the Mpeg2 TS. these frames are in ppm image format non compresed. but now i have some another chalange. how to generate a mpeg2 stream again using these raw frames. -- Thanks and Regards Bikramjeet singh Logic Eastern India Private Limited B-2, Sec- 31, Noida http: www.logiceastern.com Phone: +0120-2455112 ext: 212 Mobile +919971030527 |
From: Gus I. <gu...@gh...> - 2009-10-26 12:38:04
|
unsubscribe -------------------------------------------------- From: <lib...@li...> Sent: Monday, October 26, 2009 4:03 AM To: <lib...@li...> Subject: Libmpeg2-devel Digest, Vol 31, Issue 1 > Send Libmpeg2-devel mailing list submissions to > lib...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/libmpeg2-devel > or, via email, send a message with subject or body 'help' to > lib...@li... > > You can reach the person managing the list at > lib...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Libmpeg2-devel digest..." > > > Today's Topics: > > 1. Re: Fwd: segfault on bad pictures / low link power > (Keith Winstein) > 2. writing user_data() into an elementary stream (anand meher) > 3. Video display is not visible. . . . (Bikramjeet Singh) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Tue, 22 Sep 2009 14:59:22 -0400 (EDT) > From: Keith Winstein <ke...@MI...> > Subject: Re: [mpeg2-dev] Fwd: segfault on bad pictures / low link > power > To: ??baran Ak?ay?r <is...@gm...> > Cc: lib...@li... > Message-ID: <alp...@dr...> > Content-Type: text/plain; charset="utf-8" > > Hi ??baran, > > That video doesn't crash mpeg2dec or libmpeg2. It does have a heck of a > lot of corruption! And it is unusual in that it's encoded using field > pictures instead of frame pictures. > > As a practical matter, you need to reconsider how you're sending this > stuff if you want to get usable video. You need forward error correction, > retransmissions (like what TCP would give you), more link power per bit, > or something. > > On the theory for the crash, my hunch is that VLC is not engineered to be > robust against streams that use field pictures and don't observe the > required field sequence. (E.g., you have to follow a top-field picture > with a bottom-field picture, and this stream has so much invalid data that > it doesn't always do that.) > > Why are you using field pictures anyway? This is a pretty nasty stream and > it is going to touch a lot of code paths that free software is not well > tested on. > > Anyway, as a formal matter, mpeg2dec seems to be handling this properly > (and not crashing). If you want to stop VLC from crashing, my guess is you > need to switch to frame pictures. (You can still encode interlaced video > this way, of course!) And if you actually want usable video, you need some > of the practical improvements above... > > Happy hunting, > Keith > > On Tue, 22 Sep 2009, ??baran Ak?ay?r wrote: > >> 2009/9/8 Keith Winstein <ke...@mi...> >> Hello ??baran, >> >> >> Helloes again, >> >> If you feed libmpeg2 bad data (e.g., if you're dropping >> packets and not replacing them), you will certainly see green >> blotches -- that's generally what you see when there's >> missing intraframe data. >> >> (There are more sophisticated ways of doing error concealment >> in the presence of unreliable transport, but this is the >> basic behavior.) >> >> You shouldn't be able to make libmpeg2 segfault, though -- it >> should simply detect the invalid elementary stream. Can you >> capture the exact data you're feeding into it (after the UDP >> reception) and find a replicable segfault? Then we can debug >> it. Otherwise, no offense, it's probably a bug in VLC. :-) >> >> >> It's been a while, sorry, i didnt have time for video stuff, but now i >> captured some video that causes crash with vlc, splitted it so you can >> instantly see the crash :) >> >> Can you please check if you can reproduce this crash, and comment on what >> is causing this ? >> >> http://www.ish.kodzilla.org/minimum-crash.mpeg >> >> Best, >> Keith >> >> >> Thank you, best regards >> i?baran >> >> ps: dammit i first forgot to add video, than to "reply all" :S >> >> > > ------------------------------ > > Message: 2 > Date: Thu, 22 Oct 2009 23:48:22 +0200 > From: anand meher <kvm...@gm...> > Subject: [mpeg2-dev] writing user_data() into an elementary stream > To: lib...@li... > Message-ID: > <e84...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > Hello everyone, > I am working on a project using libmpeg2 where I > need to inject an explicit user_data() field with some text , > after every gop header in the input stream. I could inject the start code > 00 > 00 01 B2 which indicates a user data right after the GOP header is > finished > ( i.e by looking for the next start code occurrence after the GOP header). > *The problem is that i dont know how can i write a > simple > text inforamtion right after the start code 00 00 01 B2 in the user_data() > field ?.* (for example i would like to add something like a closed > caption > text describing the GOP) . Can some one help me with some pointers to some > links which say how an user data field can be constructed with simple > text. > > *also can some one tell me if there is a player/decoder which recognizes > the user_data text and displays on the screen along with the video*. I > hope > its not out of context with libmpeg2 forum. > > thanks in advance, > anand > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > Message: 3 > Date: Mon, 26 Oct 2009 13:32:49 +0530 > From: Bikramjeet Singh <bik...@lo...> > Subject: [mpeg2-dev] Video display is not visible. . . . > To: libmpeg2-devel <lib...@li...> > Message-ID: > <827...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > Hi There , > I am new to libmpeg2. library. First time i > have tried the "./mpeg2dec" and while giving it a TS file. but It is > giving video output in a very disturbed way even we cant see anything, > FramPerSeconf rate is very high some ware around 118fps. > > In the second test I multicast a mpg file using VLC player and modify the > "mpeg2dec" code to receive a multicast stream and again the same output > well > having the lower fps rate. because this time frame rate is limited by the > VLC player. Please help me wy i am getting this king of result. > I have attached the screen Shoot of the output result for better > understanding. > > Thanks in advance... > > > > > > > Thanks and Regards > Bikramjeet singh > > Logic Eastern India Private Limited > B-2, Sec- 31, Noida > http: www.logiceastern.com > Phone: +0120-2455112 > ext: 212 > Mobile +919971030527 > -------------- next part -------------- > An HTML attachment was scrubbed... > -------------- next part -------------- > A non-text attachment was scrubbed... > Name: ScreenShoot_5.JPG > Type: image/jpeg > Size: 40079 bytes > Desc: not available > > ------------------------------ > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry(R) Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9 - 12, 2009. Register now! > http://p.sf.net/sfu/devconference > > ------------------------------ > > _______________________________________________ > Libmpeg2-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmpeg2-devel > > > End of Libmpeg2-devel Digest, Vol 31, Issue 1 > ********************************************* |
From: Rémi Denis-C. <re...@vi...> - 2009-10-26 11:17:49
|
On Mon, 26 Oct 2009 14:20:35 +0530, Bikramjeet Singh <bik...@lo...> wrote: > It is doing the same thing with simple mpg file. Ok. I am going to repeat because you obviously did not get the point: mpeg2dec only decodes MPEG2 Video Elementary Streams. mpeg2dec does NOT decode MPEG2 Transport Streams. mpeg2dec does NOT decode MPEG2 Program Streams. mpeg2dec does NOT decode [put file other format here]. -- Rémi Denis-Courmont |
From: anand m. <kvm...@gm...> - 2009-10-22 21:48:33
|
Hello everyone, I am working on a project using libmpeg2 where I need to inject an explicit user_data() field with some text , after every gop header in the input stream. I could inject the start code 00 00 01 B2 which indicates a user data right after the GOP header is finished ( i.e by looking for the next start code occurrence after the GOP header). *The problem is that i dont know how can i write a simple text inforamtion right after the start code 00 00 01 B2 in the user_data() field ?.* (for example i would like to add something like a closed caption text describing the GOP) . Can some one help me with some pointers to some links which say how an user data field can be constructed with simple text. *also can some one tell me if there is a player/decoder which recognizes the user_data text and displays on the screen along with the video*. I hope its not out of context with libmpeg2 forum. thanks in advance, anand |
From: Keith W. <ke...@MI...> - 2009-09-22 18:59:36
|
Hi İşbaran, That video doesn't crash mpeg2dec or libmpeg2. It does have a heck of a lot of corruption! And it is unusual in that it's encoded using field pictures instead of frame pictures. As a practical matter, you need to reconsider how you're sending this stuff if you want to get usable video. You need forward error correction, retransmissions (like what TCP would give you), more link power per bit, or something. On the theory for the crash, my hunch is that VLC is not engineered to be robust against streams that use field pictures and don't observe the required field sequence. (E.g., you have to follow a top-field picture with a bottom-field picture, and this stream has so much invalid data that it doesn't always do that.) Why are you using field pictures anyway? This is a pretty nasty stream and it is going to touch a lot of code paths that free software is not well tested on. Anyway, as a formal matter, mpeg2dec seems to be handling this properly (and not crashing). If you want to stop VLC from crashing, my guess is you need to switch to frame pictures. (You can still encode interlaced video this way, of course!) And if you actually want usable video, you need some of the practical improvements above... Happy hunting, Keith On Tue, 22 Sep 2009, İşbaran Akçayır wrote: > 2009/9/8 Keith Winstein <ke...@mi...> > Hello İşbaran, > > > Helloes again, > > If you feed libmpeg2 bad data (e.g., if you're dropping > packets and not replacing them), you will certainly see green > blotches -- that's generally what you see when there's > missing intraframe data. > > (There are more sophisticated ways of doing error concealment > in the presence of unreliable transport, but this is the > basic behavior.) > > You shouldn't be able to make libmpeg2 segfault, though -- it > should simply detect the invalid elementary stream. Can you > capture the exact data you're feeding into it (after the UDP > reception) and find a replicable segfault? Then we can debug > it. Otherwise, no offense, it's probably a bug in VLC. :-) > > > It's been a while, sorry, i didnt have time for video stuff, but now i > captured some video that causes crash with vlc, splitted it so you can > instantly see the crash :) > > Can you please check if you can reproduce this crash, and comment on what > is causing this ? > > http://www.ish.kodzilla.org/minimum-crash.mpeg > > Best, > Keith > > > Thank you, best regards > işbaran > > ps: dammit i first forgot to add video, than to "reply all" :S > > |
From: İşbaran A. <is...@gm...> - 2009-09-22 07:57:23
|
2009/9/8 Keith Winstein <ke...@mi...> > Hello İşbaran, > Helloes again, If you feed libmpeg2 bad data (e.g., if you're dropping packets and not > replacing them), you will certainly see green blotches -- that's generally > what you see when there's missing intraframe data. > > (There are more sophisticated ways of doing error concealment in the > presence of unreliable transport, but this is the basic behavior.) > > You shouldn't be able to make libmpeg2 segfault, though -- it should simply > detect the invalid elementary stream. Can you capture the exact data you're > feeding into it (after the UDP reception) and find a replicable segfault? > Then we can debug it. Otherwise, no offense, it's probably a bug in VLC. :-) > It's been a while, sorry, i didnt have time for video stuff, but now i captured some video that causes crash with vlc, splitted it so you can instantly see the crash :) Can you please check if you can reproduce this crash, and comment on what is causing this ? http://www.ish.kodzilla.org/minimum-crash.mpeg Best, > Keith Thank you, best regards işbaran ps: dammit i first forgot to add video, than to "reply all" :S |
From: Diego B. <di...@bi...> - 2009-09-18 15:39:30
|
On Fri, Sep 18, 2009 at 04:32:55PM +0200, Rémi Denis-Courmont wrote: > > Anyway that's orthogonal to optimizing libmpeg2. No offense to anybody, but optimizing libmpeg2 sounds like a waste of time. It's unmaintained and slower to begin with.. Diego |
From: Måns R. <ma...@ma...> - 2009-09-18 15:03:45
|
Rémi Denis-Courmont <re...@vi...> writes: > On Fri, 18 Sep 2009 15:25:11 +0100, Måns Rullgård <ma...@ma...> wrote: >> I have compared FFmpeg against libmpeg2 myself, and FFmpeg on ARMv7 is >> about 1.5x faster than libmpeg2. If your experience with VLC is to >> the contrary, there must be a problem in VLC. > > Upon closer inspection, it does seem that raw ffmpeg is around 50% faster > indeed, if NEON support is enabled. With VLC however, FFMPEG MPEG2 decoding > is horribly jittery - freezing every so often. I do not know why, and I > have neither time nor skills to investigate this. I offered to help you, but I can't without that oprofile data... > Anyway that's orthogonal to optimizing libmpeg2. True. However, instead of writing it all from scratch, and inefficiently, I suggest you reuse the code from FFmpeg. -- Måns Rullgård ma...@ma... |
From: Rémi Denis-C. <re...@vi...> - 2009-09-18 14:33:09
|
On Fri, 18 Sep 2009 15:25:11 +0100, Måns Rullgård <ma...@ma...> wrote: > I have compared FFmpeg against libmpeg2 myself, and FFmpeg on ARMv7 is > about 1.5x faster than libmpeg2. If your experience with VLC is to > the contrary, there must be a problem in VLC. Upon closer inspection, it does seem that raw ffmpeg is around 50% faster indeed, if NEON support is enabled. With VLC however, FFMPEG MPEG2 decoding is horribly jittery - freezing every so often. I do not know why, and I have neither time nor skills to investigate this. Anyway that's orthogonal to optimizing libmpeg2. -- Rémi Denis-Courmont |
From: Måns R. <ma...@ma...> - 2009-09-18 14:25:23
|
Rémi Denis-Courmont <re...@vi...> writes: > On Tue, 15 Sep 2009 22:18:22 +0100, Måns Rullgård <ma...@ma...> wrote: >>> Attached is an intial patch against libmpeg2 trunk to use NEON for >>> motion compensation. This is preliminary. There are a bunch of known >>> CPU stalls. Those could probably be fixed using plain assembly and >>> interleaving subsequent loads. Also, iDCT is not optimized. >> >> Why don't you steal the functions from FFmpeg instead? They are much >> better optimised than this patch. > > FFmpeg-based MPEG2 decoding was so slow on the target, that I did not even > consider the possibility that it might have been optimized. For whatever > reason, it is (eye-)noticeably slower than current libmpeg2 with the > non-SIMD ARM optimizations. Why is this so? I do not know. There could be > something wrong with VLC, but then again the FFmpeg h.264 decoding is > accelerated fine. Or it could be a build problem, or it could be that I did > not test properly, or it could be a FFmpeg problem in other part. I have compared FFmpeg against libmpeg2 myself, and FFmpeg on ARMv7 is about 1.5x faster than libmpeg2. If your experience with VLC is to the contrary, there must be a problem in VLC. -- Måns Rullgård ma...@ma... |