Эмулятор камеры и микрофона



  • Нашел на форуме как эмулировать камеру и микрофон вопрос такой можно ли как то через бас управлять этими командами тоесть менять путь к файлу

    --use-fake-ui-for-media-stream
    --use-fake-device-for-media-stream
    --use-file-for-fake-video-capture=C:\test.y4m
    --use-file-for-fake-audio-capture=C:\3285.wav
    


  • @gamid said in Эмулятор камеры и микрофона:

    --use-file-for-fake-video-capture=C:\test.y4m
    --use-file-for-fake-audio-capture=C:\3285.wav
    "C:\test.y4m" - это и есть пути к файлам
    "C:\3285.wav" - это и есть пути к файлам



  • @paini я вижу что это путь к файлу вопрос в другом как поменять этот путь через запущенный скрипт или хотя бы сделать для каждого потока свой отдельный файл



  • Можно закрыть тему решил другим способом



  • @gamid Может поделитесь решением?



  • @gamid присоединяюсь, поделитесь решением?



  • указал путь к этому файлу и через скрипт менял содержимое данного файла перед запуском каждого потока



  • @GamiD а какой смысл менять содержимое ? Тем более что файл y4m нужен в большом разрешении и весит больше гига.



  • @Bigma said in Эмулятор камеры и микрофона:

    @GamiD а какой смысл менять содержимое ? Тем более что файл y4m нужен в большом разрешении и весит больше гига.

    Вы точно в нужной теме ответили? Теме больше года и про разрешение и размер файла топикастер ни где не писал.



  • @Fox точно в этой тест webrtc и стало интересно зачем на каждый поток менять тестовый файл.



  • @Bigma said in Эмулятор камеры и микрофона:

    @Fox точно в этой тест webrtc и стало интересно зачем на каждый поток менять тестовый файл.

    Топикастер задал вопрос:

    вопрос такой можно ли как то через бас управлять этими командами тоесть менять путь к файлу

    а затем сам на него дал ответ:

    Можно закрыть тему решил другим способом
    указал путь к этому файлу и через скрипт менял содержимое данного файла перед запуском каждого потока



  • @Fox said in Эмулятор камеры и микрофона:

    через скрипт менял содержимое данного файла перед запуском каждого потока

    так я и спросил зачем он менял содержимое данного файла. В чем проблема ? я не могу спросить зачем он это делал?



  • @Bigma said in Эмулятор камеры и микрофона:

    @Fox said in Эмулятор камеры и микрофона:

    через скрипт менял содержимое данного файла перед запуском каждого потока

    так я и спросил зачем он менял содержимое данного файла.

    Он просто переименовывал необходимый файл для каждого потока

    В чем проблема ? я не могу спросить зачем он это делал?

    Да вроде нет проблемы, просто пользователь объяснил что он сделал и зачем.



  • @Fox

    Он просто переименовывал необходимый файл для каждого потока

    Ну воперх он написал что менял сожержимое а не переименовывал.
    Во вторых объясните вашу логику переименовывания файла для каждого потока? Содержимое то я хоть понимаю для чего ... Просто интересно именно ответ ТС.



  • @Bigma said in Эмулятор камеры и микрофона:

    @Fox

    Он просто переименовывал необходимый файл для каждого потока

    Ну воперх он написал что менял сожержимое а не переименовывал.

    А как вы ещё понимаете фразу "менял содержимое"?

    Во вторых обхъясните логику переименовывания файла для каждого потока?

    Указанное в первом сообщение решение позволяло перед запуском BAS в файле chrome_command_line.txt жёстко прописать пути до файлов (для эмуляции веб камеры и микрофона). Во время работы BAS изменение этого файла не учитывается, вот топикастер и спрашивал, как решить задачу использования разных видео для эмуляции веб камеры.

    Логика простая, при старте потока находить прописанный видеофайл и переименовывать его через BAS, далее находить необходимый видеофайл и переименовывать его именем прописанного



  • @Fox Ладно зачем это делать понятно.
    А вот интересно как
    в chrome_command_line.txt то запись будет для всего баса я так понимаю. и ссылается он жестко на test.y4m И мы же не знаем когда в потоке1 это понадобиться, Если запускаем поток два и делаем что ? подмену файла? или путь до другого фала в chrome_command_line.txt ? логичнее путь менять, но как это на самом деле работает ? для первого потока он же тоже изменится ? или будет для каждого потока новый так сказать chrome_command_line.txt ?



  • @Bigma said in Эмулятор камеры и микрофона:

    @Fox Ладно зачем это делать понятно.
    А вот интересно как
    в chrome_command_line.txt то запись будет для всего баса я так понимаю. и ссылается он жестко на test.y4m И мы же не знаем когда в потоке1 это понадобиться, Если запускаем поток два и делаем что ? подмену файла? или путь до другого фала в chrome_command_line.txt ? логичнее путь менять, но как это на самом деле работает ? для первого потока он же тоже изменится ? или будет для каждого потока новый так сказать chrome_command_line.txt ?

    Файл chrome_command_line.txt подгружается при включении BAS и последующее изменение файла ему до лампочки (по крайней мере раньше было так, на последних версиях не проверял). Блокировку файла для использования одним потоком в одно время можно реализовать через глобальную переменную.



  • @Fox said in Эмулятор камеры и микрофона:

    Блокировку файла для использования одним потоком в одно время можно реализовать через глобальную переменную.

    А можно поподробнее механизм не понимаю как можно по одному пути подсовывать разные файлы. Поясните новичку.



  • @Bigma said in Эмулятор камеры и микрофона:

    @Fox said in Эмулятор камеры и микрофона:

    Блокировку файла для использования одним потоком в одно время можно реализовать через глобальную переменную.

    А можно поподробнее механизм не понимаю как можно по одному пути подсовывать разные файлы. Поясните новичку.

    Создаёте глобальную переменную LOCK в функции OnApplicationStart со значением false. В логике работы потока, перед использованием видео ставится цикл while с условием LOCK == true. После цикла устанавливаем глобальную переменную LOCK в значение true, выполняем необходимую работу и устанавливаем обратно переменную LOCK в значение false

    Совсем недавно делал тестовый скрипт с такой же блокировкой, но для буферобмена. Тестовый скрипт



  • @Fox said in Эмулятор камеры и микрофона:

    скрипт

    спасибо за пример, понял, но, это почти что однопоток получится, и подходит там где ты точно знаешь в какой момент тебя проверят. А если этого не знать, то так не получится. Но спасибо за расширение кругозора.


Log in to reply
 

  • 10
  • 5
  • 2
  • 5
  • 2
  • 8
  • 9
  • 3