H264學習過程總結4 h264視頻文件rpt傳輸。

h264視頻文件rpt傳輸。

使用參考地址的源代碼稍微修改一下,就可以得到這個傳輸過程中的client端代碼。

http://bbs.chinavideo.org/forum.php?mod=viewthread&tid=7575

因爲我使用的是udp傳輸所以使用sendto函數。

主要是完成自己的server端的代碼,也簡單。

關鍵代碼如下,
if(recvlen < 1414 && nalu_hdr->TYPE != 28)
{
memcpy(temp, h264nal_header, 4);
memcpy(temp + 4, str + 12, recvlen - 12);
temp_num = 4 + recvlen - 12;
}


else
{
if(fu_hdr->S == 1)// add nal_header into the first NAL bag
{
memcpy(temp, h264nal_header, 4);
nalu_hdr->TYPE = fu_hdr->TYPE;
*(str +13) = *(str +12);

memcpy(temp + 4, str + num_1, recvlen - num_1);
temp_num = 4 + recvlen - num_1;
}
else if(fu_hdr->E == 1)
{
nalu_hdr->TYPE = fu_hdr->TYPE;
memcpy(temp, str + num_2, recvlen - num_2);
temp_num = recvlen - num_2;
}
else
{
nalu_hdr->TYPE = fu_hdr->TYPE;
memcpy(temp, str + num_2, recvlen - num_2);
temp_num = recvlen - num_2;
}

}

將serve端得到的數據保存成一個文件可以使用vcl播放器播放的,傳輸成功。

個人感覺單獨的264的視頻流實用性不大,因爲視頻常常與音頻壓縮到一起,那麼時間戳是必不可少的。

下面要嘗試mp4格式的文件rpt傳輸。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章