約 172,916 件
https://w.atwiki.jp/setlist0225/pages/20.html
established 2012-09-29 last update 2013-03-05 page tag [ PC 現役] contents 自作PC1台目 AMD PhenomII x4 955 BE ケースantec NSK3480 (EarthWatts 380W付属) マザーボードASUS M4A785TD-M EVO チップセットAMD 785G / SB710 CPUAMD Phenom II 955 Black Edition ステッピングC2 OSMicrosoft Windows 7 64bit Professional DSP メインメモリ(8GB/16GB)Winchip DDR3-1600 4GB*2 CL9 電源ユニットHEC WIN+ 700W HEC-700TE-2WX ビデオカードSAPPHIRE HD 5750 1GB GDDR5 PCIE HDMI/DP ブートドライブCSSD-S6M128NM4Q ストレージBUFFALO 2.5インチ SATA/USB2.0 内蔵SSD SHD-NSUM64G WESTERN DIGITAL WD30EZRX WESTERN DIGITAL WD20EARS (外付HDD)WESTERN DIGITAL WD15EARX (外付HDD)WESTERN DIGITAL WD2000JS 日立GST HDT721010SLA360 光学ドライブバッファロー BR-X816U2 (中身:日立LG製 BH10NS30) ディスプレイacer H243HAbmid IODATA LCD-A193V 拡張バッファロー IFC-PCIE4U3S [USB3.0] プリンタCanon MP630 ソフトCANON ESET Smart Security オフィススート Microsoft Office Enterprise 2007 Microsoft Visual Studio 2010 CiberLink PowerDVD9(8からver up) 従来の流用WESTERN DIGITAL WD2000JS 自作PC1台目 AMD PhenomII x4 955 BE 購入時期 2009年秋以降順次 購入方法 主に秋葉原電気街(クレバリー、ソフマップ、) ジャンル 自作PC、ミニタワーPC ケース antec NSK3480 (EarthWatts 380W付属) 価格.com NSK3480 製品情報 コンピュータ関連製品の代理店事業 株式会社リンクスインターナショナル (現在は付属電源が変更) microATX,miniITX 5インチベイ*2(うち1つ3.5インチベイ排他利用) 3.5インチベイ*2(5インチベイ底部、ケース底部) ※ケース底部ベイ3.5"使用はPCI干渉 フロントイヤフォン・マイク、USB2.0ポート*2、IEEE1394*1 電源位置 上部 リアファン12cm マザーボード ASUS M4A785TD-M EVO 価格.com 、 メーカーサイト AMD AM3 DDR3*4 1800(O.C.)support 最大16GB SATA2 *5 起動時3つまで チップセット AMD 785G / SB710 TDP15W ATI Radeon HD 4200 CPU AMD Phenom II 955 Black Edition ステッピングC2 価格.com AM3,4コア4スレッド,定格3.2GHz,TDP125W キャッシュ L2 512KBx4,L3 6.0MB OS Microsoft Windows 7 64bit Professional DSP メインメモリ(8GB/16GB) Winchip DDR3-1600 4GB*2 CL9 coneco.net 電源ユニット HEC WIN+ 700W HEC-700TE-2WX 価格.com 株式会社マイルストーン 製品情報 電源 WIN+POWER ATX12V V2.3 準拠 EPS12V ver.2.91 80PLUS BRONZE、定格700W 20dB以下ファン、105℃耐性電解コンデンサ 150x140x86 mm ビデオカード SAPPHIRE HD 5750 1GB GDDR5 PCIE HDMI/DP 価格.com 、 メーカーサイト 40nm、コア700MHz、TDP16-86W、6ピン 帯域73.6 GB/s( GDDR5 1150MHz,128bit) SP数720、テクスチャ36、ROP36 PCIe 2.1、UVD 2.2、DirectX 11、OpenGL 4.1、OpenCL 1.1 HDMIx1,DVIx2,HDCP対応, Eyefinity ブートドライブ CSSD-S6M128NM4Q 価格.com - CFD CSSD-S6M128NM4Q 価格比較 2.5インチSSD 128GB,6Gbps ストレージ BUFFALO 2.5インチ SATA/USB2.0 内蔵SSD SHD-NSUM64G 価格.com 2.5インチ MLC搭載 SATA/USB2.0用 内蔵SSD SHD-NSUMシリーズ USB端子付 WESTERN DIGITAL WD30EZRX 価格.com 3.5inch、3TB、キャッシュ64MB WESTERN DIGITAL WD20EARS 価格.com (外付HDD)WESTERN DIGITAL WD15EARX 価格.com 3.5inch、1.5TB、64MB (外付HDD)WESTERN DIGITAL WD2000JS 価格.com 200GB、7200rpm、キャッシュ8MB 日立GST HDT721010SLA360 価格.com 1TB SATA 7200rpm、キャッシュ16MB 光学ドライブ バッファロー BR-X816U2 (中身:日立LG製 BH10NS30) 価格.com 、 メーカーサイト 外付ブルーレイドライブを剥がして利用 BD-R2x,4x(CLV),6x,8x,10x(PCAV) BD-R DL2x,4x(CLV),6x,8x(PCAV) BD-R LTH2x,4x(CLV),6x(PCAV) BD-RE2x(CLV) BD-RE DL2x(CLV) DVD-R2x,4x(CLV),8x(ZCLV),12x(PCAV),16x(CAV) CD-R8x,16x(CLV),24x,32x,40x(PCAV),48x(CAV) ディスプレイ acer H243HAbmid 価格.com 、 メーカーサイト HDCP対応 消費電力:60W コントラスト40000 1、輝度300 cd/m2 画面解像度:1920x1080(フルHD) IODATA LCD-A193V メーカーサイト 19型、D-Sub、1280×1024(SXGA)、消費電力:40W 拡張 バッファロー IFC-PCIE4U3S [USB3.0] 価格.com PCI-Express 1x、4ポート プリンタ Canon MP630 価格.com 印刷サイズA4、スキャンサイズA4 レーベル印刷可 無線はオプションにより可 amazon(B001G947PI) ソフト CANON ESET Smart Security オフィススート Microsoft Office Enterprise 2007 Microsoft Visual Studio 2010 CiberLink PowerDVD9(8からver up) 従来の流用 前代 - eMachines J4422 WESTERN DIGITAL WD2000JS 旧ブートドライブ リンクしている内部ページ一覧表示 歴代PC page counter -
https://w.atwiki.jp/kani_3/pages/17.html
オーディオプレーヤ "Exaile"のプラグイン(pyRipper) Exaileのプラグインを作ってみました。(Linux環境でのみ動作確認を行っています) pyRipper.pyというファイルのみです。 pyRipper.pyを ~/.exaile/plugins/に置き、Exaileを再起動してください。 Exaile起動後、PluginManagerを開いて、Enableチェックボックスを ONにすることで有効になります。 実行するためには、以下のものが必要です。 exaile python pygtk cdparanoia oggenc 日本語の扱いについて Exaileでアルバム名やトラック名が文字化けしている場合には エンコードしたOGGファイルの名前も文字化けしているかもしれません。 日本語の扱いについては今後対応していこうと思っています。 このページの下のほうにスクリプトファイルを添付しました。 import gtk import plugins import os import os.path import threading import time import signal PLUGIN_NAME = Audio CD Ripper Plugin PLUGIN_AUTHORS = [ kani jkani4@gmail.com ] PLUGIN_VERSION = 0.1 PLUGIN_ENABLED = False PLUGIN_DESCRIPTION = r This plugin converts audio data into various format. But now, this can convert to Ogg Vorbis only. b = gtk.Button() PLUGIN_ICON = b.render_icon(gtk.STOCK_MEDIA_PLAY, gtk.ICON_SIZE_MENU) b.destroy() STR_RIPPER_COMMAND = cdparanoia STR_OGG_ENCODER_COMMAND = oggenc # # Functions for geting/setting configuration # ## def get_conf_str(name, defStr) return APP.settings.get_str(name, default=defStr, plugin=plugins.name(__file__)) ## def set_conf_str(name, someStr) APP.settings.set_str(name, someStr, plugin=plugins.name(__file__)) ## def get_conf_int(name, defVal) return APP.settings.get_int(name, default=defVal, plugin=plugins.name(__file__)) ## def set_conf_int(name, someVal) APP.settings.set_int(name, someVal, plugin=plugins.name(__file__)) ## def get_conf_bool(name, defVal) return APP.settings.get_boolean(name, default=defVal, plugin=plugins.name(__file__)) ## def set_conf_bool(name, someFlag) APP.settings.set_boolean(name, someFlag, plugin=plugins.name(__file__)) ## def get_conf_tmp_path() return get_conf_str( TEMP_DIRECTORY_PATH , ~/ ) ## def set_conf_tmp_path(newPath) set_conf_str( TEMP_DIRECTORY_PATH , newPath) ## def get_conf_out_path() return get_conf_str( OUT_DIRECTORY_PATH , ~/ ) ## def set_conf_out_path(newPath) set_conf_str( OUT_DIRECTORY_PATH , newPath) ## def get_conf_delete_wav() return get_conf_bool( IS_DELETE_WAV , True) ## def set_conf_delete_wav(newFlag) set_conf_bool( IS_DELETE_WAV , newFlag) ## def get_conf_ripper_path() return get_conf_str( RIPPER_PATH , /usr/bin ) ## def set_conf_ripper_path(newPath) set_conf_str( RIPPER_PATH , newPath) ## def get_conf_ogg_encoder_path() return get_conf_str( OGG_ENCODER_PATH , /usr/bin ) ## def set_conf_ogg_encoder_path(newPath) set_conf_str( OGG_ENCODER_PATH , newPath) ## def get_conf_ogg_encoder_quality() return get_conf_int( OGG_ENCODER_QUALITY , 5) ## def set_conf_ogg_encoder_quality(newVal) set_conf_int( OGG_ENCODER_QUALITY , newVal) ## def get_conf_ripp_only() return get_conf_bool( RIPP_ONLY , False) ## def set_conf_ripp_only(newFlag) set_conf_bool( RIPP_ONLY , newFlag) gDictOggOutputDir = { OGG_OPT_INTO_OUTDIR 0, OGG_OPT_INTO_ARTIST_ALBUML_DIR 1} ## def get_conf_ogg_output_dir() return get_conf_int( OGG_ENCODER_OUTPUT_DIR , gDictOggOutputDir[ OGG_OPT_INTO_OUTDIR ]) ## def set_conf_ogg_output_dir(newVal) set_conf_int( OGG_ENCODER_OUTPUT_DIR , newVal) # # class RipperConfigDlg ## def __init__(self, parent=None) self.tmpPathStr = get_conf_tmp_path() self.outPathStr = get_conf_out_path() self.rippCmdPathStr = get_conf_ripper_path() self.oggEncCmdPathStr = get_conf_ogg_encoder_path() self.oggQuality = get_conf_ogg_encoder_quality() self.isDeleteWav = get_conf_delete_wav() self.rippOnly = get_conf_ripp_only() self.oggOutputDir = get_conf_ogg_output_dir() # Create Config dialog. self.dlg = gtk.Dialog( Config , parent, gtk.DIALOG_DESTROY_WITH_PARENT, (gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT, gtk.STOCK_OK, gtk.RESPONSE_ACCEPT)) self.notebook = gtk.Notebook() self.notebook.set_tab_pos(gtk.POS_TOP) # Create general setting page widget, label = self.create_general_page() self.notebook.append_page(widget, label) # Create ripper setting page widget, label = self.create_ripper_page() self.notebook.append_page(widget, label) # Create encoder setting page widget, label = self.create_encoder_page() self.notebook.append_page(widget, label) self.dlg.vbox.pack_start(self.notebook, False, False, 2) self.dlg.vbox.show_all() ## def create_general_page(self) contents = gtk.VBox() pageLabel = gtk.Label( General ) label = gtk.Label( Temp Directory ) label.set_alignment(0.0, 0.5) contents.pack_start(label, False, False, 2) self.entryTmpPath = gtk.Entry() self.entryTmpPath.set_text(self.tmpPathStr) contents.pack_start(self.entryTmpPath, False, False, 2) HSep = gtk.HSeparator() contents.pack_start(HSep, False, False, 2) label = gtk.Label( Directory for ogg files output ) label.set_alignment(0.05, 0.5) contents.pack_start(label, False, False, 2) self.entryOutPath = gtk.Entry() self.entryOutPath.set_text(self.outPathStr) contents.pack_start(self.entryOutPath) self.checkRippOnly = gtk.CheckButton( Ripping wav only ) self.checkDelWav = gtk.CheckButton( Delete ".wav" files after conversion finished. ) self.checkRippOnly.connect( clicked , self.clicked_ripp_only, None) self.checkRippOnly.set_active(self.rippOnly) contents.pack_start(self.checkRippOnly, False, False, 2) self.checkDelWav.connect( clicked , self.clicked_del_wav, None) if self.rippOnly self.checkDelWav.set_active(False) else self.checkDelWav.set_active(self.isDeleteWav) contents.pack_start(self.checkDelWav, False, False, 2) return contents, pageLabel ## def create_ripper_page(self) contents = gtk.VBox() pageLabel = gtk.Label( Ripper ) label = gtk.Label( Command path ) label.set_alignment(0.0, 0.5) contents.pack_start(label, False, False, 2) self.entryRippCmd = gtk.Entry() self.entryRippCmd.set_text(self.rippCmdPathStr) contents.pack_start(self.entryRippCmd, False, False, 2) return contents, pageLabel ## def create_encoder_page(self) contents = gtk.VBox() pageLabel = gtk.Label( Encoder ) label = gtk.Label( Encoder path ) label.set_alignment(0.0, 0.5) contents.pack_start(label, False, False, 2) self.entryOggEncPath = gtk.Entry() self.entryOggEncPath.set_text(self.oggEncCmdPathStr) contents.pack_start(self.entryOggEncPath, False, False, 2) separator = gtk.HSeparator() contents.pack_start(separator, False, False, 2) hbox = gtk.HBox() label = gtk.Label( Quality ) hbox.pack_start(label, False, False, 2) self.comboOggQuality = gtk.combo_box_new_text() for i in range(1, 11) self.comboOggQuality.append_text(str(i)) self.comboOggQuality.set_active(self.oggQuality - 1) hbox.pack_start(self.comboOggQuality, True, False, 0) contents.pack_start(hbox, False, False, 2) frame = gtk.Frame( Output options ) contents.pack_start(frame, False, False, 0) radiobox = gtk.VBox() frame.add(radiobox) self.oggOutRadio1 = gtk.RadioButton(None, Put ogg files into the ogg output directory. ) radiobox.pack_start(self.oggOutRadio1, False, False, 0) self.oggOutRadio2 = gtk.RadioButton(self.oggOutRadio1, Put ogg files into "artist-name/album-name/" directory \nunder the ogg output directory. ) radiobox.pack_start(self.oggOutRadio2, False, False, 0) dir_opt = get_conf_ogg_output_dir() if dir_opt == gDictOggOutputDir[ OGG_OPT_INTO_OUTDIR ] self.oggOutRadio1.set_active(True) elif dir_opt == gDictOggOutputDir[ OGG_OPT_INTO_ARTIST_ALBUML_DIR ] self.oggOutRadio2.set_active(True) return contents, pageLabel ## def clicked_ripp_only(self, widget, data=None) if self.checkRippOnly.get_active() self.checkDelWav.set_active(False) ## def clicked_del_wav(self, widget, data=None) if self.checkDelWav.get_active() self.checkRippOnly.set_active(False) ## def run(self) return self.dlg.run() ## def destroy(self) self.dlg.destroy() ## def save_config(self) set_conf_tmp_path(self.entryTmpPath.get_text()) set_conf_out_path(self.entryOutPath.get_text()) set_conf_delete_wav(self.checkDelWav.get_active()) set_conf_ripper_path(self.entryRippCmd.get_text()) set_conf_ogg_encoder_path(self.entryOggEncPath.get_text()) set_conf_ogg_encoder_quality(self.comboOggQuality.get_active()+1) set_conf_ripp_only(self.checkRippOnly.get_active()) if self.oggOutRadio1.get_active() set_conf_ogg_output_dir(gDictOggOutputDir[ OGG_OPT_INTO_OUTDIR ]) elif self.oggOutRadio2.get_active() set_conf_ogg_output_dir(gDictOggOutputDir[ OGG_OPT_INTO_ARTIST_ALBUML_DIR ]) # # class CmdThread(threading.Thread) ## def __init__(self, cmd, opts, targets=None, outArray=None) threading.Thread.__init__(self) self.cmd = cmd self.cmdOpts = opts self.cmdTargets = targets self.outArray = outArray self.counter = 0 self.cmd_pid = 0 self.killed = False self.cbProgressFunc = None self.cbEndFunc = None print ***** thread created ***** ## def run(self) print ****** thread start ****** self.preparation_func() while self.killed == False if self.cmdTargets != None and len(self.cmdTargets) == 0 if self.cbProgressFunc != None self.cbProgressFunc(self.counter, False) time.sleep(1) continue if self.cbProgressFunc != None self.cbProgressFunc(self.counter, True) args = self.generate_cmd_args(self.cmd, self.cmdOpts, self.cmdTargets) self.cmd_pid = os.spawnv(os.P_NOWAIT, args[0], args) print pid = %d % self.cmd_pid os.waitpid(self.cmd_pid, 0) self.cmd_pid = 0 if self.outArray != None self.outArray.append(self.generate_output_name(args)) self.counter += 1 self.cleanup_func() if self.cbEndFunc() != None self.cbEndFunc() ## def preparation_func(self) pass ## def cleanup_func(self) pass ## def set_cb_progress_func(self, func) self.cbProgressFunc = func ## def set_cb_end_func(self, func) self.cbEndFunc = func ## def stop(self) print pid = %d % self.cmd_pid if self.cmd_pid os.kill(self.cmd_pid, signal.SIGTERM) print ****** killed(pid %d) ****** % self.cmd_pid self.cmd_pid = 0 self.killed = True ## def generate_cmd_args(self, cmd, opts, targets) arr = [cmd] + opts if targets and len(targets) 0 arr.append(targets.pop(0)) return arr ## def generate_output_name(self, target) return target ## def get_counter_value(self) return self.counter # # class WavCmdThread(CmdThread) ## def generate_cmd_args(self, cmd, opts, targets) arr = [cmd] if targets and len(targets) 0 tup = targets.pop(0) arr.append(str(tup[0])) arr.append(tup[1]) return arr def generate_output_name(self, seq) return seq[len(seq) - 1] ## def set_working_directory(self, workPath) self.workPath = workPath ## def preparation_func(self) self.savePath = os.getcwd() os.chdir(self.workPath) ## def cleanup_func(self) os.chdir(self.savePath) # # class OggCmdThread(CmdThread) ## def generate_cmd_args(self, cmd, opts, targets) arr = [cmd] + opts if targets != None and len(targets) 0 name = targets.pop(0) head, ext = os.path.splitext(name) if len(head) 0 outpath = self.outputPath + / + head + .ogg arr += [name, -o , outpath] return arr ## def set_output_path(self, path) self.outputPath = path # # class CmdThreadKiller(threading.Thread) ## def __init__(self, max_count) threading.Thread.__init__(self) self.cmdThreads = [] self.cmdMaxCount = max_count self.forceKill = False self.cbEnd = None print **** Killer Initialized **** ## def run(self) print **** Killer started! ***** while True if self.forceKill break cnt = len(self.cmdThreads) if cnt == 0 time.sleep(0.5) continue tmp = [] for i in range(cnt) cmd = self.cmdThreads.pop(0) if cmd.get_counter_value() = self.cmdMaxCount cmd.stop() else tmp.append(cmd) self.cmdThreads = tmp if len(self.cmdThreads) == 0 break if self.forceKill print ****** force kill ****** for cmd in self.cmdThreads cmd.stop() if self.cbEnd != None self.cbEnd() ## def add_target(self, target) if target == None return self.cmdThreads.append(target) ## def kill_all(self) self.forceKill = True ## def set_cb_end(self, func) self.cbEnd = func # # class RipperWindow ## def __init__(self, artist= , album= , targets=[]) artist artist name of the CD albume album name of the CD targets sequance of the items which must contain the track number and the track name. Ex. [(1, "track#1"), (2, "track#2")] or [[2, "track#2"], [3, "track#3"]] so so.. self.artistName = artist self.albumName = album self.targets = targets self.oggTargets = [] self.wind = gtk.Window(gtk.WINDOW_TOPLEVEL) self.wind.set_size_request(250, -1) self.wind.set_deletable(False) self.wind.set_modal(True) # # Add widgets that shows progress of Ripping # frameWav = gtk.Frame( To WAV ) wavbox = gtk.VBox() frameWav.add(wavbox) self.wavName = gtk.Label( --- ) self.wavName.set_alignment(0.05, 0.5) wavbox.pack_start(self.wavName, False, False, 2) self.wavProgress = gtk.ProgressBar() self.wavProgress.set_orientation(gtk.PROGRESS_LEFT_TO_RIGHT) wavbox.pack_start(self.wavProgress, False, False, 4) vbox = gtk.VBox() vbox.pack_start(frameWav, False, False, 2) # # Add widgets that shows Progress of converting ogg # if get_conf_ripp_only() == False frameOgg = gtk.Frame( To OGG ) oggbox = gtk.VBox() frameOgg.add(oggbox) self.oggName = gtk.Label( --- ) self.oggName.set_alignment(0.05, 0.5) oggbox.pack_start(self.oggName, False, False, 2) self.oggProgress = gtk.ProgressBar() self.oggProgress.set_orientation(gtk.PROGRESS_LEFT_TO_RIGHT) oggbox.pack_start(self.oggProgress, False, False, 4) vbox.pack_start(frameOgg, False, False, 2) self.bt = gtk.Button( Cancel ) self.bt.connect( clicked , self.close, None) vbox.pack_start(self.bt, False, False, 2) self.wind.add(vbox) self.wind.show_all() # # Create thread for killing threads(wav ripping thread, ogg converting thread) # self.cmdKiller = CmdThreadKiller(len(self.targets)) self.cmdKiller.set_cb_end(self.cb_func_killer_end) self.cmdKiller.start() # # Create wav ripping thread # wavThread = self.setup_ripper_thread() self.cmdKiller.add_target(wavThread) wavThread.start() # # Create ogg converting thread # if get_conf_ripp_only() == False oggThread = self.setup_ogg_thread() self.cmdKiller.add_target(oggThread) oggThread.start() ## def setup_ripper_thread(self) ripperCmd = os.path.join(get_conf_ripper_path(), STR_RIPPER_COMMAND) ripperCmd = os.path.normpath(ripperCmd) targetCopy = self.targets[ ] wavThread = WavCmdThread(ripperCmd, [], targetCopy, self.oggTargets) tmpPath = os.path.normpath(os.path.expanduser(get_conf_tmp_path())) wavThread.set_working_directory(tmpPath) wavThread.set_cb_progress_func(self.cb_progress_func_wav) wavThread.set_cb_end_func(self.cb_func_wav_end) return wavThread ## def setup_ogg_thread(self) oggEncCmd = os.path.join(get_conf_ogg_encoder_path(), STR_OGG_ENCODER_COMMAND) oggEncCmd = os.path.normpath(oggEncCmd) quality = get_conf_ogg_encoder_quality() oggThread = OggCmdThread(oggEncCmd, [ -q , str(quality)], self.oggTargets) oggThread.set_cb_progress_func(self.cb_progress_func_ogg) oggThread.set_cb_end_func(self.cb_func_ogg_end) outPath = get_conf_out_path() if get_conf_ogg_output_dir() == gDictOggOutputDir[ OGG_OPT_INTO_ARTIST_ALBUML_DIR ] if self.artistName == self.artistName = Unknown_Artist if self.albumName == self.albumName = Unknown_album outPath += /%s/%s/ % (self.artistName, self.albumName) outPath = os.path.normpath(os.path.expanduser(outPath)) oggThread.set_output_path(outPath) return oggThread ## def cb_progress_func_wav(self, curStep, hasTarget) totalSteps = len(self.targets) self.wavProgress.set_fraction(float(curStep) / float(totalSteps)) self.wavProgress.set_text( %d / %d % (curStep, totalSteps)) if hasTarget == False self.wavName.set_text( ..waiting.. ) return if curStep totalSteps self.wavName.set_text(self.targets[curStep][1]) ## def cb_progress_func_ogg(self, curStep, hasTarget) totalSteps = len(self.targets) self.oggProgress.set_fraction(float(curStep) / float(totalSteps)) self.oggProgress.set_text( %d / %d % (curStep, totalSteps)) if hasTarget == False self.oggName.set_text( ..waiting.. ) return if curStep totalSteps name, ext = os.path.splitext(self.targets[curStep][1]) self.oggName.set_text(name + .ogg ) ## def cb_func_wav_end(self) self.wavName.set_text( !! Complete !! ) ## def cb_func_ogg_end(self) self.oggName.set_text( !! Complete !! ) ## def remove_wav_files(self, targets) if len(targets) == 0 return for t in targets delPath = os.path.join(os.path.expanduser(get_conf_tmp_path()), t[1]) delPath = os.path.normpath(delPath) try os.remove(delPath) except pass ## def cb_func_killer_end(self) # Remove all wav files if option is on. if get_conf_delete_wav() self.remove_wav_files(self.targets) self.bt.set_label( Close ) print !! Finished !! ## def close(self, widget, data=None) self.cmdKiller.kill_all() self.wind.destroy() # # def convert_to_ogg(widget, wind) if wind == None return artist = album = convertTargets = [] # # Get the selection of the track(s) for ripping. # selected = wind.tracks.get_selected_tracks() if len(selected) 0 artist = selected[0].get_artist() album = selected[0].get_album() convertTargets = [(sel.get_track(), sel.get_title() + .wav ) for sel in selected] # # Ready..Go!! # progWind = RipperWindow(artist, album, convertTargets) ### # # Below describes functions for exaile plugin. # ### gToolBar = None gCnvButton = None # # def initialize() Called when the plugin is enabled. # # Append custom button for ripping. # global gToolBar global gCnvButton if gCnvButton == None gToolBar = APP.xml.get_widget( play_toolbar ) gCnvButton = gtk.Button( Conv2Ogg ) gToolBar.pack_start(gCnvButton, True, False, 0) gToolBar.show_all() gCnvButton.connect( clicked , convert_to_ogg, APP) return True # # def destroy() Called when the plugin is disabled. global gToolBar global gCnvButton if gToolBar and gCnvButton gToolBar.remove(gCnvButton) gToolBar.show_all() gCnvButton = None # # def configure() Called when the user click Configure button in the Plugin Manager. configDlg = RipperConfigDlg() response = configDlg.run() if response == gtk.RESPONSE_ACCEPT print response is OK configDlg.save_config() configDlg.destroy()
https://w.atwiki.jp/cstrikemovie/pages/14.html
Video Copilot AE tuts AEP Project Creative Cow ayato@web dA tools Motiongrapher Video Copilot http //www.videocopilot.net/ アンドリュー先生のチュートリアルを見れるのはここだけ! ただここで素材買っちゃうと、かなりの確立でかぶっちゃう可能性アリ。 AE tuts http //ae.tutsplus.com/category/tutorials/ デザイン系チュートリアルサイトTUTSのAE版。 VODによるチュートリアルがメインで、複雑なコンポジを丁寧に解説してくれます。 AEだけじゃなくて、フォトショの記事とかもオススメ。 AEP Project http //ae-users.com/jp/ AE関係のリソースを共有するという目的で作られたサイト。日本語です。 色んなaepやスクリプトをDLできます。簡素ですが解説もあったりして便利。 Creative Cow http //www.creativecow.net/ AEというかDTV系の総合サイト。 分からないことがあれば、まずここのforumで検索すべし。 チュートリアルも豊富にあって結構勉強になります。 ayato@web http //www.ayatoweb.com/ae_tips.html AE関係のサイトを挙げろと言われて、まず最初にでてくるのがここ。 AEのエフェクトの応用方法を学べます。 dA tools http //www.da-tools.com/ エクスプレッションの解説サイト。 基本的にCSムービーではあまり必要ないかもしれない。 が、みておいても損はないでしょう。 Motiongrapher http //motionographer.com/ チュートリアルサイトではないですが、様々なモーショングラフィックの作品を見ることが出来ます。 フラグムービーのOPとかで、こっからアイディアをパクってるの結構ありますよ。 .
https://w.atwiki.jp/cso2/pages/36.html
Schmidt Machine Pistol 2017年07月12日実装 初期武器 Schmidt Machine Pistol Spray 2017年07月12日実装 ランダムボックス・合成 Schmidt Machine Pistol Cobalt 2017年07月26日実装 ランダムボックス・合成 Schmidt Machine Pistol Melt Schmidt Machine Pistol Melt Prototype Schmidt Machine Pistol Silver Schimdt Machine Pistol Melt Plus 韓国では2013年08月14日実装 威力 17% 装弾 30/120 連射 92% 価格 $1250 安定 90% 取出 0.82秒 命中 73% 装填 2.13秒 制御 73% - - 移動 85% - - 特殊機能:なし Schmidt Machine Pistol CT専用武器。相変わらず性能はてぃむぽ。
https://w.atwiki.jp/maketetris/pages/68.html
NEWDT砲 開幕DT砲でよk(ry
https://w.atwiki.jp/mtgwiki/pages/1500.html
《Veldt》 #whisper アイスエイジ版ディプリーションランド。 これは緑白版になる。 競合するペインランド、低木林地/Brushlandに出番をすっかり奪われてしまっていた。 サイクル アイスエイジのディプリーションランド。 Land Cap River Delta Lava Tubes Timberline Ridge 参考 カード個別評価:アイスエイジブロック
https://w.atwiki.jp/mmdomf/pages/40.html
【OMF9レギュレーション】 <必須要件> ★データの部 データの条件最新のMMDまたはMMMで読み込める、ポリゴンデータを基本とした「.x」「.pmd」「.pmx」等を含むファイル群(圧縮可) これまで未配布のデータであること。既存データ(自作含む)の改造、別バージョン、バージョンアップ版は不可 キャラクター性の付加されてない素体の利用は可(ただし、素体の利用規約は順守の事) 期間内に任意のアップローダーにモデルを投稿する 期間内にモデルの画像を俺得モデルフェスティバル モデル投稿所へ投稿 コメントに、モデル名と配布サイトのURLを記載する(passがある場合は、passまたはpassのヒントを記載(ググればわかる程度の難易度で!)) ★動画静画の部 OMF9参加モデルを1つ以上使用すること 期間内にニコニコ動画・静画(「イラスト」コーナー)を投稿し、「俺得モデルフェス9」タグをつけてロックする(参加意思確認のため※) ※タグロックはうp主の参加意思確認のためです。タイトル・投コメ等で明白な場合には、ロックがなくても公式マイリス登録します。 <推奨要件> 配布URLが長い場合は、短縮URLサービス(p.tl等)を利用 モデル投稿者による紹介動画・静画をアップ(時期はいつでもOK、動画・静画の部としてカウント) MME必須モデルやMMMのみでしか動かないモデルなど動作条件があるものは、絵の中やコメントに説明を記載 規定のあいまいな部分は「作成者が言い張ればOK!!」 <「コンテンツツリー」を利用する方法> ニコニコ動画またはニコニコ静画「イラスト」に、モデル紹介動画・画像を投稿する 「モデル投稿所」で画像投稿する際、動画やイラストのURLを投稿文中に記載する URL欄への記入では、投稿後に目立ちません 【Q A】 Q1 普通のミクモデルを既に作っていて、「ミクさんじゅうろくさい」を作ろうと思うんだけど、これって別バージョンに含まれちゃう? A1 レギュレーションのハッキリしない物については、投稿者の判断にお任せします。基本的に、運営が判定するようなことはしませんが、見た目が思い切り別物ならば「別バージョン」とはならないのではないかと思います。 Q2 モデル紹介静画はどういう構図にすればいいの? A2 投稿者にお任せします。「カッコいいポース」でもよし、三面図でもよし、うなじのドアップでもよし。ただし、ネタ静画でスベって全然DLしてもらえなかったとしても自己責任で。 Q3 投稿した作品が、レギュレーションから外れてたどうなるの? A3 レギュレーションから外れている場合は、正式な参加扱いはできませんが、「支援作品(動画・静画)」扱いとしてマイリスト登録します。 Q4 「未配布のデータ」ということは、動画で使用済みでもいいの? A4 OKです。この機会に、お蔵入りモデルを大放出と行こうじゃありませんか。 Q5 キャラクター性のある素体利用はダメだとすると、標準ミクのボーン利用もダメ・・・? A5 改造・流用不可は「ポリゴン部分」に関してだけです。ボーン・剛体設定等は流用を禁止しません。 Q6 「参加モデルを1つ以上使用」って、主役じゃなくてチョイ役でもいいの? A6 主役である必要はありません、脇役でもOKです。ただし、普通に視聴した際に出演が確認できるレベルでお願いします(でないと運営も見逃します^^;)。 Q7 MMD杯みたいな事前投稿は可能ですか? A7 投稿期間が長めなので、無しという事でお願いします。「どうしても期間内の投稿が無理だけど、死んでも参加したい」という場合は運営に相談してください。 Q8 モデルの配布について、期間を絞ったりパスワードをかけたりしてもいいですか? A8 期間については、動画静画の部が終わるまでは配布を行ってください。その後は配布形式を変えたり(コミュ限定等)、配布停止をしても構いません。パスワードも設定OKですが、「ググればわかる」程度の難易度でお願いします。 Q9 参加したモデルに不具合が見つかったんですが、期間中に修正してもOKですか? A9 何にも問題ありません。修正後、ダウンロードURLが変わった場合は、新しいURLを自分の投稿記事に記載してください。 ※あえてネガティブなことを言ってみるテスト(注意事項) OMFでモデルを公開した場合、(有名モデラー以外は)大抵普段より多くの人にモデルを見てもらえます。しかし! それでも、殆ど使ってもらえない場合もあります……。使われなくても泣かないように頑張りましょう(´・ω・`) OMFはかなり「身内(MMDer)向けのイベント」です。つまり、MMD杯と違って一般視聴者の流入は少なく、「イベント参加による再生数の下駄効果」はかなり控えめです……。動画が伸びなくても泣かないように覚悟しましょう(´;ω;`) 制作物の公開・配布には、無断転載や利用規約違反といったトラブルが発生するケースがあります。そのような場合、運営はトラブル対処のお手伝いすることはできても、最終的に責任を追うことはできません。題材選び等も含め、モデルデータの配布は自己責任でお願い致します。m(_ _)m
https://w.atwiki.jp/minidisc/pages/479.html
ニュースリリース https //web.archive.org/web/20021012090213/http //www.sharp.co.jp/corporate/news/020902-4.html https //av.watch.impress.co.jp/docs/20020902/sharp1.htm https //www.itmedia.co.jp/news/0209/02/njbt_05.html https //www.itmedia.co.jp/news/0209/02/nj00_sharp_auvi.html ホームページ https //web.archive.org/web/20020925223001/http //www.sharp.co.jp/products/mdds8/index.html 説明書 https //jp.sharp/support/audio/doc/mdds8_mn.pdf SHARP アウビィ MD-DS8-S MDプレーヤー (シルバー)
https://w.atwiki.jp/vipvipwww/pages/59.html
この人は多分…出ないかなぁ… オフィス系が5人兄弟姉妹だった頃の.xlsの設定を多少直して置いております。 必要ならばページ名変更して再利用していいですおw 名前 種族 オフィス系.mdb族 (外見)年齢 白手袋・薄汚れて変な色が付いた白衣/18~22歳 性別 女 髪の色 紫 髪型 肩に届かないくらいの長さ 目の色 紫 戦闘方式 近未来っぽい攻撃方法の中から自由に決めてくだしあ 好きなもの データ・薬品の匂い 嫌いなもの 不明 特技 データ処理 単純作業 計算 技 薬品調合(味方ユニットの回復or爆薬などの作成) データ分析(敵ユニットの解析) 性格 人間関係を作るのが不得手な人 人間関係を作るのが下手だけど人が嫌いなわけではなく、話かければちゃんと答えてくれる 自分の考えに固執しがち 身なりにあまり気をかけない 必要最低限の事しか喋らない上、単語で話し接続詞と述語をあまり使わないので日本語が不自由な印象を受ける 例:「兄さんは、絶対」「ウイルス…嫌」「そのデータ、間違い」 しかしことデータ処理や計算に関してはプロフェッショナル、何桁の計算でも瞬時に答えを出せる 年齢的には大人に近く、計算能力などはものすごく高いが、精神的には子供 一人称 私 基本会話 「名前、○○…よろしく」 「好き」 「攻撃」 装備 白衣 備考 エックスエルエス →エックス エル エス →『エ』が3→A3→アスリ 理化学系のお姉さん 天才だからこそ人が苦手になっちゃったのかもしれない、誰も自分の事を理解してくれない…って感じで この人が主人公達と関わる事によって変わってくれるといいな 単語で話すのはExcelが長い文章を入れるには向いてないから
https://w.atwiki.jp/tetriskaisetsu/pages/20.html
端DT系統 このような形を端DT系統と区別しています。 正調DT系統 開幕DT砲 開幕DT砲(TZS土台) 開幕DT砲2号 銀山積み DQ砲 パラレルDT(妥協形) Z後入れ系統 CTスキャン積み 銀山積み改^2 銀山積み改^3 婿DT イルミネイトDT 中開けDT系統 主に上の形以外の物を指します。 正調DT系統 確定DT砲 中開けDTREN 開幕BT砲 クレセントDT スターライトDT SE砲 SE砲改 サンライトDT(理想形) 超BT パラレルDT(理想形) Z後入れ系統 OK砲 ヲッソレオィ TSD後ミノ後入れ・後置き系統 QT砲 リベDT サンライトDT(妥協形) ET砲 真TZT砲