【HSP3】MediaInfo.dll 用の定義ファイルと簡単なサンプル

MediaInfo.dll 用の定義ファイルと簡単なサンプルです。間違っている場合があるので注意して使ってください。

MediaInfo.dll 用の定義ファイルと簡単なサンプルです。間違っている場合があるので注意して使ってください。

#uselib "MediaInfo.dll"
#func MediaInfo_New "MediaInfo_New"
#func MediaInfo_New_Quick "MediaInfo_New_Quick" wptr,wptr
#func MediaInfo_Delete "MediaInfo_Delete" wptr
#func MediaInfo_Open "MediaInfo_Open" wptr,wptr
#func MediaInfo_Open_Buffer "MediaInfo_Open_Buffer" wptr,wptr,wptr,wptr,wptr
#func MediaInfo_Open_Buffer_Init "MediaInfo_Open_Buffer_Init" wptr,wptr,wptr
#func MediaInfo_Open_Buffer_Continue "MediaInfo_Open_Buffer_Continue" wptr,wptr,wptr
#func MediaInfo_Open_Buffer_Continue_GoTo_Get "MediaInfo_Open_Buffer_Continue_GoTo_Get" wptr
#func MediaInfo_Open_Buffer_Finalize "MediaInfo_Open_Buffer_Finalize" wptr
#func MediaInfo_Open_NextPacket "MediaInfo_Open_NextPacket" wptr
#func MediaInfo_Save "MediaInfo_Save" wptr
#func MediaInfo_Close "MediaInfo_Close" wptr
#func MediaInfo_Inform "MediaInfo_Inform" wptr,wptr
#func MediaInfo_GetI "MediaInfo_GetI" wptr,wptr,wptr,wptr,wptr
#func MediaInfo_Get "MediaInfo_Get" wptr,wptr,wptr,wptr,wptr,wptr
#func MediaInfo_SetI "MediaInfo_SetI" wptr,wptr,wptr,wptr,wptr,wptr
#func MediaInfo_Set "MediaInfo_Set" wptr,wptr,wptr,wptr,wptr,wptr
#func MediaInfo_Output_Buffer_Get "MediaInfo_Output_Buffer_Get" wptr,wptr
#func MediaInfo_Output_Buffer_GetI "MediaInfo_Output_Buffer_GetI" wptr,wptr
#func MediaInfo_Option "MediaInfo_Option" wptr,wptr,wptr
#func MediaInfo_State_Get "MediaInfo_State_Get" wptr
#func MediaInfo_Count_Get "MediaInfo_Count_Get" wptr,wptr,wptr
#func MediaInfoA_New "MediaInfoA_New"
#func MediaInfoA_New_Quick "MediaInfoA_New_Quick" sptr,sptr
#func MediaInfoA_Delete "MediaInfoA_Delete" sptr
#func MediaInfoA_Open "MediaInfoA_Open" sptr,sptr
#func MediaInfoA_Open_Buffer "MediaInfoA_Open_Buffer" sptr,sptr,sptr,sptr,sptr
#func MediaInfoA_Open_Buffer_Init "MediaInfoA_Open_Buffer_Init" sptr,sptr,sptr
#func MediaInfoA_Open_Buffer_Continue "MediaInfoA_Open_Buffer_Continue" sptr,sptr,sptr
#func MediaInfoA_Open_Buffer_Continue_GoTo_Get "MediaInfoA_Open_Buffer_Continue_GoTo_Get" sptr
#func MediaInfoA_Open_Buffer_Finalize "MediaInfoA_Open_Buffer_Finalize" sptr
#func MediaInfoA_Open_NextPacket "MediaInfoA_Open_NextPacket" sptr
#func MediaInfoA_Save "MediaInfoA_Save" sptr
#func MediaInfoA_Close "MediaInfoA_Close" sptr
#func MediaInfoA_Inform "MediaInfoA_Inform" sptr,sptr
#func MediaInfoA_GetI "MediaInfoA_GetI" sptr,sptr,sptr,sptr,sptr
#func MediaInfoA_Get "MediaInfoA_Get" sptr,sptr,sptr,sptr,sptr,sptr
#func MediaInfoA_SetI "MediaInfoA_SetI" sptr,sptr,sptr,sptr,sptr,sptr
#func MediaInfoA_Set "MediaInfoA_Set" sptr,sptr,sptr,sptr,sptr,sptr
#func MediaInfoA_Output_Buffer_Get "MediaInfoA_Output_Buffer_Get" sptr,sptr
#func MediaInfoA_Output_Buffer_GetI "MediaInfoA_Output_Buffer_GetI" sptr,sptr
#func MediaInfoA_Option "MediaInfoA_Option" sptr,sptr,sptr
#func MediaInfoA_State_Get "MediaInfoA_State_Get" sptr
#func MediaInfoA_Count_Get "MediaInfoA_Count_Get" sptr,sptr,sptr
#func MediaInfo_Info_Version "MediaInfo_Info_Version"
#func MediaInfoList_New "MediaInfoList_New"
#func MediaInfoList_New_Quick "MediaInfoList_New_Quick" wptr,wptr
#func MediaInfoList_Delete "MediaInfoList_Delete" wptr
#func MediaInfoList_Open "MediaInfoList_Open" wptr,wptr,wptr
#func MediaInfoList_Open_Buffer "MediaInfoList_Open_Buffer" wptr,wptr,wptr,wptr,wptr
#func MediaInfoList_Save "MediaInfoList_Save" wptr,wptr
#func MediaInfoList_Close "MediaInfoList_Close" wptr,wptr
#func MediaInfoList_Inform "MediaInfoList_Inform" wptr,wptr,wptr
#func MediaInfoList_GetI "MediaInfoList_GetI" wptr,wptr,wptr,wptr,wptr,wptr
#func MediaInfoList_Get "MediaInfoList_Get" wptr,wptr,wptr,wptr,wptr,wptr,wptr
#func MediaInfoList_SetI "MediaInfoList_SetI" wptr,wptr,wptr,wptr,wptr,wptr,wptr
#func MediaInfoList_Set "MediaInfoList_Set" wptr,wptr,wptr,wptr,wptr,wptr,wptr
#func MediaInfoList_Option "MediaInfoList_Option" wptr,wptr,wptr
#func MediaInfoList_State_Get "MediaInfoList_State_Get" wptr
#func MediaInfoList_Count_Get "MediaInfoList_Count_Get" wptr,wptr,wptr,wptr
#func MediaInfoList_Count_Get_Files "MediaInfoList_Count_Get_Files" wptr
#func MediaInfoListA_New "MediaInfoListA_New"
#func MediaInfoListA_New_Quick "MediaInfoListA_New_Quick" sptr,sptr
#func MediaInfoListA_Delete "MediaInfoListA_Delete" sptr
#func MediaInfoListA_Open "MediaInfoListA_Open" sptr,sptr,sptr
#func MediaInfoListA_Open_Buffer "MediaInfoListA_Open_Buffer" sptr,sptr,sptr,sptr,sptr
#func MediaInfoListA_Save "MediaInfoListA_Save" sptr,sptr
#func MediaInfoListA_Close "MediaInfoListA_Close" sptr,sptr
#func MediaInfoListA_Inform "MediaInfoListA_Inform" sptr,sptr,sptr
#func MediaInfoListA_GetI "MediaInfoListA_GetI" sptr,sptr,sptr,sptr,sptr,sptr
#func MediaInfoListA_Get "MediaInfoListA_Get" sptr,sptr,sptr,sptr,sptr,sptr,sptr
#func MediaInfoListA_SetI "MediaInfoListA_SetI" sptr,sptr,sptr,sptr,sptr,sptr,sptr
#func MediaInfoListA_Set "MediaInfoListA_Set" sptr,sptr,sptr,sptr,sptr,sptr,sptr
#func MediaInfoListA_Option "MediaInfoListA_Option" sptr,sptr,sptr
#func MediaInfoListA_State_Get "MediaInfoListA_State_Get" sptr
#func MediaInfoListA_Count_Get "MediaInfoListA_Count_Get" sptr,sptr,sptr,sptr
#func MediaInfoListA_Count_Get_Files "MediaInfoListA_Count_Get_Files" sptr


// ↓1にするとサンプルが実行できます。
#if 0

	// ファイル読み込みダイアログ
	dialog "*",16
	if (stat == 0) : end
	fname = refstr

	// ハンドルを取得
	MediaInfoA_New
	handle = stat
	// ハンドルを使用してファイル読み込み
	MediaInfoA_Open handle, fname
	if (stat){
		// 設定(これを設定すると詳細に取得できます)
		//MediaInfoA_Option handle, "Complete", "1"
		// 取得
		rev_size = 4096	// バッファサイズ
		MediaInfoA_Inform handle, rev_size
		dupptr info, stat, rev_size, 2
		mesbox info, 640, 480
	
		// 使用後は解放
		MediaInfoA_Delete handle
	}else{
		dialog "非対応の形式のようです"
	}
	
#endif