나는 ip 카메라 스트림을위한 GUI를 만들기 위해 Qt와 libvlc를 사용하고 있습니다. 내가 그것을 마친 후에는 잘못된 값 NULLs ...에 대한 테스트를 시작했다. 내 문제는 네트워크 링크로 잘못된 문자열을 반환 할 때 반환 값으로 NULL을 얻지 못한다는 것이다. 코드의 일부는 다음과 같습니다.qt ip 카메라 스트림 libvlc 반환 값
const char * const vlc_args[] = {
"--preferred-resolution=576",
"--network-caching=250",
"--no-audio"
};
my_vlcInstance = libvlc_new(3, vlc_args);
if (my_vlcInstance == NULL){
emit sendDebugMessage("Couldn't create vlc instance", "Red");
return;
}
my_LiveMedia = libvlc_media_new_location(my_vlcInstance, link.toStdString().c_str());
if (my_LiveMedia == NULL){
emit sendDebugMessage("Error installing media", "Red");
return;
}
my_LiveMediaPlayer = libvlc_media_player_new_from_media(my_LiveMedia);
if (my_LiveMediaPlayer == NULL){
emit sendDebugMessage("Error creating media player", "Red");
return;
}
이제 link는 네트워크 링크가 포함 된 QString입니다. 비주얼 스튜디오 디버그 창에서 오류를 볼 수 있기 때문에 나쁜 일이 발생한다는 것을 알고 있습니다. "핵심 입력 오류 :`dsfgdfgfg '열기가 실패했습니다." "입력을 열 수 없습니다. 그렇다면 왜 이러한 오류를 발견 할 수 있습니까?
더우기 ... 시작 녹음 버튼을 누르면 파일이 생성되고 (스트림이 없으면 분명히 손상됨) libvlc 함수 호출이 설명서에 지정된대로 오류를 반환하지 않습니다. 예를 들면 다음과 같습니다.
if (libvlc_media_player_play(my_LiveMediaPlayer) == 0){
emit sendDebugMessage("Live mode started successfully", "Green");
isLive = true;
}
그럼 어떻게 나쁜 링크를 잡을 수 있습니까?
vlc-qt를 사용해 보셨습니까? 그게 당신을 도울 수 – Zen
내가 DLL과 버전과 함께 일하는 데 문제가 있었고 나는 중간 남자를 건너 뛰기로 결정 ... –