« 2013年6-7月周波数変更への対応法 | トップページ | TVH264_SPHD 0.8.1のビルド方法 »

2013/09/26

TVTest 0.8.1のビルド方法

2013/9/20に、TVTestの新バージョン0.8.1ソースプログラムが、デジタル放送汎用視聴プログラム実装研究資料として、https://github.com/DBCTRADO/TVTest のホームページに公開された(2013/9/25にわずかな修正有り)。

 昨年9月に公開されたバージョン0.8.0は、不具合等が多数あったが、新バージョンになって動作も安定してきており、かつスカパープレミアムで使うと便利な新機能も搭載されているので、そろそろTVTest及びTVH264_SPHDのバージョンアップをお勧めする。
但し公開されているのはソースコードのみであり、実行形式のファイルは含まれていない。かつ実用的に用いるためには自分でソースコードを修正してからビルドしなおす必要がある。
従い、まずこのページにて、TVTest0.8.1の修正方法、ビルド方法を解説する。
引き続き、別のページにて、TVH264_SPHDの修正方法、ビルド方法を解説する。
(あわせて、Windows8への対応方法の記事も参照願います。)

なお、TVCAS_attachment、およびBonCasClient、双方にバグがあるため、TVTest0.8.1ではBonCasClientが使えなくなっている。TVTest0.8.1でBonCasClientを使用するためには両者のバグを修正する必要があるので、こちらについても追加で解説する。


TVTest(0.8.1)のビルド方法

[用意+インストールするもの]
 ・TVTest 0.8.1ソース。(デジタル放送汎用視聴プログラム実装研究資料のサイトから入手。ホームページのソースファイルを1個ずつダウンロードするのではなく、右側のカラムにある、「Download ZIP」のボタンをクリックしてZIPファイルを入手し、解凍する。)
 ・TVCAS_attachment ソース(複数のサイトからダウンロードできるようなので、頑張って探してみてください)。
 ・TVTest 0.8.0ソース(複数のサイトからダウンロードできるようなので、頑張って探してみてください)。一部のソースコードを旧バージョンのものと入れ替える必要があるため、旧バージョンのソースも必要となる。
 ・Windows SDK for Windows 7 (「DirectShow BaseClasses」のビルドのため。マイクロソフトの当該サイトから入手)
 ・faad2-2.7.zip (FAAD2 Source をAudioCoding.comから入手)
 ・Visual Studio 2010 (以下VS2010)
※VS2010は、Express EditionだとMFCに対応していないので、Professional Editionが必要。VS2010 Professional 無料版の入手方法等は、Visual Studio 2010(VS2010)の入手方法として別記事にまとめた。

[手順]
1. 【「FAAD2」(libfaad.lib)】をビルド
  "faad2-2.7.zip"を展開、"frontend\faad.sln"をVS2010で開いて(途中、変換ウィザードが出る)ビルドする。
2. 【「DirectShow BaseClasses」(strmbasd.lib strmbase.lib)】をビルド。
  デフォルトでは "Program Files\Microsoft SDKs\Windows\v7.1\Samples\multimedia\directshow\baseclasses" フォルダにある"baseclasses.sln"を開いてビルドする。
3. TVTest 0.8.1ソースが含まれた、"TVTest-master.zip"を展開する。
4. TVTest0.8.0のソースファイルから、
 BonTsEngine\CasProcessor.cpp
 BonTsEngine\CasProcessor.h
 の2ファイルを抜き出し、TVTest 0.8.1ソースのBonTsEngineフォルダーにある同名のファイルに上書きコピーする。
 またtvcas_attachmentのソースファイルから、
 TVCAS\TVCAS.h
 のファイルを抜き出し、TVTest 0.8.1ソースのBonTsEngineフォルダーにコピーする。
5. TVTest0.8.0のソースファイルの、 DtvEngine\DtvEngine.cpp に、 http://pastebin.com/Jw5FJrLE の修正を適用する。
6. VS2010で、TVTest.slnを開く。
7. TVTestプロジェクトのプロパティを開き、上記"baseclasses"フォルダを「追加のインクルードディレクトリ」に加える。また、同フォルダにある"Release" フォルダ、および"libfaad.lib"が生成されたフォルダを「追加のライブラリディレクトリ」に加える。
8. TVTestをビルド。
(注)
 ※ビルドの際、LNK2005エラーが解決できなかったら、VS2010設定のプロパティにある、「C/C++」の「コード生成」メニューにて、「ランタイムライブラリ」の項目が一致しているか再度確認。【faad.sln】、【baseclasses.sln】、【Test.sln】の設定を全て、「マルチスレッドDLL8/MD)」などで統一する。
 ※ビルドの際、VS2010はデフォルトだとDebugを実行する設定になっている。メニューが「Debug」になっていたら「Release」に変更した後、「ビルド」-「ソリューションのビルド」を選択、実行するとexeファイルやlibファイルが Release フォルダーに生成される。

 以上でTVTest 0.8.1の修正完了。 TVCAS_B25.tvcas ファイルと併用することで視聴可能となる。


TVCAS_attachment でBonCasClientを使う際の修正方法

[用意+インストールするもの]
 ・TVCAS_attachment ソース(複数のサイトからダウンロードできるようなので、頑張って探してみてください)。

[手順]
1. TVCAS\CardReader.cpp のソースファイルを、下記の通り修正

--- CardReader.cpp.orig
+++ CardReader.cpp
@@ -907,7 +907,7 @@
if (!GetLibraryFunc(m_hLib, pEstablishContext, "CasLinkEstablishContext")
|| !GetLibraryFunc(m_hLib, pListReaders, FUNC_NAME("CasLinkListReaders"))
|| !GetLibraryFunc(m_hLib, m_pCasLinkReleaseContext, "CasLinkReleaseContext")
- || !GetLibraryFunc(m_hLib, m_pCasLinkConnect, "CasLinkConnect")
+ || !GetLibraryFunc(m_hLib, m_pCasLinkConnect, FUNC_NAME("CasLinkConnect"))
|| !GetLibraryFunc(m_hLib, m_pCasLinkDisconnect, "CasLinkDisconnect")
|| !GetLibraryFunc(m_hLib, m_pCasLinkTransmit, "CasLinkTransmit")) {
::FreeLibrary(m_hLib);

2. TVCAS\Multi2Decoder.h の18行目にある、
 #define MULTI2_SIMD_ICC  の行をコメントアウト
3. ICC\Multi2Decoder\Multi2DecoderSIMD.cpp の2行目にある、
 "../../BonTsEngine/Multi2Decoder.h" を
 "../../TVCAS/Multi2Decoder.h" など、各自のフォルダー構成に合わせて正しい場所に修正
4. TVCAS\CardReader.h の4行目に、以下の2行を追加する。

#define CARDREADER_SCARD_DYNAMIC_SUPPORT
#define CARDREADER_BONCASCLIENT_SUPPORT

5. TVCAS\TVCAS.sln を開いてTVCAS_B25をビルドすると、 TVCAS_B25.tvcas ファイルが生成される。


BonCasClientの修正方法

[用意+インストールするもの]
 ・BonCasClient ソース(複数のサイトからダウンロードできるようなので、頑張って探してみてください)。

[手順]
1. TVCAS\CardReader.cpp のソースファイルを、下記の通り修正

--- BonCasClient.cpp.orig
+++ BonCasClient.cpp
@@ -122,7 +122,7 @@
*((LPCSTR *)mszReaders) = szReaderName;
return SCARD_S_SUCCESS;
}else{
-*pcchReaders = sizeof(szReaderName);
+*pcchReaders = sizeof(szReaderName) / sizeof(szReaderName[0]);
}
}

@@ -140,7 +140,7 @@
*((LPCWSTR *)mszReaders) = szReaderName;
return SCARD_S_SUCCESS;
}else{
-*pcchReaders = sizeof(szReaderName);
+*pcchReaders = sizeof(szReaderName) / sizeof(szReaderName[0]);
}
}

2. BonCasClient.sln を開いてBonCasClientをビルドすると、 BonCasClient.dll ファイルが生成される。


mail 質問/コメント等はこちらへ mail
memo 2012年12月~2013年9月の質問/コメント memo
memo 2012年7月~11月の質問/コメント memo
memo 2012/6以前の質問/コメント memo
mobaq FAQ mobaq
impact スカパー!プレミアムサービス録画TIPS impact

house 解説のページへ戻る house

« 2013年6-7月周波数変更への対応法 | トップページ | TVH264_SPHD 0.8.1のビルド方法 »

パソコン・インターネット」カテゴリの記事

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/584297/58280542

この記事へのトラックバック一覧です: TVTest 0.8.1のビルド方法:

« 2013年6-7月周波数変更への対応法 | トップページ | TVH264_SPHD 0.8.1のビルド方法 »

facebook

  • ブログ内検索

関連商品

  • スカパーHDチューナー
  • HDチューナー(シングル)
  • カードリーダー     画像編集ソフト
  • ラインブースター    アンテナ
  • 地デジ/BS/CSチューナー  リモコン
  • スカパーHD用チューナー

バナー

無料ブログはココログ

What's New

  • 2013/10/01 10/1のch追加に対応。
    2013/09/28 質問/コメントを分割。
    2013/09/27 TVH264_SPHD0.8.1追加。
    2013/09/26 TVTest0.8.1作成法追加。
    2013/08/07 GrabTsForBD.dllの検索方法に関する情報更新。
    2013/07/14 6~7月の変更情報追加。
    2013/05/18 「旧スカパーSDを録画・視聴するには」に説明画像追加。FAQ更新
    2013/04/28 FAQに記事追加。
    2013/04/13 4/1のch変更情報追加。
    2013/03/02 TVTestバグ修正法追記。
    2013/02/24 2/23,4/1変更情報追加。
    2013/02/23 TMSR4のVer.UPでCM検出機能が追加された旨追記。
    2013/02/10 TIPSにBS放送とのファイルサイズ比較記事を追加。
    2013/01/17 ICカード入手法の記事に、HDチューナー無償配布の説明追記。
    2013/01/07 FAQに最近の質問追加。
    2013/01/06 各種TIPSの記事追加。
    2012/12/22 ICカードの入手法追加。
    2012/12/08 KB2770917対処法追加。
    2012/11/30 質問/コメントを分割。
    2012/11/24 Windows8対応方法追加。
    2012/11/23 TMSR4のレポート追加。
    2012/11/22 TVH264_SPHDをビルドする時のLNK2005エラー対処法を修正。
    2012/10/08 スカパーHDからスカパー!プレミアムサービスに名称変更。
    2012/09/23 9/29,10/1変更情報追加。
    2012/09/20 9/19試験放送情報追加。
    2012/09/17 9/14の電波変更に対応。
    2012/09/16 HD用アンテナ情報追加。
    2012/08/21 facebook「いいね!」追加。
    2012/08/18 TMSR4新発売情報追加。
    2012/08/11 ブログのタイトル変更。
    2012/07/15 2senミラーサイト追加。
    2012/07/12 TBS6984と5922追加。
    2012/07/01 質問/コメントを更新。
    2012/06/30 FAQの記述を追加。
    2012/06/24 ブログデザイン変更。
     FAQを記事にまとめた。
     TVH264_SPHDで使えるリモコンを紹介。
     2senのリンク切れ更新。