Mac 및 PC에서 간단한 미디어 플레이어 응용 프로그램을 개발할 때 VLCJ 라이브러리를 사용하고 있습니다. PC에서는 모든 미디어 파일이 원활하게 실행됩니다. Mac에서는 응용 프로그램을 실행할 때 (Mac .dylib 파일을 구성한 후) 응용 프로그램을 열었습니다. 진행 막대를 누르면 프레임이 제대로 표시되지만 실제로 파일을 재생하려고 할 때 다음과 같은 오류 : 나는 확실하지 않다하지만 나는이 오류의 핵심이라고 생각Mac에서 VLCJ를 사용할 때 오류가 발생했습니다.
/Users/ronenshani/Desktop/Cinenote/CineNotes/resources/icons/control_start_blue.png/Users/ronenshani/Desktop/Cinenote/CineNotes/resources/icons/control_rewind_blue.png/Users/ronenshani/Desktop/Cinenote/CineNotes/resources/icons/control_fastforward_blue.png/Users/ronenshani/Desktop/Cinenote/CineNotes/resources/icons/control_end_blue.pngSep 12 13:48:59 Ronens-MacBook-Pro.local java[59043] <Error>: CGContextGetCTM: invalid context 0x0
Sep 12 13:48:59 Ronens-MacBook-Pro.local java[59043] <Error>: CGContextSetBaseCTM: invalid context 0x0
Sep 12 13:48:59 Ronens-MacBook-Pro.local java[59043] <Error>: CGContextGetCTM: invalid context 0x0
Sep 12 13:48:59 Ronens-MacBook-Pro.local java[59043] <Error>: CGContextSetBaseCTM: invalid context 0x0
mediaChanged
opening
playing
paused
Fontconfig error: Cannot load default config file
Fontconfig error: Cannot load default config file
Fontconfig error: Cannot load default config file
[0x7faeb4413f50] main vout display error: option macosx-video-autoresize does not exist
2012-09-12 13:49:18.133 java[59043:407] -[CocoaAppWindow isFullscreen]: unrecognized selector sent to instance 0x7faeaa4aba90
2012-09-12 13:49:18.134 java[59043:407] -[CocoaAppWindow isFullscreen]: unrecognized selector sent to instance 0x7faeaa4aba90
2012-09-12 13:49:18.166 java[59043:407] (
0 CoreFoundation 0x00007fff8dcf6f56 __exceptionPreprocess + 198
1 libobjc.A.dylib 0x00007fff8db84d5e objc_exception_throw + 43
2 CoreFoundation 0x00007fff8dd831be -[NSObject doesNotRecognizeSelector:] + 190
3 CoreFoundation 0x00007fff8dce3e23 ___forwarding___ + 371
4 CoreFoundation 0x00007fff8dce3c38 _CF_forwarding_prep_0 + 232
5 libvout_macosx_plugin.dylib 0x0000000123affc21 -[VLCOpenGLVideoView setWindowFrameWithValue:] + 49
6 CoreFoundation 0x00007fff8dce670d -[NSObject performSelector:withObject:] + 61
7 Foundation 0x00007fff8eba6d70 __NSThreadPerformPerform + 214
8 CoreFoundation 0x00007fff8dc654f1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
9 CoreFoundation 0x00007fff8dc64d5d __CFRunLoopDoSources0 + 253
10 CoreFoundation 0x00007fff8dc8bb49 __CFRunLoopRun + 905
11 CoreFoundation 0x00007fff8dc8b486 CFRunLoopRunSpecific + 230
12 HIToolbox 0x00007fff868174d3 RunCurrentEventLoopInMode + 277
13 HIToolbox 0x00007fff8681e781 ReceiveNextEventCommon + 355
14 HIToolbox 0x00007fff8681e60e BlockUntilNextEventMatchingListInMode + 62
15 AppKit 0x00007fff83befe31 _DPSNextEvent + 659
16 AppKit 0x00007fff83bef735 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 135
17 libawt.jnilib 0x0000000118bdcfe3 -[NSApplicationAWT nextEventMatchingMask:untilDate:inMode:dequeue:] + 124
18 AppKit 0x00007fff83bec071 -[NSApplication run] + 470
19 libawt.jnilib 0x0000000118bdb694 +[AWTStarter startAWT:] + 1495
20 libawt.jnilib 0x0000000118bdb00e -[CPerformer perform] + 93
21 CoreFoundation 0x00007fff8dce670d -[NSObject performSelector:withObject:] + 61
22 Foundation 0x00007fff8eba6d70 __NSThreadPerformPerform + 214
23 CoreFoundation 0x00007fff8dc654f1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
24 CoreFoundation 0x00007fff8dc64d5d __CFRunLoopDoSources0 + 253
25 CoreFoundation 0x00007fff8dc8bb49 __CFRunLoopRun + 905
26 CoreFoundation 0x00007fff8dc8b486 CFRunLoopRunSpecific + 230
27 java 0x000000010fa3a843 java + 18499
28 java 0x000000010fa3a29a java + 17050
29 java 0x000000010fa37a98 java + 6808
)
playingAssertion failed: (p->pause_date != VLC_TS_INVALID), function aout_PacketPause, file ../../extras/package/macosx/../../../src/audio_output/output.c, line 431.
:
[0x7faeb4413f50] main vout display error: option macosx-video-autoresize does not exist
2012-09-12 13:49:18.133 java[59043:407] -[CocoaAppWindow isFullscreen]: unrecognized selector sent to instance 0x7faeaa4aba90
2012-09-12 13:49:18.134 java[59043:407] -[CocoaAppWindow isFullscreen]: unrecognized selector sent to instance 0x7faeaa4aba90
응용 프로그램은 libvlc 라이브러리를 액세스하기위한 VLCJ 래퍼를 사용하고 있습니다.
누구든지이 문제에 대한 통찰력이 있다면 알려 주시기 바랍니다. 나는 며칠 동안이 오류에 갇혀 있었지만 여전히 그것을 파악하지 못했습니다.
static inline char * __config_GetLabel(vlc_object_t *p_this, const char *psz_name)
{
module_config_t *p_config;
**p_config = config_FindConfig(p_this, psz_name);**
/* sanity checks */
if(!p_config)
{
msg_Err(p_this, "option %s does not exist", psz_name);
return NULL;
}
if (p_config->psz_longtext)
return p_config->psz_longtext;
else if(p_config->psz_text)
return p_config->psz_text;
else
msg_Warn(p_this, "option %s does not include any help", psz_name);
return NULL;
}
이 함수가 실패 :
감사합니다, 코드의 뒷조사 후 tamash
편집
, 나는 VLCJ에서 다음 코드는 오류를 일으키는 것을 발견 일부 구성 파일을로드 할 수 있습니다 (위의 오류 메시지에서 지적한 오류가 있기 때문에 의미가 있습니다 : "Fontconfig 오류 : 기본 구성 파일을로드 할 수 없음"). 어디서 Mac에서이 구성 파일을 찾을 수 있습니까? 그리고 어디서 불러 와야합니까?
VLCJ 라이브러리는 항상 JNA 래퍼 (Java 언어)에서 VLC 동적 라이브러리 (libVLC)입니다. 마지막 편집 이후 코드가 VLCJ가 아니라고 생각합니다. 그것은 libVLC 그 자체 (C/C++ 언어에서)입니다. 다른 VLCJ 버전에는 다른 libVLC 버전이 필요합니다. 현재 Windows 및 OSX에서 사용중인 VLCJ 및 libVLC의 버전을 알 수 있습니까? JNA 버전도 함께 알려주십시오. http://code.google.com/p/vlcj/wiki/WhichVersion –