FS#30608 - [moc] is MOC player compiled with ogg support?

Attached to Project: Arch Linux
Opened by Daniel (8472) - Monday, 09 July 2012, 07:05 GMT
Last edited by Eric Belanger (Snowman) - Monday, 06 August 2012, 20:34 GMT
Task Type Support Request
Category Packages: Extra
Status Closed
Assigned To Eric Belanger (Snowman)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:
is MOC player compiled with ogg support?

Additional info:
* package version(s)
2.5.0-alpha4
This is : Music On Console
Version : 2.5.0-alpha4
Built : Jun 3 2012 22:06:39
Compiled with : OSS ALSA JACK internet streams resample

Steps to reproduce:
- adding any OGG radio stream doesn't play it, all other format works fine.
- even when I try to play an ogg files from disk, they aren't being played at all
- but if I execute an command like 'mocp ~/path/file.ogg' , the file is played once, though seems like corrupted a bit
- any other players, mplayer, radiotray doesn't have problem to play OGG file or streams, just MOC
- please compile it with support for OGG as well
This task depends upon

Closed by  Eric Belanger (Snowman)
Monday, 06 August 2012, 20:34 GMT
Reason for closing:  Fixed
Additional comments about closing:  I updated the snapshot: moc-20120717-1
Comment by Eric Belanger (Snowman) - Monday, 09 July 2012, 07:54 GMT
Seems to play fine here. Do you have libvorbis installed?
Comment by Daniel (8472) - Monday, 09 July 2012, 09:38 GMT
Hi,

yes I do
# pacman -Ss libvorbis
extra/libvorbis 1.3.3-1 [installed]
Vorbis codec library
multilib/lib32-libvorbis 1.3.3-1 [installed]
Vorbis codec library (32-bit)
Comment by Daniel (8472) - Monday, 09 July 2012, 16:43 GMT
I've tried moc on three other systems, and in two cases the error "Format not supported" is shown.
Before, on the first system, I haven't noticed that, perhaps because of "Hide error/informative message" function within moc.
Two another affected are Arch as as well (Version 2.5.0-alpha4, Both Built: July 2012), third where it's working is an old Ubuntu 10.04 (Version 2.5.0-alpha4, Build: Sep 16 2010).
I've also tried the AUR's moc-svn version, which is affected as well.
When checking the debug's log:
{
Jul 9 18:39:12.747534: main.c:802 main(): This is Music On Console (revision 2447M)
Jul 9 18:39:12.748756: main.c:808 main(): Configured: '--prefix=/usr' '--without-rcc' '--without-aac' '--with-oss' '--with-alsa' '--with-jack' '--with-mp3' '--with-sidplay2' '--with-musepack' '--with-vorbis' '--with-flac' '--with-wavpack' '--with-sndfile' '--with-modplug' '--with-ffmpeg' '--with-speex' '--with-samplerate' '--with-curl' 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2' 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro' 'CPPFLAGS= -I/usr/lib/oss/include' 'CXXFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2'
Jul 9 18:39:12.751191: main.c:457 log_command_line(): mocp -D
Jul 9 18:39:12.754846: options.c:1098 options_parse(): Can't open config file: No such file or directory
Jul 9 18:39:12.919021: decoder.c:660 load_plugins(): Loaded 10 decoders: ffmpeg flac modplug mp3 musepack sidplay2 sndfile speex vorbis wavpack
Jul 9 18:39:13.007650: interface.c:3407 init_interface(): Starting MOC Interface
Jul 9 18:39:13.007906: log.c:119 log_init_stream(): Writing log to: mocp_client_log
Jul 9 18:39:13.008692: utf8.c:318 utf8_init(): Using UTF8 output
Jul 9 18:39:13.075003: interface.c:474 update_mixer_name(): Mixer name: PCM
Jul 9 18:39:13.075308: interface.c:1444 get_server_playlist(): Getting the playlist...
Jul 9 18:39:13.075333: interface.c:941 recv_server_plist(): Asking server for the playlist from other client.
Jul 9 18:39:13.075398: interface.c:943 recv_server_plist(): Waiting for response
Jul 9 18:39:13.075421: interface.c:947 recv_server_plist(): There is no playlist
Jul 9 18:39:13.075800: playlist_file.c:185 plist_load_m3u(): Got MOCSERIAL tag with serial 4864
Jul 9 18:39:13.103223: interface.c:1473 use_server_queue(): Getting the queue...
Jul 9 18:39:13.103332: interface.c:976 recv_server_queue(): Asking server for the queue.
Jul 9 18:39:13.112915: interface.c:978 recv_server_queue(): Waiting for response
Jul 9 18:39:13.164248: interface.c:3386 dequeue_events(): Dequeuing events...
Jul 9 18:39:13.164376: interface.c:1101 server_event(): EVENT: 0x53
Jul 9 18:39:13.168724: interface.c:1101 server_event(): EVENT: 0x50
Jul 9 18:39:13.168963: interface.c:297 send_tags_request(): Not sending tags request for URL (http://listen.technobase.fm/tunein-oggvorbis-pls.ogg)
Jul 9 18:39:13.180726: interface.c:1101 server_event(): EVENT: 0x50
Jul 9 18:39:13.180869: interface.c:297 send_tags_request(): Not sending tags request for URL (http://radio.hbr1.com:19800/ambient.ogg.m3u)
Jul 9 18:39:13.190220: interface.c:1101 server_event(): EVENT: 0x50
Jul 9 18:39:13.190341: interface.c:297 send_tags_request(): Not sending tags request for URL (http://radio.hbr1.com:19800/tronic.ogg.m3u)
Jul 9 18:39:13.210721: interface.c:1101 server_event(): EVENT: 0x50
Jul 9 18:39:13.210855: interface.c:297 send_tags_request(): Not sending tags request for URL (http://radio.hbr1.com:19800/trance.ogg.m3u)
Jul 9 18:39:13.214457: interface.c:1101 server_event(): EVENT: 0x50
Jul 9 18:39:13.214535: interface.c:297 send_tags_request(): Not sending tags request for URL (http://mp3stream7.apasf.apa.at:8000/;stream.nsv)
Jul 9 18:39:13.222322: interface.c:1101 server_event(): EVENT: 0x0e
}
The first four "ogg" fail to play, and the fifth example goes fine.

After some more searching, it seems there to be some sort of bug for more users:
https://www.google.sk/#hl=sk&sclient=psy-ab&q=moc+OR+mocp+AND+%22Format+not+supported%22+AND+ogg&oq=moc+OR+mocp+AND+%22Format+not+supported%22+AND+ogg&gs_l=hp.3...103103.104299.2.104327.8.7.0.0.0.1.224.764.1j4j1.6.0...0.0.jvBRTjPxc8E&pbx=1&bav=on.2,or.r_gc.r_pw.r_cp.r_qf.,cf.osb&fp=9f4c4531ced4581e&biw=1338&bih=946
Comment by Daniel (8472) - Wednesday, 11 July 2012, 16:35 GMT
I've got an help by MOC maintainer J.F.
Using the patch below fixes the problem.

I had to use the AUR's implementation moc-svn in order to apply the patch in between './configure' and 'make' steps:

moc-r2447+vorbis_stream.patch.gz
{
diff --git a/decoder_plugins/vorbis/vorbis.c b/decoder_plugins/vorbis/vorbis.c
index 4321d59..1129405 100644
--- a/decoder_plugins/vorbis/vorbis.c
+++ b/decoder_plugins/vorbis/vorbis.c
@@ -283,7 +283,7 @@ static int vorbis_can_decode (struct io_stream *stream)
char buf[34];

if (io_peek (stream, buf, 34) == 34 && !memcmp (buf, "OggS", 4)
- && !memcmp (buf + 28, "vorbis", 6))
+ && !memcmp (buf + 28, "\01vorbis", 7))
return 1;

return 0;
}

After that, playing ogg streams works great.

@Eric, perhaps it would be good to include this patch into your EXTRA Repo version, till it gets implemented officialy into the moc itself.
Comment by Daniel (8472) - Thursday, 12 July 2012, 10:07 GMT

http://moc.daper.net/node/837#comment-4585

Committed to SVN as r2448: Fix Ogg/Vorbis stream detection in the Vorbis decoder.
Comment by Eric Belanger (Snowman) - Tuesday, 31 July 2012, 22:49 GMT
That patch doesn't work for me. It makes moc crash. What architecture are you using? I could put a package on my web space so you could test it.
Comment by Daniel (8472) - Wednesday, 01 August 2012, 07:41 GMT
Hi,
What's my architecture? x86_64
In the meanwhile, I've moved to AUR moc-svn package https://aur.archlinux.org/packages.php?ID=12793 as it does download the lates version from svn directly (though old nr. 2425 is shown in the AUR package).
The MOC maintainer already included this patch into the svn, so it's not required to implement the patch on your own anymore.
Simply get the latest svn version.
Also please check out my note on the AUR package site, where I also suggest to enable "--with-aac" at the compilation, as at another patch when testing with me MOC maintainer also fixed AAC streams.
I'm already using that svn build on two x86_64 arch systems (laptop and one virtual pc), and both work well.

Loading...