青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

ts,ps,mpeg2 decoder and analysis

mepg 2, iptv, stream parse,mov,mxf,gxf,ac3,aac

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  21 隨筆 :: 0 文章 :: 54 評論 :: 0 Trackbacks

 用的elecard的ax文件,自己寫source filter,播放mpeg2還可以,h264就不行了,關鍵請問題如下:

source仿照系統的asyncflt。cpp。.h :

 問題出在elecard的demux上面,
 首先,elecard公司寫demux filter的時候,肯定只是基于文件的--->  to h264來說,

to, mpeg2來說,都是可以的,
 原因如下: 如果是mpeg2, demux filter 先讀取一段數據去parse,找psi,如果找到了,就可以connect了,

因為是讀文件的,讀了一些數據為了connect, 所以connect 以后,必需調用 SetFilePointer(*g_pHFile,0,NULL,FILE_BEGIN);
 要不然,開頭的那一段就無法播放了

但是: 如果是h264, 他先讀取一段數據去parse,找psi,就算找到了,也不connect: 如果找到了,而且也是文件末尾了,那就connect

成功, 奶奶的,可是我的這個是網絡數據流,那有文件末尾,

他有個 set position的函數,connect 后,就 set 0 了

 建立完整個 graph 之后繼續播放,不在乎之前的那點數據的---你知道, 前面的那個數據是多大呢16M

 DVB 標清的話,用不了多少就可以搜完臺,用不了 16MB

關鍵是我怎么知道它到底讀多少數據就 parse完了呢,難道讓我一直等么?,

最早,標清我只要3M的數據,就必需建立graph了,現在h264,高清的,4M,根本不夠了,

于是,我的code這樣寫了,呵呵:HRESULT SetPointer(LONGLONG llPos)
 {
  
   if (g_bIsConnect == 0)
   {
    if (llPos >= (1024 * 1024 * 14))
    {
     //DbgLog((LOG_TRACE, 1, TEXT("\n--Set File Pointer = ld"),llPos));
     return S_FALSE;
    }
 如果connect成功: SetPointer就 永遠返回ok
 這樣就可以播放了,
 不過,浪費了我14M的數據,唉,
code如后:

if (SUCCEEDED(hr)) 
  hr = CoCreateInstance(CLSID_CEleCardMpegMultiplexer, NULL, CLSCTX_INPROC,
  IID_IBaseFilter, (LPVOID *)&pMPG2Splitter) ;

 if (SUCCEEDED(hr)) 
  hr = m_pGraph->AddFilter(pMPG2Splitter,L"EleCard Mpeg2 DeMultiplexer");

 pPinInTSSplitter = xMyFindPin(pMPG2Splitter,L"Input",0,CLSID_NULL_USER1);

 if (SUCCEEDED(hr)) 
  hr = m_pGraph->Connect(pPinOutSTWrapper,pPinInTSSplitter);


 if (strcmp(m_strFileFormat,"H264") == 0)
 {
  pPinOutTSSplitter_V= xMyFindPin(pMPG2Splitter,L"264",1,MEDIATYPE_Video);
 }
 else
 {  
  pPinOutTSSplitter_V= xMyFindPin(pMPG2Splitter,L"Video",1,MEDIATYPE_Video);
 }

if (strcmp(m_strFileFormat,"H264") == 0)
 {
  if (SUCCEEDED(hr))
   hr = CoCreateInstance(CLSID_CH264VideoDecoder, NULL, CLSCTX_INPROC,    

IID_IBaseFilter, (LPVOID *)&pFIDVDVideoDecorder) ;
  if (SUCCEEDED(hr)) 
   hr = m_pGraph->AddFilter(pFIDVDVideoDecorder,L"EleCard MPEG2 Video Decoder");

  if (SUCCEEDED(hr)) 
   pIDVDVideoDecorderInpin = xMyFindPin(pFIDVDVideoDecorder,L"In",0,MEDIATYPE_Video);

  if(pIDVDVideoDecorderInpin)
   hr = m_pGraph->Connect(pPinOutTSSplitter_V,pIDVDVideoDecorderInpin);

  if (SUCCEEDED(hr)) 
   pIDVDVideoDecorderOutpin = xMyFindPin(pFIDVDVideoDecorder,L"Out",1,MEDIATYPE_Video);
 }
 else
 {
  if (SUCCEEDED(hr))  
   hr = CoCreateInstance(CLSID_CEleCardVideoDec, NULL, CLSCTX_INPROC,
   IID_IBaseFilter, (LPVOID *)&pFIDVDVideoDecorder) ;
  if (SUCCEEDED(hr)) 
   hr = m_pGraph->AddFilter(pFIDVDVideoDecorder,L"EleCard MPEG2 Video Decoder");

  if (SUCCEEDED(hr)) 
   pIDVDVideoDecorderInpin = xMyFindPin(pFIDVDVideoDecorder,L"MPEG In",0,MEDIATYPE_Video);

  if(pIDVDVideoDecorderInpin)
   hr = m_pGraph->Connect(pPinOutTSSplitter_V,pIDVDVideoDecorderInpin);


  if (SUCCEEDED(hr)) 
   pIDVDVideoDecorderOutpin = xMyFindPin(pFIDVDVideoDecorder,L"Video Out",1,MEDIATYPE_Video);

 }

 


static const GUID CLSID_CEleCardMpegMultiplexer =
{0x136DCBF5,0x3874,0x4B70,0xAE,0x3E,0x15,0x99,0x7d,0x63,0x34,0xf7};
 //  136DCBF5-  3874 - 4B70 - AE   3E - 15   99   7D   63   34   F7

static const GUID CLSID_CEleCardVideoDec=
{0xf50b3f13,0x19c4,0x11cf,0xaa,0x9a,0x02,0x60,0x8c,0x9b,0xab,0xa2};
//{F50B3F13-19C4-11CF-  AA9A-         02   60   8C   9B   AB   A2}

static const GUID CLSID_CMoonlightAudioDec=
{0xe32c3b01,0xc81b,0x4d01,0x8a,0xd4,0x2b,0x93,0xf7,0xfa,0x54,0x4c};

static const GUID CLSID_CH264VideoDecoder=
{0x6A270473,0x9994,0x4aeb,0x80,0x1f,0xbb,0x2c,0x4e,0x56,0xee,0x38};
// 6A270473-  9994-  4AEB-  80   1F-  BB   2C   4E   56   EE   38}

posted on 2009-10-23 16:37 TS,MPEG2,dvbc專家 閱讀(4658) 評論(16)  編輯 收藏 引用

評論

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc,[未登錄] 2009-10-26 09:11 jans2002
幫你頂一下  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2009-10-26 13:00 TS,MPEG2,dvbc專家
謝了,看來,做這個的人,少了,  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2009-10-26 14:51 萌萌
我也來頂下
你比我做的上層多了。我最近還在苦惱 JRTP發送數據包的問題呢  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2009-10-26 14:51 欣萌
.。  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2009-10-26 16:13 TS,MPEG2,dvbc專家
JRTP發送數據包 -- 這個我沒有做過,不過我們是仿照live 555, 做rtsp ,server, client, rtp包推流的,這個倒是成功了,現在就剩下播放了。  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2009-10-28 13:15 coloriy
收藏了  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2009-11-03 11:38 天龍私服
不錯呀。并不是僅僅多3個字節,我已經更新blog內容了  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2009-12-28 10:55 myideaer
你好,請問你的使用elecard mpeg multiplexer吧?這個filter應該是拉模式下使用的。但是網絡穿過過來的數據不是應該采用推模式下的嗎?是不是應該采用elecard mpeg push multiplexer?不過我連接之后,輸出Pin 無法輸出。。。  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2010-01-06 14:46 TS,MPEG2,dvbc專家
你好: 我還沒有用過push的 multiplexer, 目前雖然用的是elecard mpeg multiplexer,但是source filter是自己寫的,自己建立buffer pool,結果還可以的播放的,不過 出現的問題, 每天下班的時候,開始運行,第二天來的時候,就出現問題了. 說buffer pool滿了, 真奇怪的.  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc,[未登錄] 2010-02-23 17:15 路人甲
@TS,MPEG2,dvbc專家
最近也在研究這內容
不知道前輩有研究出來嗎 想向你討教一下
我目前要做一個 h264 decoder filter
目前是用 ffmpeg 包成filter
只是 render rate 卻是很慢很慢
想問說前輩有沒有經驗可以分享
謝謝
tocute520@gmail.com
  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2010-03-03 18:19 TS,MPEG2,dvbc專家
你好,目前做出來了, 目前用的是Ele card push demultipliex filter + mainconcept avc/h264 video decoder,

播放慢的情況,我也遇到過, 有兩個經歷,一個是用了Ele card pull demux filter, 另一個是用了,SampleGrabber filter,

最后我取消了SampleGrabber ,結果正常了, 不過,如果要做基于網絡的,應該還說用push filter

我目前要做一個 h264 decoder filter – 你做的到底是那個 是demux還是video decoder?

也給你回信了.

  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2010-10-31 18:34 張健
@TS,MPEG2,dvbc專家
n
@TS,MPEG2,dvbc專家

你好,請問你是怎么將elecard MPEG push Demultiplexer的output pin搞出來的 ?  回復  更多評論
  

# re: direct show,filter,elecard_demux做網絡播放器,主要格式:h264/avc, 2011-12-13 21:55 Andrews24Jana
It is known that cash makes us disembarrass. But what to do if one does not have cash? The one way only is to get the <a href="http://goodfinance-blog.com">loan</a> or just short term loan.   回復  更多評論
  

ts,ps,mpeg2 decoder and analysis,ts分析.
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            性色一区二区| 一色屋精品视频在线看| 9人人澡人人爽人人精品| 老司机凹凸av亚洲导航| 亚洲欧美日韩国产成人| 亚洲午夜精品久久久久久app| 夜色激情一区二区| 最新69国产成人精品视频免费| 国内精品免费午夜毛片| 国内不卡一区二区三区| 国产亚洲欧美另类一区二区三区| 国产精品一区二区黑丝| 国产日韩欧美一区二区三区在线观看 | 欧美在线视频网站| 久久av在线看| 久久久蜜桃精品| 欧美成人精品高清在线播放| 欧美国产在线电影| 亚洲动漫精品| 欧美大色视频| 欧美激情四色| 一本久久a久久免费精品不卡| 裸体歌舞表演一区二区 | 久久久精品网| 麻豆精品91| 亚洲国产精品嫩草影院| 一区二区三区 在线观看视| 亚洲自拍偷拍福利| 亚洲一区www| 久久久精品国产免大香伊| 欧美激情第五页| 国产女人精品视频| 亚洲国产经典视频| 亚洲视频图片小说| 久久久福利视频| 亚洲精品在线一区二区| 久久成人免费日本黄色| 欧美韩日一区二区三区| 国产精品一区二区欧美| 亚洲精品一区二区三区av| 午夜精品久久久久久久99水蜜桃| 久久综合国产精品| 一本色道久久88综合亚洲精品ⅰ| 欧美一级淫片aaaaaaa视频| 欧美成人国产一区二区| 国产一区二区三区电影在线观看| 欧美人妖另类| 黑人一区二区三区四区五区| 亚洲深夜福利| 亚洲高清视频在线| 亚洲欧美影音先锋| 欧美激情亚洲一区| 激情欧美一区| 翔田千里一区二区| 99re视频这里只有精品| 免费视频最近日韩| 国内精品久久久久影院色| 亚洲一区二区在线免费观看| 一本色道久久综合狠狠躁篇怎么玩 | 亚洲一区二区三区久久| 欧美成人国产一区二区| 午夜精品久久久久久久99黑人 | 激情久久久久久| 欧美一区二区三区播放老司机| 亚洲日本激情| 欧美α欧美αv大片| 在线观看日韩www视频免费| 欧美综合国产精品久久丁香| 在线亚洲欧美视频| 欧美顶级少妇做爰| 91久久精品一区| 欧美激情中文字幕一区二区| 欧美aⅴ一区二区三区视频| 亚洲主播在线播放| 亚洲小说春色综合另类电影| 欧美影院在线播放| 性欧美8khd高清极品| 亚洲精品久久久久中文字幕欢迎你| 亚洲天堂男人| 91久久夜色精品国产网站| 久久久久久亚洲精品杨幂换脸| 欧美伊人久久久久久午夜久久久久| 国产精品成av人在线视午夜片| 欧美激情精品久久久久久免费印度| 亚洲激情中文1区| 亚洲午夜电影| 99国产精品视频免费观看| 欧美成人精品三级在线观看| 亚洲黄色影片| av成人动漫| 国产精品日韩精品| 亚久久调教视频| 欧美在线免费| 91久久精品国产91性色tv| 欧美国产一区二区在线观看| 国产精品99久久久久久人| 国产精品综合色区在线观看| 久久精品亚洲一区二区三区浴池| 久久亚洲电影| 亚洲视频1区| 亚洲一区激情| 在线观看三级视频欧美| 91久久久一线二线三线品牌| 欧美日韩一级大片网址| 午夜视频一区二区| 久久亚洲综合网| 中文在线资源观看视频网站免费不卡| 一区二区三区视频免费在线观看| 国产日韩欧美在线播放不卡| 欧美肥婆bbw| 国产精品久久久一区二区三区| 美女被久久久| 欧美日韩在线精品| 免费观看日韩| 国产精品丝袜白浆摸在线| 久久久久国色av免费看影院| 欧美激情成人在线| 久久久亚洲精品一区二区三区| 欧美成人激情视频| 久久久国产一区二区| 欧美日韩亚洲综合在线| 欧美成人一区在线| 国产精品亚洲欧美| 最近中文字幕日韩精品| 国产午夜精品麻豆| 一本久久综合亚洲鲁鲁五月天| 在线观看免费视频综合| 亚洲一区二区精品| 日韩一区二区精品葵司在线| 久久久久久久久久久久久久一区| 美国三级日本三级久久99| 欧美日在线观看| 久久在线视频在线| 欧美色网在线| 亚洲伦理在线观看| 亚洲人成网站999久久久综合| 欧美在线观看一区二区三区| 欧美一区二区三区视频免费播放| 欧美了一区在线观看| 欧美成人精品影院| 一区二区三区在线观看视频| 午夜久久久久久| 国产日韩欧美在线| 亚洲欧美精品| 午夜精品久久久久| 欧美日韩在线免费视频| 亚洲精品中文在线| 99精品热视频| 欧美激情一区二区三区| 欧美激情精品久久久久久大尺度| 狠狠色狠狠色综合系列| 羞羞视频在线观看欧美| 欧美在线视频a| 国产精品亚洲成人| 欧美在线精品免播放器视频| 久久精品伊人| 精东粉嫩av免费一区二区三区| 久久精品国产v日韩v亚洲| 久久精品在线视频| 韩国自拍一区| 免费短视频成人日韩| 欧美激情一区二区三区在线视频观看| 亚洲国产一区二区视频| 欧美国产第二页| 99国产精品国产精品久久| 亚洲一级在线| 国产精一区二区三区| 午夜精品福利一区二区蜜股av| 久久免费黄色| 日韩亚洲综合在线| 欧美日韩在线影院| 亚洲欧美日韩精品久久亚洲区 | 久热精品在线视频| 亚洲电影第三页| 欧美极品影院| 亚洲综合大片69999| 久久久亚洲国产美女国产盗摄| 亚洲韩国日本中文字幕| 欧美日韩一区二区三区在线视频| 亚洲在线播放| 欧美成人午夜激情在线| 日韩一本二本av| 国产欧美亚洲一区| 蜜臀av在线播放一区二区三区 | 久久精品欧美| 亚洲国产天堂久久国产91| 欧美人在线观看| 欧美一区视频| 亚洲精品国产精品久久清纯直播 | 久久免费午夜影院| 亚洲你懂的在线视频| 久热精品视频在线| 一本到12不卡视频在线dvd| 久久久久综合网| 一区二区高清| 亚洲国产精选| 国产综合久久| 国产精品久久777777毛茸茸| 久久久午夜精品| 亚洲男人av电影|