[PlanetCCRMA] Compiling and running gst123-0.1.2 on Fedora

Niels Mayer nielsmayer at gmail.com
Tue Jul 6 14:53:24 PDT 2010

FYI: http://space.twc.de/~stefan/gst123.php is a nice command-line
audio/video file-playing utility that should be part of Fedora or
PlanetCCRMA. It uses the gstreamer interface so it provides
better-integrated access to your audio devices or servers. Below are
some simple tips on compiling on fedora.

---------- Forwarded message ----------
From: Niels Mayer <nielsmayer at gmail.com>
Date: Tue, Jul 6, 2010 at 2:43 PM
Subject: Re: [LAA] gst123-0.1.2
To: Stefan Westerfeld <stefan at space.twc.de>
Cc: Linux Audio Developers <linux-audio-dev at lists.linuxaudio.org>

On Mon, Jul 5, 2010 at 9:11 AM, Stefan Westerfeld <stefan at space.twc.de> wrote:
> gst123-0.1.2 has been released.
> Website:  http://space.twc.de/~stefan/gst123.php
> Download: http://space.twc.de/~stefan/gst123/gst123-0.1.2.tar.bz2

Stefan -- very nice and useful program. Thanks for making this available!

FYI -- To compile on Fedora, I had to install the following to get
'configure' to stop complaining:

1) yum install 'gstreamer-devel' (obviously)
2) yum install gstreamer-plugins-base-devel (less obvious as config complains:
   No package 'gstreamer-interfaces-0.10' found // No package
'gstreamer-video-0.10' found )
3) yum install ncurses-devel

The application compiles and works nicely after that.

However, I have some questions/issues/bugs:

(1) I do not have pulseaudio running, and all gstreamer apps have a
pause as they attempt to contact pulseaudio, and then emit a message:
"socket(): Address family not supported by protocol" ... in a GUI app,
this might make less of a difference, since you don't end up having
the app respond to ^C signals. However, gst123 does -- and during the
period when gstreamer is contacting the pulseaudio socket, the
application becomes temporarily unresponsive, even to signals like ^C.
 By the time it starts responding again it's already loaded the next
file and gone unresponsive again due to timing out on the nonexistent
pulseaudio socket. This makes the program very hard to interrupt.

 Question: is there a way to disable checking for pulseaudio for each
new file when specifying multiple media files. e.g.: "gst123 *.ogg" ?
For example: do it once at application startup, or even better, a way
to prevent it from happening all-together via environment variable,
configuration, etc. Best would be some kind of environmental check so
that the timeout on socket needn't occur.The timeout significantly
slows down operation of the program even when not issuing ^C's.

(2) For HD Video recorded off digital broadcasts, but not for regular
def broadcast video, there's a problem when issuing the '->' (forward
arrow) or '<-' (backward  arrow) commands to skip forwards or back: As
you go forward, there's an increasingly longer delay before the audio
syncs up and starts playing. Hit '->' a few times and the audio never
seems to sync up, and sometimes the video stays paused on the same
frame, even though the time display in the terminal continues

Note that the files producing these errors have some oddball results
output from "ffmpeg -i" but that's how mythtv's mpg files look, for HD

[mpeg2video @ 0x1c2fcd0]mpeg_decode_postinit() failure
   Last message repeated 7 times
[mpegts @ 0x1c2b5f0]MAX_READ_SIZE:5000000 reached
Input #0, mpegts, from '/home/npm/Videos/1551_20100407195900.mpg':
 Duration: 02:06:59.36, start: 55515.108733, bitrate: 10490 kb/s
 Program 1
   Stream #0.0[0x7c0]: Video: mpeg2video, yuv420p, 1280x720 [PAR 1:1
DAR 16:9], 38810 kb/s, 62.39 fps, 59.94 tbr, 90k tbn, 119.88 tbc
   Stream #0.1[0x7c1]: Audio: ac3, 48000 Hz, stereo, s16, 192 kb/s
   Stream #0.2[0x7c2]: Audio: ac3, 48000 Hz, stereo, s16, 192 kb/s
At least one output file must be specified

(3) Note that if the above file is played out of a list 'gst123 *.mpg'
then at least it gets audio playback. The same file, started
standalone, shows video, but gives plays no audio:
gnulem-346-~> gst123 /home/npm/Videos/1551_20100407195900.mpg

Playing file:///home/npm/Videos/1551_20100407195900.mpg

** (gst123:12323): CRITICAL **: gst_mpeg_descriptor_find: assertion
`desc != NULL' failed

** (gst123:12323): CRITICAL **: gst_mpeg_descriptor_find: assertion
`desc != NULL' failed
No accelerated IMDCT transform found

** (gst123:12323): CRITICAL **: gst_mpeg_descriptor_find: assertion
`desc != NULL' failed

** (gst123:12323): CRITICAL **: gst_mpeg_descriptor_find: assertion
`desc != NULL' failed
No accelerated IMDCT transform found
socket(): Address family not supported by protocol

Codec   : Dolby Digital (AC-3) (audio)                    Bitrate : 192.0 kbit/s


PS: Feature request: decode caption information from videos, and
display in video. And/or output a timed-text, SMIL or other file
containing the caption information and time-of-presentation
information. This can be very useful in searching content of video

More information about the PlanetCCRMA mailing list