Credit Andrew - fix vorbis audio which was scratchy and ensure aging plugin does...
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / file.C
index 0406e174f4f24bb58f81c593b2856e412e22a48d..90ad489f76a3307314789cab03035426f4d6e374 100644 (file)
@@ -1,6 +1,7 @@
 /*
  * CINELERRA
  * Copyright (C) 2010 Adam Williams <broadcast at earthling dot net>
+ * Copyright (C) 2003-2016 Cinelerra CV contributors
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -254,6 +255,10 @@ int File::get_options(FormatTools *format,
                FileOGG::get_parameters(parent_window, asset, format_window,
                        audio_options, video_options, edl);
                break;
+       case FILE_VORBIS:
+               FileVorbis::get_parameters(parent_window, asset, format_window,
+                       audio_options, video_options, edl);
+               break;
 #endif
        default:
                break;
@@ -390,7 +395,9 @@ const char *File::default_probes[] = {
 #ifdef HAVE_GIFLIB
        "GIF",
 #endif
+#ifdef HAVE_LIBDPX
        "DPX",
+#endif
 #ifdef HAVE_OPENEXR
        "EXR",
 #endif
@@ -402,7 +409,9 @@ const char *File::default_probes[] = {
        "OGG",
        "Vorbis",
 #endif
+#ifdef HAVE_LIBZMPEG
        "MPEG",
+#endif
        "EDL",
        "FFMPEG_Late",
 }; 
@@ -1662,7 +1671,14 @@ int File::record_fd()
 void File::get_exe_path(char *result, char *bnp)
 {
 // Get executable path, basename
+#if !defined(__FreeBSD__)
        int len = readlink("/proc/self/exe", result, BCTEXTLEN-1);
+#else
+       char exe_path[BCTEXTLEN];
+       sprintf(exe_path,"/proc/%d/file",getpid());
+       int len = readlink(exe_path, result, BCTEXTLEN-1);
+#endif
+
        if( len >= 0 ) {
                result[len] = 0;
                char *ptr = strrchr(result, '/');