簡體   English   中英

如何將Android上的視頻錄制到Stream中

[英]How to record video on Android into Stream

Android MediaRecorder允許將視頻保存到文件(文件或套接字):

setOutputFile(FileDescriptor fd);
setOutputFile(String path)

如何將視頻數據保存到OutputStream? 它將用於流式視頻錄制。

您可以使用ParcelFileDescriptor.fromSocket()來完成它:

String hostname = "example.com";
int port = 1234;

Socket socket = new Socket(InetAddress.getByName(hostname), port);

ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(socket);

MediaRecorder recorder = new MediaRecorder();
recorder.setOutputFile(pfd.getFileDescriptor());
recorder.prepare();
recorder.start();

如果您更喜歡UDP,請改用ParcelFileDescriptor.fromDatagramSocket()

信用到期的信用。

使用特定於Android的LocalServerSocket似乎是將視頻數據作為流獲取的唯一可能方式。 簡而言之,您必須:

  1. 創建LocalServerSocket實例
  2. 使用文件描述符將其設置為MediaRecorder實例的輸出文件(mediaRecorder.setOutputFile(FileDescriptor fd);)
  3. 接受連接
  4. 在單獨的線程循環中從它讀取字節(從InputStream)

另一個想法?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM