[FFmpeg-soc] [PATCH] rtsp tunneling

Josh Allmann joshua.allmann at gmail.com
Fri Jun 4 11:22:54 CEST 2010


On 3 June 2010 07:34, Luca Barbato <lu_zero at gentoo.org> wrote:
> On 06/03/2010 12:59 AM, Josh Allmann wrote:
> [rtsp-http]
>
> Hi, here some comments, I used your git to checkout* your branch, then I
> used git format-patch to have a better look at your changes, here my
> comments.
>
> Added URL_DELAYOPEN flag to internal api 6322eb07:
>
>
> +#define URL_DELAYOPEN 4 /* follows URL_* scheme defined in avio.h */
>
> I'm not sure outside programs have no use for it.

Removed per Ronald's suggestion.

>
> +++ b/libavformat/http.h
> @@ -0,0 +1,33 @@
> +/*
> + * HTTP definitions
> + * Copyright (c) 2002 Fabrice Bellard
>
> Doesn't look right.
>

Fixed (although I don't really feel like I deserve copyright to the whole file)

>
> Added in capability to write custom HTTP headers. ea2d753ba:
>
> +    unsigned char headers[BUFFER_SIZE];
>
> +void ff_http_set_headers(URLContext *h, const char *headers)
> +{
> +    HTTPContext *s = h->priv_data;
> +    snprintf(s->headers, sizeof(s->headers), "%s", headers);
> +}
>
> I'm not completely happy with this, probably a way to set/get them
> might be more nice, but that could be done on a later time.
>

Nobody is happy about this one but it's the quickest solution for now.

> Added support for disabling chunked transfer encoding. 1ee35e509:
>
> Seems ok
>
> Added in RTSP tunneling over HTTP. 2f6e33908:
>
> +        if (!av_base64_encode(base64buf, sizeof(base64buf), buf,
> strlen(buf))) {
> +            av_log(s, AV_LOG_ERROR, "Unable to base64 encode RTSP.\n");
> +            return;
> +        }
>
> currently this function assumes that it cannot fail, probably we should
> propagate errors.
>

Done, added a fifth patch for this. I only check and propagate errors
within ff_rtsp_send_cmd* functions, but I don't do anything about them
when called from other ff_rtsp* functions.

> +static inline void close_cxn(RTSPState *rt)
>
> It's a nit but I dislike cxn
>
> The rest looks good.
>
>
> lu
>
> * If you have already your own git tree you can do the following:
> # set the remote to just track the rtsp-tunneling branch
> git remote add -t rtsp-tunneling j0sh git://github.com/j0sh/ffmpeg-soc.git
>
> # fetch it
> git fetch j0sh
>
> #checkout
> git checkout -b rtsp-tunneling j0sh/rtsp-tunneling
>
> now you can use git pull to update it.

git rocks.


More information about the FFmpeg-soc mailing list