2013-10-04 2 views
2

참조 : https://superuser.com/questions/653725/vlc-output-to-directshow (이것은 거기에 많은 관심을받지 못하고 있기 때문에 여기에 재개시, 나는 필요한 경우이 문제를 해결하기 위해 소프트웨어를 작성하는 개방적이야.)VLC 출력

짧은 버전 : 내가 원하는 실제 장치를 사용하는 대신 DirectShow 소스 장치 (웹캠처럼 보일 수도 있음)가 재생 목록을 통해 재생 될 때 VLC에서 비디오 & 오디오 프레임을 가져옵니다. (따라서 웹캠 만 콘텐츠를 볼 수있는 다른 응용 프로그램을 허용 할 수 있습니다.) 필요한 경우 (이미 존재해야하는 종류의 것 같지만) 일부 코드를 작성하거나 다른 코드를 사용하는 것이 좋습니다. VLC는 사물을 단순화합니다.

이전에 DirectShow 나 VLC 용 코드를 작성하지 않았지만 학습에 익숙합니다. 또는 누군가가 이미 존재하는 적절한 것을 지적 할 수 있다면 (앱이든 코드이든간에) 바람직 할 것입니다. 그러나 이것은 비싼 물건을 찾고있는 것이 아니라 애호가입니다.

답변

1

DirectShow 파이프 라인에 데이터를 주입하려면 사용자 지정 또는 타사 구성 요소가 필요합니다. 이 작업에는 표준 구성 요소가 없습니다. 데이터 삽입을 수행하는 가장 가까운 Windows SDK 샘플은 Push Source Filters입니다. 이것은 자체적으로 데이터의 원천이며 다른 응용 프로그램이 여기 Capture Source Filter 프로젝트에서 인식 할 수있는 장치로 확장됩니다. 이들은 인기있는 출발점입니다.

다른 끝에서 그런 구성 요소는 VLC에서 데이터를 가져와야합니다. 다른 응용 프로그램이기 때문에 일종의 프로세스 간 통신을해야 할 필요가 있습니다. 아마도 가장 쉬운 방법은 - esp. VLC에서 네트워크 스트리밍을 설정하여 소켓을 통해 잘 알려진 프로토콜을 사용하여 스트림을 읽을 수 있도록하려면 품질 및 대기 시간에 대한 특정 요구 사항이없는 경우 또한 네트워크를 통해 앱을 실행할 수있는 옵션이 제공됩니다. 표준 프로토콜 스트리밍을 사용하면 위 단락의 작업에 대한 기존 필터를 찾을 수 있습니다 (개발을 피할 수 있음).

대기 시간, 이미지 품질 및/또는 프레임 속도, 비디오/오디오 동기화, 대상 애플리케이션 피팅, 부드럽게 찾는 기능 또는 효과 - 기본적으로 목록의 모든 항목은 개발 또는 읽기를 통해 통합해야 할 수도 있습니다. VLC없이 직접 파일. 취미 일 경우 기존 물건에 잘 만들 수 있습니다.

+0

나는 최종 애플리케이션이 내가 생각한 것보다 더 제한적이라는 것을 발견했다. PushSource 예제를 빌드하고 등록했지만 앱에서 유효한 소스로 표시되지 않았습니다. 나는 그것이 일반 소스가 아닌 캡쳐 장비를 위해 특별히 찾고 있다고 생각합니다. – Miral

+0

위의 두 번째 링크는 장치 목록에 나타나는 프로젝트의 특징입니다. 기본적으로'PushSource' + 필수 인터페이스 ('IAMStreamConfig','IKsPropertySet') + 디바이스 카테고리 아래에 적절한 등록을 추가했습니다. –

0

기존 솔루션 - VisioForge Virtual Camera SDK. 그것은 2 개의 필터를 포함하고, 하나의 필터는 싱크이며, VLC 플레이어, 두 번째 필터 - 가상 카메라 장치의 출력으로 사용해야합니다.

+0

VLC에 DirectShow로 출력하는 옵션이 있는지 확실하지 않습니다. 아니면 적어도 그것이 어디에 있는지 나는 모른다. – Miral

+0

또한 300 유로의 가격표는 "취미 애호가"에 대한 내 정의에 맞지 않습니다. – Miral