+int hb_av_find_stream_info(AVFormatContext *ic)
+{
+ int ret;
+ hb_lock( hb_avcodec_lock );
+ ret = av_find_stream_info( ic );
+ hb_unlock( hb_avcodec_lock );
+ return ret;
+}
+
+struct SwsContext*
+hb_sws_get_context(int srcW, int srcH, enum PixelFormat srcFormat,
+ int dstW, int dstH, enum PixelFormat dstFormat,
+ int flags)
+{
+ struct SwsContext * ctx;
+
+#if 0
+ // sws_getContext is being depricated. But it appears that
+ // the new method isn't quite wrung out yet. So when it is
+ // this code should be fixed up and enabled.
+ ctx = sws_alloc_context();
+ if ( ctx )
+ {
+ av_set_int(ctx, "srcw", srcW);
+ av_set_int(ctx, "srch", srcH);
+ av_set_int(ctx, "src_format", srcFormat);
+ av_set_int(ctx, "dstw", dstW);
+ av_set_int(ctx, "dsth", dstH);
+ av_set_int(ctx, "dst_format", dstFormat);
+ av_set_int(ctx, "sws_flags", flags);
+
+ if (sws_init_context(ctx, NULL, NULL) < 0) {
+ fprintf(stderr, "Cannot initialize resampling context\n");
+ sws_freeContext(ctx);
+ ctx = NULL;
+ }
+ }
+#else
+ ctx = sws_getContext(srcW, srcH, srcFormat, dstW, dstH, dstFormat,
+ flags, NULL, NULL, NULL);
+#endif
+ return ctx;
+}
+