OSDN Git Service

アスペクト比を通知するためのオプション--aspect-modeを追加
authoryukihane <yukihane.feather@gmail.com>
Tue, 2 Aug 2011 09:46:17 +0000 (18:46 +0900)
committeryukihane <yukihane.feather@gmail.com>
Wed, 3 Aug 2011 09:46:44 +0000 (18:46 +0900)
vhook/framehook.c
vhook/framehook.h
vhook/main.c
vhook/main.h

index 99035e4..a9ab1cd 100644 (file)
@@ -121,6 +121,7 @@ int init_setting(FILE*log,const toolbox *tbox,SETTING* setting,int argc, char *a
        setting->show_video = FALSE;
        setting->fontsize_fix=FALSE;
        setting->opaque_comment=FALSE;
+    setting->aspect_mode = 0;
        int i;
        char* arg;
        for(i=0;i<argc;i++){
@@ -170,9 +171,13 @@ int init_setting(FILE*log,const toolbox *tbox,SETTING* setting,int argc, char *a
                        fputs("[framehook/init]enable opaque comment.\n",log);
                        fflush(log);
                        setting->opaque_comment=TRUE;
-               }
-       }
-       //引数を正しく入力したか否かのチェック
+        } else if (strncmp(FRAMEHOOK_OPT_ASPECT_MODE, arg, FRAMEHOOK_OPT_ASPECT_MODE_LEN) == 0) {
+            setting->aspect_mode = MAX(0, atoi(arg + FRAMEHOOK_OPT_ASPECT_MODE_LEN));
+            fprintf(log, "[framehook/init]aspect mode:%d\n", setting->aspect_mode);
+            fflush(log);
+        }
+    }
+       //引数を正しく入力したか否かのチェック
        //ここでチェックしているの以外は、デフォルト設定で逃げる。
        if(!setting->font_path){
                fputs("[framehook/init]please set FONT PATH.\n",log);
index 346c8d3..c6e1dfc 100644 (file)
@@ -33,4 +33,7 @@
 #define FRAMEHOOK_OPT_OPAQUE_COMMENT           "--enable-opaque-comment"
 #define FRAMEHOOK_OPT_OPAQUE_COMMENT_LEN       strlen(FRAMEHOOK_OPT_OPAQUE_COMMENT)
 
+#define FRAMEHOOK_OPT_ASPECT_MODE              "--aspect-mode:"
+#define FRAMEHOOK_OPT_ASPECT_MODE_LEN  strlen(FRAMEHOOK_OPT_ASPECT_MODE)
+
 #endif /*FRAMEHOOK_H_*/
index c12c3f0..4e459d3 100644 (file)
@@ -45,6 +45,7 @@ int initData(DATA* data,FILE* log,const SETTING* setting){
        data->shadow_kind = setting->shadow_kind;
        data->process_first_called=FALSE;
        data->video_length = setting->video_length;
+    data->aspect_mode = setting->aspect_mode;
        fputs("[main/init]initializing context...\n",log);
        //フォント
        TTF_Font** font = data->font;
index 8bf7500..fffd1a4 100644 (file)
@@ -35,6 +35,7 @@ struct DATA{
        int fontsize_fix;
        int process_first_called;
        int video_length;
+    int aspect_mode;
 };
 
 typedef struct SETTING{
@@ -52,6 +53,12 @@ typedef struct SETTING{
        int show_video;
        int fontsize_fix;
        int opaque_comment;
+    /**
+     * アスペクト比の指定. コメントのフォントサイズや速度に影響する.
+     * 0 - 4:3
+     * 1 - 16:9
+     */
+    int aspect_mode;
 }SETTING;
 
 int init(FILE* log);