Merge branch 'zoom-tele-picopix'
[libam7xxx.git] / examples / am7xxx-play.c
index 4506358..9251701 100644 (file)
@@ -291,7 +291,7 @@ static int am7xxx_play(const char *input_format_string,
        AVPacket out_packet;
        int got_picture;
        int got_packet;
        AVPacket out_packet;
        int got_picture;
        int got_packet;
-       int ret = 0;
+       int ret;
 
        ret = video_input_init(&input_ctx, input_format_string, input_path, input_options);
        if (ret < 0) {
 
        ret = video_input_init(&input_ctx, input_format_string, input_path, input_options);
        if (ret < 0) {
@@ -428,11 +428,11 @@ static int am7xxx_play(const char *input_format_string,
 #endif
 
                        ret = am7xxx_send_image_async(dev,
 #endif
 
                        ret = am7xxx_send_image_async(dev,
-                                               image_format,
-                                               (output_ctx.codec_ctx)->width,
-                                               (output_ctx.codec_ctx)->height,
-                                               out_picture,
-                                               out_picture_size);
+                                                     image_format,
+                                                     (output_ctx.codec_ctx)->width,
+                                                     (output_ctx.codec_ctx)->height,
+                                                     out_picture,
+                                                     out_picture_size);
                        if (ret < 0) {
                                perror("am7xxx_send_image");
                                run = 0;
                        if (ret < 0) {
                                perror("am7xxx_send_image");
                                run = 0;
@@ -440,7 +440,7 @@ static int am7xxx_play(const char *input_format_string,
                        }
                }
 end_while:
                        }
                }
 end_while:
-               if (!output_ctx.raw_output)
+               if (!output_ctx.raw_output && got_packet)
                        av_free_packet(&out_packet);
                av_free_packet(&in_packet);
        }
                        av_free_packet(&out_packet);
                av_free_packet(&in_packet);
        }
@@ -555,7 +555,7 @@ static int set_signal_handler(void (*signal_handler)(int))
 {
        struct sigaction new_action;
        struct sigaction old_action;
 {
        struct sigaction new_action;
        struct sigaction old_action;
-       int ret = 0;
+       int ret;
 
        new_action.sa_handler = signal_handler;
        sigemptyset(&new_action.sa_mask);
 
        new_action.sa_handler = signal_handler;
        sigemptyset(&new_action.sa_mask);
@@ -610,8 +610,8 @@ static void usage(char *name)
               AM7XXX_POWER_OFF, AM7XXX_POWER_TURBO);
        printf("\t\t\t\tWARNING: Level 2 and greater require the master AND\n");
        printf("\t\t\t\t         the slave connector to be plugged in.\n");
               AM7XXX_POWER_OFF, AM7XXX_POWER_TURBO);
        printf("\t\t\t\tWARNING: Level 2 and greater require the master AND\n");
        printf("\t\t\t\t         the slave connector to be plugged in.\n");
-       printf("\t-z <zoom mode>\t\tthe display zoom mode, between %d (original) and %d (test)\n",
-              AM7XXX_ZOOM_ORIGINAL, AM7XXX_ZOOM_TEST);
+       printf("\t-z <zoom mode>\t\tthe display zoom mode, between %d (original) and %d (tele)\n",
+              AM7XXX_ZOOM_ORIGINAL, AM7XXX_ZOOM_TELE);
        printf("\t-h \t\t\tthis help message\n");
        printf("\n\nEXAMPLES OF USE:\n");
        printf("\t%s -f x11grab -i :0.0 -o video_size=800x480\n", name);
        printf("\t-h \t\t\tthis help message\n");
        printf("\n\nEXAMPLES OF USE:\n");
        printf("\t%s -f x11grab -i :0.0 -o video_size=800x480\n", name);
@@ -635,8 +635,8 @@ int main(int argc, char *argv[])
        unsigned int quality = 95;
        int log_level = AM7XXX_LOG_INFO;
        int device_index = 0;
        unsigned int quality = 95;
        int log_level = AM7XXX_LOG_INFO;
        int device_index = 0;
-       am7xxx_power_mode power_mode = AM7XXX_POWER_LOW;
-       am7xxx_zoom_mode zoom = AM7XXX_ZOOM_ORIGINAL;
+       int power_mode = AM7XXX_POWER_LOW;
+       int zoom = AM7XXX_ZOOM_ORIGINAL;
        int format = AM7XXX_IMAGE_FORMAT_JPEG;
        am7xxx_context *ctx;
        am7xxx_device *dev;
        int format = AM7XXX_IMAGE_FORMAT_JPEG;
        am7xxx_context *ctx;
        am7xxx_device *dev;
@@ -665,7 +665,7 @@ int main(int argc, char *argv[])
                         *   draw_mouse=1,framerate=100,video_size=800x480
                         */
                        subopts = subopts_saved = strdup(optarg);
                         *   draw_mouse=1,framerate=100,video_size=800x480
                         */
                        subopts = subopts_saved = strdup(optarg);
-                       while((subopt = strtok_r(subopts, ",", &subopts))) {
+                       while ((subopt = strtok_r(subopts, ",", &subopts))) {
                                char *subopt_name = strtok_r(subopt, "=", &subopt);
                                char *subopt_value = strtok_r(NULL, "", &subopt);
                                if (subopt_value == NULL) {
                                char *subopt_name = strtok_r(subopt, "=", &subopt);
                                char *subopt_value = strtok_r(NULL, "", &subopt);
                                if (subopt_value == NULL) {
@@ -757,11 +757,12 @@ int main(int argc, char *argv[])
                        case AM7XXX_ZOOM_H:
                        case AM7XXX_ZOOM_H_V:
                        case AM7XXX_ZOOM_TEST:
                        case AM7XXX_ZOOM_H:
                        case AM7XXX_ZOOM_H_V:
                        case AM7XXX_ZOOM_TEST:
+                       case AM7XXX_ZOOM_TELE:
                                fprintf(stdout, "Zoom: %d\n", zoom);
                                break;
                        default:
                                fprintf(stderr, "Invalid zoom mode value, must be between %d and %d\n",
                                fprintf(stdout, "Zoom: %d\n", zoom);
                                break;
                        default:
                                fprintf(stderr, "Invalid zoom mode value, must be between %d and %d\n",
-                                       AM7XXX_ZOOM_ORIGINAL, AM7XXX_ZOOM_TEST);
+                                       AM7XXX_ZOOM_ORIGINAL, AM7XXX_ZOOM_TELE);
                                ret = -EINVAL;
                                goto out;
                        }
                                ret = -EINVAL;
                                goto out;
                        }