[FFmpeg-devel] frei0r patches
Roger Pack
rogerdpack2 at gmail.com
Fri Oct 12 15:33:04 CEST 2012
>> based on http://piksel.org/frei0r/1.2/spec/1.2/spec/group__pluglocations.html
>
> From the linked document:
>
> |FREI0R_PATH Environment Variable
>
> |If the environment variable FREI0R_PATH is defined, then it shall be
> |considered a colon separated list of directories which replaces the
> |default list. For example:
> |
> |FREI0R_PATH=/home/foo/frei0r-plugins:/usr/lib/frei0r-1:/etc/frei0r
>
> BTW, the new site location should be:
> http://frei0r.dyne.org/
>
> but it has apparently some problems (and there is no reference to
> frei0r API 1.2).
What problems does it have? I am in touch with them I could forward
one the message :)
> So the question is, how ":"/";" makes any difference?
basically, since FREI0R_PATH
looks like this
/home/foo/frei0r-plugins:/usr/lib/frei0r-1:/etc/frei0r
with the current code, ex looking for the "blur" filter, it searches
for a file named
/home/foo/frei0r-pluginsblur.so
or its equivalent in windows. So that's what patch 2 tries to fix.
Also, in windows, FREI0R_PATH might contain full paths, like C:\some\where
so, basically, you can't use a delimiter of a colon, as it conflicts
with the drive letter. So you must use something else (java uses a
';' in windows, the windows PATH environment variable uses a ';' so I
assume it's a standard, though the linked to file only mentions rules
for linux, so it's not explicitly stated anywhere).
>> + for (p = path; p = av_strtok(p, separator, &ptr); p = NULL) {
>> + char with_trailing_slash[1024];
>> + snprintf(with_trailing_slash, sizeof(with_trailing_slash), "%s/", p);
>
> If path is long >=1024 chars, then the path is cut (you should rather
> av_strdup).
The "load_file" method was already truncating at 1024, so I assumed it
was expected. Maybe they could both be fixed in a separate
commit...or I could do it now if you prefer.
-roger-
More information about the ffmpeg-devel
mailing list