Adding transcoding support for the speex audio codec
some "desktop broadcasting programs" such as XSplit use speex as an audio codec. While support for speex seems to be lacking on most of the televisions (and at least my Samsung D6 does not play it), ffmpeg seems to be able to convert it just fine. So the only thing that seems to be missing is a conversion rule in profiles.xml in order to get the speex audio codec supported. I would appreciate if that could be added to Serviio.
Thanks
Here is some more info:
- Code:
ffmpeg -i "rtmp://owned.fc.llnwd.net:1935/owned/imhirai_195802 swfVfy=1 live=1" -f mpegts -vcodec copy -vbsf h264_mp4toannexbodec ac3 -ab 192k pipe: | vlc -
VLC media player 2.0.1 Twoflower (revision 2.0.1-0-gf432547)
ffmpeg version 0.8.1-4:0.8.1-0ubuntu1, Copyright (c) 2000-2011 the Libav developers
built on Mar 22 2012 05:09:06 with gcc 4.6.3
This program is not developed anymore and is only provided for compatibility. Use avconv instead (see Changelog for the list of incompatible changes).
[0x23d1108] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
HandShake: client signature does not match!
Metadata:
author
copyright
description
keywords
rating
title
presetname Custom
creationdate Sat May 26 21:27:13 2012
videodevice XSplitBroadcaster
framerate 25.00
width 1280.00
height 720.00
videocodecid avc1
avclevel 51.00
avcprofile 100.00
videodatarate 390.62
videokeyframe_frequency0.00
audiodevice VHAudioCustom
audiosamplerate 16000.00
audiochannels 1.00
audioinputvolume 100.00
audiocodecid 11.00
audiodatarate 27.15
bufferSize 1000k
maxBitrate 1000k
xsplitBroadcasterVersion1.3.0.10
xsplitCoreVersion 1.0.1204.1301 Version 1.0
xsplitGameSourceVersion1.1.0.21
xsplitMediaLibVersion 2.0.0.102
[libspeex @ 0x95e1a0] Missing Speex header, assuming defaults.
[flv @ 0x9339a0] Estimating duration from bitrate, this may be inaccurate
Seems stream 0 codec frame rate differs from container frame rate: 2000.00 (2000/1) -> 25.00 (25/1)
Input #0, flv, from 'rtmp://owned.fc.llnwd.net:1935/owned/imhirai_195802 swfVfy=1 live=1':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0.0: Video: h264 (High), yuv420p, 1280x720, 25 tbr, 1k tbn, 2k tbc
Stream #0.1: Audio: libspeex, 16000 Hz, 1 channels, s16
Incompatible sample format 's16' for codec 'ac3', auto-selecting format 'flt'
[ac3 @ 0x94b7e0] channel_layout not specified
[ac3 @ 0x94b7e0] No channel layout specified. The encoder will guess the layout, but it might be incorrect.
[libspeex @ 0x95e1a0] Missing Speex header, assuming defaults.
[mpegts @ 0xa49960] muxrate VBR, pcr every 100 pkts, sdt every 200, pat/pmt every 40 pkts
Output #0, mpegts, to 'pipe:':
Metadata:
encoder : Lavf53.21.0
Stream #0.0: Video: libx264, yuv420p, 1280x720, q=2-31, 90k tbn, 1k tbc
Stream #0.1: Audio: ac3, 16000 Hz, mono, flt, 192 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press ctrl-c to stop encoding
[h264 @ 0x7f1f9cd08380] illegal short term buffer state detected
frame= 7316 fps= 25 q=-1.0 size= 34385kB time=292.75 bitrate= 962.2kbits/s