MediaPlayer + MediaRecorder для потока rtsp?

Можно ли одновременно использовать MediaPlayer и MediaRecorder для работы с потоком rtsp?

Например, я бы использовал MediaPlayer для воспроизведения потокового видео в реальном времени.

MediaPlayer.setDataSource("rtsp://link:port/parameters.sdp?");

а затем установите кнопку, чтобы использовать MediaRecorder для записи прямой трансляции и сохранения ее локально (или удаленно, если возможно)

MediaRecorder.setOutputFile("/sdcard/liveRTSP.mp4");


person Fay Zan    schedule 25.07.2016    source источник


Ответы (1)


Пока вам не нужно, чтобы они использовали одно и то же базовое соединение RTP, все будет в порядке. Использование обоих этих классов приведет к двум незавершенным подключениям RTSP к серверу RTSP. Если он может справиться с этим, и вам не требуется синхронизировать оба этих соединения (одно из них может отставать от другого, но задержка будет небольшой и не гарантируется), то все в порядке.

person Rudolfs Bundulis    schedule 25.07.2016
comment
, Спасибо за ваш ответ, когда вы говорите, что им не нужно использовать одно и то же базовое соединение RTP, вы имеете в виду, что я не могу использовать обе функции на одном и том же setDataSource? - person Fay Zan; 26.07.2016
comment
@FayZan это зависит от того, какую перегрузку setDataSource вы используете. Если тот, который принимает строку или uri, я считаю, что это приведет к тому, что оба объекта будут иметь явное RTP-соединение. Если вы оберните базовое соединение интерфейсом MediaDataSource, вы можете поделиться одним соединением. - person Rudolfs Bundulis; 27.07.2016