[FFmpeg-user] Does libcdio indev AVOptions works with macOS?

桃源老師 xanadu6291 at dream.jp
Sat Sep 16 13:27:25 EEST 2017


Hello ffmpeg experts!!

> 2017/09/14 午後11:34、Moritz Barsnick <barsnick at gmx.net>のメール:
> 
> On Thu, Sep 14, 2017 at 19:32:24 +0900, 桃源老師 wrote:
> 
>> [libcdio @ 0x7fdbb5001800] Could not open drive /dev/disk4.
>> /dev/disk4: Invalid argument
> 
> Does
> $ cd-info /dev/disk4
> work? (cd-info is provided with libcdio.) Are you using the wrong
> device perhaps?

Now I get working binary of libcdio including cd-paranoia by talking with libcdio develop team.

Note:
1. Currently, their git head only works with macOS High Sierra, Not official release (0.94)
2. Git head need to comment output manuals.
3. I noticed that these tools have to unmount Audio CD to work properly...

>> Can’t I use cdparanoia with ffmpeg on macOS?
> 
> If libcdio and its tools work on macOS, I don't see why ffmpeg
> shouldn't be able to use it as well.

But this time I got linker error like the following when configuring ffmpeg with --enable-libcdio option.

check_lib libcdio cdio/paranoia/cdda.h cdio/paranoia/paranoia.h cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio
check_func_headers cdio/paranoia/cdda.h cdio/paranoia/paranoia.h cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio
check_ld cc -lcdio_paranoia -lcdio_cdda -lcdio
check_cc
BEGIN /var/folders/wv/3_2g0k7n6p3ff9tbz6hqh67w0000gn/T//ffconf.R3a4cgop/test.c
    1	#include <cdio/paranoia/cdda.h>
    2	#include <cdio/paranoia/paranoia.h>
    3	#include <stdint.h>
    4	long check_cdio_cddap_open(void) { return (long) cdio_cddap_open; }
    5	int main(void) { int ret = 0;
    6	 ret |= ((intptr_t)check_cdio_cddap_open) & 0xFFFF;
    7	return ret; }
END /var/folders/wv/3_2g0k7n6p3ff9tbz6hqh67w0000gn/T//ffconf.R3a4cgop/test.c
gcc -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I$(SRC_PATH)/compat/dispatch_semaphore -DPIC -I/Volumes/ffmpeg_compile/include -std=c11 -fomit-frame-pointer -fPIC -pthread -D_THREAD_SAFE -I/Volumes/ffmpeg_compile/include/SDL2 -c -o /var/folders/wv/3_2g0k7n6p3ff9tbz6hqh67w0000gn/T//ffconf.R3a4cgop/test.o /var/folders/wv/3_2g0k7n6p3ff9tbz6hqh67w0000gn/T//ffconf.R3a4cgop/test.c
gcc -Wl,-dynamic,-search_paths_first -o /var/folders/wv/3_2g0k7n6p3ff9tbz6hqh67w0000gn/T//ffconf.R3a4cgop/test /var/folders/wv/3_2g0k7n6p3ff9tbz6hqh67w0000gn/T//ffconf.R3a4cgop/test.o -lcdio_paranoia -lcdio_cdda -lcdio -Wl,-framework,CoreFoundation -Wl,-framework,Security -L/Volumes/ffmpeg_compile/lib -lSDL2 -lm -liconv -Wl,-framework,CoreAudio -Wl,-framework,AudioToolbox -Wl,-framework,ForceFeedback -lobjc -Wl,-framework,CoreVideo -Wl,-framework,Cocoa -Wl,-framework,Carbon -Wl,-framework,IOKit -lm -lbz2 -lz -pthread -pthread -framework CoreServices -framework CoreGraphics -framework VideoToolbox -framework CoreImage -framework AVFoundation -framework AudioToolbox -framework AppKit
clang: warning: argument unused during compilation: '-pthread' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-pthread' [-Wunused-command-line-argument]
Undefined symbols for architecture x86_64:
  "_DADiskCopyDescription", referenced from:
      __eject_media_osx in libcdio.a(osx.o)
  "_DADiskCreateFromBSDName", referenced from:
      __eject_media_osx in libcdio.a(osx.o)
  "_DADiskEject", referenced from:
      __eject_media_osx in libcdio.a(osx.o)
      _media_unmount_callback in libcdio.a(osx.o)
  "_DADiskUnmount", referenced from:
      __eject_media_osx in libcdio.a(osx.o)
  "_DADissenterGetStatusString", referenced from:
      _media_eject_callback in libcdio.a(osx.o)
  "_DASessionCreate", referenced from:
      __eject_media_osx in libcdio.a(osx.o)
  "_DASessionScheduleWithRunLoop", referenced from:
      __eject_media_osx in libcdio.a(osx.o)
  "_DASessionUnscheduleFromRunLoop", referenced from:
      __eject_media_osx in libcdio.a(osx.o)
  "_kDADiskDescriptionVolumePathKey", referenced from:
      __eject_media_osx in libcdio.a(osx.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ERROR: No usable libcdio/cdparanoia found

I can't understand why such kind of error occurs even though binary level of libcdio work...

Do you have any idea?

I build libcdio and libcdio-paranoia with option --disable-shared.  if tools of libcdio works, library "libcdio.a" also build correctly am I wrong?
How can I know the library "libcdio.a" correctly build?

Note:
The above error is on macOS High Sierra GM Candidate.  With macOS Sierra, I get more worth linker error...


Best Regards,


// Miya aka. TougenRoushi

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3860 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-user/attachments/20170916/14cc3847/attachment.bin>


More information about the ffmpeg-user mailing list