Are we talking about a pre-recorded file or a live stream from the camera?
For a pre-recorded file, you can use https://github.com/kaltura/kaltura-parallel-upload-resumablejs or https://github.com/kaltura/chunked-file-upload-jquery, there is also a step by step code recipe here:
For live streaming, I am unfamiliar with a JS library that supports RTMP but you can search… There are multiple open and free tools that can stream over RTMP, however. You can use http://obsproject.com or just call ffmpeg directly.
Thank you for replying. I wanted to know how I can upload to Kaltura a video blob right after recording a video using my webcam.
So like I said, you may use either one of the projects above to get that done or write your own code that does the same [using our API].
I understand there are multiple ways you can inject a video to Kaltura. Like I mentioned earlier, I am looking to record from webcam and upload it to kaltura.
In Kmc I do see “Live Stream Entry” and “Record from Webcam” are two different things and I am guessing the API call for each of them is also different.
The “Record from Webcam” KMC option relies on a Flash widget which will soon be discontinued as we’re in the process of moving away from Flash entirely.
The “Live Stream Entry” option will trigger the creation of a “live stream” Kaltura entry, allowing you to broadcast a video to Kaltura over RTMP.
You didn’t specify whether you are using CE or our SaaS platform.
For CE, live streaming is achieved using Kaltura Nginx and the RTMP module, you can read about that here:
On our SaaS ENV, a different mechanism is used, involving, among other components, the Wowza streaming server.
You can opt to create a VOD entry from your live stream and DVR is also supported.
There are many tools that support streaming over RTMP, I mentioned two of them in my last reply.
From your last reply however, I understand that your intent is to ingest a pre-recorded video file, not a live stream so neither of these options are relevant to that.
As a replacement for the “Record from Webcam” KMC option, I created the following repo:
This uses webRTC and requires no Flash whatsoever.
You can see a live demo here:
To deploy locally, simply clone the repo and place the files in the docroot of a PHP enabled server.
Thank you @jess,
I will take a look at it.
I since created a pure JS implementation.
I am having trouble with the quality of the video that’s being uploaded.
I tried changing the flavour of the video entry,but that did not help. How can I maintain the quality when I upload the video?
Please provide a link to the source entry as well as the output of your current flavour params and I’ll take a look.
Sorry Jess. I think it was a mistake from my part. I was looking at the wrong flavour it seems. But how can I make sure that all the videos I upload to kaltura picks the same flavour which is “HD/1080 - WEB (H264/4000)” and nothing else. How can I do this with API?
The decision of which flavours to transcode the source media into is made by the KDL [Kaltura Decision Layer].
Not all sources can be transcoded into all flavours, that depends on the quality of the source.
In addition, since ABR [Adaptive BitRate] algos are used when serving the entry [we use HLS by default but also support DASH and HDS], the bandwidth conditions, as well as the device requesting the media, also affect the decision of which flavour to serve. This can change during playback, again, based on network conditions.
And, so, bottom line, while you can remove all flavours but one from your transcoding profile, I’d highly advise against that as it may result in a failure to transcode certain entries and also in bad user experience when viewing.
If you want to learn more about the transcoding process, flavours params and conversion profiles, please see:
That makes sense. I did try deleting the flavors and the same video behaved differently when they it was playing in different browsers. Quality of the video I recorded seems to be good when I preview it before I upload it to Kaaltura. I don’t understand why it keeps choosing the lowest quality flavor upon uploading to Kaltura.
Like I said, the flavour selection varies depending, in part, on your bandwidth conditions.
If you want me to further look into it, please provide a URL for the entry.
Here is the link you requested for: