使用UDP VLC QT的视频流

时间:2015-09-22 07:41:39

标签: c++ qt video udp vlc

我正在使用流,这是VLC播放器的一项功能,可以进行视频流传输。

我正在播放的视频格式为mp4格式。视频流的目标设置是通过udp在IP地址127.0.0.1和端口9000。 我面临的问题主要有四个:

  1. 在mp4视频流媒体播放过程中,我看不到视频在VLC播放器上播放。它显示黑屏,我只能听到视频的音频。如果转换了wmv视频,我可以看到视频播放以及听到音频。视频文件的格式是否会影响流媒体?为什么我在流式传输mp4文件时看不到在VLC上播放的视频?选中本地显示选项。

  2. 此外,当流式传输mwv格式视频时,视频非常像素化。有没有办法调整流,以便视频清晰。

  3. 头文件WinSock2.h:没有这样的文件或目录,但没有任何构建错误,程序能够构建。

  4. 如何将我的udp客户端连接到VLC视频流,以便我可以接收在VLC播放器上流式传输的视频文件并将其显示在QMediaPlayer中。我正在使用c ++和Qt创建者。

  5. 我的udp代码如下:

    #include<stdio.h>
    #include<winsock2.h>
    
    #pragma comment(lib,"ws2_32.lib") //Winsock Library
    
    #define SERVER "127.0.0.1"  
    #define BUFLEN 512  
    #define PORT 9000   
    
    int main(void)
    {
        struct sockaddr_in si_other;
        int s; 
        int slen=sizeof(si_other);
        char buf[BUFLEN];
        char message[BUFLEN];
        WSADATA wsa;
    
        //Initialise winsock
        printf("\nInitialising Winsock");
        if (WSAStartup(MAKEWORD(2,2),&wsa) != 0)
        {
            printf("Failed. Error Code : %d",WSAGetLastError());
            exit(EXIT_FAILURE);
        }
        printf("Initialised.\n");
    
        //create socket
        if ( (s=socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)) == SOCKET_ERROR)
        {
            printf("socket() failed with error code : %d" , WSAGetLastError());
            exit(EXIT_FAILURE);
        }
    
        //setup address structure
        memset((char *) &si_other, 0, sizeof(si_other));
        si_other.sin_family = AF_INET;
        si_other.sin_port = htons(PORT);
        si_other.sin_addr.S_un.S_addr = inet_addr(SERVER);
         closesocket(s);
        WSACleanup();
    
        return 0;
    }
    

    请指教。感谢

0 个答案:

没有答案