Я попробовал предложение fadden, чтобы отобразить экран Android на ПК, но экран vlc player ничего не показывает:
Какими будут правильные строки команд для этой функции? Спасибо.
Я попробовал предложение fadden, чтобы отобразить экран Android на ПК, но экран vlc player ничего не показывает:
Какими будут правильные строки команд для этой функции? Спасибо.
Я не помню командную строку vlc, которую я использовал для первоначального тестирования. Недавно я пробовал несколько разных вещей на настольном Linux (Ubuntu 15.10).
VLC
Если вы просто передаете вывод в vlc --demux h264 -
, он работает, но вы постепенно становитесь позади. Добавление --h264-fps=60
похоже, помогает, но вы начинаете получать ошибки ( "ES_OUT_SET_(GROUP_)PCR is called too late
" ). Добавление --clock-jitter=0
, по-видимому, делает ошибки менее травматичными, но все еще довольно запутано.
ffplay
Простой ffplay -
работает, но, кажется, требуется несколько секунд, чтобы решить начать, и в конечном итоге отстает от всего за все время.
Использование ffplay -framerate 60 -framedrop -bufsize 16M -
дает вам достойное качество, которое длится довольно долго. Это происходит из-за команды ниже, которая синхронизирует частоту кадров и битрейт, поскольку в противном случае видео будет пытаться играть со скоростью 30 кадров в секунду, что делает все более медленным с течением времени из-за дополнительных кадров. Битрейт затем поможет сохранить видео как можно лучше. Я нашел, что он работает с задержкой 100-1000MS; аналогично большинству Bluetooth-гарнитур. Вы можете получить "рассмотреть вопрос об увеличении вероятности", который может заморозить поток. Лучше перезапустить screenrecord или попробовать добавить -probesize 16M
Примечание. Эта конфигурация с ffplay работает со следующей командой adb, запрограммированной заранее. Если вы выполняете интенсивные задачи с использованием GPU или используете более старый телефон, лучше выбрать 1280x720
. Если ваш телефон не поддерживает 60 кадров в секунду (или, похоже, не записывает их с частотой 60 кадров в секунду), измените значение до тех пор, пока не будет установлено значение 30 или 24.
adb shell screenrecord --bit-rate=16m --output-format=h264 --size 1920x1080 -
MPlayer
Команда mplayer -demuxer h264es -
, кажется, дает наилучшие результаты. Начинается сразу, очень мало задерживается, и не волнуется, как vlc.
Так как vlc не может воспроизвести файл h264 из вывода adb std, я перехожу к использованию ffplay в качестве проигрывателя потоков, и он работает с помощью следующей команды:
adb shell screenrecord --output-format=h264 - | ffplay -
OS X binary ffplay и потоковые экраны:
Спасибо!!