ChinnaSuhas / ossbuild

Automatically exported from code.google.com/p/ossbuild
Other
0 stars 1 forks source link

gst-launch playbin2 crashes on opening files, at least, mpg, avi and mp4 #27

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Build and install the latest SVN OSSBuild (GPL)
The build was on MS Visual Studio 2008 SP1.
OS is Windows XP.

2. run 
gst-launch playbin2 uri=file:///d:/path/to/file

What is the expected output? What do you see instead?
I was expecting a window with moving pictures and a sound in my headphones.
I've got an offer to start a MSVS debugger instead.

The crash was at the same source line, with the same addresses, I was reporting 
already.
https://forja.rediris.es/forum/message.php?msg_id=222788

I also tried copying libmpeg2 DLLs both from the previous GStreamer version and 
built by 
myself using mingw32 package from the Ubuntu linux (which contains gcc 
4.2.1-sjlj) - same 
result.

Original issue reported on code.google.com by wl2776@gmail.com on 17 Mar 2010 at 10:16

GoogleCodeExporter commented 9 years ago
mpeg2 video crashes are a known issue:
http://code.google.com/p/ossbuild/issues/detail?id=25

I haven't had any problem with avi or mp4, though. Please provide an example of 
the
video or a url where it can be found.

Original comment by david.g.hoyt on 17 Mar 2010 at 6:34

GoogleCodeExporter commented 9 years ago
avi is just a container - what video format is the avi using under the covers? 
if
it's mpeg2, then it's symptoms of the same problem.

Original comment by david.g.hoyt on 17 Mar 2010 at 6:36

GoogleCodeExporter commented 9 years ago
Have you tried copying the new libmpeg2 from svn over the old install's version 
and 
then running the old release? If so, does that work? If it does, then it would 
help 
rule out where the problem really lies. 

Original comment by david.g.hoyt on 18 Mar 2010 at 12:05

GoogleCodeExporter commented 9 years ago
1. I have an old installation of the GStreamer (0.10.5-1)
Then, I've copied libmpeg2-0.dll and libmpeg2convert-0.dll from already built 
GStreamer 0.10.6.
It crashed. I also copied libgstmpeg2dec.dll - it also crashed. 
So, crashes were caused only by libmpeg2 DLLs.

2. The piece of the problematic avi file is attached.
it was produced with the command
$ ffmpeg -i 5417.avi -f avi -acodec copy -vcodec copy -fs 10000000 5417_cut.avi

That is, simply copy audio and video frames to the new avi container, limiting 
file size to 10 mln bytes.

$ ffmpeg -i 5417.avi
FFmpeg version SVN-r22144, Copyright (c) 2000-2010 the FFmpeg developers
  built on Mar  2 2010 12:19:43 with gcc 4.4.1
  configuration: --enable-static --enable-shared --cpu=i686 --enable-pthreads --disable-ffserver --disable-
vdpau --enable-gpl --enable-nonfree --enable-libmp3lame --enable-libfaac 
--enable-libx264 --enable-libxvid --
prefix=/usr/local
  libavutil     50. 9. 0 / 50. 9. 0
  libavcodec    52.55. 0 / 52.55. 0
  libavformat   52.54. 0 / 52.54. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libswscale     0.10. 0 /  0.10. 0
Input #0, avi, from '5417.avi':
  Metadata:
    ISFT            : Lavf52.39.2
  Duration: 00:04:17.60, start: 0.000000, bitrate: 7675 kb/s
    Stream #0.0: Video: h263, yuv420p, 704x576, PAR 12:11 DAR 4:3, 25 tbr, 25 tbn, 25 tbc
    Stream #0.1: Audio: aac, 48000 Hz, stereo, s16, 64 kb/s
At least one output file must be specified

3. Unfortunately, I cannot cut a piece of mp4 file and attach it (ffmpeg seems 
to have broken mpeg4 muxer, 
I'm afraid it will produce a corrupt file).

However, ffmpeg writes the following on it

$ ffmpeg -i /mnt/films/Ipod-ready/OpenSeason-2.mp4
FFmpeg version SVN-r22144, Copyright (c) 2000-2010 the FFmpeg developers
  built on Mar  2 2010 12:19:43 with gcc 4.4.1
  configuration: --enable-static --enable-shared --cpu=i686 --enable-pthreads --disable-ffserver --disable-
vdpau --enable-gpl --enable-nonfree --enable-libmp3lame --enable-libfaac 
--enable-libx264 --enable-libxvid --
prefix=/usr/local
  libavutil     50. 9. 0 / 50. 9. 0
  libavcodec    52.55. 0 / 52.55. 0
  libavformat   52.54. 0 / 52.54. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libswscale     0.10. 0 /  0.10. 0

Seems stream 0 codec frame rate differs from container frame rate: 50.00 (50/1) 
-> 25.00 (25/1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 
'/mnt/films/Ipod-ready/OpenSeason-2.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp42isom
    encoder         : HandBrake 0.9.2 2008021900
  Duration: 01:13:17.60, start: 0.000000, bitrate: 1361 kb/s
    Stream #0.0(eng): Video: h264, yuv420p, 640x384, 1199 kb/s, 25 fps, 25 tbr, 48k tbn, 50 tbc
    Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, s16, 159 kb/s
    Stream #0.2(eng): Subtitle: text / 0x74786574
At least one output file must be specified

Original comment by wl2776@gmail.com on 18 Mar 2010 at 8:14

Attachments:

GoogleCodeExporter commented 9 years ago
Just have made svn update, rebuilt and reinstalled a fresh svn version.
Build was successful, without any warnings. 

Same thing.
Also the problem with OGG. I tried this on the movie "Big buck bunny", 
downloaded from http://
www.bigbuckbunny.org/
Also, the problem with mp3 files.
I suspect, there is a global problem, somewhere in a single place.

Tried to copy libmpeg2 DLLs, saved from the release 0.10.5-1 - again, no luck.
Probably, my system is misconfigured?
I am using Windows XP SP3, MSVS 2008 SP1, DirectX SDK of August 2009.

Original comment by wl2776@gmail.com on 18 Mar 2010 at 11:52

GoogleCodeExporter commented 9 years ago
You may have the old version mixing with the new one. Uninstall the old version
completely and then run your tests again. During the install, the system path is
modified so it's entirely likely that your new build is trying to pull in
plugins/libs from the old install (depending on how your sys. is configured).

I test with the big buck bunny movies on a regular basis and haven't had a 
problem
with any of the provided formats using the latest from svn.

When in doubt, after uninstalling the old version, run and install the
x86-OSSBuild-GStreamer-Complete-GPL.msi install in the
<OSSBuild>/Deployment/GStreamer/Windows/x86/Install/ directory. Then run 
gst-launch
in a new command window. That should configure your system properly. You can 
also
download and use process explorer to examine what libraries are being loaded by
gst-launch at runtime. Dependency walker is another excellent tool to help 
diagnose
which libraries it's attempting to load.

Original comment by david.g.hoyt on 18 Mar 2010 at 4:29

GoogleCodeExporter commented 9 years ago
Almost forgot -- be sure to delete the $HOME/.gstreamer-0.10/ directory before
running gst-inspect or gst-launch to ensure that it recreates the registry from 
the
new plugin list.

Original comment by david.g.hoyt on 18 Mar 2010 at 4:42

GoogleCodeExporter commented 9 years ago
I was able to reproduce the crash using the latest. The AVI is using h.263. 
We'll
have to speak w/ the gstreamer folks to see where the problem may lie.

Original comment by david.g.hoyt on 18 Mar 2010 at 4:43

GoogleCodeExporter commented 9 years ago
Just checked in a fix (http://code.google.com/p/ossbuild/source/detail?r=540) 
that
stopped the crash and allowed me to play the example video.

Please do an update and let me know if it works for you.

mpeg2 video is still causing me problems, though. But ogg, h.264, and msmp4 
streams
all worked.

Original comment by david.g.hoyt on 18 Mar 2010 at 5:05

GoogleCodeExporter commented 9 years ago
mpeg2 video should now be fixed as well. Please see r541
(http://code.google.com/p/ossbuild/source/detail?r=541).

Original comment by david.g.hoyt on 18 Mar 2010 at 7:59

GoogleCodeExporter commented 9 years ago

Original comment by david.g.hoyt on 18 Mar 2010 at 9:40

GoogleCodeExporter commented 9 years ago
It works now.
I've deinstalled 0.10.5, creared the plugin registry, cleared all environment 
variables (PATH, 
GST_PLUGIN_PATH).
Rebooted.
Then, I've made svn update and rebuild of everything.
Then I've installed a fresh GStreamer and rebooted again (just to be sure, that 
all environment variables are 
set correctly - that's windoze).
Now avi, mpg, ogg, mp4 and mp3 files play well with gst-launch playbin2.
Thank you for a good job!

Original comment by wl2776@gmail.com on 19 Mar 2010 at 8:54