[vlc-devel] [PATCH v3 1/1] avformat: replace deprecated field in AVFormatContext

Marvin Scholz epirat07 at gmail.com
Wed Apr 8 21:55:58 CEST 2020



On 8 Apr 2020, at 21:45, Mehdi Sabwat wrote:

> From: Mehdi Sabwat <mehdisabwat at gmail.com>
>
> Since Jan 21, 2018 (ea3672b7d67c432724bdbc8de0221f869b6a04c6)
> filename field was deprecated in favor of `url` which now has
> no length restrictions.
>
> ```
> 2018-01-28 - ea3672b7d6 - lavf 58.7.100 - avformat.h
>   Deprecate AVFormatContext filename field which had limited length, 
> use the
>   new dynamically allocated url field instead.
> ```
> ---
>  modules/demux/avformat/mux.c | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/modules/demux/avformat/mux.c 
> b/modules/demux/avformat/mux.c
> index 9179daf592..38155fa9da 100644
> --- a/modules/demux/avformat/mux.c
> +++ b/modules/demux/avformat/mux.c
> @@ -90,9 +90,11 @@ int avformat_OpenMux( vlc_object_t *p_this )
>      sout_mux_t *p_mux = (sout_mux_t*)p_this;
>      bool dummy = !strcmp( p_mux->p_access->psz_access, "dummy");
>
> +#if ( LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(58, 7, 100) )
>      if( dummy && strlen(p_mux->p_access->psz_path)
>                                >= sizeof (((AVFormatContext 
> *)NULL)->filename) )
>          return VLC_EGENERIC;
> +#endif

Seems you forgot my previous remark, if this only affects ffmpeg, you 
need to
make the check exclusive to ffmpeg:

     #if (LIBAVFORMAT_VERSION_MICRO >= 100) && (LIBAVFORMAT_VERSION_INT 
< AV_VERSION_INT(58, 7, 100))

>
>      msg_Dbg( p_mux, "using %s %s", AVPROVIDER(LIBAVFORMAT), 
> LIBAVFORMAT_IDENT );
>
> @@ -127,7 +129,12 @@ int avformat_OpenMux( vlc_object_t *p_this )
>      p_sys->oc->oformat = file_oformat;
>      /* If we use dummy access, let avformat write output */
>      if( dummy )
> +#if ((LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(58, 7, 100)) \
> +      && (LIBAVFORMAT_VERSION_MICRO >= 100))
> +        p_sys->oc->url = av_strdup(p_mux->p_access->psz_path);
> +#else
>          strcpy( p_sys->oc->filename, p_mux->p_access->psz_path );
> +#endif
>
>      /* Create I/O wrapper */
>      p_sys->io_buffer_size = 10 * 1024 * 1024;  /* FIXME */
> -- 
> 2.25.0
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list