[jitsi-dev] FMJ - creating realized players


#1

Having failed in my attempt to get re-elected to the UK parliament I am now back on programming.

Where I was when the General Election was called was trying to get the FMJ classes to play from a .wav or .mp3 file.

I have found various bits of code which is supposed to do this (such as SimpleVoiceTransmiter.java).

However, when I run this it fails to realise the processor.

Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Failed to realize: net.sf.fmj.media.ProcessEngine@fad74ee
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Cannot build a flow graph with the customized options:
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Unable to transcode format: LINEAR, 22050.0 Hz, 8-bit, Mono, Unsigned, 22050.0 frame rate, FrameSize=8 bits
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: to: ULAW/rtp, 8000.0 Hz, 8-bit, Mono
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: outputting to: raw.rtp
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Error: Unable to realize net.sf.fmj.media.ProcessEngine@fad74ee

Can anyone give me hints as to how to get around this or if this is not the best place to look at these issues where I should raise them.


#2

Thinking further on this. I am using the customised codecs in the videobridge in an attempt to use the bridge to stream the contents of a file to a conference. It strikes me that it may be that the customised codecs in the bridge do not include ULAW/rtp as an option.

Does anyone have a suggestion of a relatively easy way I can get this to work.

···

On 12/06/2017 12:58, John Hemming wrote:

Having failed in my attempt to get re-elected to the UK parliament I am now back on programming.

Where I was when the General Election was called was trying to get the FMJ classes to play from a .wav or .mp3 file.

I have found various bits of code which is supposed to do this (such as SimpleVoiceTransmiter.java).

However, when I run this it fails to realise the processor.

Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Failed to realize: net.sf.fmj.media.ProcessEngine@fad74ee
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Cannot build a flow graph with the customized options:
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Unable to transcode format: LINEAR, 22050.0 Hz, 8-bit, Mono, Unsigned, 22050.0 frame rate, FrameSize=8 bits
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: to: ULAW/rtp, 8000.0 Hz, 8-bit, Mono
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: outputting to: raw.rtp
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Error: Unable to realize net.sf.fmj.media.ProcessEngine@fad74ee

Can anyone give me hints as to how to get around this or if this is not the best place to look at these issues where I should raise them.

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--

john.hemming.name <http://john.hemming.name>


#3

Having done a bit of research I find that the FMJ plugin JavaSoundCodec is removed when the videobridge is initialised. Does anyone know what problems would be caused by not removing it?

···

On 12/06/2017 13:17, John Hemming wrote:

Thinking further on this. I am using the customised codecs in the videobridge in an attempt to use the bridge to stream the contents of a file to a conference. It strikes me that it may be that the customised codecs in the bridge do not include ULAW/rtp as an option.

Does anyone have a suggestion of a relatively easy way I can get this to work.

On 12/06/2017 12:58, John Hemming wrote:

Having failed in my attempt to get re-elected to the UK parliament I am now back on programming.

Where I was when the General Election was called was trying to get the FMJ classes to play from a .wav or .mp3 file.

I have found various bits of code which is supposed to do this (such as SimpleVoiceTransmiter.java).

However, when I run this it fails to realise the processor.

Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Failed to realize: net.sf.fmj.media.ProcessEngine@fad74ee
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Cannot build a flow graph with the customized options:
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Unable to transcode format: LINEAR, 22050.0 Hz, 8-bit, Mono, Unsigned, 22050.0 frame rate, FrameSize=8 bits
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: to: ULAW/rtp, 8000.0 Hz, 8-bit, Mono
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: outputting to: raw.rtp
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Error: Unable to realize net.sf.fmj.media.ProcessEngine@fad74ee

Can anyone give me hints as to how to get around this or if this is not the best place to look at these issues where I should raise them.

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--

john.hemming.name <http://john.hemming.name>

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--

john.hemming.name <http://john.hemming.name>


#4

Hi John,

I would advice against adding FMJ-dependant code to jitsi-videobridge. If you need to stream media to a conference, a better approach would be to connect a separate endpoint which does just this.

According to this comment[0] it was only removed because it is not used. But I have no idea whether it actually works or not.

Regards,
Boris

[0] https://github.com/jitsi/libjitsi/blob/master/src/org/jitsi/impl/neomedia/codec/FMJPlugInConfiguration.java#L209

···

On 13/06/2017 14:04, John Hemming wrote:

Having done a bit of research I find that the FMJ plugin JavaSoundCodec is removed when the videobridge is initialised. Does anyone know what problems would be caused by not removing it?

On 12/06/2017 13:17, John Hemming wrote:

Thinking further on this. I am using the customised codecs in the videobridge in an attempt to use the bridge to stream the contents of a file to a conference. It strikes me that it may be that the customised codecs in the bridge do not include ULAW/rtp as an option.

Does anyone have a suggestion of a relatively easy way I can get this to work.

On 12/06/2017 12:58, John Hemming wrote:

Having failed in my attempt to get re-elected to the UK parliament I am now back on programming.

Where I was when the General Election was called was trying to get the FMJ classes to play from a .wav or .mp3 file.

I have found various bits of code which is supposed to do this (such as SimpleVoiceTransmiter.java).

However, when I run this it fails to realise the processor.

Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Failed to realize: net.sf.fmj.media.ProcessEngine@fad74ee
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Cannot build a flow graph with the customized options:
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Unable to transcode format: LINEAR, 22050.0 Hz, 8-bit, Mono, Unsigned, 22050.0 frame rate, FrameSize=8 bits
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: to: ULAW/rtp, 8000.0 Hz, 8-bit, Mono
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: outputting to: raw.rtp
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Error: Unable to realize net.sf.fmj.media.ProcessEngine@fad74ee

Can anyone give me hints as to how to get around this or if this is not the best place to look at these issues where I should raise them.

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--

john.hemming.name <http://john.hemming.name>

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--

john.hemming.name <http://john.hemming.name>

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#5

Hi Boris,

Whether I stream audio as a separate instance (potentially on a separate device) into the bridge or set up a playerimpl class as part of the bridge instance and create that as an endpoint in a similar manner to the recorderrtpimpl operates for recording, I still need to have classes to stream from an audio file.

I note that neomedia.codec.audio.mp3 has an encoder (which uses ffmpeg), but not a decoder. I presume it is relatively straightforward to write an decoder using the other examples of decoders using ffmpeg and the encoder. That means I don't need to use JavaSoundCodec and can use the jnidecoder (on the assumption that I write it correctly).

However, the question remains as to whether the FMJ processor class and associated datasource classes can be used or whether I should be using things in libjitsi.

Noting that ProcessorUtility is in neomedia I would assume that this is something I should be looking to use.

Are there any examples of using jitsi neomedia classes to stream from audio files to rtp that I can be pointed to?

I would assume that I can get something like a pullbuffer and simply send that to the conference audio streams.

···

On 13/06/2017 20:16, Boris Grozev wrote:

Hi John,

I would advice against adding FMJ-dependant code to jitsi-videobridge. If you need to stream media to a conference, a better approach would be to connect a separate endpoint which does just this.

According to this comment[0] it was only removed because it is not used. But I have no idea whether it actually works or not.

Regards,
Boris

[0] https://github.com/jitsi/libjitsi/blob/master/src/org/jitsi/impl/neomedia/codec/FMJPlugInConfiguration.java#L209

On 13/06/2017 14:04, John Hemming wrote:

Having done a bit of research I find that the FMJ plugin JavaSoundCodec is removed when the videobridge is initialised. Does anyone know what problems would be caused by not removing it?

On 12/06/2017 13:17, John Hemming wrote:

Thinking further on this. I am using the customised codecs in the videobridge in an attempt to use the bridge to stream the contents of a file to a conference. It strikes me that it may be that the customised codecs in the bridge do not include ULAW/rtp as an option.

Does anyone have a suggestion of a relatively easy way I can get this to work.

On 12/06/2017 12:58, John Hemming wrote:

Having failed in my attempt to get re-elected to the UK parliament I am now back on programming.

Where I was when the General Election was called was trying to get the FMJ classes to play from a .wav or .mp3 file.

I have found various bits of code which is supposed to do this (such as SimpleVoiceTransmiter.java).

However, when I run this it fails to realise the processor.

Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Failed to realize: net.sf.fmj.media.ProcessEngine@fad74ee
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Cannot build a flow graph with the customized options:
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Unable to transcode format: LINEAR, 22050.0 Hz, 8-bit, Mono, Unsigned, 22050.0 frame rate, FrameSize=8 bits
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: to: ULAW/rtp, 8000.0 Hz, 8-bit, Mono
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: outputting to: raw.rtp
Jun 12, 2017 12:55:24 PM net.sf.fmj.media.Log error
SEVERE: Error: Unable to realize net.sf.fmj.media.ProcessEngine@fad74ee

Can anyone give me hints as to how to get around this or if this is not the best place to look at these issues where I should raise them.

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--

john.hemming.name <http://john.hemming.name>

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--

john.hemming.name <http://john.hemming.name>

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--

john.hemming.name <http://john.hemming.name>