Using a vimeo pro account for iOS m3u8 streaming using AVPlayer on iPad, it always selects SD stream on all videos, even when I'm on 4G network which provides speed around 16Mbps. YouTube app selects the HD stream always on the same network. I'm certain HD will have no problems playing on this bandwidth. Has anyone faced this issue before?
Related
I want to play RTSP stream from ip video cameras (MP4, H264) on my intranet web page, I use React. I have 12 cameras and NVR.
I did not find a way to do this without an intermediate server (Webrtc is not suitable), that spends resources on transcoding h264 stream to the mjpeg.
If I set a high resolution and quality of the stream, then a lot of resources are spent on transcoding, and most importantly, the streaming of mjpeg images takes a lot of traffic.
Is there a way or solution to stream from the ip camera directly to the web page so that the decoding is on the user's webbrowser side.
This will free the intermediate server from a heavy load for big streams.
It is necessary that the playback work on mobile phones.
Thanks for the answer.
There is no way to stream RTSP camera's H264 video directly to web browser.
But cameras support outputting still jpeg images - you can create a webpage that will display such an image from a camera every 200ms or so.
If you are not happy with the above solution, you must use a media server in between, which will pull RTSP stream from the camera and will convert it to some protocol that browser understands. You are mistaken in one thing: no video transcoding is involved. I don't know why WebRTC is not an option for you, but most media servers will offer 4 types of output:
Low latency:
WebRTC
Websockets to MSE
High latency:
HLS
MPEG-Dash
All these methods do NOT require transcoding of your original H264 video, encoded by RTSP camera/NVR. Some media servers you can use: Unreal Media Server, Wowza, Janus.
Live demo: http://www.umediaserver.net/umediaserver/demos.html
No browser has native RTSP support, so if you want decoding to happen on the end user side, then you'll have to write your own custom web player.
You can start by looking at the open-source solution like this one:
git://github.com/Streamedian/html5_rtsp_player.git
It works on PC and Android, but didn't work with iPhone for me (but you can try it for yourself https://streamedian.com/demonstration/ maybe it's just my issue), but maybe you can find better alternative or fork it and make it work on all devices.
It still requires a middle-man proxy server though because it uses a websocket tech to work, but since it doesn't do any video converting or decoding, it don't suppose to take any resources at all.
I'm trying to preview video stream from 4K Camera (Brio) in my application. The application uses DirectShow to open camera and receive frames. Filter configuration is shown in image below.
The problem are high resolutions (ie. 4096x2160). With 4096x2160 resolution both GraphEdit and my application have delay when I preview video stream.
I'm testing this on Windows 10. Note that Windows 10 preinstalled Camera application works perfect with this resolution. I've also tried the same with UWP sample using MediaCapture Api, but the problem is the same.
What am I missing?
Windows 10 preinstalled Camera application does not use DirectShow, uses completely different code path based on Media Foundation API and is overall more efficient in JPEG decompression in particular. That is, you cannot compare directly your DirectShow based graph to what Windows Store Camera app is doing.
In your situation MJPEG Decompressor Filter is an outdated piece of software incompatible with this resolution and is a bottleneck. Also for live video DirectShow graph needs to have Smart Tee Filter.
Performance wise I would recommend to build media pipeline on Media Foundation, even though it is more difficult and comes with less documentation and samples.
This is the details of the video
when i play my gameplay in vlc media player it plays fine and the audio syncs with the video but when i import the video into premiere pro the audio gets out of sync. i don't know why is this happening. i researched about it and tried converting my video into CFR using Handbrake software but that didn't helped.
I'm thinking that maybe you don't have a setting selecting one your timeline that keeps the audio and video tracks synced. I personally like my timeline settings like this
Let me know if that works, if not maybe try adding a screen recording of the issue or some screenshots?
We recently built a demo application utilizing Kurento Media Server to record applicant video interview, but the audio quality is not well , some audio is not recognizable and some of it had high pitch noise. We've been test it on several models of PC or Mac, so this should not be device problem.
We've been using RecorderEndpoint with media profile MediaProfileSpecType.WEBM ,and all other setting remain as default.
To fix this problem, we tried:
We upgrade to Kurento 6.2.1 which use Opus as the audio encoder.
Try to using setMaxOuputBitrate of the recorder, we don't see it has improvements or I don't know which bit rate range can be used.
Change SDPOffer to setup a high bit rate audio for Opus which we don't know where to modify
None of it is working so far, so please tell us where to look.
Thanks.
Please check with this recording tutorial. The audio should be fine. Just make sure you are only sending audio, and not video. That should help.
If the audio is not being recorded correctly, I would try and hear what's coming out of your box through your browser. Try and run the hello-world tutorial, with a pair of headphones connected to your box so you don't have echoes.
About #2, if you want to raise the bitrate exchanged between the webrtc endpoint and the recorder, you need to invoke the setOutputBitrate command on the webrtc endpoint.
I am developing a WAP/mobile website that would allow users to stream audio/video (although the priority is audio) via their mobile browsers..
For music I would be streaming mp3 files, and for video I would be streaming flv and 3gp files (but mostly 3gp).
Can anyone recommend solutions (i.e. what to use and/or a point to the right direction) to enable streaming audio/video to a mobile browser?
AFAIK, there is RTSP (probably via Darwin Streaming Server?) which is supported in most 3G devices, and flash lite. (Would using flash lite as a player even be a good idea, since the users would need to have flash lite installed on their mobile devices? I'm not that familiar with flash.)
Most mobile phones support video streaming via RTSP, and the cheapest method is the Darwin Stream Server, and it integrates with the Real Video player
As for flash lite that has limited handset support so I wouldn't recommend using it.
The only thing I would add is that without wireless carrier support streaming of data to a mobile phone can be very expensive for an end user, so please ensure that the end user knows about the potential data charges