2016-07-25 4 views
0

Est-il possible d'utiliser à la fois MediaPlayer et MediaRecorder simultanément pour fonctionner avec un flux rtsp?MediaPlayer + MediaRecorder pour le flux rtsp?

Par exemple, je voudrais utiliser MediaPlayer pour lire le flux vidéo en direct

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

puis définir un bouton pour utiliser MediaRecorder pour enregistrer le flux en direct et enregistrer localement (ou à distance si possible)

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

Répondre

0

Tant que vous n'en avez pas besoin pour partager la même connexion RTP sous-jacente, cela devrait fonctionner. L'utilisation de ces deux classes entraînera deux connexions RTSP en attente au serveur RTSP. S'il peut gérer cela et que vous n'êtes pas obligé de synchroniser ces deux connexions (l'une d'entre elles peut être en retard par rapport à l'autre, mais le retard serait faible et n'est pas garanti) alors vous allez bien.

+0

, Merci pour votre réponse, quand vous dites "n'en avez pas besoin pour partager la même connexion RTP sous-jacente", voulez-vous dire que je ne peux pas utiliser les deux fonctions sur le même 'setDataSource'? –

+0

@FayZan cela dépend de la surcharge de 'setDataSource' que vous utilisez. Si celui qui prend une chaîne ou un uri, je crois que cela aura pour résultat que les deux objets auront une connexion RTP explicite. Si vous encapsulez une connexion sous-jacente sous l'interface 'MediaDataSource', vous pouvez partager une connexion. –