root
2004-Feb-01 18:20 UTC
[icecast] Transcoding ogg with curl, oggdec, ices2: problem after fallback due to oggdec
I have more info about that problem... curl | oggdec | ices will never work to my opinion with fallback setup on source because when transfering listeners to fallback, no ogg headers are sent, so whatever we do, oggdec will not be happy with the data received... I tried curl | while true; do oggdec; done | ices to avoid breaking ices stdin in case of oggdec failure. on source fallback transfer, oggdec fails (normal), restarts, fails, restarts, fails, ... ices is having stdin timeout, ... Chris --- >8 ---- List archives: http://www.xiph.org/archives/ icecast project homepage: http://www.icecast.org/ To unsubscribe from this list, send a message to 'icecast-request at xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
iceuse@kezako.net
2004-Aug-06 14:23 UTC
[icecast] Transcoding ogg with curl, oggdec, ices2: problem after fallback due to oggdec
Hello, oggdec is a very simple ogg decoder, and it fails in the following case: a source A has a fallback A' transcoder curl | oggdec | ices2 is transcoding to lower bitrates ogg A fails, all the listeners are transfered to A' oggdec fails because the stream content changed: [2004-01-29 18:44:47] OggDec 1.0.1 [2004-01-29 18:44:47] Warning: hole in data <p><p>[2004-01-29 18:46:17] Warning: hole in data [2004-01-29 18:46:17] Warning: hole in data [2004-01-29 18:46:17] Only one logical bitstream currently supported. (I added timestamp to oggdec to find out the problem) this cause all the reencoded streams to fail and the transcoder has to restart. So, the question is: is there an ogg decoder which may handle this nicely? is there an ogg decoder with a http url opener (to read the source without curl)? this decoder must be a command-line tool! The other solution is to merge curl and oggdec and ask it to reopen url after each failure. I don't want to use streamTranscoder for this, because curl|oggdec|ices2 2is producing many output streams with different bitrates. With streamTranscoder, only one output is possible (I don't want 3, 5 or more instances of streamTranscoder to run). Thanks, Chris --- >8 ---- List archives: http://www.xiph.org/archives/ icecast project homepage: http://www.icecast.org/ To unsubscribe from this list, send a message to 'icecast-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
Geoff Shang
2004-Aug-06 14:23 UTC
[icecast] Transcoding ogg with curl, oggdec, ices2: problem after fallback due to oggdec
Hi: Obviously oggdec doesn't support multiple logical streams. This is your sticking point. Doesn't ices2 have an option to accept ogg streams via stdin? This would probably work better. Geoff. --- >8 ---- List archives: http://www.xiph.org/archives/ icecast project homepage: http://www.icecast.org/ To unsubscribe from this list, send a message to 'icecast-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
Ralph Giles
2004-Aug-06 14:23 UTC
[icecast] Transcoding ogg with curl, oggdec, ices2: problem after fallback due to oggdec
On Sun, Feb 01, 2004 at 07:20:40PM +0100, root wrote:> curl | oggdec | ices will never work to my opinion with fallback setup on source > because when transfering listeners to fallback, no ogg headers are sent, so > whatever we do, oggdec will not be happy with the data received...really? That would be a bug unless it rewrites the stream id instead.> ChrisP.S. If you're Chris, why are you sending mail as root? --- >8 ---- List archives: http://www.xiph.org/archives/ icecast project homepage: http://www.icecast.org/ To unsubscribe from this list, send a message to 'icecast-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
Ralph Giles
2004-Aug-06 14:23 UTC
[icecast] Transcoding ogg with curl, oggdec, ices2: problem after fallback due to oggdec
On Sun, Feb 01, 2004 at 07:20:40PM +0100, root wrote:> I have more info about that problem... > curl | oggdec | ices will never work to my opinion with fallback setup on source > because when transfering listeners to fallback, no ogg headers are sent, so > whatever we do, oggdec will not be happy with the data received...I took a look at this. It is true that oggdec does not support chained ogg vorbis steams, so it's basically not going to work with streamed situations in general. Now, if you comment out the check for the chain boundary on line 246, it will work in this applications AS LONG AS THE AUDIO PARAMETERS DON'T CHANGE. The issue is not that "no ogg headers are sent" it's that if the new set of vorbis headers for the fallback stream specify a change in audio parameters (since oggdec does samplerate conversion, this just means number of channels) there's no way to pass that information on with the pcm stream to ices. So basically you want to be rebroadcasting the ogg stream, not re-encoding it. -r --- >8 ---- List archives: http://www.xiph.org/archives/ icecast project homepage: http://www.icecast.org/ To unsubscribe from this list, send a message to 'icecast-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
Possibly Parallel Threads
- Transcoding ogg with curl, oggdec, ices2: problem after fallback due to oggdec
- Transcoding ogg with curl, oggdec, ices2: problem after fallback due to oggdec
- Transcoding ogg with curl, oggdec, ices2: problem after fallback due to oggdec
- fallback source give up and returns to original source
- oggdec.exe crash