Воспроизведение RTP-потока на Android 4.1.2 (Jelly Bean)Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Воспроизведение RTP-потока на Android 4.1.2 (Jelly Bean)

Сообщение Anonymous »

Я постараюсь сделать это быстро. Используя FFMPEG, я запустил поток на своем компьютере. Вот код:

Код: Выделить всё

import subprocess

def start_stream():
command = [
'ffmpeg',
'-f', 'gdigrab',  # Desktop capture (Windows)
'-framerate', '15',  # Low framerate for higher performance
'-i', 'desktop',  # Capture desktop
'-c:v', 'libx264',  # Video codec (H.264)
'-preset', 'ultrafast',  # Ultra-fast encoding preset for minimal latency
'-tune', 'zerolatency',  # Zero latency for real-time streaming
'-x264opts', 'keyint=15:min-keyint=15:no-scenecut',  # Frequent keyframes
'-b:v', '500k',  # Low bitrate to minimize data usage and reduce latency
'-s', '800x480',  # Resolution fits phone screen and helps performance
'-max_delay', '0',  # No buffering, instant frame output
'-flush_packets', '1',  # Flush packets immediately after encoding
'-f', 'rtp',  # Use mpegts as the container for RTP stream
'rtp://192.168.72.26:1234',  # Stream over UDP to localhost on port 1234
'-sdp_file', 'stream.sdp'  # Create SDP file
]

try:
print("Starting stream...")
subprocess.run(command, check=True)
except subprocess.CalledProcessError as e:
print(f"Error occurred: {e}")
except KeyboardInterrupt:
print("\nStream interrupted")

if __name__ == "__main__":
print("Starting screen capture...")
start_stream()
Теперь, когда я запускаю поток, я могу подключиться к нему в VLC, когда открываю файл stream.sdp. Используя тот же метод, я могу открыть поток на своем iPhone, но когда я пытаюсь открыть его на своем старом телефоне Android, поток подключается, но экран становится черным. Однако, когда я поворачиваю экран, я вижу первый кадр, отправленный на телефон. Почему не работает стрим?
Буду благодарен за любые советы :)

Подробнее здесь: https://stackoverflow.com/questions/793 ... jelly-bean
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»