2012年3月28日水曜日

GALAXY Note SC-05D ついにでた~


前から欲しいと思っていた「GALAXY Note SC-05D」がついにdocomoで発表された!


日本キャリアから出ないので海外から購入しようか迷っていたやつ。

自炊本読むにはこの大画面が欲しくて・・・
ポケットに入る限界まで挑戦した感じ?

タッチペンがどれくらい便利かはわからんけど、使いながら用途を見出していけばいいかなと。



予約開始は明日から、販売開始日は2012年4月6日からだって!

わくわく。

↓に続く


----------------------------------
他の Galaxy Note の記事はこちら。
1)GALAXY Note SC-05D ついにでた~
2)GALAXY Note SC-05D ・・・予約してしまった。
3)GALAXY Note SC-05D レビュー
4)GALAXY Note SC-05D レビュー その2
5)GALAXY Note SC-05D レビュー その3
6)GALAXY Note SC-05D レビュー その4
7)docomo SC-05D Galaxy Note で動画を撮影&アップロード。
----------------------------------

免責
この記事やプログラムによって生じた事故・損害などは一切保証致しません。ご自身の責任でご使用ください。


子育てブログ「おとう日記」はじめました。
興味ある方、是非ご覧下さい!
おとう日記

コピペプログラマの倉庫を作りました。
サンプルプログラムなど置いておきますのでお立ち寄り下さい。
コピペプログラマ倉庫


良ければ↓投票お願いします↓ m(._.)m ペコッ
人気ブログランキングへ

2012年3月10日土曜日

HDC-TM45で撮ったデータ を sonyのPMB で見れるようにする

ここのところ作り込んでいたものができたので紹介したい。

といっても、かなりレアケースなので、この記事が役に立つ人がいるか不明だが。
まぁ部分的には使えるところもあるだろう。

経緯

以前、sonyのハンディカムHDR-CX500Vのディスプレイが壊れたので分解してしまって、その後新しいハンディカム「Panasonic HDC-TM45」を購入したのは紹介した通りだが、いろいろ不満があった。

不満に関しては「新しいハンディカム購入 Panasonic HDC-TM45」を見てもらえばいいが、今回はその課題を全て解決しようというわけだ。

やりたいこと

やりたい事は、HDC-TM45で撮ったデータをインターネットAQUOSで見れるような画質に変換、更に、落とした後にアスペクト比が4:3になっているので、NASにコピーしてから16:9に変換し、ファイルの作成日時を変更すれば、sonyのPMB で正しい日時で登録される。

AVCHDで保存するのと、mpeg2に変換するのは、HD Writer AEを使うのが速いのでそこは変わらない。
HD Writer AEの保存設定は、各日付のフォルダにその日のファイルを保存するような設定になっている。

今回はその後の処理を全てバッチ化してみた。
その後の処理というのはつまり、mpeg2変換後にアスペクト比が4:3になっているので、まずNASにコピーしてから16:9に変換し、ファイルの作成日時を変更するという作業。

どうやんの?

基本はWSH

アスペクト比の変更は「ReAspect」というのを使わせてもらった。
このソフトはreaspectcmd.exeというコマンドラインで操作できるバージョンも用意してくれていた。

作成日時変更は「touch」というのを使わせてもらった。

結果や進捗、完了したかをコマンドラインで確認できるようにしたいので、開始は
start.bat


  1. echo on  
  2. cscript settings.vbs  
  3. pause  

とした。pauseを入れて、完了しても勝手に終わらないように。勝手に終わると、異常終了したのかちゃんと完了したのかわからないので。
で、WSHの実行は、コマンドライン版のcscriptで実行する。普通に指定するとwscriptで実行しちゃうからね。あれだと進捗がわかりにくい。

で、実際の実行はsettings.vbs。こんな感じ

  1. '*******************************************************************  
  2. '*初期値設定  
  3.   
  4. '対象フォルダ  
  5. ' -s(--source、--src)送信元  
  6. src_path="\\sorce\HDC-TM45"  
  7. ' -d(--destination、--dst)送信先  
  8. dst_path="\\destination\HDC-TM45"  
  9.   
  10. '*******************************************************************  
  11. ' デバックしたい場合は下記コメントを外してPopupを使用すると便利。  
  12. Dim shell  
  13. Dim shellRun  
  14. Set shell = WScript.CreateObject( "WScript.Shell" )  
  15. ' shell.Popup("メッセージボックス")  
  16. 'WScript.Echo dst_path_tmp2 & "\" & strFileName  
  17.   
  18. Set colFileSystem = CreateObject("Scripting.FileSystemObject")  
  19. ChkFolders src_path,dst_path 'main呼び出し  
  20.   
  21. Set shell = Nothing  
  22. Set colFileSystem = Nothing  
  23.   
  24. '以下関数***********************************************************  
  25. 'ディレクトリチェック  
  26. Private Sub ChkFolders(src_path_tmp,dst_path_tmp)  
  27.    
  28.  ' 指定したフォルダを表すFolderオブジェクトを返します。  
  29.  Set objParent   = colFileSystem.GetFolder( src_path_tmp )  
  30.  ' フォルダ内に存在する全てのサブフォルダを返します。  
  31.  Set colFolder   = objParent.SubFolders  
  32.    
  33.  '指定されたフォルダ内の全てのサブフォルダに対してループします  
  34.  For Each objFolder In colFolder  
  35.   strFolderName = "\" & objFolder.Name ' サブフォルダの名前を取得  
  36.   'コピー先のフォルダ確認  
  37.   If colFileSystem.FolderExists(dst_path_tmp & "\" & objFolder.Name) = False Then  
  38.    colFileSystem.CreateFolder(dst_path_tmp & "\" & objFolder.Name)  
  39.   End If  
  40.   ChkFiles src_path_tmp &  strFolderName,dst_path_tmp &  strFolderName,strFolderName  
  41.  Next  
  42.  Set objParent = Nothing  
  43.  Set colFolder = Nothing  
  44. End Sub  
  45.   
  46.   
  47. '以下関数*******************************************************************  
  48. 'ディレクトリチェック  
  49. Private Sub ChkFiles(src_path_tmp2,dst_path_tmp2,folder_name)  
  50.    
  51.  ' 指定したフォルダを表すFolderオブジェクトを返します。  
  52.  Set objParent2   = colFileSystem.GetFolder( src_path_tmp2 )  
  53.  ' フォルダ内に存在する全てのファイルを返します。  
  54.  Set colFiles2   = objParent2.Files  
  55.   
  56.  '指定されたフォルダ内の全てのファイルに対してループします  
  57.  For Each objFile In colFiles2  
  58.   strFileName  = objFile.Name ' ファイルの名前を取得  
  59.   ' mpgファイルのコピー  
  60.   ret = InStr(strFileName,".mpg")  
  61.   If ret <> 0 And IsNull(ret) = False Then  
  62.    '存在しなかったときだけ対象とする  
  63.    If colFileSystem.FileExists(dst_path_tmp2 & "\" & strFileName) = False Then  
  64.     'コピー  
  65.     colFileSystem.CopyFile src_path_tmp2 & "\" & strFileName,dst_path_tmp2 & "\" & strFileName  
  66.     'ファイル作成日時変更  
  67.     Dim sDateArry  
  68.     Dim sTimeArry  
  69.     Dim sDate,sDay,sTime,sH,sM,sS  
  70.     rettmp = InStr(strFileName,"_")  
  71.     If rettmp <> 0 And IsNull(rettmp) = False Then  
  72.      sDateArry = Split(strFileName,"_")  
  73.      sDay = sDateArry(0)  
  74.      sTimeArry = Split(sDateArry(1),".")  
  75.      sTime = Replace(sTimeArry(0),"(2)","")  
  76.      sH = Mid(sTime,1,2)  
  77.      sM = Mid(sTime,3,2)  
  78.      sS = Mid(sTime,5,2)  
  79.      sTime = sH & ":" & sM & ":" & sS  
  80.      sDate = sDay & " " & sTime  
  81.     End If  
  82.     '日付型ではなかった場合、フォルダ名で代替  
  83.     If IsDate(sDate) = False Then  
  84.      sDate = folder_name & " 00:00:00"  
  85.     End If  
  86.     '日付型だった場合だけ更新  
  87.     If IsDate(sDate) = True Then  
  88.      shell.Run "touch.exe -C -d """ & sDay & " " & sTime & """ """ & dst_path_tmp2 & "\" & strFileName & """",1,True  
  89.      shell.Run "touch.exe -M -d """ & sDay & " " & sTime & """ """ & dst_path_tmp2 & "\" & strFileName & """",1,True  
  90.     End If  
  91.     'アスペクト比変更  
  92.     ret2 = InStr(strFileName,".mpg")  
  93.     If ret2 <> 0 And IsNull(ret2) = False Then  
  94.      WScript.Echo "reaspectcmd.exe -r -o3 """ & dst_path_tmp2 & "\" & strFileName & """"  
  95.      shell.Run "reaspectcmd.exe -r -o3 """ & dst_path_tmp2 & "\" & strFileName & """",1,True  
  96.     End If  
  97.    End If  
  98.   End If  
  99.   ' JPGファイルのコピー  
  100.   ret3 = InStr(strFileName,".JPG")  
  101.   ret4 = InStr(strFileName,".jpg")  
  102.   ret5 = InStr(strFileName,".JPEG")  
  103.   ret6 = InStr(strFileName,".jpeg")  
  104.   If (ret3 <> 0 And IsNull(ret3) = FalseOr (ret4 <> 0 And IsNull(ret4) = FalseOr (ret5 <> 0 And IsNull(ret5) = FalseOr (ret6 <> 0 And IsNull(ret6) = FalseThen  
  105.    '存在しなかったときだけ対象とする  
  106.    If colFileSystem.FileExists(dst_path_tmp2 & "\" & strFileName) = False Then  
  107.     'コピー  
  108.     colFileSystem.CopyFile src_path_tmp2 & "\" & strFileName,dst_path_tmp2 & "\" & strFileName  
  109.    End If  
  110.   End If  
  111.  Next  
  112.  Set objParent2 = Nothing  
  113.  Set colFiles2 = Nothing  
  114. End Sub  

送信元と送信先を指定して実行すると、一連の作業を自動でおこなってくれる。

ファイルのコピーはFileSystemObjectを使う。

作成日時の作り方は、ファイル名から。HDC-TM45で撮った動画は、ファイル名がそのまま日時になっているので、そこから抽出して分解し日付型でセットしている。
アスペクト比の変換は、1ファイルあたりかなりかかる。これを非同期で実行しているとパソコンがフリーズするので、同期して一つずつ終わらせていくために、shell.Runの最後の引数をTrueにして実行している。

コピー対象はjpgとmpgのみ。AVCHDはどうせインターネットAQUOSでは再生できないので、NAS側には移動しない。

フォルダの階層はこんな前提。

HDC-TM45
└yyyy-mm-dd
└xxx.mpg
└xxx.jpg

一連のセットを一つのフォルダに入れ、start.batを叩くと実行される。あとはしばらく放置。
コピペプログラマ倉庫のwshに置いとくので、参考にしてください。


免責
この記事やプログラムによって生じた事故・損害などは一切保証致しません。ご自身の責任でご使用ください。


子育てブログ「おとう日記」はじめました。
興味ある方、是非ご覧下さい!
おとう日記

コピペプログラマの倉庫を作りました。
サンプルプログラムなど置いておきますのでお立ち寄り下さい。
コピペプログラマ倉庫


良ければ↓投票お願いします↓ m(._.)m ペコッ
人気ブログランキングへ

2012年3月5日月曜日

Firefoxで好きなPOSTやheader(Cookieなど)を送れるアドオン【RestTest】の代わりに【Poster】を使ってみた


hashdosの対策をmod_securityで行ったんだが、それの検証としてCookieを複数個、意図的に送信したいなぁと。

ググったら「RestTest」というFirefoxのアドオンが便利そうだったが、残念ながら、これ、今公開されてないっぽく。
で、代わりに「Poster」というアドオンがあるそうなのでそれでやってみた。

http://addons.mozilla.org/ja/firefox/addon/poster/

installしたら右下に「p」というアイコンがある。
見にくい・・・場合は、ツールからでもOK

ダイアログが出るので、cookieを送りたい場合は、送りたいURLを頭に指定して、
Headersに
Name:Cookie
Value:好きな値
を入れて「Add/Change」で追加して「POST」を押す。

こんな感じ。


すると別窓で結果が返ってくるので、それで判別するという具合だ。

ParametersでPOSTの値を入れることもできるようだし、Content to Send でファイルアップも可能のよう。
なかなか便利だね。


免責
この記事やプログラムによって生じた事故・損害などは一切保証致しません。ご自身の責任でご使用ください。


子育てブログ「おとう日記」はじめました。
興味ある方、是非ご覧下さい!
おとう日記

コピペプログラマの倉庫を作りました。
サンプルプログラムなど置いておきますのでお立ち寄り下さい。
コピペプログラマ倉庫


良ければ↓投票お願いします↓ m(._.)m ペコッ
人気ブログランキングへ