Intel® Collaboration Suite for WebRTC
Community support and discussions on the Intel® Collaboration Suite for WebRTC (Intel® CS for WebRTC).

mp4 recorder failure

tangk
Beginner
2,286 Views
My test version is 3.5.2. If "opus" is specified in the recording option, it is saved as mkv. Setting the audio codec to 'aac' for saving in mp4 format causes an error. var options = {videoCodec: 'h264', audioCodec: 'aac'}; Error message: roomController.subscribe failed, reason: Failed in adding output to audio-engine Of course I am compile_ffmpeg_with_libfdkaac.sh I executed the command.
0 Kudos
12 Replies
Le__Samuel
Beginner
2,279 Views

Any help please, I can record video as mkv but as mp4 get failed. Is recording with mp4 format available at this moment? Thanks!

0 Kudos
Lei_Z_Intel1
Employee
2,279 Views

Can you please send your MCU server log folder here or webrtc_support@intel.com for further check?

0 Kudos
Li_C_Intel
Employee
2,279 Views

If you want to use AAC, you need copy compiled libraries to audio_agent/lib by yourself.

0 Kudos
Le__Samuel
Beginner
2,279 Views

This is logs folder and configuration of the recording:

audio: { from: mixedStream, format:{ codec: "aac", } } || false,

video: { from: mixedStream, format:{ codec: "h264" }, parameters: { keyFrameInterval: 2 } } || false,

Please check them out!

0 Kudos
Li_C_Intel
Employee
2,279 Views

Hi, we checked logs and only see there was a recording failure.

Could you edit the file nuve/log4j_configuration.json, change the line `"CloudHandler": "INFO"` to `"CloudHandler": "DEBUG"` to turn on the debug log and then perform the failed operation and provide us the logs?

0 Kudos
Le__Samuel
Beginner
2,279 Views

The common errors i have gotten:

2019-01-29 15:05:38.336  - DEBUG: CloudHandler - RPC fail error Target audio stream does NOT satisfy:Format is not acceptable(with aac format)

2019-01-29 15:05:50.277  - DEBUG: CloudHandler - RPC fail error Audio codec invalid (with others audio format)
 

0 Kudos
Li_C_Intel
Employee
2,279 Views

Have you install the aac libs to audio_agent/lib folder?

0 Kudos
Le__Samuel
Beginner
2,279 Views

I did everything like in the instruction:

1,  compile ffmpeg with libfdk_aac with command : compile_ffmpeg_with_libfdkaac.sh, there was no error during compiling.

2, copy all generated files under ffmpeg_libfdkaac_lib folder to audio_agent/lib

With this config of recording :

audio: { from: mixedStream, format:{ codec: "aac", } } || false,

video: { from: mixedStream, format:{ codec: "h264" }, parameters: { keyFrameInterval: 2 } } || false,

I get an error in the logs/woogeen-nuve.stdout :

2019-02-21 07:32:21.551  - DEBUG: CloudHandler - RPC fail error Target audio stream does NOT satisfy:Format is not acceptable
2019-02-21 07:32:21.552  - WARN: Nuve - { Error: RPC:addServerSideSubscription failed
  name: 'Error',
  status: 500,
  code: 1301,
  data:
   { error: { code: 1301, message: 'RPC:addServerSideSubscription failed' } } }

Also i don't understand : 

Note: The libfdk_aac is designated as "non-free", please make sure you have got proper authority before using it.

does that mean: it is charged and i need to pay for using it ?

0 Kudos
Li_C_Intel
Employee
2,279 Views

Hi, Le, Samuel

Please check the room configuration in management-console or database.

Was 'aac' included in your 'mediaOut' section? Turn that on if it wasn't.

And if you are just trying the feature, it's OK.  About the license: "The license in the FDK library source code allows redistribution in source or binary forms, but does not license patented technologies described by the code. The license states that the library may only be distributed as authorized by patent licenses. Due to this restriction, along with a limitation on charging for the library, Debian considers it non-free. It was classified as free by Fedora after a review by the legal department at Red Hat. The FSF also considers it to be free, though discourages its use due to the explicit lack of a patent grant."

 

0 Kudos
Le__Samuel
Beginner
2,279 Views

This is the room's configuration. I think 'aac' is included already. The problem wasn't solved

Screen Shot 2019-02-25 at 2.17.31 PM.png 

0 Kudos
Le__Samuel
Beginner
2,279 Views

let container = 'mkv';

let media = { audio: { from: mixedStream, format:{codec:"opus"} }, video: { from: mixedStream, format:{codec:"vp8"} }, };

With above configuration, i still get the same error : DEBUG: CloudHandler - RPC fail error Target audio stream does NOT satisfy:Format is not acceptable

Any help please!!!

0 Kudos
Le__Samuel
Beginner
2,279 Views

I have solved the problem by using this configuration corresponding to ICS version 4.1:

let container = 'mp4';

let media = { audio: { from: mixedStream, format: { codec: "aac", sampleRate: 48000, channelNum: 2 }, }, video: { from: mixedStream, format: { codec: "h264", profile: "CB" }, }, };

0 Kudos
Reply