From: "Marvin Scholz" <epirat07@gmail.com> To: <ffmpeg-devel@ffmpeg.org> Subject: [FFmpeg-devel] [PATCH 03/11] avdevice/avfoundation: fix mixed declarations and code Date: Fri, 12 Jul 2024 18:07:00 +0200 Message-ID: <D2NQZKJWIDTK.1BUFKUJF76BX4@gmail.com> (raw) In-Reply-To: <D2NQZKJWHOCW.282WOMUB0ZOAZ@gmail.com> Fix several "mixing declarations and code is incompatible with standards before C99" warnings. --- libavdevice/avfoundation.m | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/libavdevice/avfoundation.m b/libavdevice/avfoundation.m index c5a09c6563..17900d39d9 100644 --- a/libavdevice/avfoundation.m +++ b/libavdevice/avfoundation.m @@ -680,6 +680,7 @@ static int get_audio_config(AVFormatContext *s) { AVFContext *ctx = (AVFContext*)s->priv_data; CMFormatDescriptionRef format_desc; + const AudioStreamBasicDescription *basic_desc; AVStream* stream = avformat_new_stream(s, NULL); if (!stream) { @@ -698,7 +699,7 @@ static int get_audio_config(AVFormatContext *s) avpriv_set_pts_info(stream, 64, 1, avf_time_base); format_desc = CMSampleBufferGetFormatDescription(ctx->current_audio_frame); - const AudioStreamBasicDescription *basic_desc = CMAudioFormatDescriptionGetStreamBasicDescription(format_desc); + basic_desc = CMAudioFormatDescriptionGetStreamBasicDescription(format_desc); if (!basic_desc) { unlock_frames(ctx); @@ -765,7 +766,9 @@ static int get_audio_config(AVFormatContext *s) static NSArray* getDevicesWithMediaType(AVMediaType mediaType) { #if ((TARGET_OS_IPHONE && __IPHONE_OS_VERSION_MIN_REQUIRED >= 100000) || (TARGET_OS_OSX && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101500)) + AVCaptureDeviceDiscoverySession *captureDeviceDiscoverySession; NSMutableArray *deviceTypes = nil; + if (mediaType == AVMediaTypeVideo) { deviceTypes = [NSMutableArray arrayWithArray:@[AVCaptureDeviceTypeBuiltInWideAngleCamera]]; #if (TARGET_OS_IPHONE && __IPHONE_OS_VERSION_MIN_REQUIRED >= 100000) @@ -810,7 +813,7 @@ static int get_audio_config(AVFormatContext *s) return nil; } - AVCaptureDeviceDiscoverySession *captureDeviceDiscoverySession = + captureDeviceDiscoverySession = [AVCaptureDeviceDiscoverySession discoverySessionWithDeviceTypes:deviceTypes mediaType:mediaType @@ -899,8 +902,9 @@ static int avf_read_header(AVFormatContext *s) } else if (ctx->video_device_index < ctx->num_video_devices + num_screens) { #if !TARGET_OS_IPHONE && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070 CGDirectDisplayID screens[num_screens]; + AVCaptureScreenInput* capture_screen_input; CGGetActiveDisplayList(num_screens, screens, &num_screens); - AVCaptureScreenInput* capture_screen_input = [[[AVCaptureScreenInput alloc] initWithDisplayID:screens[ctx->video_device_index - ctx->num_video_devices]] autorelease]; + capture_screen_input = [[[AVCaptureScreenInput alloc] initWithDisplayID:screens[ctx->video_device_index - ctx->num_video_devices]] autorelease]; if (ctx->framerate.num > 0) { capture_screen_input.minFrameDuration = CMTimeMake(ctx->framerate.den, ctx->framerate.num); @@ -954,8 +958,9 @@ static int avf_read_header(AVFormatContext *s) int idx; if(sscanf(ctx->video_filename, "Capture screen %d", &idx) && idx < num_screens) { CGDirectDisplayID screens[num_screens]; + AVCaptureScreenInput* capture_screen_input; CGGetActiveDisplayList(num_screens, screens, &num_screens); - AVCaptureScreenInput* capture_screen_input = [[[AVCaptureScreenInput alloc] initWithDisplayID:screens[idx]] autorelease]; + capture_screen_input = [[[AVCaptureScreenInput alloc] initWithDisplayID:screens[idx]] autorelease]; video_device = (AVCaptureDevice*) capture_screen_input; ctx->video_device_index = ctx->num_video_devices + idx; ctx->video_is_screen = 1; @@ -1123,10 +1128,12 @@ static int avf_read_packet(AVFormatContext *s, AVPacket *pkt) do { CVImageBufferRef image_buffer; CMBlockBufferRef block_buffer; + CMItemCount count; + CMSampleTimingInfo timing_info; lock_frames(ctx); if (ctx->current_frame != nil) { - int status; + int status = 0; int length = 0; image_buffer = CMSampleBufferGetImageBuffer(ctx->current_frame); @@ -1146,9 +1153,6 @@ static int avf_read_packet(AVFormatContext *s, AVPacket *pkt) return AVERROR(EIO); } - CMItemCount count; - CMSampleTimingInfo timing_info; - if (CMSampleBufferGetOutputSampleTimingInfoArray(ctx->current_frame, 1, &timing_info, &count) == noErr) { AVRational timebase_q = av_make_q(1, timing_info.presentationTimeStamp.timescale); pkt->pts = pkt->dts = av_rescale_q(timing_info.presentationTimeStamp.value, timebase_q, avf_time_base_q); @@ -1160,7 +1164,6 @@ static int avf_read_packet(AVFormatContext *s, AVPacket *pkt) if (image_buffer) { status = copy_cvpixelbuffer(s, image_buffer, pkt); } else { - status = 0; OSStatus ret = CMBlockBufferCopyDataBytes(block_buffer, 0, pkt->size, pkt->data); if (ret != kCMBlockBufferNoErr) { status = AVERROR(EIO); @@ -1174,6 +1177,8 @@ static int avf_read_packet(AVFormatContext *s, AVPacket *pkt) return status; } } else if (ctx->current_audio_frame != nil) { + CMItemCount count; + CMSampleTimingInfo timing_info; CMBlockBufferRef block_buffer = CMSampleBufferGetDataBuffer(ctx->current_audio_frame); int block_buffer_size = CMBlockBufferGetDataLength(block_buffer); @@ -1192,9 +1197,6 @@ static int avf_read_packet(AVFormatContext *s, AVPacket *pkt) return AVERROR(EIO); } - CMItemCount count; - CMSampleTimingInfo timing_info; - if (CMSampleBufferGetOutputSampleTimingInfoArray(ctx->current_audio_frame, 1, &timing_info, &count) == noErr) { AVRational timebase_q = av_make_q(1, timing_info.presentationTimeStamp.timescale); pkt->pts = pkt->dts = av_rescale_q(timing_info.presentationTimeStamp.value, timebase_q, avf_time_base_q); -- 2.39.3 (Apple Git-146) _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2024-07-12 17:48 UTC|newest] Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top 2024-07-12 15:44 [FFmpeg-devel] [PATCH 01/11] avdevice/audiotoolbox: fix mixed declaration " Marvin Scholz 2024-07-12 15:47 ` [FFmpeg-devel] [PATCH 02/11] avfilter/af_channelsplit: " Marvin Scholz 2024-07-14 17:39 ` Leo Izen 2024-07-12 16:07 ` Marvin Scholz [this message] 2024-07-12 16:09 ` [FFmpeg-devel] [PATCH 04/11] avdevice/avfoundation: remove write-only variable Marvin Scholz 2024-07-12 16:17 ` [FFmpeg-devel] [PATCH 05/11] lavfi/metal: fix mixed declaration and code Marvin Scholz 2024-07-12 16:21 ` [FFmpeg-devel] [PATCH 06/11] lavfi/metal: simplify fallback Marvin Scholz 2024-07-12 17:13 ` [FFmpeg-devel] [PATCH 07/11] avfilter/vf_coreimage: fix mixed declaration and code Marvin Scholz 2024-07-12 17:19 ` [FFmpeg-devel] [PATCH 08/11] avfilter/vf_coreimage: simplify list_filters code Marvin Scholz 2024-07-12 17:30 ` [FFmpeg-devel] [PATCH 09/11] avfilter/vf_coreimage: silence AVFrame deprecation warnings Marvin Scholz 2024-07-12 17:36 ` [FFmpeg-devel] [PATCH 10/11] avfilter/yadif_common: remove unused variable Marvin Scholz 2024-07-13 0:50 ` Andreas Rheinhardt 2024-07-13 14:47 ` epirat07 2024-07-12 17:43 ` [FFmpeg-devel] [PATCH 11/11] avfilter/yadif_common: fix mixed declaration and code Marvin Scholz 2024-07-15 8:39 ` [FFmpeg-devel] [PATCH 01/11] avdevice/audiotoolbox: " Zhao Zhili
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=D2NQZKJWIDTK.1BUFKUJF76BX4@gmail.com \ --to=epirat07@gmail.com \ --cc=ffmpeg-devel@ffmpeg.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel This inbox may be cloned and mirrored by anyone: git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \ ffmpegdev@gitmailbox.com public-inbox-index ffmpegdev Example config snippet for mirrors. AGPL code for this site: git clone https://public-inbox.org/public-inbox.git