From git at videolan.org Sun Feb 1 00:00:04 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 00:00:04 +0100 (CET) Subject: [vlc-devel] commit: i18n: Don't translate language names (Christophe Mutricy ) Message-ID: <20090131230004.127B42E799@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Fri Jan 30 22:14:46 2009 +0000| [913b14ba9013ad272808cba3058113f01eb287d1] | committer: Christophe Mutricy i18n: Don't translate language names Leave them in their respective language so that people get a chance to go back to their language if they mess with language settings > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=913b14ba9013ad272808cba3058113f01eb287d1 --- src/libvlc-module.c | 70 +++++++++++++++++++++++++------------------------- 1 files changed, 35 insertions(+), 35 deletions(-) diff --git a/src/libvlc-module.c b/src/libvlc-module.c index 5f22915..29a3b17 100644 --- a/src/libvlc-module.c +++ b/src/libvlc-module.c @@ -86,41 +86,41 @@ static const char *const ppsz_language[] = static const char *const ppsz_language_text[] = { N_("Auto"), - N_("American English"), - N_("Arabic"), - N_("Brazilian Portuguese"), - N_("British English"), - N_("Bulgarian"), - N_("Catalan"), - N_("Chinese Traditional"), - N_("Czech"), - N_("Danish"), - N_("Dutch"), - N_("Finnish"), - N_("French"), - N_("Galician"), - N_("Georgian"), - N_("German"), - N_("Hebrew"), - N_("Hungarian"), - N_("Italian"), - N_("Japanese"), - N_("Korean"), - N_("Malay"), - N_("Occitan"), - N_("Persian"), - N_("Polish"), - N_("Portuguese"), - N_("Punjabi"), - N_("Romanian"), - N_("Russian"), - N_("Simplified Chinese"), - N_("Serbian"), - N_("Slovak"), - N_("Slovenian"), - N_("Spanish"), - N_("Swedish"), - N_("Turkish"), + "American English", + "????", + "Portugu?s Brasileiro", + "British English", + "????????? ????", + "Catal?", + "????", + "?e?tina", + "Dansk", + "Nederlands", + "Suomi", + "Fran?ais", + "Galego", + "???????", + "Deutsch", + "?????", + "Magyar", + "Italiano", + "???", + "???", + "Melayu", + "Occitan", + "?????", + "Polski", + "Portugu?s", + "??????", + "Rom?n?", + "???????", + "????", + "??????", + "Slovensky", + "sloven??ina", + "Espa?ol", + "Svenska", + "T?rk?e", }; #endif From git at videolan.org Sun Feb 1 00:00:04 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 00:00:04 +0100 (CET) Subject: [vlc-devel] commit: Typo (Christophe Mutricy ) Message-ID: <20090131230004.379F62E798@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Sat Jan 31 22:55:11 2009 +0000| [1b7603ffc250c42b61bcdb8ab1885fcb8637c10c] | committer: Christophe Mutricy Typo > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1b7603ffc250c42b61bcdb8ab1885fcb8637c10c --- src/misc/update.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/misc/update.c b/src/misc/update.c index fc05e6f..2b80a2e 100644 --- a/src/misc/update.c +++ b/src/misc/update.c @@ -1633,7 +1633,7 @@ static void* update_DownloadReal( vlc_object_t *p_this ) p_update->release.psz_url, psz_size ) != -1 ) { intf_ProgressUpdate( p_progress, psz_status, 100.0, 0 ); - p_progress = NULL + p_progress = NULL; free( psz_status ); } } From git at videolan.org Sun Feb 1 00:00:04 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 00:00:04 +0100 (CET) Subject: [vlc-devel] commit: Vorbis quality is limited to 0-10 (Christophe Mutricy ) Message-ID: <20090131230004.50F7F2E79F@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Sat Jan 31 22:55:35 2009 +0000| [4417073e0b6065f22580ec209887765b3760a1ea] | committer: Christophe Mutricy Vorbis quality is limited to 0-10 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4417073e0b6065f22580ec209887765b3760a1ea --- modules/codec/vorbis.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/codec/vorbis.c b/modules/codec/vorbis.c index 9f4125a..33e8a7d 100644 --- a/modules/codec/vorbis.c +++ b/modules/codec/vorbis.c @@ -204,6 +204,7 @@ vlc_module_begin () add_integer( ENC_CFG_PREFIX "quality", 0, NULL, ENC_QUALITY_TEXT, ENC_QUALITY_LONGTEXT, false ) + change_integer_range( 0, 10 ) add_integer( ENC_CFG_PREFIX "max-bitrate", 0, NULL, ENC_MAXBR_TEXT, ENC_MAXBR_LONGTEXT, false ) add_integer( ENC_CFG_PREFIX "min-bitrate", 0, NULL, ENC_MINBR_TEXT, From ilkka.ollakka+vlc at oamk.fi Sun Feb 1 01:52:57 2009 From: ilkka.ollakka+vlc at oamk.fi (Ilkka Ollakka) Date: Sun, 1 Feb 2009 02:52:57 +0200 Subject: [vlc-devel] [RFC] Plugins removal In-Reply-To: <200901312210.17763.rem@videolan.org> References: <200901312210.17763.rem@videolan.org> Message-ID: <20090201005257.GA9085@papu.site> On la 31. tammikuuta 2009 22.10.17, R?mi Denis-Courmont wrote: > Hello, > > Different people (incredibly enough, not _me_) have recently suggested > removing this: > - CMML: unmaintained, buggy, mostly useless. > - CDDAX: unmaintained, horrible, caused security issues, > depends on libcdio, minimal functional gains over non-cdio plugins. > - VCDX: same comments as CDDAX, plus nobody uses Video CDs really. > > I have to say, I tend to agree. Otherwise I wouldn't post this anyway. I don't think I have used any of those modules ever, so I don't have any objection on removing those. -- Ilkka Ollakka If you want to know what god thinks of money, just look at the people he gave it to. -- Dorthy Parker -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 197 bytes Desc: not available URL: From git at videolan.org Sun Feb 1 08:05:31 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 08:05:31 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Skins2=3A_partial_vout_window_fix?= =?utf-8?q?es_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090201070532.000E02E743@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 09:05:04 2009 +0200| [8e0a2de24336bb68b6aee5a701025bfb1e01ac24] | committer: R?mi Denis-Courmont Skins2: partial vout window fixes This remains seemingly badly unsafe > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8e0a2de24336bb68b6aee5a701025bfb1e01ac24 --- modules/gui/skins2/src/skin_main.cpp | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/modules/gui/skins2/src/skin_main.cpp b/modules/gui/skins2/src/skin_main.cpp index 564f99d..9c48d99 100644 --- a/modules/gui/skins2/src/skin_main.cpp +++ b/modules/gui/skins2/src/skin_main.cpp @@ -302,7 +302,7 @@ static int WindowOpen( vlc_object_t *p_this ) /* FIXME: most probably not thread-safe, * albeit no worse than ever before */ - pWnd->handle = VlcProc::getWindow( pIntf, pWnd->vout, + pWnd->handle.hwnd = VlcProc::getWindow( pIntf, pWnd->vout, &pWnd->pos_x, &pWnd->pos_y, &pWnd->width, &pWnd->height ); pWnd->p_private = pIntf; @@ -506,7 +506,11 @@ vlc_module_begin () add_shortcut( "skins" ) add_submodule () - set_capability( "vout_window", 51 ) +#ifndef WIN32 + set_capability( "xwindow", 51 ) +#else + set_capability( "hwnd", 51 ) +#endif set_callbacks( WindowOpen, WindowClose ) add_submodule () From git at videolan.org Sun Feb 1 08:10:08 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 08:10:08 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Win32=3A_fix_NULL-deref_in_non_em?= =?utf-8?q?bedded_video_mode_=28fixes_=232426=29_=28_R=C3=A9mi_Denis-Courm?= =?utf-8?q?ont_=29?= Message-ID: <20090201071008.CD6C72E77C@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 09:09:22 2009 +0200| [09af489c23a225c76820aa44cf39759dd86efd22] | committer: R?mi Denis-Courmont Win32: fix NULL-deref in non embedded video mode (fixes #2426) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=09af489c23a225c76820aa44cf39759dd86efd22 --- modules/video_output/msw/events.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/modules/video_output/msw/events.c b/modules/video_output/msw/events.c index 221e4dd..119680c 100644 --- a/modules/video_output/msw/events.c +++ b/modules/video_output/msw/events.c @@ -422,7 +422,8 @@ static int DirectXCreateWindow( vout_thread_t *p_vout ) &p_vout->p_sys->i_window_y, &p_vout->p_sys->i_window_width, &p_vout->p_sys->i_window_height ); - p_vout->p_sys->hparent = p_vout->p_sys->parent_window->handle.hwnd; + if( p_vout->p_sys->parent_window ) + p_vout->p_sys->hparent = p_vout->p_sys->parent_window->handle.hwnd; /* We create the window ourself, there is no previous window proc. */ p_vout->p_sys->pf_wndproc = NULL; From git at videolan.org Sun Feb 1 08:20:39 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 08:20:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Memory_leak_=28fixes_=232442=29_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090201072039.551CD2E785@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 09:20:26 2009 +0200| [09f090b183244f2f30ce63af054c1c1439b332ab] | committer: R?mi Denis-Courmont Memory leak (fixes #2442) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=09f090b183244f2f30ce63af054c1c1439b332ab --- modules/gui/qnx/vout.c | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-) diff --git a/modules/gui/qnx/vout.c b/modules/gui/qnx/vout.c index 4b30fe0..f5a01cb 100644 --- a/modules/gui/qnx/vout.c +++ b/modules/gui/qnx/vout.c @@ -316,9 +316,16 @@ static int QNXManage( vout_thread_t *p_vout ) if( i_ev == Ph_RESIZE_MSG ) { + PhEvent_t *buf; + i_buflen = PhGetMsgSize( p_event ); - if( ( p_event = realloc( p_event, i_buflen ) ) == NULL ) + buf = realloc( p_event, i_buflen ); + if( buf == NULL ) + { + free( p_event ); return( 1 ); + } + p_event = buf; } else if( i_ev == Ph_EVENT_MSG ) { From silencewang at msn.com Sun Feb 1 10:10:51 2009 From: silencewang at msn.com (Wang Bo) Date: Sun, 1 Feb 2009 17:10:51 +0800 Subject: [vlc-devel] [PATCH] 1: sicne modules/demux/real.c has changed, the realvideo.c Message-ID: <1233479451-20964-1-git-send-email-silencewang@msn.com> --- doc/realvideo-howto.txt | 18 +++++ modules/codec/realvideo.c | 155 +++++++++++++++++++++++++++++--------------- 2 files changed, 120 insertions(+), 53 deletions(-) create mode 100644 doc/realvideo-howto.txt diff --git a/doc/realvideo-howto.txt b/doc/realvideo-howto.txt new file mode 100644 index 0000000..ff28e5e --- /dev/null +++ b/doc/realvideo-howto.txt @@ -0,0 +1,18 @@ +RealVideo howto + +if you want to play RealNetworks' .rm/.rmvb video, +you need configure the vlc with --enable-real, and +--enable-realrtsp for real's rtsp protocol. + +After config and make vlc, you need download the +RealNetworks' codecs, general you can use codec +from Real Player 9 or 10, the newer codec has not +tested. Or you can install Real's player or Helix SDK. + +Now the realvideo has tested on linux ( intel, 32bit) +and windows ( intel, 32bit ), if you have tested it on +other platform, please let me know. + +-- +WangBo + diff --git a/modules/codec/realvideo.c b/modules/codec/realvideo.c index 6e5c512..7e22619 100644 --- a/modules/codec/realvideo.c +++ b/modules/codec/realvideo.c @@ -89,9 +89,9 @@ struct rv_init_t short h; short unk3; int unk2; - unsigned int * subformat; + int subformat; int unk5; - unsigned int * format; + int format; } rv_init_t; struct decoder_sys_t @@ -241,19 +241,81 @@ static int InitVideo(decoder_t *p_dec) init_data.h = p_dec->fmt_in.video.i_height ; init_data.unk3 = 0; init_data.unk2 = 0; - init_data.subformat = (unsigned int*)p_vide[0]; + init_data.subformat = ntohl( p_vide[0] ); init_data.unk5 = 1; - init_data.format = (unsigned int*)p_vide[1]; + init_data.format = ntohl( p_vide[1]); /* first try to load linux dlls, if failed and we're supporting win32 dlls, then try to load the windows ones */ - bool b_so_opened = false; + + p_sys->rv_handle = NULL; #ifdef WIN32 - g_decode_path="plugins\\drv43260.dll"; + static const char psz_paths[MAX_PATH*3] = ""; + if ( strlen(psz_paths[0]) == 0 ) + { + HKEY h_key; + DWORD i_type, i_data = MAX_PATH + 1; + char * p_data; + char * p_end = psz_paths; + + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, + _T("Software\\RealNetworks\\Preferences\\DT_Codecs"), + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) + { + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS + && i_type == REG_SZ ) + { + int i_len = strlen( p_data ); + if ( i_len && p_data[i_len-1] == '\\' ) + p_data[i_len - 1] = '\0'; + memcpy( p_end, p_data, strlen( p_data) + 1 ); + p_end += strlen( p_data ) + 1; + } + RegCloseKey( h_key ); + } + + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, + _T("Helix\\HelixSDK\\10.0\\Preferences\\DT_Codecs"), + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) + { + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS + && i_type == REG_SZ ) + { + int i_len = strlen( p_data ); + if ( i_len && p_data[i_len-1] == '\\' ) + p_data[i_len - 1] = '\0'; + memcpy( p_end, p_data, strlen( p_data) + 1 ); + p_end += strlen( p_data ) + 1; + } + RegCloseKey( h_key ); + } + + memcpy( p_end, ".\0codecs\0plugins\0\0\0", 20 ); + } - if( (p_sys->rv_handle = load_syms(p_dec, g_decode_path)) ) - b_so_opened = true; + for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) + { + if( asprintf( &g_decode_path, "%s/drv4.dll", psz_paths + i ) != -1 ) + { + p_sys->rv_handle = load_syms(p_dec, g_decode_path); + free( g_decode_path ); + } + if( p_sys->rv_handle ) + break; + + if( asprintf( &g_decode_path, "%s/drv43260.dll", psz_paths + i ) != -1 ) + { + p_sys->rv_handle = load_syms(p_dec, g_decode_path); + free( g_decode_path ); + } + if( p_sys->rv_handle ) + break; + + msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); + } #else static const char psz_paths[] = { @@ -272,6 +334,8 @@ static int InitVideo(decoder_t *p_dec) "/usr/lib64/RealPlayer10/codecs\0" "/usr/lib64/RealPlayer10GOLD/codecs\0" "/usr/local/lib/codecs\0" + ".\0" + "codecs\0" "\0" }; @@ -283,10 +347,7 @@ static int InitVideo(decoder_t *p_dec) free( g_decode_path ); } if( p_sys->rv_handle ) - { - b_so_opened = true; break; - } if( asprintf( &g_decode_path, "%s/drv3.so.6.0", psz_paths + i ) != -1 ) { @@ -294,16 +355,13 @@ static int InitVideo(decoder_t *p_dec) free( g_decode_path ); } if( p_sys->rv_handle ) - { - b_so_opened = true; break; - } msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); } #endif - if(!b_so_opened ) + if( p_sys->rv_handle == NULL ) { msg_Err( p_dec, "Cannot any real decoder library" ); free( p_sys ); @@ -321,24 +379,27 @@ static int InitVideo(decoder_t *p_dec) result=(*rvyuv_init)(&init_data, &p_sys->handle); if (result) { - msg_Err( p_dec, "Cannot Init real decoder library: %s", g_decode_path); + msg_Err( p_dec, "Cannot Init real decoder, error code: %X", result ); free( p_sys ); return VLC_EGENERIC; } + msg_Dbg( p_dec, "codec id: 0x%8X subid: 0x%8X\n", ntohl(p_vide[1]), ntohl(p_vide[0]) ); + /* setup rv30 codec (codec sub-type and image dimensions): */ /*if ( p_dec->fmt_in.i_codec == VLC_FOURCC('R','V','3','0') )*/ - if (p_vide[1]>=0x20200002) + if ( ntohl( p_vide[1])>=0x20200002) { - int i, cmsg_cnt; + int cmsg_cnt; + unsigned char * p_extrahdr = (unsigned char *) p_vide ; uint32_t cmsg24[16]={p_dec->fmt_in.video.i_width,p_dec->fmt_in.video.i_height}; - cmsg_data_t cmsg_data={0x24,1+(p_vide[1]&7), &cmsg24[0]}; - cmsg_cnt = (p_vide[1]&7)*2; + cmsg_data_t cmsg_data={0x24,1+(p_extrahdr[1]&7), &cmsg24[0]}; + cmsg_cnt = (p_extrahdr[1]&7)*2; if (i_vide - 8 < cmsg_cnt) { cmsg_cnt = i_vide - 8; } - for (i = 0; i < cmsg_cnt; i++) - cmsg24[2+i] = p_vide[8+i]*4; + for (int i = 0; i < cmsg_cnt; i++) + cmsg24[2+i] = p_extrahdr[8+i]*4; #ifdef WIN32 if (dll_type == 1) (*wrvyuv_custom_message)(&cmsg_data,p_sys->handle); @@ -349,7 +410,7 @@ static int InitVideo(decoder_t *p_dec) /* es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','V','1','2' )); es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','U','Y','2' )); - */ + */ es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'I', '4', '2', '0')); p_dec->fmt_out.video.i_width = p_dec->fmt_in.video.i_width; @@ -467,25 +528,20 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) if ( p_pic ) { unsigned int transform_out[5]; - dp_hdr_t dp_hdr; transform_in_t transform_in; - uint32_t pkg_len = ((uint32_t*)p_block->p_buffer)[0]; - unsigned char* dp_data=((unsigned char*)p_block->p_buffer)+8; - uint32_t* extra=(uint32_t*)(((char*)p_block->p_buffer)+8+pkg_len); - uint32_t img_size; - - dp_hdr.len = pkg_len; - dp_hdr.chunktab = 8 + pkg_len; - dp_hdr.chunks = ((uint32_t*)p_block->p_buffer)[1]-1; - dp_hdr.timestamp = i_pts; + uint8_t i_chunks = p_block->p_buffer[0]; + uint32_t pkg_len = p_block->i_buffer - 2*4*(i_chunks + 1) - 1; + unsigned char* dp_data=p_block->p_buffer + 2*4*(i_chunks+1) + 1; + uint32_t* extra=(uint32_t*)(p_block->p_buffer + 1); + uint32_t img_size; memset(&transform_in, 0, sizeof(transform_in_t)); - transform_in.len = dp_hdr.len; + transform_in.len = pkg_len; transform_in.extra = extra; - transform_in.chunks = dp_hdr.chunks; - transform_in.timestamp = dp_hdr.timestamp; + transform_in.chunks = i_chunks; + transform_in.timestamp = i_pts; memset (p_sys->plane, 0, p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height *3/2 ); @@ -496,17 +552,7 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) #endif result=(*rvyuv_transform)(dp_data, p_sys->plane, &transform_in, transform_out, p_sys->handle); - /* msg_Warn(p_dec, "Real Size %d X %d", transform_out[3], - transform_out[4]); */ - /* some bug rm file will print the messages : - [00000551] realvideo decoder warning: Real Size 320 X 240 - [00000551] realvideo decoder warning: Real Size 480 X 272 - [00000551] realvideo decoder warning: Real Size 320 X 240 - [00000551] realvideo decoder warning: Real Size 320 X 240 - ... - so it needs fixing! - */ - if ( p_sys->inited == 0 ) + if ( result == 0 && p_sys->inited == 0 ) { /* fix and get the correct image size! */ if ( p_dec->fmt_in.video.i_width != transform_out[3] @@ -540,16 +586,19 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) p_sys->inited = 1; } - img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; - memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); - memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); - memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); - p_pic->date = i_pts ; + if ( result == 0 ) + { + img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; + memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); + memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); + memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); + p_pic->date = i_pts ; /* real video frame is small( frame and frame's time-shift is short), so it will become late picture easier (when render-time changed)and droped by video-output.*/ - p_pic->b_force = 1; + p_pic->b_force = 1; + } } vlc_mutex_unlock( &rm_mutex ); -- 1.5.5.1 From silencewang at msn.com Sun Feb 1 10:44:01 2009 From: silencewang at msn.com (=?gb2312?B?zfWyqA==?=) Date: Sun, 1 Feb 2009 21:44:01 +1200 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: <4984340D.6050806@gmail.com> References: <4984340D.6050806@gmail.com> Message-ID: oh, it is a obvious error. and i fix it and add include vlc_network.h, which will include winsock2.h in windows. i use the function ntohl() to do big endian to host order int. i have submit the patches again. :) -- wangbo Date: Sat, 31 Jan 2009 22:20:45 +1100From: xxcv07 at gmail.comTo: vlc-devel at videolan.orgSubject: Re: [vlc-devel] the new patch for real video has submit?? wrote: hi, i found there is a major change in real's demux, it is good and clean, thanks fenrir's work.but the change make the realvido can not correct buffer position , so the decoder can get the corrent data.so the patch fix the problem , and do a little fix to make it better. and a little howto doc...the patch has test on linux.( my ubuntu 8.10 )please test it.Program received signal SIGSEGV, Segmentation fault.[Switching to thread 4940.0x11d4]Open (p_this=0x11328ba0) at realvideo.c:255 in realvideo.c(gdb) Error: dll starting at 0x76db0000 not found.Error: dll starting at 0x76860000 not found.Error: dll starting at 0x76db0000 not found.Error: dll starting at 0x76ee0000 not found.255 realvideo.c: No such file or directory.bt#0 Open (p_this=0x11328ba0) at realvideo.c:255#1 0x6a5861ea in __module_need (p_this=0x11328ba0, hmm firstly its missing winsock2.h at include, then linked with -lws2_32Just crashed at this point,on line 255 if ( strlen(psz_paths[0]) == 0 ) _________________________________________________________________ ???????????????????????????? http://chunjie.live.com/?form=PANER01 -------------- next part -------------- An HTML attachment was scrubbed... URL: From silencewang at msn.com Sun Feb 1 10:47:17 2009 From: silencewang at msn.com (=?gb2312?B?zfWyqA==?=) Date: Sun, 1 Feb 2009 21:47:17 +1200 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: <4984340D.6050806@gmail.com> References: <4984340D.6050806@gmail.com> Message-ID: ok, attachment is patch, too. -- wangbo Date: Sat, 31 Jan 2009 22:20:45 +1100From: xxcv07 at gmail.comTo: vlc-devel at videolan.orgSubject: Re: [vlc-devel] the new patch for real video has submit?? wrote: hi, i found there is a major change in real's demux, it is good and clean, thanks fenrir's work.but the change make the realvido can not correct buffer position , so the decoder can get the corrent data.so the patch fix the problem , and do a little fix to make it better. and a little howto doc...the patch has test on linux.( my ubuntu 8.10 )please test it.Program received signal SIGSEGV, Segmentation fault.[Switching to thread 4940.0x11d4]Open (p_this=0x11328ba0) at realvideo.c:255 in realvideo.c(gdb) Error: dll starting at 0x76db0000 not found.Error: dll starting at 0x76860000 not found.Error: dll starting at 0x76db0000 not found.Error: dll starting at 0x76ee0000 not found.255 realvideo.c: No such file or directory.bt#0 Open (p_this=0x11328ba0) at realvideo.c:255#1 0x6a5861ea in __module_need (p_this=0x11328ba0, hmm firstly its missing winsock2.h at include, then linked with -lws2_32Just crashed at this point,on line 255 if ( strlen(psz_paths[0]) == 0 ) _________________________________________________________________ MSN??????????????????MSN??? http://im.live.cn/safe/ -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 0001-1-sicne-modules-demux-real.c-has-changed-the-realv.patch URL: From xxcv07 at gmail.com Sun Feb 1 11:08:49 2009 From: xxcv07 at gmail.com (xxcv) Date: Sun, 01 Feb 2009 21:08:49 +1100 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: References: <4984340D.6050806@gmail.com> Message-ID: <498574B1.5010504@gmail.com> ?? wrote: > ok, attachment is patch, too. Where's the updated patch you're posting the exact same patch file. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ogg.k.ogg.k at googlemail.com Sun Feb 1 11:23:02 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 1 Feb 2009 10:23:02 +0000 Subject: [vlc-devel] [PATCH] Fix skins2 compilation Message-ID: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Fix-skins2-compile-broken-by-8e0a2de24336bb68b6aee5.patch Type: application/octet-stream Size: 943 bytes Desc: not available URL: From ogg.k.ogg.k at googlemail.com Sun Feb 1 11:26:59 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 1 Feb 2009 10:26:59 +0000 Subject: [vlc-devel] [PATCH] Another part did not compile in skins2 (same problem) Message-ID: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Fix-another-location-having-the-same-does-not-compil.patch Type: application/octet-stream Size: 1054 bytes Desc: not available URL: From dominique at leuenberger.net Sun Feb 1 11:38:12 2009 From: dominique at leuenberger.net (Dominique Leuenberger) Date: Sun, 01 Feb 2009 11:38:12 +0100 Subject: [vlc-devel] [RFC] Plugins removal In-Reply-To: <200901312210.17763.rem@videolan.org> References: <200901312210.17763.rem@videolan.org> Message-ID: <1233484693.7251.2.camel@joshua> On Sat, 2009-01-31 at 22:10 +0200, R?mi Denis-Courmont wrote: > Different people (incredibly enough, not _me_) have recently suggested > removing this: > - VCDX: same comments as CDDAX, plus nobody uses Video CDs really. I agree, I do not use it very often, but I actually have some VCD and SVCD. Of course not very recent movies, and they can easily be replaced with DVDs. So either way, I'm fine if they go. Dominique From git at videolan.org Sun Feb 1 11:48:26 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 11:48:26 +0100 (CET) Subject: [vlc-devel] commit: Fix skins2 compile ( broken by 8e0a2de24336bb68b6aee5a701025bfb1e01ac24) (ogg.k.ogg.k ) Message-ID: <20090201104826.69CC02E7E5@skanda.videolan.org> vlc | branch: master | ogg.k.ogg.k | Sun Feb 1 10:03:18 2009 +0000| [679b54c7b9a6cd9e6ffc749f8f0fe1c0bb5f03eb] | committer: R?mi Denis-Courmont Fix skins2 compile (broken by 8e0a2de24336bb68b6aee5a701025bfb1e01ac24) Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=679b54c7b9a6cd9e6ffc749f8f0fe1c0bb5f03eb --- modules/gui/skins2/src/skin_main.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/skins2/src/skin_main.cpp b/modules/gui/skins2/src/skin_main.cpp index 9c48d99..a116e75 100644 --- a/modules/gui/skins2/src/skin_main.cpp +++ b/modules/gui/skins2/src/skin_main.cpp @@ -316,7 +316,7 @@ static void WindowClose( vlc_object_t *p_this ) vout_window_t *pWnd = (vout_window_t *)p_this; intf_thread_t *pIntf = (intf_thread_t *)p_this->p_private; - VlcProc::releaseWindow( pIntf, pWnd->handle ); + VlcProc::releaseWindow( pIntf, pWnd->handle.hwnd ); } //--------------------------------------------------------------------------- From git at videolan.org Sun Feb 1 11:48:49 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 11:48:49 +0100 (CET) Subject: [vlc-devel] commit: Fix another location having the same does-not-compile problem (ogg. k.ogg.k ) Message-ID: <20090201104849.0BCE52E800@skanda.videolan.org> vlc | branch: master | ogg.k.ogg.k | Sun Feb 1 10:07:36 2009 +0000| [e1916ffc0a281427ff91d27856e4b5404bd5d336] | committer: R?mi Denis-Courmont Fix another location having the same does-not-compile problem Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e1916ffc0a281427ff91d27856e4b5404bd5d336 --- modules/gui/skins2/src/vlcproc.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/skins2/src/vlcproc.cpp b/modules/gui/skins2/src/vlcproc.cpp index 8d6baab..f52f8de 100644 --- a/modules/gui/skins2/src/vlcproc.cpp +++ b/modules/gui/skins2/src/vlcproc.cpp @@ -616,7 +616,7 @@ int VlcProc::controlWindow( struct vout_window_t *pWnd, // Post a resize vout command CmdResizeVout *pCmd = - new CmdResizeVout( pThis->getIntf(), pWnd->handle, + new CmdResizeVout( pThis->getIntf(), pWnd->handle.hwnd, i_width, i_height ); AsyncQueue *pQueue = AsyncQueue::instance( pThis->getIntf() ); pQueue->push( CmdGenericPtr( pCmd ) ); From rem at videolan.org Sun Feb 1 11:49:08 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sun, 1 Feb 2009 12:49:08 +0200 Subject: [vlc-devel] [PATCH] Another part did not compile in skins2 (same problem) In-Reply-To: References: Message-ID: <200902011249.08465.rem@videolan.org> Merged both, thanks. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Sun Feb 1 11:57:19 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 11:57:19 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Interaction=3A_set_the_p=5Fparent?= =?utf-8?q?_field_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090201105719.A6D3E2E824@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 12:56:23 2009 +0200| [dd0ad6e7176d191b1647f9024cded30f1e518d0c] | committer: R?mi Denis-Courmont Interaction: set the p_parent field I wonder why it was there in the first place. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dd0ad6e7176d191b1647f9024cded30f1e518d0c --- src/interface/interaction.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/src/interface/interaction.c b/src/interface/interaction.c index dbc7d33..c3322c1 100644 --- a/src/interface/interaction.c +++ b/src/interface/interaction.c @@ -75,6 +75,7 @@ static int DialogSend( vlc_object_t *, interaction_dialog_t * ); #define DIALOG_INIT( type, err ) \ interaction_dialog_t* p_new = calloc( 1, sizeof( interaction_dialog_t ) ); \ if( !p_new ) return err; \ + p_new->p_parent = vlc_object_hold( p_this ); \ p_new->b_cancelled = false; \ p_new->i_status = NEW_DIALOG; \ p_new->i_flags = 0; \ @@ -467,6 +468,7 @@ static void DialogDestroy( interaction_dialog_t *p_dialog ) free( p_dialog->psz_default_button ); free( p_dialog->psz_alternate_button ); free( p_dialog->psz_other_button ); + vlc_object_release( p_dialog->p_parent ); free( p_dialog ); } From git at videolan.org Sun Feb 1 11:57:19 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 11:57:19 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Interaction=3A_avoid_thread_if_th?= =?utf-8?q?ere_is_no_provider_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090201105719.B727D2E83B@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 12:56:47 2009 +0200| [c00b6cab199aced4b4b748591e18cd70be10f6e8] | committer: R?mi Denis-Courmont Interaction: avoid thread if there is no provider > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c00b6cab199aced4b4b748591e18cd70be10f6e8 --- include/vlc_interface.h | 1 + src/interface/interaction.c | 52 +++++++++++++++---------------------------- 2 files changed, 19 insertions(+), 34 deletions(-) diff --git a/include/vlc_interface.h b/include/vlc_interface.h index f3813d2..d4ea0df 100644 --- a/include/vlc_interface.h +++ b/include/vlc_interface.h @@ -224,6 +224,7 @@ struct interaction_dialog_t interaction_t *p_interaction; ///< Parent interaction object vlc_object_t *p_parent; ///< The vlc object that asked //for interaction + intf_thread_t *p_interface; }; /** diff --git a/src/interface/interaction.c b/src/interface/interaction.c index c3322c1..f041878 100644 --- a/src/interface/interaction.c +++ b/src/interface/interaction.c @@ -476,16 +476,27 @@ static void DialogDestroy( interaction_dialog_t *p_dialog ) * if required */ static int DialogSend( vlc_object_t *p_this, interaction_dialog_t *p_dialog ) { - interaction_t *p_interaction = InteractionGet( p_dialog->p_parent ); + interaction_t *p_interaction; + intf_thread_t *p_intf; + + if( p_this->i_flags & OBJECT_FLAGS_NOINTERACT ) + return VLC_EGENERIC; + p_interaction = InteractionGet( p_dialog->p_parent ); if( !p_interaction ) return VLC_EGENERIC; - if( p_this->i_flags & OBJECT_FLAGS_NOINTERACT ) + p_intf = SearchInterface( p_interaction ); + if( p_intf == NULL ) { + p_dialog->i_return = DIALOG_DEFAULT; /* Give default answer */ + + /* Pretend we have hidden and destroyed it */ + p_dialog->i_status = HIDING_DIALOG; vlc_object_release( p_interaction ); - return VLC_EGENERIC; + return VLC_SUCCESS; } + p_dialog->p_interface = p_intf; if( config_GetInt( p_this, "interact" ) || p_dialog->i_flags & DIALOG_BLOCKING_ERROR || @@ -585,26 +596,6 @@ static void InteractionManage( interaction_t *p_interaction ) vlc_value_t val; int i_index; - /* Nothing to do */ - if( p_interaction->i_dialogs == 0 ) return; - - p_interaction->p_intf = SearchInterface( p_interaction ); - if( !p_interaction->p_intf ) - { - /* We mark all dialogs as answered with their "default" answer */ - for( i_index = 0 ; i_index < p_interaction->i_dialogs; i_index ++ ) - { - interaction_dialog_t *p_dialog = p_interaction->pp_dialogs[i_index]; - p_dialog->i_return = DIALOG_DEFAULT; /* Give default answer */ - - /* Pretend we have hidden and destroyed it */ - if( p_dialog->i_status == HIDDEN_DIALOG ) - p_dialog->i_status = DESTROYED_DIALOG; - else - p_dialog->i_status = HIDING_DIALOG; - } - } - for( i_index = 0 ; i_index < p_interaction->i_dialogs; i_index ++ ) { interaction_dialog_t *p_dialog = p_interaction->pp_dialogs[i_index]; @@ -614,23 +605,20 @@ static void InteractionManage( interaction_t *p_interaction ) /* Ask interface to hide it */ p_dialog->i_action = INTERACT_HIDE; val.p_address = p_dialog; - if( p_interaction->p_intf ) - var_Set( p_interaction->p_intf, "interaction", val ); + var_Set( p_dialog->p_interface, "interaction", val ); p_dialog->i_status = HIDING_DIALOG; break; case UPDATED_DIALOG: p_dialog->i_action = INTERACT_UPDATE; val.p_address = p_dialog; - if( p_interaction->p_intf ) - var_Set( p_interaction->p_intf, "interaction", val ); + var_Set( p_dialog->p_interface, "interaction", val ); p_dialog->i_status = SENT_DIALOG; break; case HIDDEN_DIALOG: if( !(p_dialog->i_flags & DIALOG_GOT_ANSWER) ) break; p_dialog->i_action = INTERACT_DESTROY; val.p_address = p_dialog; - if( p_interaction->p_intf ) - var_Set( p_interaction->p_intf, "interaction", val ); + var_Set( p_dialog->p_interface, "interaction", val ); break; case DESTROYED_DIALOG: /* Interface has now destroyed it, remove it */ @@ -644,13 +632,9 @@ static void InteractionManage( interaction_t *p_interaction ) p_dialog->i_action = INTERACT_NEW; val.p_address = p_dialog; - if( p_interaction->p_intf ) - var_Set( p_interaction->p_intf, "interaction", val ); + var_Set( p_dialog->p_interface, "interaction", val ); p_dialog->i_status = SENT_DIALOG; break; } } - - if( p_interaction->p_intf ) - vlc_object_release( p_interaction->p_intf ); } From git at videolan.org Sun Feb 1 12:01:50 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 12:01:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Interaction=3A_logically_dead_cod?= =?utf-8?q?e_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090201110150.0924C2E842@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 13:01:35 2009 +0200| [6b8d2191f4d3885d654e06d2f72818b5083b2f4c] | committer: R?mi Denis-Courmont Interaction: logically dead code > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6b8d2191f4d3885d654e06d2f72818b5083b2f4c --- src/interface/interaction.c | 18 ++---------------- 1 files changed, 2 insertions(+), 16 deletions(-) diff --git a/src/interface/interaction.c b/src/interface/interaction.c index f041878..93381dd 100644 --- a/src/interface/interaction.c +++ b/src/interface/interaction.c @@ -502,29 +502,15 @@ static int DialogSend( vlc_object_t *p_this, interaction_dialog_t *p_dialog ) p_dialog->i_flags & DIALOG_BLOCKING_ERROR || p_dialog->i_flags & DIALOG_NONBLOCKING_ERROR ) { - bool b_found = false; - int i; p_dialog->p_interaction = p_interaction; p_dialog->p_parent = p_this; /* Check if we have already added this dialog */ vlc_object_lock( p_interaction ); - for( i = 0 ; i< p_interaction->i_dialogs; i++ ) - { - if( p_interaction->pp_dialogs[i] == p_dialog ) - b_found = true; - } /* Add it to the queue, the main loop will send the orders to the * interface */ - if( ! b_found ) - { - INSERT_ELEM( p_interaction->pp_dialogs, - p_interaction->i_dialogs, - p_interaction->i_dialogs, - p_dialog ); - } - else - p_dialog->i_status = UPDATED_DIALOG; + INSERT_ELEM( p_interaction->pp_dialogs, p_interaction->i_dialogs, + p_interaction->i_dialogs, p_dialog ); if( p_dialog->i_type == INTERACT_DIALOG_TWOWAY ) /* Wait for answer */ { From git at videolan.org Sun Feb 1 12:04:31 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 12:04:31 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Interaction=3A_unused_parameter_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090201110431.BE9492E851@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 13:04:20 2009 +0200| [33614823610fea0403c0e635305a7ab1596e45a2] | committer: R?mi Denis-Courmont Interaction: unused parameter > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=33614823610fea0403c0e635305a7ab1596e45a2 --- src/interface/interaction.c | 21 ++++++++++----------- 1 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/interface/interaction.c b/src/interface/interaction.c index 93381dd..f0ebee5 100644 --- a/src/interface/interaction.c +++ b/src/interface/interaction.c @@ -70,7 +70,7 @@ static void* InteractionLoop( void * ); static void InteractionManage( interaction_t * ); static void DialogDestroy( interaction_dialog_t * ); -static int DialogSend( vlc_object_t *, interaction_dialog_t * ); +static int DialogSend( interaction_dialog_t * ); #define DIALOG_INIT( type, err ) \ interaction_dialog_t* p_new = calloc( 1, sizeof( interaction_dialog_t ) ); \ @@ -113,7 +113,7 @@ int __intf_UserFatal( vlc_object_t *p_this, bool b_blocking, else p_new->i_flags = DIALOG_NONBLOCKING_ERROR; - return DialogSend( p_this, p_new ); + return DialogSend( p_new ); } /** @@ -136,7 +136,7 @@ int __intf_UserWarn( vlc_object_t *p_this, p_new->i_flags = DIALOG_WARNING; - return DialogSend( p_this, p_new ); + return DialogSend( p_new ); } /** @@ -167,7 +167,7 @@ int __intf_UserYesNo( vlc_object_t *p_this, if( psz_other ) p_new->psz_other_button = strdup( psz_other ); - return DialogSend( p_this, p_new ); + return DialogSend( p_new ); } /** @@ -198,7 +198,7 @@ __intf_Progress( vlc_object_t *p_this, const char *psz_title, else p_new->i_flags = DIALOG_INTF_PROGRESS; - DialogSend( p_this, p_new ); + DialogSend( p_new ); return p_new; } @@ -277,7 +277,7 @@ int __intf_UserLoginPassword( vlc_object_t *p_this, p_new->i_flags = DIALOG_LOGIN_PW_OK_CANCEL; - i_ret = DialogSend( p_this, p_new ); + i_ret = DialogSend( p_new ); if( i_ret != DIALOG_CANCELLED && i_ret != VLC_EGENERIC ) { @@ -311,7 +311,7 @@ int __intf_UserStringInput( vlc_object_t *p_this, p_new->i_flags = DIALOG_PSZ_INPUT_OK_CANCEL; - i_ret = DialogSend( p_this, p_new ); + i_ret = DialogSend( p_new ); if( i_ret != DIALOG_CANCELLED ) { @@ -474,12 +474,12 @@ static void DialogDestroy( interaction_dialog_t *p_dialog ) /* Ask for the dialog to be sent to the user. Wait for answer * if required */ -static int DialogSend( vlc_object_t *p_this, interaction_dialog_t *p_dialog ) +static int DialogSend( interaction_dialog_t *p_dialog ) { interaction_t *p_interaction; intf_thread_t *p_intf; - if( p_this->i_flags & OBJECT_FLAGS_NOINTERACT ) + if( p_dialog->p_parent->i_flags & OBJECT_FLAGS_NOINTERACT ) return VLC_EGENERIC; p_interaction = InteractionGet( p_dialog->p_parent ); @@ -498,12 +498,11 @@ static int DialogSend( vlc_object_t *p_this, interaction_dialog_t *p_dialog ) } p_dialog->p_interface = p_intf; - if( config_GetInt( p_this, "interact" ) || + if( config_GetInt( p_interaction, "interact" ) || p_dialog->i_flags & DIALOG_BLOCKING_ERROR || p_dialog->i_flags & DIALOG_NONBLOCKING_ERROR ) { p_dialog->p_interaction = p_interaction; - p_dialog->p_parent = p_this; /* Check if we have already added this dialog */ vlc_object_lock( p_interaction ); From ivoire at via.ecp.fr Sun Feb 1 12:39:50 2009 From: ivoire at via.ecp.fr (=?iso-8859-1?Q?R=E9mi?= Duraffort) Date: Sun, 1 Feb 2009 12:39:50 +0100 Subject: [vlc-devel] [RFC] Plugins removal In-Reply-To: <200901312210.17763.rem@videolan.org> References: <200901312210.17763.rem@videolan.org> Message-ID: <20090201113950.GB20329@via.ecp.fr> Hello, > Different people (incredibly enough, not _me_) have recently suggested > removing this: > - CMML: unmaintained, buggy, mostly useless. I'm one of the guys who would like to remove this plugin because of the really buggy implementation. I'm planning to completelly rewrite this plugin later on (after the release). But for the moment this plugin is really bad and IMHO can cause security problems. Cheers -- ivoire | R?mi Duraffort From ogg.k.ogg.k at googlemail.com Sun Feb 1 13:13:34 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 1 Feb 2009 12:13:34 +0000 Subject: [vlc-devel] Updating a track description in the codec Message-ID: Hi, I want to change the description of a track in a codec's initialization code (turning category tag strings into user readable translatable strings). However, the descriptions (as displayed in the VLC menus) are generated (EsOutESVarUpdateGeneric) before the codec plugin is used. I could instead move that tag matching in the demuxer plugin, but it means I would have to duplicate that in each demuxer that can carry Kate tracks (eg, Matroska), and I would like to avoid that if possible. In the codec open, I can modify p_dec->fmt_out.psz_description, and I would need a way to tell VLC to update its descriptions then (eg, call EsOutESVarUpdateGeneric). Is there a clean way to do this ? Thanks From git at videolan.org Sun Feb 1 13:31:13 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 13:31:13 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Interaction=3A_remove_dummy_new_s?= =?utf-8?q?tate_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090201123113.212152E87E@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 14:30:47 2009 +0200| [6a25e4f971209a5262a6f2719c8fee21bf513ec2] | committer: R?mi Denis-Courmont Interaction: remove dummy new state > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6a25e4f971209a5262a6f2719c8fee21bf513ec2 --- include/vlc_interface.h | 3 +-- src/interface/interaction.c | 15 ++++++--------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/include/vlc_interface.h b/include/vlc_interface.h index d4ea0df..2c63d4a 100644 --- a/include/vlc_interface.h +++ b/include/vlc_interface.h @@ -252,8 +252,7 @@ enum /** Possible status */ enum { - NEW_DIALOG, ///< Just created - SENT_DIALOG, ///< Sent to interface + SENT_DIALOG=1, ///< Sent to interface UPDATED_DIALOG, ///< Update to send ANSWERED_DIALOG, ///< Got "answer" HIDING_DIALOG, ///< Hiding requested diff --git a/src/interface/interaction.c b/src/interface/interaction.c index f0ebee5..2ebb86a 100644 --- a/src/interface/interaction.c +++ b/src/interface/interaction.c @@ -77,7 +77,7 @@ static int DialogSend( interaction_dialog_t * ); if( !p_new ) return err; \ p_new->p_parent = vlc_object_hold( p_this ); \ p_new->b_cancelled = false; \ - p_new->i_status = NEW_DIALOG; \ + p_new->i_status = SENT_DIALOG; \ p_new->i_flags = 0; \ p_new->i_type = INTERACT_DIALOG_##type; \ p_new->psz_returned[0] = NULL; \ @@ -502,7 +502,12 @@ static int DialogSend( interaction_dialog_t *p_dialog ) p_dialog->i_flags & DIALOG_BLOCKING_ERROR || p_dialog->i_flags & DIALOG_NONBLOCKING_ERROR ) { + vlc_value_t val; + p_dialog->p_interaction = p_interaction; + p_dialog->i_action = INTERACT_NEW; + val.p_address = p_dialog; + var_Set( p_dialog->p_interface, "interaction", val ); /* Check if we have already added this dialog */ vlc_object_lock( p_interaction ); @@ -612,14 +617,6 @@ static void InteractionManage( interaction_t *p_interaction ) i_index--; DialogDestroy( p_dialog ); break; - case NEW_DIALOG: - /* This is truly a new dialog, send it. */ - - p_dialog->i_action = INTERACT_NEW; - val.p_address = p_dialog; - var_Set( p_dialog->p_interface, "interaction", val ); - p_dialog->i_status = SENT_DIALOG; - break; } } } From git at videolan.org Sun Feb 1 13:31:13 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 13:31:13 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Useless_property_=28_R=C3=A9mi_De?= =?utf-8?q?nis-Courmont_=29?= Message-ID: <20090201123113.3356E2E88B@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 14:31:02 2009 +0200| [448917d7ad42253f6b2eb54ba0255768e3e0634f] | committer: R?mi Denis-Courmont Useless property > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=448917d7ad42253f6b2eb54ba0255768e3e0634f --- src/interface/interaction.c | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/src/interface/interaction.c b/src/interface/interaction.c index 2ebb86a..53209b5 100644 --- a/src/interface/interaction.c +++ b/src/interface/interaction.c @@ -61,7 +61,6 @@ struct interaction_t int i_dialogs; ///< Number of dialogs interaction_dialog_t **pp_dialogs; ///< Dialogs intf_thread_t *p_intf; ///< Interface to use - int i_last_id; ///< Last attributed ID }; static interaction_t * InteractionGet( vlc_object_t * ); @@ -362,7 +361,6 @@ interaction_t * interaction_Init( libvlc_int_t *p_libvlc ) p_interaction->i_dialogs = 0; p_interaction->pp_dialogs = NULL; p_interaction->p_intf = NULL; - p_interaction->i_last_id = 0; vlc_cond_init( &p_interaction->wait ); From git at videolan.org Sun Feb 1 13:36:28 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 13:36:28 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Small_cleanup_=28_R=C3=A9mi_Denis?= =?utf-8?q?-Courmont_=29?= Message-ID: <20090201123628.B5F4F2E892@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 1 14:36:01 2009 +0200| [3230451120445d9f610e1749075a413c3e2dddc2] | committer: R?mi Denis-Courmont Small cleanup > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3230451120445d9f610e1749075a413c3e2dddc2 --- src/interface/interaction.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/src/interface/interaction.c b/src/interface/interaction.c index 53209b5..9103236 100644 --- a/src/interface/interaction.c +++ b/src/interface/interaction.c @@ -163,8 +163,7 @@ int __intf_UserYesNo( vlc_object_t *p_this, p_new->i_flags = DIALOG_YES_NO_CANCEL; p_new->psz_default_button = strdup( psz_default ); p_new->psz_alternate_button = strdup( psz_alternate ); - if( psz_other ) - p_new->psz_other_button = strdup( psz_other ); + p_new->psz_other_button = psz_other ? strdup( psz_other ) : NULL; return DialogSend( p_new ); } From fenrir at via.ecp.fr Sun Feb 1 13:37:53 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sun, 1 Feb 2009 13:37:53 +0100 Subject: [vlc-devel] Updating a track description in the codec In-Reply-To: References: Message-ID: <20090201123753.GA16413@via.ecp.fr> On Sun, Feb 01, 2009, ogg.k.ogg.k at googlemail.com wrote: > Hi, > > I want to change the description of a track in a codec's > initialization code (turning category tag strings into user > readable translatable strings). > > However, the descriptions (as displayed in the VLC menus) > are generated (EsOutESVarUpdateGeneric) before the > codec plugin is used. > > I could instead move that tag matching in the demuxer > plugin, but it means I would have to duplicate that in each > demuxer that can carry Kate tracks (eg, Matroska), and I > would like to avoid that if possible. > > In the codec open, I can modify p_dec->fmt_out.psz_description, > and I would need a way to tell VLC to update its descriptions > then (eg, call EsOutESVarUpdateGeneric). Is there a clean > way to do this ? You can set decoder_t->p_description which is used by a codec to export meta data. The EsOutUpdateInfo might need to be modified to support changing the description name of the track (probably by using decoder_t->p_description->psz_name). The only problem is that the codec open function is called only when the associated ES is selected. -- fenrir From ogg.k.ogg.k at googlemail.com Sun Feb 1 13:45:36 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 1 Feb 2009 12:45:36 +0000 Subject: [vlc-devel] Updating a track description in the codec In-Reply-To: <20090201123753.GA16413@via.ecp.fr> References: <20090201123753.GA16413@via.ecp.fr> Message-ID: > The only problem is that the codec open function is called only > when the associated ES is selected. Ah, that'd defeat my purpose (displaying localized categories for ease of track selection), good point. I guess I'll do it in the demuxer then. Thanks From git at videolan.org Sun Feb 1 14:33:23 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 14:33:23 +0100 (CET) Subject: [vlc-devel] commit: Win32: generate stacktrace on unhandled exception ( Geoffroy Couprie ) Message-ID: <20090201133323.E3E502E88B@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Sun Feb 1 14:30:40 2009 +0100| [f7c9acaebd4b620d8b4ed6aedbdae3a3ee52d38e] | committer: Geoffroy Couprie Win32: generate stacktrace on unhandled exception > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f7c9acaebd4b620d8b4ed6aedbdae3a3ee52d38e --- bin/winvlc.c | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 89 insertions(+), 0 deletions(-) diff --git a/bin/winvlc.c b/bin/winvlc.c index f8268df..de9a8d1 100644 --- a/bin/winvlc.c +++ b/bin/winvlc.c @@ -35,6 +35,13 @@ #include #include +#if !defined(UNDER_CE) && defined ( NDEBUG ) +# define _WIN32_IE 0x500 +# include +# include +LONG WINAPI vlc_exception_filter(struct _EXCEPTION_POINTERS *lpExceptionInfo); +#endif + #ifndef UNDER_CE static char *FromWide (const wchar_t *wide) { @@ -128,6 +135,10 @@ int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, libvlc_exception_init (&ex); libvlc_exception_init (&dummy); +#if !defined( UNDER_CE ) && defined ( NDEBUG ) + SetUnhandledExceptionFilter(vlc_exception_filter); +#endif + /* Initialize libvlc */ libvlc_instance_t *vlc; vlc = libvlc_new (argc - 1, (const char **)argv + 1, &ex); @@ -149,3 +160,81 @@ int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, (void)hInstance; (void)hPrevInstance; (void)lpCmdLine; (void)nCmdShow; return ret; } + +#if !defined( UNDER_CE ) && defined ( NDEBUG ) +/***************************************************************************** + * vlc_exception_filter: handles unhandled exceptions, like segfaults + *****************************************************************************/ +LONG WINAPI vlc_exception_filter(struct _EXCEPTION_POINTERS *lpExceptionInfo) +{ + wchar_t wdir[MAX_PATH]; + + fprintf( stderr, "unhandled vlc exception\n" ); + + if( S_OK != SHGetFolderPathW( NULL, + CSIDL_APPDATA | CSIDL_FLAG_CREATE, + NULL, SHGFP_TYPE_CURRENT, wdir ) ) + fprintf( stderr, "Can't open the vlc conf PATH\n" ); + + swprintf( wdir+wcslen( wdir ), L"%s", L"\\vlc\\crashdump" ); + + FILE * fd = _wfopen ( wdir, L"w, ccs=UTF-8" ); + + if( !fd ) + fprintf( stderr, "\nerror while opening file" ); + + OSVERSIONINFO osvi; + ZeroMemory( &osvi, sizeof(OSVERSIONINFO) ); + osvi.dwOSVersionInfoSize = sizeof( OSVERSIONINFO ); + GetVersionEx( &osvi ); + + fwprintf( fd, L"[Version]\n0S=%d.%d.%d.%d.%s\nVLC=%s", osvi.dwMajorVersion, + osvi.dwMinorVersion, + osvi.dwBuildNumber, + osvi.dwPlatformId, + osvi.szCSDVersion, + VERSION_MESSAGE); + + const CONTEXT *const pContext = (const CONTEXT *)lpExceptionInfo->ContextRecord; + const EXCEPTION_RECORD *const pException = (const EXCEPTION_RECORD *)lpExceptionInfo->ExceptionRecord; + /*No nested exceptions for now*/ + fwprintf( fd, L"\n\n[Exceptions]\n%08x at %08x",pException->ExceptionCode, + pException->ExceptionAddress ); + if( pException->NumberParameters > 0 ) + { + unsigned int i; + for( i = 0; i < pException->NumberParameters; i++ ) + fprintf( fd, " | %08x", pException->ExceptionInformation[i] ); + } + + fwprintf( fd, L"\n\n[CONTEXT]\nEDI:%08x\nESI:%08x\n" \ + "EBX:%08x\nEDX:%08xn\nECX:%08x\nEAX:%08x\n" \ + "EBP:%08x\nEIP:%08x\nESP:%08x\n", + pContext->Edi,pContext->Esi,pContext->Ebx, + pContext->Edx,pContext->Ecx,pContext->Eax, + pContext->Ebp,pContext->Eip,pContext->Esp ); + + fwprintf( fd, L"\n\n[STACKTRACE]\n#EIP|base|module\n" ); + + DWORD pEbp = pContext->Ebp; + DWORD caller = *((DWORD*)pEbp + 1) ; + + wchar_t module[ 256 ]; + + do + { + MEMORY_BASIC_INFORMATION mbi ; + VirtualQuery( (DWORD *)caller, &mbi, sizeof( mbi ) ) ; + HINSTANCE hInstance = mbi.AllocationBase; + GetModuleFileName( hInstance, module, 256 ) ; + fwprintf( fd, L"%08x|%08x|%s\n", caller, hInstance, module ); + pEbp = *(DWORD*)pEbp ; + caller = *((DWORD*)pEbp + 1) ; + /*The last EBP points to NULL!*/ + }while(caller); + + fclose( fd ); + fflush( stderr ); + exit( 1 ); +} +#endif From geo.couprie at gmail.com Sun Feb 1 14:39:07 2009 From: geo.couprie at gmail.com (Geoffroy Couprie) Date: Sun, 1 Feb 2009 14:39:07 +0100 Subject: [vlc-devel] [PATCH]Win32: Generate stacktrace on unhandled exception In-Reply-To: <64431a31ce5a341b8d22043fb581d4b4@chewa.net> References: <20090130120730.GB14808@videolan.org> <64431a31ce5a341b8d22043fb581d4b4@chewa.net> Message-ID: On Fri, Jan 30, 2009 at 4:03 PM, R?mi Denis-Courmont wrote: > > By the way, I don't know if Windows has lower-level yet format-capable > output functions...? Using C run-time FILE pointer I/O from a crash handler > is perhaps not the safest idea... > I didn't see any function like that. It's still possible to work with buffers, but it's reinventing the wheel. That's what bothers me the most with crash reporting: I don't know what I can use. I can't predict if the process memory is screwed up, or if there's enough memory to create the crashdump. Anyway, when this function is called, we're in the middle of a crash, so we can't assume everything will work fine. From ogg.k.ogg.k at googlemail.com Sun Feb 1 14:53:40 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 1 Feb 2009 13:53:40 +0000 Subject: [vlc-devel] [PATCH] Translate Kate category tags to display a more user friendly subtitles selection menu Message-ID: In the Ogg demuxer only, as the mkv one doesn't seem to use the category at the moment, but the table and code are in a separate file so it's ready to be reused. So you'll get something like 'Sous-titres [Français]' in the subtitles menu. Thanks -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Translate-Kate-category-tags-to-display-a-more-user.patch Type: application/octet-stream Size: 6573 bytes Desc: not available URL: From git at videolan.org Sun Feb 1 15:05:13 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 15:05:13 +0100 (CET) Subject: [vlc-devel] commit: Changed vlc_meta_SetTracknum to *Num for consistency. ( Laurent Aimar ) Message-ID: <20090201140513.3EE012E8E8@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 1 14:46:43 2009 +0100| [2a62ce12fb74d2d3eb57d6ef66186e093b9cdaec] | committer: Laurent Aimar Changed vlc_meta_SetTracknum to *Num for consistency. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2a62ce12fb74d2d3eb57d6ef66186e093b9cdaec --- include/vlc_meta.h | 2 +- modules/demux/mp4/mp4.c | 2 +- modules/meta_engine/id3tag.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/vlc_meta.h b/include/vlc_meta.h index 124b8ec..e5b11b8 100644 --- a/include/vlc_meta.h +++ b/include/vlc_meta.h @@ -80,7 +80,7 @@ struct vlc_meta_t #define vlc_meta_SetGenre( meta, b ) vlc_meta_Set( meta, vlc_meta_Genre, b ) #define vlc_meta_SetCopyright( meta, b ) vlc_meta_Set( meta, vlc_meta_Copyright, b ) #define vlc_meta_SetAlbum( meta, b ) vlc_meta_Set( meta, vlc_meta_Album, b ) -#define vlc_meta_SetTracknum( meta, b ) vlc_meta_Set( meta, vlc_meta_TrackNumber, b ) +#define vlc_meta_SetTrackNum( meta, b ) vlc_meta_Set( meta, vlc_meta_TrackNumber, b ) #define vlc_meta_SetDescription( meta, b ) vlc_meta_Set( meta, vlc_meta_Description, b ) #define vlc_meta_SetRating( meta, b ) vlc_meta_Set( meta, vlc_meta_Rating, b ) #define vlc_meta_SetDate( meta, b ) vlc_meta_Set( meta, vlc_meta_Date, b ) diff --git a/modules/demux/mp4/mp4.c b/modules/demux/mp4/mp4.c index 1bab7f4..de0b001 100644 --- a/modules/demux/mp4/mp4.c +++ b/modules/demux/mp4/mp4.c @@ -903,7 +903,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args ) break; case FOURCC_0xa9trk: /* Track */ - SET( vlc_meta_SetTracknum ); + SET( vlc_meta_SetTrackNum ); break; case FOURCC_0xa9cmt: /* Commment */ diff --git a/modules/meta_engine/id3tag.c b/modules/meta_engine/id3tag.c index fd02101..78a85ce 100644 --- a/modules/meta_engine/id3tag.c +++ b/modules/meta_engine/id3tag.c @@ -215,7 +215,7 @@ static void ParseID3Tag( demux_t *p_demux, const uint8_t *p_data, int i_size ) } else if( DESCR_IS( "Track number/position in set" ) ) { - vlc_meta_SetTracknum( p_meta, psz_temp ); + vlc_meta_SetTrackNum( p_meta, psz_temp ); } else if( DESCR_IS( "Album/movie/show title" ) ) { @@ -345,7 +345,7 @@ static void ParseAPEvXTag( demux_t *p_demux, const uint8_t *p_data, int i_data ) char *p = strchr( psz_value, '/' ); if( p ) *p++ = '\0'; - vlc_meta_SetTracknum( p_meta, psz_value ); + vlc_meta_SetTrackNum( p_meta, psz_value ); } else if( IS( "Comment" ) ) vlc_meta_SetDescription( p_meta, psz_value ); From git at videolan.org Sun Feb 1 15:05:13 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 15:05:13 +0100 (CET) Subject: [vlc-devel] commit: Improved CDDB information support in cdda.c (Laurent Aimar ) Message-ID: <20090201140513.516FF2E8F1@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 1 14:45:28 2009 +0100| [5ede35cb7b65f61558c00d2527afd5f0e9586e65] | committer: Laurent Aimar Improved CDDB information support in cdda.c > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5ede35cb7b65f61558c00d2527afd5f0e9586e65 --- modules/access/cdda.c | 20 ++++++++++++++++++++ modules/meta_engine/taglib.cpp | 2 +- 2 files changed, 21 insertions(+), 1 deletions(-) diff --git a/modules/access/cdda.c b/modules/access/cdda.c index 6748651..fb6a714 100644 --- a/modules/access/cdda.c +++ b/modules/access/cdda.c @@ -457,8 +457,28 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) if( psz_artist ) input_item_SetArtist( p_input_item, psz_artist ); } + + const char *psz_album = cddb_disc_get_title( p_sys->p_disc ); + if( psz_album && *psz_album ) + input_item_SetAlbum( p_input_item, psz_album ); + + const unsigned i_year = cddb_disc_get_year( p_sys->p_disc ); + if( i_year > 0 ) + { + char psz_date[4+1]; + snprintf( psz_date, sizeof(psz_date), "%u", i_year ); + input_item_SetDate( p_input_item, psz_date ); + } + + const char *psz_genre = cddb_disc_get_genre( p_sys->p_disc ); + if( psz_genre && *psz_genre ) + input_item_SetGenre( p_input_item, psz_genre ); } #endif + char psz_num[3+1]; + snprintf( psz_num, sizeof(psz_num), "%d", 1+i ); + input_item_SetTrackNum( p_input_item, psz_num ); + input_item_AddSubItem( p_current, p_input_item ); vlc_gc_decref( p_input_item ); free( psz_uri ); free( psz_opt ); free( psz_name ); diff --git a/modules/meta_engine/taglib.cpp b/modules/meta_engine/taglib.cpp index 60b4a94..0a62e66 100644 --- a/modules/meta_engine/taglib.cpp +++ b/modules/meta_engine/taglib.cpp @@ -366,7 +366,7 @@ static int ReadMeta( vlc_object_t* p_this) SET( comment, Description ); SET( genre, Genre ); SETINT( year, Date ); - SETINT( track, Tracknum ); + SETINT( track, TrackNum ); #undef SETINT #undef SET From fenrir at via.ecp.fr Sun Feb 1 15:08:39 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sun, 1 Feb 2009 15:08:39 +0100 Subject: [vlc-devel] commit: Improved CDDB information support in cdda.c (Laurent Aimar ) In-Reply-To: <20090201140513.516FF2E8F1@skanda.videolan.org> References: <20090201140513.516FF2E8F1@skanda.videolan.org> Message-ID: <20090201140839.GA5621@via.ecp.fr> Hi On Sun, Feb 01, 2009, git version control wrote: > diff --git a/modules/meta_engine/taglib.cpp b/modules/meta_engine/taglib.cpp > index 60b4a94..0a62e66 100644 > --- a/modules/meta_engine/taglib.cpp > +++ b/modules/meta_engine/taglib.cpp > @@ -366,7 +366,7 @@ static int ReadMeta( vlc_object_t* p_this) > SET( comment, Description ); > SET( genre, Genre ); > SETINT( year, Date ); > - SETINT( track, Tracknum ); > + SETINT( track, TrackNum ); Sorry for this one, it should have been in the previous commit (wrong squash) -- fenrir From jb at videolan.org Sun Feb 1 16:43:37 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 1 Feb 2009 16:43:37 +0100 Subject: [vlc-devel] commit: i18n: Don't translate language names (Christophe Mutricy ) In-Reply-To: <20090131230004.127B42E799@skanda.videolan.org> References: <20090131230004.127B42E799@skanda.videolan.org> Message-ID: <20090201154337.GA16513@videolan.org> On Sun, Feb 01, 2009 at 12:00:04AM +0100, git version control wrote : > i18n: Don't translate language names Thanks! Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Sun Feb 1 16:45:23 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 1 Feb 2009 16:45:23 +0100 Subject: [vlc-devel] commit: Improved CDDB information support in cdda.c (Laurent Aimar ) In-Reply-To: <20090201140513.516FF2E8F1@skanda.videolan.org> References: <20090201140513.516FF2E8F1@skanda.videolan.org> Message-ID: <20090201154523.GB16513@videolan.org> On Sun, Feb 01, 2009 at 03:05:13PM +0100, git version control wrote : > vlc | branch: master | Laurent Aimar | Sun Feb 1 14:45:28 2009 +0100| [5ede35cb7b65f61558c00d2527afd5f0e9586e65] | committer: Laurent Aimar > > Improved CDDB information support in cdda.c Anyone willing to help to port/re-port libcddb for win32? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Sun Feb 1 17:57:34 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 17:57:34 +0100 (CET) Subject: [vlc-devel] commit: Enable telx decoder when zvbi is disabled. (Laurent Aimar ) Message-ID: <20090201165734.6B3E52E8A1@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 1 17:55:14 2009 +0100| [4c0c65f6a0b5906ee43062fd70c25f1f010740b6] | committer: Laurent Aimar Enable telx decoder when zvbi is disabled. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4c0c65f6a0b5906ee43062fd70c25f1f010740b6 --- extras/package/win32/configure-common.sh | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/extras/package/win32/configure-common.sh b/extras/package/win32/configure-common.sh index 00a57bf..8453c56 100755 --- a/extras/package/win32/configure-common.sh +++ b/extras/package/win32/configure-common.sh @@ -32,5 +32,5 @@ --enable-activex \ --disable-gnomevfs --disable-hal --disable-gtk \ --disable-cddax --disable-vcdx \ - --disable-libcddb --disable-dvb --disable-zvbi \ + --disable-libcddb --disable-dvb --disable-zvbi --enable-telx\ --disable-pulse From jb at videolan.org Sun Feb 1 17:58:27 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 1 Feb 2009 17:58:27 +0100 Subject: [vlc-devel] [RFC] Plugins removal In-Reply-To: <200901312210.17763.rem@videolan.org> References: <200901312210.17763.rem@videolan.org> Message-ID: <20090201165827.GA31483@videolan.org> On Sat, Jan 31, 2009 at 10:10:17PM +0200, R?mi Denis-Courmont wrote : > - CMML: unmaintained, buggy, mostly useless. Well, we don't have replacements for this yet, do we? > - CDDAX: unmaintained, horrible, caused security issues, > depends on libcdio, minimal functional gains over non-cdio plugins. > - VCDX: same comments as CDDAX, plus nobody uses Video CDs really. Even though CDDAX has CD-Text support, I do agree we should remove those. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Sun Feb 1 18:20:06 2009 From: git at videolan.org (git version control) Date: Sun, 1 Feb 2009 18:20:06 +0100 (CET) Subject: [vlc-devel] commit: Skins2: change DTD to add possibility to store ID for Anchors, Panels and Groups. (Daniel Dreibrodt ) Message-ID: <20090201172006.B3CFB2E833@skanda.videolan.org> vlc | branch: master | Daniel Dreibrodt | Sun Feb 1 18:19:48 2009 +0100| [8a5a4a2d2354e3fafe882fbce38d07b37034c1ce] | committer: Jean-Baptiste Kempf Skins2: change DTD to add possibility to store ID for Anchors, Panels and Groups. It adds possibility to store IDs for Anchors, Panels and Groups. This does not change the way skins2 works I believe. It just stops the XML parser from complaining about non standard skins when they have set IDs for those elements. And setting IDs for them is vital in the skin editor, as it differentiates between different elements in the skin just by their ID. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8a5a4a2d2354e3fafe882fbce38d07b37034c1ce --- share/skins2/skin.dtd | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/share/skins2/skin.dtd b/share/skins2/skin.dtd index 5a7ff14..3faa609 100644 --- a/share/skins2/skin.dtd +++ b/share/skins2/skin.dtd @@ -92,12 +92,14 @@ -- Mark Bidewell http://www.linkedin.com/in/markbidewell -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Remove-leading-sout-from-strings-returned-by-out.patch Type: text/x-patch Size: 1352 bytes Desc: not available URL: From fenrir at via.ecp.fr Sun Feb 1 19:06:39 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sun, 1 Feb 2009 19:06:39 +0100 Subject: [vlc-devel] [PATCH] Translate Kate category tags to display a more user friendly subtitles selection menu In-Reply-To: References: Message-ID: <20090201180639.GA20026@via.ecp.fr> Hi, On Sun, Feb 01, 2009, ogg.k.ogg.k at googlemail.com wrote: > In the Ogg demuxer only, as the mkv one doesn't seem to use > the category at the moment, but the table and code are in a > separate file so it's ready to be reused. > So you'll get something like 'Sous-titres [Français]' in the > subtitles menu. I think that categories.* should be changed to kate.* as they are kate specific. > diff --git a/modules/demux/categories.c b/modules/demux/categories.c > new file mode 100644 > index 0000000..b6eb2fb > --- /dev/null > +++ b/modules/demux/categories.c > @@ -0,0 +1,75 @@ > +/***************************************************************************** > + * categories.c : maps well known category tags to translated strings. > + ***************************************************************************** > + * Copyright (C) 2009 ogg.k.ogg.k at googlemail.com > + * $Id$ > + * > + * Authors: ogg.k.ogg.k at googlemail.com > + * > + * 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 > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program; if not, write to the Free Software > + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. > + *****************************************************************************/ > + > +/***************************************************************************** > + * Preamble > + *****************************************************************************/ > +#ifdef HAVE_CONFIG_H > +# include "config.h" > +#endif > + > +#include What is it used for ? > diff --git a/modules/demux/categories.h b/modules/demux/categories.h > new file mode 100644 > index 0000000..d7cd1d2 > --- /dev/null > +++ b/modules/demux/categories.h > @@ -0,0 +1,30 @@ > +/***************************************************************************** > + * categories.h : maps well known category tags to translated strings. > + ***************************************************************************** > + * Copyright (C) 2009 ogg.k.ogg.k at googlemail.com > + * $Id$ > + * > + * Authors: ogg.k.ogg.k at googlemail.com > + * > + * 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 > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program; if not, write to the Free Software > + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. > + *****************************************************************************/ > + > +#ifndef CATEGORIES_H_ You can keep it, but is useless here as there is no risk to include it multiple times. > +#define CATEGORIES_H_ We are used to define such ones as 1 (if you keep it). > +extern const char *FindKateCategoryName( const char *psz_tag ); extern is useless for a function. > diff --git a/modules/demux/ogg.c b/modules/demux/ogg.c > index 577934c..b2a87b8 100644 > --- a/modules/demux/ogg.c > +++ b/modules/demux/ogg.c > @@ -41,6 +41,7 @@ > #include > #include > #include "vorbis.h" > +#include "categories.h" > > /***************************************************************************** > * Module descriptor > @@ -1696,6 +1697,7 @@ static void Ogg_ReadKateHeader( logical_stream_t *p_stream, > int32_t gnum; > int32_t gden; > int n; > + char *psz_desc; You probably need const. > > p_stream->fmt.i_cat = SPU_ES; > p_stream->fmt.i_codec = VLC_FOURCC( 'k','a','t','e' ); > @@ -1734,6 +1736,14 @@ static void Ogg_ReadKateHeader( logical_stream_t *p_stream, > for( n = 0; n < 16; ++n ) Just for consistency in this file, could you use n++ ? > p_stream->fmt.psz_description[n] = oggpack_read(&opb,8); > p_stream->fmt.psz_description[15] = 0; /* just in case */ > + > + /* Now find a localized user readable description for this category */ > + psz_desc = strdup(FindKateCategoryName(p_stream->fmt.psz_description)); > + if( psz_desc ) > + { > + free( p_stream->fmt.psz_description ); > + p_stream->fmt.psz_description = psz_desc; > + } > } > else > { -- fenrir From mark.bidewell at alumni.clemson.edu Sun Feb 1 19:30:00 2009 From: mark.bidewell at alumni.clemson.edu (Mark Bidewell) Date: Sun, 1 Feb 2009 13:30:00 -0500 Subject: [vlc-devel] [PATCH] Remove leading ':sout=' from strings returned by output selection dialog Message-ID: My apologies for submitting this twice, but I used the wrong subject. -- Mark Bidewell http://www.linkedin.com/in/markbidewell -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Remove-leading-sout-from-strings-returned-by-out.patch Type: text/x-patch Size: 1352 bytes Desc: not available URL: From tigeli at gmail.com Sun Feb 1 00:07:58 2009 From: tigeli at gmail.com (=?ISO-8859-1?Q?Pasi_Sj=F6holm?=) Date: Sun, 1 Feb 2009 01:07:58 +0200 Subject: [vlc-devel] [VLC] #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. In-Reply-To: <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> References: <042.3db1317faa08480069d341ebd37bd8c9@videolan.org> <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> Message-ID: <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> On Sat, Jan 31, 2009 at 12:17 PM, VLC wrote: > #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. > -----------------------+---------------------------------------------------- > Reporter: tigeli | Owner: courmisch > Type: defect | Status: closed > Priority: normal | Milestone: Bugs paradize > Component: Demuxers | Version: master > Severity: normal | Resolution: invalid > Keywords: | Platform: Linux > Difficulty: unknown | Wip: Not started > -----------------------+---------------------------------------------------- > Changes (by courmisch): > > * status: reopened => closed > * resolution: => invalid > > Comment: > > It would make no sense to parse the file twice. This is a libmodplug bug > until proven otherwise. FULL POINT. Blah, even mplayer is doing better job and not trying interpret files by extensions but the data inside. It's does not matter is it a libmodplug bug or not, VLC should not crash to 3rd party bug when it could just feed the file to correct demuxer instead of doing "the file extensions are cool". Whatever.. From ogg.k.ogg.k at googlemail.com Sun Feb 1 19:46:51 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 1 Feb 2009 18:46:51 +0000 Subject: [vlc-devel] [PATCH] Translate Kate category tags to display a more user friendly subtitles selection menu In-Reply-To: <20090201180639.GA20026@via.ecp.fr> References: <20090201180639.GA20026@via.ecp.fr> Message-ID: Thanks for the quick review, >> +#include > What is it used for ? size_t >> + char *psz_desc; > You probably need const. No, as it will receive a (and pass to another) allocated string, which will be freed eventually. I will post a version with the other feedback incorporated when my tree's back on HEAD (I'm in a git bisect just now). Thanks From fenrir at via.ecp.fr Sun Feb 1 19:49:54 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sun, 1 Feb 2009 19:49:54 +0100 Subject: [vlc-devel] [PATCH] Translate Kate category tags to display a more user friendly subtitles selection menu In-Reply-To: References: <20090201180639.GA20026@via.ecp.fr> Message-ID: <20090201184954.GA6498@via.ecp.fr> On Sun, Feb 01, 2009, ogg.k.ogg.k at googlemail.com wrote: > >> +#include > > What is it used for ? > > size_t ok. > >> + char *psz_desc; > > You probably need const. > > No, as it will receive a (and pass to another) allocated > string, which will be freed eventually. Yes, sorry for that. I mislooked it. -- fenrir From fenrir at via.ecp.fr Sun Feb 1 19:55:28 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sun, 1 Feb 2009 19:55:28 +0100 Subject: [vlc-devel] [VLC] #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. In-Reply-To: <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> References: <042.3db1317faa08480069d341ebd37bd8c9@videolan.org> <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> Message-ID: <20090201185528.GB6498@via.ecp.fr> On Sun, Feb 01, 2009, Pasi Sj?holm wrote: > On Sat, Jan 31, 2009 at 12:17 PM, VLC wrote: > > #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. > > -----------------------+---------------------------------------------------- > > Reporter: tigeli | Owner: courmisch > > Type: defect | Status: closed > > Priority: normal | Milestone: Bugs paradize > > Component: Demuxers | Version: master > > Severity: normal | Resolution: invalid > > Keywords: | Platform: Linux > > Difficulty: unknown | Wip: Not started > > -----------------------+---------------------------------------------------- > > Changes (by courmisch): > > > > * status: reopened => closed > > * resolution: => invalid > > > > Comment: > > > > It would make no sense to parse the file twice. This is a libmodplug bug > > until proven otherwise. FULL POINT. > > Blah, even mplayer is doing better job and not trying interpret files > by extensions but the data inside. > It's does not matter is it a libmodplug bug or not, VLC should not > crash to 3rd party bug when it could just feed the file to correct > demuxer instead of doing "the file extensions are cool". Whatever.. VLC tries first to detect content ignoring extension, and fall back to extension when it cannot. One of the problem, is that PS is hard to detect in a reliable way, and that mod demuxer only check extensions... Now, mod demuxer has a priority of 10, the automatic PS dectection has a priority of 8. Does anyone know if the priority of mod can be decreased below (<) 8 ? (I would avoid increasing PS because of lot of demuxers use 10). -- fenrir From xxcv07 at gmail.com Sun Feb 1 23:02:46 2009 From: xxcv07 at gmail.com (xxcv) Date: Mon, 02 Feb 2009 09:02:46 +1100 Subject: [vlc-devel] commit: Enable telx decoder when zvbi is disabled. (Laurent Aimar ) In-Reply-To: <20090201165734.6B3E52E8A1@skanda.videolan.org> References: <20090201165734.6B3E52E8A1@skanda.videolan.org> Message-ID: <49861C06.9080706@gmail.com> > @@ -32,5 +32,5 @@ > --enable-activex \ > --disable-gnomevfs --disable-hal --disable-gtk \ > --disable-cddax --disable-vcdx \ > - --disable-libcddb --disable-dvb --disable-zvbi \ > + --disable-libcddb --disable-dvb --disable-zvbi --enable-telx\ > --disable-pulse > > Hmm, there's zvbi double entry. *--enable-zvbi* --disable-telx \ --enable-dvdread --with-dvdnav-config-path=/usr/win32/bin \ --enable-shout \ --enable-goom \ --enable-caca --with-caca-config-path=/usr/win32/bin \ --enable-portaudio \ --enable-sdl --with-sdl-config-path=/usr/win32/bin \ --enable-qt4 \ --disable-wxwidgets \ --with-freetype-config-path=/usr/win32/bin \ --with-fribidi-config-path=/usr/win32/bin \ --with-xml2-config-path=/usr/win32/bin \ --enable-mozilla --with-mozilla-sdk-path=/usr/win32/gecko-sdk \ --enable-activex \ --disable-gnomevfs --disable-hal --disable-gtk \ --disable-cddax --disable-vcdx \ --disable-libcddb --disable-dvb *--disable-zvbi *\ -------------- next part -------------- An HTML attachment was scrubbed... URL: From ogg.k.ogg.k at googlemail.com Sun Feb 1 23:29:41 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 1 Feb 2009 22:29:41 +0000 Subject: [vlc-devel] [PATCH] Translate Kate category tags to display a more user friendly subtitles selection menu In-Reply-To: <20090201184954.GA6498@via.ecp.fr> References: <20090201180639.GA20026@via.ecp.fr> <20090201184954.GA6498@via.ecp.fr> Message-ID: Revised version attached. Thanks for the quick review. -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Translate-Kate-category-tags-to-display-a-more-user.patch Type: application/octet-stream Size: 7356 bytes Desc: not available URL: From noxelia at gmail.com Mon Feb 2 01:43:32 2009 From: noxelia at gmail.com (basos g) Date: Mon, 2 Feb 2009 02:43:32 +0200 Subject: [vlc-devel] [Patch] 4 cumulative patches before the core freeze dead-line Message-ID: <9d98edc70902011643y262ba653q33bc4292b28e685a@mail.gmail.com> I resent cause i couldnot see the previous msg in gmane archives.. 2009/1/31 basos g : > #1 Libvlc addition - this one is posted several times but no-one > cited. It is tested and works fine... > [PATCH] libvlc_config_update was added to libvlc API > > It updates realtime configuration parameters > taken in the formatof argv > > > > #2 mega-patch for text_style -- this is a patch rework after fenrir comments > [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules > > text_style_New -- allocates default text style > text_style_Dup -- allocates and copies text style > text_style_Copy -- copies text style > text_style_Delete -- deallocates text style > > NOTE that the vout_ShowText* functions > will take a p_style and copy it internally so you have > to free in the caller function. Other modules where p_style > was malloced there are now fixed to copy before calling > the sout* functions. > > > > #3 > [PATCH] FIX sub filter dead lock issue -- a recently occured dead lock issue > > A dead lock was created when adding an spu filter (like marq) > because the same mutex was used for spu->p stuff and sub filter > chain (p_spu->p->p_chain). A new mutex was added for to update > the filter chain. > Maybe in the future the subfiltercallback code will just update a > string and the real filter update would take place in the vout > code (just like video filter). Then this mutext should only > lock that string and remove it from spu_SortSubPictures. > > > > #4 just some informative only mini-patch for better inheritance understanding > [PATCH] Variable inheritance hints > > Added a comment to describe inheritable variables > Added debug messages to get clues about variable > inheritance final source > > > > PS: Please, i'd like all these patches comited or give a good rejection reason. > > basos > From git at videolan.org Mon Feb 2 02:01:53 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 02:01:53 +0100 (CET) Subject: [vlc-devel] commit: Qt: small visual change in Open Disk (Jean-Baptiste Kempf ) Message-ID: <20090202010153.AAE412E8D4@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 1 16:57:53 2009 -0800| [a2e0ccb5b3831f013d97f75914b85d3d124196b0] | committer: Jean-Baptiste Kempf Qt: small visual change in Open Disk > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a2e0ccb5b3831f013d97f75914b85d3d124196b0 --- modules/gui/qt4/ui/open_disk.ui | 123 +++++++++++++++++++-------------------- 1 files changed, 61 insertions(+), 62 deletions(-) diff --git a/modules/gui/qt4/ui/open_disk.ui b/modules/gui/qt4/ui/open_disk.ui index 195fc87..b313a08 100644 --- a/modules/gui/qt4/ui/open_disk.ui +++ b/modules/gui/qt4/ui/open_disk.ui @@ -6,8 +6,8 @@ 0 0 - 521 - 336 + 500 + 311 @@ -65,7 +65,7 @@ - 40 + 20 20 @@ -85,20 +85,20 @@ - 40 + 20 20 - + SVCD/VCD - + Qt::Horizontal @@ -121,70 +121,64 @@ - - - - _("Disc device") - - - deviceCombo - - - - + Qt::Horizontal - - - - - 0 - 0 - - - - true - - - - - - - - 0 - 0 - - - - - - - - - 0 - 0 - - - - _("Browse...") - - + + + + + + _("Disc device") + + + deviceCombo + + + + + + + + 0 + 0 + + + + true + + + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + _("Browse...") + + + + - dvdRadioButton - dvdsimple - line - deviceLabel - deviceCombo - ejectButton - browseDiscButton - audioCDRadioButton - vcdRadioButton - @@ -357,6 +351,11 @@ + subtitlesLabel + subtitlesSpin + audioLabel + audioSpin + diskGroupBox From git at videolan.org Mon Feb 2 02:01:53 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 02:01:53 +0100 (CET) Subject: [vlc-devel] commit: Qt: remove unneeded debug. (Jean-Baptiste Kempf ) Message-ID: <20090202010153.B884A2E93E@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 1 16:59:42 2009 -0800| [9034aecc7b7c98d8840a49334376c51bcedc2d34] | committer: Jean-Baptiste Kempf Qt: remove unneeded debug. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9034aecc7b7c98d8840a49334376c51bcedc2d34 --- modules/gui/qt4/util/qvlcframe.hpp | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/util/qvlcframe.hpp b/modules/gui/qt4/util/qvlcframe.hpp index e7e2099..b48c3ca 100644 --- a/modules/gui/qt4/util/qvlcframe.hpp +++ b/modules/gui/qt4/util/qvlcframe.hpp @@ -155,13 +155,11 @@ protected: { if( keyEvent->key() == Qt::Key_Escape ) { - msg_Dbg( p_intf, "Escp Key pressed" ); cancel(); } else if( keyEvent->key() == Qt::Key_Return || keyEvent->key() == Qt::Key_Enter ) { - msg_Dbg( p_intf, "Enter Key pressed" ); close(); } } From git at videolan.org Mon Feb 2 02:01:53 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 02:01:53 +0100 (CET) Subject: [vlc-devel] commit: Qt: Profiles Editor for the transcoding. (Jean-Baptiste Kempf ) Message-ID: <20090202010153.CA4402E95A@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 1 16:59:56 2009 -0800| [82bd6cbddef07a25171f7c6383ec2fc1ec983aaf] | committer: Jean-Baptiste Kempf Qt: Profiles Editor for the transcoding. Still a lot of testing and fixing needed. The profiles are still in the main Qt Settings file. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=82bd6cbddef07a25171f7c6383ec2fc1ec983aaf --- modules/gui/qt4/Modules.am | 5 + .../gui/qt4/components/sout/profile_selector.cpp | 371 ++++++++++++++ .../gui/qt4/components/sout/profile_selector.hpp | 81 +++ modules/gui/qt4/dialogs/sout.cpp | 233 +-------- modules/gui/qt4/dialogs/sout.hpp | 73 +++- modules/gui/qt4/ui/profiles.ui | 496 +++++++++++++++++++ modules/gui/qt4/ui/sout.ui | 510 +------------------- 7 files changed, 1074 insertions(+), 695 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=82bd6cbddef07a25171f7c6383ec2fc1ec983aaf From git at videolan.org Mon Feb 2 02:07:19 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 02:07:19 +0100 (CET) Subject: [vlc-devel] commit: Remove leading ':sout=' from strings returned by output selection dialog (Mark Bidewell ) Message-ID: <20090202010719.04B002E961@skanda.videolan.org> vlc | branch: master | Mark Bidewell | Wed Jan 28 19:29:38 2009 -0500| [0c52acaeed113f6c2365485a1a7098e194f70b5b] | committer: Jean-Baptiste Kempf Remove leading ':sout=' from strings returned by output selection dialog The leading :sout= appears to confuse the destination parser which causes the sout to be prepended with an empty access and mux resulting in an invalid output chain. Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0c52acaeed113f6c2365485a1a7098e194f70b5b --- modules/gui/qt4/dialogs/vlm.cpp | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/dialogs/vlm.cpp b/modules/gui/qt4/dialogs/vlm.cpp index b8a5772..adaf2d2 100644 --- a/modules/gui/qt4/dialogs/vlm.cpp +++ b/modules/gui/qt4/dialogs/vlm.cpp @@ -220,6 +220,7 @@ void VLMDialog::addVLMItem() int repeatnum = scherepeatnumber->value(); int repeatdays = repeatDays->value(); VLMAWidget * vlmAwidget; + outputText.remove( ":sout=" ); switch( type ) { @@ -436,7 +437,7 @@ void VLMDialog::saveModifications() if( vlmObj ) { vlmObj->input = ui.inputLedit->text(); - vlmObj->output = ui.outputLedit->text(); + vlmObj->output = ui.outputLedit->text().remove( ":sout=" ); vlmObj->setChecked( ui.enableCheck->isChecked() ); vlmObj->b_enabled = ui.enableCheck->isChecked(); switch( vlmObj->type ) From jb at videolan.org Mon Feb 2 02:07:41 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Mon, 2 Feb 2009 02:07:41 +0100 Subject: [vlc-devel] [PATCH] Remove leading ':sout=' from strings returned by output selection dialog In-Reply-To: References: Message-ID: <20090202010741.GA26598@videolan.org> On Sun, Feb 01, 2009 at 01:30:00PM -0500, Mark Bidewell wrote : > My apologies for submitting this twice, but I used the wrong subject. Applied. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Mon Feb 2 02:08:26 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Mon, 2 Feb 2009 02:08:26 +0100 Subject: [vlc-devel] [Patch] 4 cumulative patches before the core freeze dead-line In-Reply-To: <9d98edc70902011643y262ba653q33bc4292b28e685a@mail.gmail.com> References: <9d98edc70902011643y262ba653q33bc4292b28e685a@mail.gmail.com> Message-ID: <20090202010826.GB26598@videolan.org> On Mon, Feb 02, 2009 at 02:43:32AM +0200, basos g wrote : > I resent cause i couldnot see the previous msg in gmane archives.. Why don't you reattach those? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From mark.bidewell at alumni.clemson.edu Mon Feb 2 02:15:16 2009 From: mark.bidewell at alumni.clemson.edu (Mark Bidewell) Date: Sun, 1 Feb 2009 20:15:16 -0500 Subject: [vlc-devel] git-send-email to the list Message-ID: On my last patch I initially sent it with git-send-email, but it did not go through, so I sent it with my email client. If I git-send-email to myself it works. Is there any trick needed to use git-send-email to the list? Thanks -- Mark Bidewell http://www.linkedin.com/in/markbidewell From jb at videolan.org Mon Feb 2 03:50:05 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Mon, 2 Feb 2009 03:50:05 +0100 Subject: [vlc-devel] [PATCH] -- fullscreen enhancements In-Reply-To: <49834A41.2030602@yahoo.fr> References: <49834A41.2030602@yahoo.fr> Message-ID: <20090202025005.GA14452@videolan.org> On Fri, Jan 30, 2009 at 07:43:13PM +0100, brezhoneg1 wrote : > The first family of patches (patches 1 to 6) implements resizing video > within fullscreen. Mostly applied with a few changes. > It features the following hotkeys : > - 'o' : toggle "video scaled to fullscreen" and > "original video" > - Shift-alt-'o' : enlarging video > - ctrl-alt-'o ' : shrinking video Keys have changed a bit. > The second patch (patch 7) corrects transition issues (vout reuse) > especially in fullscreen mode. I really don't feel at ease with that one. Don't ask me to apply it. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Mon Feb 2 03:50:31 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 03:50:31 +0100 (CET) Subject: [vlc-devel] commit: Core implementation of --[no] -autoscale and --scale with x11 vout support (Joseph Tulou ) Message-ID: <20090202025031.57F722E95C@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Fri Jan 30 17:28:42 2009 +0100| [9885e3480e42d648daef956dd84ce59d7bd4d9bf] | committer: Jean-Baptiste Kempf Core implementation of --[no]-autoscale and --scale with x11 vout support Modifications by /me (renaming, var_Get, hotkeys, etc..) Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9885e3480e42d648daef956dd84ce59d7bd4d9bf --- include/vlc_keys.h | 6 +++- include/vlc_vout.h | 10 ++++++- modules/control/hotkeys.c | 40 +++++++++++++++++++++++++++++++-- modules/video_output/opengl.c | 3 +- modules/video_output/x11/xcommon.c | 23 +++++++++++++++++++ src/libvlc-module.c | 43 ++++++++++++++++++++++++++--------- src/video_output/video_output.c | 3 +- src/video_output/vout_intf.c | 31 ++++++++++++++++++------- src/video_output/vout_pictures.c | 18 +++++++++++++- 9 files changed, 146 insertions(+), 31 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=9885e3480e42d648daef956dd84ce59d7bd4d9bf From git at videolan.org Mon Feb 2 03:50:31 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 03:50:31 +0100 (CET) Subject: [vlc-devel] commit: OpengGL support for the auto-scaling (Joseph Tulou ) Message-ID: <20090202025031.677A52E99D@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Fri Jan 30 17:30:29 2009 +0100| [f04686fc573553671fa0d1c342087dcf1fb5a3d6] | committer: Jean-Baptiste Kempf OpengGL support for the auto-scaling Modifications by /me Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f04686fc573553671fa0d1c342087dcf1fb5a3d6 --- modules/video_output/opengl.c | 26 +++++++++++++++++++++++++- 1 files changed, 25 insertions(+), 1 deletions(-) diff --git a/modules/video_output/opengl.c b/modules/video_output/opengl.c index 101a0de..c8a1cc0 100644 --- a/modules/video_output/opengl.c +++ b/modules/video_output/opengl.c @@ -225,12 +225,18 @@ static int CreateVout( vlc_object_t *p_this ) var_Create( p_sys->p_vout, "mouse-button-down", VLC_VAR_INTEGER ); var_Create( p_sys->p_vout, "video-on-top", VLC_VAR_BOOL | VLC_VAR_DOINHERIT ); + var_Create( p_sys->p_vout, "autoscale", + VLC_VAR_BOOL | VLC_VAR_DOINHERIT ); + var_Create( p_sys->p_vout, "scale", + VLC_VAR_FLOAT | VLC_VAR_DOINHERIT ); var_AddCallback( p_sys->p_vout, "mouse-x", SendEvents, p_vout ); var_AddCallback( p_sys->p_vout, "mouse-y", SendEvents, p_vout ); var_AddCallback( p_sys->p_vout, "mouse-moved", SendEvents, p_vout ); var_AddCallback( p_sys->p_vout, "mouse-clicked", SendEvents, p_vout ); var_AddCallback( p_sys->p_vout, "mouse-button-down", SendEvents, p_vout ); + var_AddCallback( p_vout, "autoscale", SendEvents, p_sys->p_vout ); + var_AddCallback( p_vout, "scale", SendEvents, p_sys->p_vout ); return VLC_SUCCESS; } @@ -455,9 +461,27 @@ static int Manage( vout_thread_t *p_vout ) // to align in real time in OPENGL if (p_sys->p_vout->i_alignment != p_vout->i_alignment) { - p_vout->i_changes = VOUT_CROP_CHANGE; //to force change + p_vout->i_changes |= VOUT_CROP_CHANGE; //to force change p_sys->p_vout->i_alignment = p_vout->i_alignment; } + + /* forward signal that autoscale toggle has changed */ + if (p_vout->i_changes & VOUT_SCALE_CHANGE ) + { + p_vout->i_changes &= ~VOUT_SCALE_CHANGE; + + p_sys->p_vout->i_changes |= VOUT_SCALE_CHANGE; + } + + /* forward signal that scale has changed */ + if (p_vout->i_changes & VOUT_ZOOM_CHANGE ) + { + p_vout->i_changes &= ~VOUT_ZOOM_CHANGE; + + p_sys->p_vout->i_changes |= VOUT_ZOOM_CHANGE; + } + + return i_ret; } From git at videolan.org Mon Feb 2 03:50:31 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 03:50:31 +0100 (CET) Subject: [vlc-devel] commit: Galaktos: compile fix and variable unused removal (Joseph Tulou ) Message-ID: <20090202025031.79C7C2E95C@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Fri Jan 30 17:29:18 2009 +0100| [422908a78df6587cb3fabd083ec484a68f8c796b] | committer: Jean-Baptiste Kempf Galaktos: compile fix and variable unused removal Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=422908a78df6587cb3fabd083ec484a68f8c796b --- modules/visualization/galaktos/plugin.c | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/modules/visualization/galaktos/plugin.c b/modules/visualization/galaktos/plugin.c index 8afebce..285ae50 100644 --- a/modules/visualization/galaktos/plugin.c +++ b/modules/visualization/galaktos/plugin.c @@ -218,7 +218,6 @@ static void* Thread( vlc_object_t *p_this ) p_thread->p_opengl->render.i_width = p_thread->i_width; p_thread->p_opengl->render.i_height = p_thread->i_width; p_thread->p_opengl->render.i_aspect = VOUT_ASPECT_FACTOR; - p_thread->p_opengl->b_scale = true; p_thread->p_opengl->b_fullscreen = false; p_thread->p_opengl->i_alignment = 0; p_thread->p_opengl->fmt_in.i_sar_num = 1; From git at videolan.org Mon Feb 2 03:50:31 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 03:50:31 +0100 (CET) Subject: [vlc-devel] commit: SDL: support for autoscaling (Joseph Tulou ) Message-ID: <20090202025031.B10612E93D@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Fri Jan 30 17:30:35 2009 +0100| [3d03caf53872716bc3ff44031b892b6496f955a4] | committer: Jean-Baptiste Kempf SDL: support for autoscaling Modifications by /me Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3d03caf53872716bc3ff44031b892b6496f955a4 --- modules/video_output/sdl.c | 22 ++++++++++++++++++++++ 1 files changed, 22 insertions(+), 0 deletions(-) diff --git a/modules/video_output/sdl.c b/modules/video_output/sdl.c index 187e539..055524d 100644 --- a/modules/video_output/sdl.c +++ b/modules/video_output/sdl.c @@ -577,6 +577,28 @@ static int Manage( vout_thread_t *p_vout ) p_vout->i_changes |= VOUT_SIZE_CHANGE; } + /* autoscale toggle */ + if( p_vout->i_changes & VOUT_SCALE_CHANGE ) + { + p_vout->i_changes &= ~VOUT_SCALE_CHANGE; + + p_vout->b_autoscale = var_GetBool( p_vout, "autoscale" ); + p_vout->i_zoom = (int) ZOOM_FP_FACTOR; + + p_vout->i_changes |= VOUT_SIZE_CHANGE; + } + + /* scaling factor (if no-autoscale) */ + if( p_vout->i_changes & VOUT_ZOOM_CHANGE ) + { + p_vout->i_changes &= ~VOUT_ZOOM_CHANGE; + + p_vout->b_autoscale = false; + p_vout->i_zoom = (int)( ZOOM_FP_FACTOR * var_GetFloat( p_vout, "scale" ) ); + + p_vout->i_changes |= VOUT_SIZE_CHANGE; + } + /* Crop or Aspect Ratio Changes */ if( p_vout->i_changes & VOUT_CROP_CHANGE || p_vout->i_changes & VOUT_ASPECT_CHANGE ) From git at videolan.org Mon Feb 2 03:50:31 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 03:50:31 +0100 (CET) Subject: [vlc-devel] commit: Vout: autoscaling support for windows (Joseph Tulou ) Message-ID: <20090202025031.D42D32E987@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Fri Jan 30 17:46:47 2009 +0100| [48c3f24d72bb7e9b52cf1a83a61ca1ed94b29297] | committer: Jean-Baptiste Kempf Vout: autoscaling support for windows Modifications by /me Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=48c3f24d72bb7e9b52cf1a83a61ca1ed94b29297 --- modules/video_output/msw/direct3d.c | 22 ++++++++++++++++++++++ modules/video_output/msw/directx.c | 22 ++++++++++++++++++++++ modules/video_output/msw/glwin32.c | 22 ++++++++++++++++++++++ modules/video_output/msw/wingdi.c | 22 ++++++++++++++++++++++ 4 files changed, 88 insertions(+), 0 deletions(-) diff --git a/modules/video_output/msw/direct3d.c b/modules/video_output/msw/direct3d.c index 5797927..1b15c01 100644 --- a/modules/video_output/msw/direct3d.c +++ b/modules/video_output/msw/direct3d.c @@ -456,6 +456,28 @@ static int Manage( vout_thread_t *p_vout ) p_vout->p_sys->i_changes &= ~DX_POSITION_CHANGE; } + /* autoscale toggle */ + if( p_vout->i_changes & VOUT_SCALE_CHANGE ) + { + p_vout->i_changes &= ~VOUT_SCALE_CHANGE; + + p_vout->b_autoscale = var_GetBool( p_vout, "autoscale" ); + p_vout->i_zoom = (int) ZOOM_FP_FACTOR; + + UpdateRects( p_vout, true ); + } + + /* scaling factor */ + if( p_vout->i_changes & VOUT_ZOOM_CHANGE ) + { + p_vout->i_changes &= ~VOUT_ZOOM_CHANGE; + + p_vout->b_autoscale = false; + p_vout->i_zoom = + (int)( ZOOM_FP_FACTOR * var_GetFloat( p_vout, "scale" ) ); + UpdateRects( p_vout, true ); + } + /* Check for cropping / aspect changes */ if( p_vout->i_changes & VOUT_CROP_CHANGE || p_vout->i_changes & VOUT_ASPECT_CHANGE ) diff --git a/modules/video_output/msw/directx.c b/modules/video_output/msw/directx.c index a588ad4..737074c 100644 --- a/modules/video_output/msw/directx.c +++ b/modules/video_output/msw/directx.c @@ -602,6 +602,28 @@ static int Manage( vout_thread_t *p_vout ) } } + /* autoscale toggle */ + if( p_vout->i_changes & VOUT_SCALE_CHANGE ) + { + p_vout->i_changes &= ~VOUT_SCALE_CHANGE; + + p_vout->b_autoscale = var_GetBool( p_vout, "autoscale" ); + p_vout->i_zoom = (int) ZOOM_FP_FACTOR; + + UpdateRects( p_vout, true ); + } + + /* scaling factor */ + if( p_vout->i_changes & VOUT_ZOOM_CHANGE ) + { + p_vout->i_changes &= ~VOUT_ZOOM_CHANGE; + + p_vout->b_autoscale = false; + p_vout->i_zoom = + (int)( ZOOM_FP_FACTOR * var_GetFloat( p_vout, "scale" ) ); + UpdateRects( p_vout, true ); + } + /* Check for cropping / aspect changes */ if( p_vout->i_changes & VOUT_CROP_CHANGE || p_vout->i_changes & VOUT_ASPECT_CHANGE ) diff --git a/modules/video_output/msw/glwin32.c b/modules/video_output/msw/glwin32.c index 10f6bd8..5248e99 100644 --- a/modules/video_output/msw/glwin32.c +++ b/modules/video_output/msw/glwin32.c @@ -305,6 +305,28 @@ static int Manage( vout_thread_t *p_vout ) vlc_mutex_unlock( &p_vout->p_sys->lock ); } + /* autoscale toggle */ + if( p_vout->i_changes & VOUT_SCALE_CHANGE ) + { + p_vout->i_changes &= ~VOUT_SCALE_CHANGE; + + p_vout->b_autoscale = var_GetBool( p_vout, "autoscale" ); + p_vout->i_zoom = (int) ZOOM_FP_FACTOR; + + UpdateRects( p_vout, true ); + } + + /* scaling factor */ + if( p_vout->i_changes & VOUT_ZOOM_CHANGE ) + { + p_vout->i_changes &= ~VOUT_ZOOM_CHANGE; + + p_vout->b_autoscale = false; + p_vout->i_zoom = + (int)( ZOOM_FP_FACTOR * var_GetFloat( p_vout, "scale" ) ); + UpdateRects( p_vout, true ); + } + /* Check for cropping / aspect changes */ if( p_vout->i_changes & VOUT_CROP_CHANGE || p_vout->i_changes & VOUT_ASPECT_CHANGE ) diff --git a/modules/video_output/msw/wingdi.c b/modules/video_output/msw/wingdi.c index ef41f3f..af58156 100644 --- a/modules/video_output/msw/wingdi.c +++ b/modules/video_output/msw/wingdi.c @@ -522,6 +522,28 @@ static int Manage( vout_thread_t *p_vout ) vlc_mutex_unlock( &p_vout->p_sys->lock ); } + /* autoscale toggle */ + if( p_vout->i_changes & VOUT_SCALE_CHANGE ) + { + p_vout->i_changes &= ~VOUT_SCALE_CHANGE; + + p_vout->b_autoscale = var_GetBool( p_vout, "autoscale" ); + p_vout->i_zoom = (int) ZOOM_FP_FACTOR; + + UpdateRects( p_vout, true ); + } + + /* scaling factor */ + if( p_vout->i_changes & VOUT_ZOOM_CHANGE ) + { + p_vout->i_changes &= ~VOUT_ZOOM_CHANGE; + + p_vout->b_autoscale = false; + p_vout->i_zoom = + (int)( ZOOM_FP_FACTOR * var_GetFloat( p_vout, "scale" ) ); + UpdateRects( p_vout, true ); + } + /* Check for cropping / aspect changes */ if( p_vout->i_changes & VOUT_CROP_CHANGE || p_vout->i_changes & VOUT_ASPECT_CHANGE ) From git at videolan.org Mon Feb 2 03:50:32 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 03:50:32 +0100 (CET) Subject: [vlc-devel] commit: Change include order for padding (Jean-Baptiste Kempf ) Message-ID: <20090202025032.EC5F22E99F@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 2 03:38:18 2009 +0100| [d9b140e41e4c9f5aad6e094098b87a8fcfa62380] | committer: Jean-Baptiste Kempf Change include order for padding > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d9b140e41e4c9f5aad6e094098b87a8fcfa62380 --- include/vlc_vout.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/include/vlc_vout.h b/include/vlc_vout.h index f9020ac..c3445af 100644 --- a/include/vlc_vout.h +++ b/include/vlc_vout.h @@ -506,9 +506,9 @@ struct vout_thread_t /**@{*/ uint16_t i_changes; /**< changes made to the thread. \see \ref vout_changes */ + bool b_fullscreen; /**< toogle fullscreen display */ bool b_autoscale; /**< auto scaling picture or not */ int i_zoom; /**< scaling factor if no auto */ - bool b_fullscreen; /**< toogle fullscreen display */ unsigned int i_window_width; /**< video window width */ unsigned int i_window_height; /**< video window height */ unsigned int i_alignment; /**< video alignment in window */ From git at videolan.org Mon Feb 2 03:50:31 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 03:50:31 +0100 (CET) Subject: [vlc-devel] commit: Vout-filter modification for autoscaling (Joseph Tulou ) Message-ID: <20090202025031.8D4C72E990@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Fri Jan 30 17:29:59 2009 +0100| [65892a479f9994e8dd49ded2ff851a5e98b85ae8] | committer: Jean-Baptiste Kempf Vout-filter modification for autoscaling Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=65892a479f9994e8dd49ded2ff851a5e98b85ae8 --- modules/video_filter/filter_common.h | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/modules/video_filter/filter_common.h b/modules/video_filter/filter_common.h index 2efc052..ad1a976 100644 --- a/modules/video_filter/filter_common.h +++ b/modules/video_filter/filter_common.h @@ -90,11 +90,15 @@ static int SetParentVal( vlc_object_t *p_this, char const *psz_var, #define ADD_PARENT_CALLBACKS( handler ) \ var_AddCallback( p_vout, "fullscreen", handler, NULL ); \ + var_AddCallback( p_vout, "autoscale", handler, NULL ); \ + var_AddCallback( p_vout, "scale", handler, NULL ); \ var_AddCallback( p_vout, "aspect-ratio", handler, NULL ); \ var_AddCallback( p_vout, "crop", handler, NULL ); #define DEL_PARENT_CALLBACKS( handler ) \ var_DelCallback( p_vout, "fullscreen", handler, NULL ); \ + var_DelCallback( p_vout, "autoscale", handler, NULL ); \ + var_DelCallback( p_vout, "scale", handler, NULL ); \ var_DelCallback( p_vout, "aspect-ratio", handler, NULL ); \ var_DelCallback( p_vout, "crop", handler, NULL ); From git at videolan.org Mon Feb 2 03:51:36 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 03:51:36 +0100 (CET) Subject: [vlc-devel] commit: NEWS (Jean-Baptiste Kempf ) Message-ID: <20090202025136.09AF12E9AF@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 2 03:51:19 2009 +0100| [ecd870f73d8f4ef0c86d02e0e612974447aef32f] | committer: Jean-Baptiste Kempf NEWS > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ecd870f73d8f4ef0c86d02e0e612974447aef32f --- NEWS | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/NEWS b/NEWS index c4ccf52..1f45a79 100644 --- a/NEWS +++ b/NEWS @@ -74,7 +74,7 @@ Audio output: Video output: * Effects (cube, torus, etc.) removed from OpenGL video output - * Video is able to stay in original size in fullscreen (hotkey 'o') + * Video is able to stay in original size and to zoom in fullscreen (hotkey 'o') while keeping black borders Miscellanous: * Invmem, a fake codec to display images from external applications From git at videolan.org Mon Feb 2 03:54:55 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 03:54:55 +0100 (CET) Subject: [vlc-devel] commit: Vout: Small rewording (Jean-Baptiste Kempf ) Message-ID: <20090202025455.184152E99F@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 2 03:54:36 2009 +0100| [44c553033ab829d090e0f5561e40685a5853a9e4] | committer: Jean-Baptiste Kempf Vout: Small rewording > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=44c553033ab829d090e0f5561e40685a5853a9e4 --- src/libvlc-module.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libvlc-module.c b/src/libvlc-module.c index dd43f49..e719b60 100644 --- a/src/libvlc-module.c +++ b/src/libvlc-module.c @@ -512,11 +512,11 @@ static const char *const ppsz_pos_descriptions[] = #define AUTOSCALE_TEXT N_("Video Auto Scaling") #define AUTOSCALE_LONGTEXT N_( \ - "Forces video scaling to fit a given window.") + "Let the video scale to fit a given window or fullscreen.") -#define SCALEFACTOR_TEXT N_("Video scale factor") +#define SCALEFACTOR_TEXT N_("Video scaling factor") #define SCALEFACTOR_LONGTEXT N_( \ - "scale factor used if --no-auto-scale is selected." \ + "Scaling factor used when Auto Scaling is disabled.\n" \ "Default value is 1.0 (original video size).") #define CUSTOM_CROP_RATIOS_TEXT N_("Custom crop ratios list") From rdenis at simphalempin.com Mon Feb 2 08:47:47 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Mon, 02 Feb 2009 08:47:47 +0100 Subject: [vlc-devel] [VLC] #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. In-Reply-To: <20090201185528.GB6498@via.ecp.fr> References: <042.3db1317faa08480069d341ebd37bd8c9@videolan.org> <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> <20090201185528.GB6498@via.ecp.fr> Message-ID: <9b6eda366c42c8dc5d9cf37ff02bfca4@chewa.net> On Sun, 1 Feb 2009 19:55:28 +0100, Laurent Aimar wrote: >> Blah, even mplayer is doing better job and not trying interpret files >> by extensions but the data inside. >> It's does not matter is it a libmodplug bug or not, VLC should not >> crash to 3rd party bug when it could just feed the file to correct >> demuxer instead of doing "the file extensions are cool". Whatever.. > VLC tries first to detect content ignoring extension, and fall back > to extension when it cannot. > One of the problem, is that PS is hard to detect in a reliable way, and > that mod demuxer only check extensions... > > Now, mod demuxer has a priority of 10, the automatic PS dectection has a > priority of 8. > Does anyone know if the priority of mod can be decreased below (<) 8 ? > (I would avoid increasing PS because of lot of demuxers use 10). This crash occurs whereby an MPEG-PS file exhibits a .mod extension. Changing priorities will not fix the problem. As far as I understand, we would have to remove the .mod extension from the list of known extensions to "fix" this. libmodplug is too stupid to handle malformatted files. There is really not much we can do about that. People who care can simply not build the modplug plugin, or fix upstream. Aside, I suspect decreasing priority below that of PS, will cause the "promiscuous" PS demux to claim genuine tracker imputs. -- R?mi Denis-Courmont From rdenis at simphalempin.com Mon Feb 2 08:53:52 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Mon, 02 Feb 2009 08:53:52 +0100 Subject: [vlc-devel] [VLC] #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. In-Reply-To: <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> References: <042.3db1317faa08480069d341ebd37bd8c9@videolan.org> <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> Message-ID: <530ff76095735f4a290b1cbea464a35f@chewa.net> On Sun, 1 Feb 2009 01:07:58 +0200, Pasi Sj?holm wrote: > It's does not matter is it a libmodplug bug or not, VLC should not > crash to 3rd party bug when it could just feed the file to correct > demuxer instead of doing "the file extensions are cool". Whatever.. The only way VLC could avoid crashing when a third party crashes is while running it in a separate process. And what's the point? if the parser is buggy one might well be able to exploit that to run code instead of crashing. Doing some magic autodetection in VLC is not going to hide parser bugs in libmodplug, not from a security point of view. If you don't like this, you're welcome to: 1/ complain to the libmodplug maintainer(s), 2/ not build the VLC modplug plugin. -- R?mi Denis-Courmont From fenrir at via.ecp.fr Mon Feb 2 09:35:13 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 2 Feb 2009 09:35:13 +0100 Subject: [vlc-devel] [VLC] #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. In-Reply-To: <9b6eda366c42c8dc5d9cf37ff02bfca4@chewa.net> References: <042.3db1317faa08480069d341ebd37bd8c9@videolan.org> <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> <20090201185528.GB6498@via.ecp.fr> <9b6eda366c42c8dc5d9cf37ff02bfca4@chewa.net> Message-ID: <20090202083513.GA4224@via.ecp.fr> On Mon, Feb 02, 2009, R?mi Denis-Courmont wrote: > > On Sun, 1 Feb 2009 19:55:28 +0100, Laurent Aimar wrote: > >> Blah, even mplayer is doing better job and not trying interpret files > >> by extensions but the data inside. > >> It's does not matter is it a libmodplug bug or not, VLC should not > >> crash to 3rd party bug when it could just feed the file to correct > >> demuxer instead of doing "the file extensions are cool". Whatever.. > > VLC tries first to detect content ignoring extension, and fall back > > to extension when it cannot. > > One of the problem, is that PS is hard to detect in a reliable way, and > > that mod demuxer only check extensions... > > > > Now, mod demuxer has a priority of 10, the automatic PS dectection has a > > priority of 8. > > Does anyone know if the priority of mod can be decreased below (<) 8 ? > > (I would avoid increasing PS because of lot of demuxers use 10). > > This crash occurs whereby an MPEG-PS file exhibits a .mod extension. > Changing priorities will not fix the problem. It will in most cases: The PS demuxer has 2 priorities, one when the begin of the file look like valid PS and one that will always accept the file (default fallback). So if the file looks like PS and the PS demuxer has a higher priority over mod, it will be chosen instead. It will not fix any problem with broken PS (ie that does not have valid header at the begining). > As far as I understand, we > would have to remove the .mod extension from the list of known extensions > to "fix" this. libmodplug is too stupid to handle malformatted files. There > is really not much we can do about that. People who care can simply not > build the modplug plugin, or fix upstream. We can try to make the mod plugin detection more robust. Is there anyone that have informations on mod file format ? > Aside, I suspect decreasing priority below that of PS, will cause the > "promiscuous" PS demux to claim genuine tracker imputs. It can if the mod first 4 bytes look like PS (as there is 2 priorities for the PS demuxer). -- fenrir From rdenis at simphalempin.com Mon Feb 2 10:45:33 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Mon, 02 Feb 2009 10:45:33 +0100 Subject: [vlc-devel] [VLC] #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. In-Reply-To: <20090202083513.GA4224@via.ecp.fr> References: <042.3db1317faa08480069d341ebd37bd8c9@videolan.org> <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> <20090201185528.GB6498@via.ecp.fr> <9b6eda366c42c8dc5d9cf37ff02bfca4@chewa.net> <20090202083513.GA4224@via.ecp.fr> Message-ID: <0e29635a4fb0e67a172b06a23ee55d04@chewa.net> On Mon, 2 Feb 2009 09:35:13 +0100, Laurent Aimar wrote: >> This crash occurs whereby an MPEG-PS file exhibits a .mod extension. >> Changing priorities will not fix the problem. > It will in most cases: > The PS demuxer has 2 priorities, one when the begin of the file look like > valid PS and one that will always accept the file (default fallback). > So if the file looks like PS and the PS demuxer has a higher priority > over mod, it will be chosen instead. Is it not so that, when the extension is "known", the input code will automatically force a demux, and _then_ fallback to probing? As far as I can tell, if a file matches *.mod, we will always try libmodplug _first_, before anything else, including the "high priority" PS detection. > It will not fix any problem with broken PS (ie that does not have valid > header at the begining). Sure. (...) > We can try to make the mod plugin detection more robust. Is there anyone > that have informations on mod file format ? MOD file format per se is well documented. But there are 5 different trackers format, and I believe libmodplug understands several of these. MOD is just one of them. But what is the point? First, it will still crash if we have a corrupt file with a valid header anyway. Secondly, we will loose support for any tracker file that the VLC modplug plugin does not know, whereas libmodplug would. IMNSHO, whoever cares really ought to fix libmodplug directly, or write a native VLC plugin. -- R?mi Denis-Courmont From fenrir at via.ecp.fr Mon Feb 2 11:24:23 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 2 Feb 2009 11:24:23 +0100 Subject: [vlc-devel] [VLC] #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. In-Reply-To: <0e29635a4fb0e67a172b06a23ee55d04@chewa.net> References: <042.3db1317faa08480069d341ebd37bd8c9@videolan.org> <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> <20090201185528.GB6498@via.ecp.fr> <9b6eda366c42c8dc5d9cf37ff02bfca4@chewa.net> <20090202083513.GA4224@via.ecp.fr> <0e29635a4fb0e67a172b06a23ee55d04@chewa.net> Message-ID: <20090202102422.GA26814@via.ecp.fr> On Mon, Feb 02, 2009, R?mi Denis-Courmont wrote: > > On Mon, 2 Feb 2009 09:35:13 +0100, Laurent Aimar wrote: > >> This crash occurs whereby an MPEG-PS file exhibits a .mod extension. > >> Changing priorities will not fix the problem. > > It will in most cases: > > The PS demuxer has 2 priorities, one when the begin of the file look > like > > valid PS and one that will always accept the file (default fallback). > > So if the file looks like PS and the PS demuxer has a higher priority > > over mod, it will be chosen instead. > > Is it not so that, when the extension is "known", the input code will > automatically force a demux, and _then_ fallback to probing? That's configurable. A set of recognized extensions are in src/input/demux.c > As far as I can tell, if a file matches *.mod, we will always try > libmodplug _first_, before anything else, including the "high priority" PS > detection. And you are right, .mod is in there. But that can be changed. > > > It will not fix any problem with broken PS (ie that does not have valid > > header at the begining). > > Sure. > > (...) > > We can try to make the mod plugin detection more robust. Is there anyone > > that have informations on mod file format ? > > MOD file format per se is well documented. But there are 5 different > trackers format, and I believe libmodplug understands several of these. MOD > is just one of them. But what is the point? First, it will still crash if > we have a corrupt file with a valid header anyway. Secondly, we will loose > support for any tracker file that the VLC modplug plugin does not know, > whereas libmodplug would. We could (try to) add robust detection for all supported mod formats. -> No invalid detection on non mod file -> Detection of mod file independantly of extension. Even for a subtset of it, it would be better (more robust). > IMNSHO, whoever cares really ought to fix libmodplug directly, or write a Fixing libmodplug library is of course better for robustness but a better detection on VLC side would not be bad either. -- fenrir From rdenis at simphalempin.com Mon Feb 2 11:56:49 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Mon, 02 Feb 2009 11:56:49 +0100 Subject: [vlc-devel] [VLC] #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. In-Reply-To: <20090202102422.GA26814@via.ecp.fr> References: <042.3db1317faa08480069d341ebd37bd8c9@videolan.org> <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> <20090201185528.GB6498@via.ecp.fr> <9b6eda366c42c8dc5d9cf37ff02bfca4@chewa.net> <20090202083513.GA4224@via.ecp.fr> <0e29635a4fb0e67a172b06a23ee55d04@chewa.net> <20090202102422.GA26814@via.ecp.fr> Message-ID: On Mon, 2 Feb 2009 11:24:23 +0100, Laurent Aimar wrote: > Fixing libmodplug library is of course better for robustness but a better > detection on VLC side would not be bad either. Can't we use avformat instead? if mplayer reads them... Otherwise, I do have legal MOD, IT, S3M and maybe XM files here, I'll try to check. -- R?mi Denis-Courmont From son.minh.tran at gmail.com Mon Feb 2 12:04:24 2009 From: son.minh.tran at gmail.com (Son Tran) Date: Mon, 2 Feb 2009 12:04:24 +0100 Subject: [vlc-devel] Compile vlc with gcc 4.2.1 sjlj (mingw32-2) In-Reply-To: <80c329980901190044w39d4c2f5qe3915f661f8e8cf4@mail.gmail.com> References: <1232193451442.agent_007.14425.nKsSMXMoblN5RDTDCdV2Zw@luukku.com> <80c329980901171606i36d193d7qa475eb070858424c@mail.gmail.com> <80c329980901181052x162a6b11v208cdd1d2b1c15f3@mail.gmail.com> <20090118190030.GA1885@videolan.org> <80c329980901181530u63506dd2uc98fbbb4925b14c8@mail.gmail.com> <80c329980901190044w39d4c2f5qe3915f661f8e8cf4@mail.gmail.com> Message-ID: <80c329980902020304n6145f2eaq5dc35100a5681ad2@mail.gmail.com> Dear all, I bother you again with my probleme on compiling VLC with Msys. First of all, thank you for your guide, I could compile vlc 0.9.8 with msys, having the gcc 4.2.1sjlj. But I still need your help to be sure on something: 1.What sed version do you have in msys? My sed I have (after doing all of the update as you said in your tutor) is 3.02. And it is can not treat the option -i. This option was specified in the Makefile of gcrypt as following: (line 1874) ifdef HAVE_WIN32 (cd $<; ./autogen.sh && $(HOSTCC) ./configure $(HOSTCONF) --target=i586-mingw32msvc --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" $(CIPHDIG) --disable-shared --enable-static --disable-nls && sed -i 46s at sys/times.h at sys/time.h@ cipher/random.c && make && make install) I try to compile the latest sed (4.1), then I have other problem with sed (probably due to the option -e). That is why I reused the version 3.02 and just simply cut the part "sed -i 46s at sys/times.h at sys/time.h@ cipher/random.c" off. Can you send me the right snapshot of sed I should use? 2. After doing as mentioned above, I could compile gcrypt, and vlc itself. The problem is that whenever I open a film, the video is presented in another window, and the VLC controls remain in the origin window. I wonder why? Best regards Son TRAN -------------- next part -------------- An HTML attachment was scrubbed... URL: From noxelia at gmail.com Mon Feb 2 12:51:34 2009 From: noxelia at gmail.com (basos g) Date: Mon, 2 Feb 2009 13:51:34 +0200 Subject: [vlc-devel] [PATCH] 4 patches to commit: 1.libvlc_config_update was added to libvlc API Message-ID: <9d98edc70902020351lb5ea78asf04982eab5aee53d@mail.gmail.com> I can not sent mail with all the patches included. So here is a split > #1 Libvlc addition - this one is posted several times but no-one > cited. It is tested and works fine... > [PATCH] libvlc_config_update was added to libvlc API > > It updates realtime configuration parameters > taken in the formatof argv > PS: This is part of of a 4 patch pack. Please, i'd like all these patches comited or give a good rejection reason. > -------------- next part -------------- A non-text attachment was scrubbed... Name: 0004-libvlc_config_update-was-added-to-libvlc-API.patch Type: text/x-diff Size: 10923 bytes Desc: not available URL: From noxelia at gmail.com Mon Feb 2 12:53:23 2009 From: noxelia at gmail.com (basos g) Date: Mon, 2 Feb 2009 13:53:23 +0200 Subject: [vlc-devel] [PATCH] 4 patches to commit: [PATCH] FIX sub filter dead lock issue -- a recently occured dead lock issue Message-ID: <9d98edc70902020353m42522839p133aa2f1dac163d0@mail.gmail.com> > > #3 > [PATCH] FIX sub filter dead lock issue -- a recently occured dead lock issue > > A dead lock was created when adding an spu filter (like marq) > because the same mutex was used for spu->p stuff and sub filter > chain (p_spu->p->p_chain). A new mutex was added for to update > the filter chain. > Maybe in the future the subfiltercallback code will just update a > string and the real filter update would take place in the vout > code (just like video filter). Then this mutext should only > lock that string and remove it from spu_SortSubPictures. > > > PS: This is part of of a 4 patch pack. Please, i'd like all these patches comited or give a good rejection reason. > > basos -------------- next part -------------- A non-text attachment was scrubbed... Name: 0009-FIX-sub-filter-dead-lock-issue.patch Type: text/x-diff Size: 3091 bytes Desc: not available URL: From noxelia at gmail.com Mon Feb 2 12:54:12 2009 From: noxelia at gmail.com (basos g) Date: Mon, 2 Feb 2009 13:54:12 +0200 Subject: [vlc-devel] [PATCH] 4 patches to commit: Variable inheritance hints Message-ID: <9d98edc70902020354n2518c8d4ta6f3866961b054ca@mail.gmail.com> > > #4 just some informative only mini-patch for better inheritance understanding > [PATCH] Variable inheritance hints > > Added a comment to describe inheritable variables > Added debug messages to get clues about variable > inheritance final source > >> PS: This is part of of a 4 patch pack. Please, i'd like all these patches comited or give a good rejection reason. > > basos -------------- next part -------------- A non-text attachment was scrubbed... Name: 0010-Variable-inheritance-hints.patch Type: text/x-diff Size: 2221 bytes Desc: not available URL: From git at videolan.org Mon Feb 2 13:34:32 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 13:34:32 +0100 (CET) Subject: [vlc-devel] commit: Win32: generate gdb symbol files for every dll (Geoffroy Couprie ) Message-ID: <20090202123432.668E32E56D@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Mon Feb 2 13:29:32 2009 +0100| [82bc4a310683688843c8b361a1c767260f522ecc] | committer: Geoffroy Couprie Win32: generate gdb symbol files for every dll > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=82bc4a310683688843c8b361a1c767260f522ecc --- Makefile.am | 34 ++++++++++++++++++++++++++++++---- configure.ac | 1 + 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/Makefile.am b/Makefile.am index 33dc7ef..b60031d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -683,6 +683,9 @@ VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.lib ## Win ## ############################################################################ win32_destdir=$(top_builddir)/vlc-$(VERSION) +win32_debugdir=$(top_builddir)/symbols-$(VERSION) +npvlc=vlc-$(VERSION)/mozilla/npvlc$(LIBEXT) +axvlc=vlc-$(VERSION)/activex/axvlc$(LIBEXT) win32_lua_destdir=$(win32_destdir)/lua win32_http_destdir=$(win32_destdir)/http @@ -896,19 +899,42 @@ endif #strip exe and main dll package-win-common-strip: package-win32-base-debug + @if test -e "$(win32_debugdir)"; then \ + echo "Error: please remove $(win32_debugdir), it is in the way"; \ + false; \ + else \ + echo "OK."; mkdir -p "$(win32_debugdir)"; \ + fi for i in "" vlc-$(VERSION)/*$(LIBEXT) ; \ - do if test -n "$$i" ; then $(STRIP) "$$i" ; fi; done + do if test -n "$$i" ; then \ + $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \ + $(OBJCOPY) --strip-debug "$$i" ; \ + $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \ + mv "$$i.dbg" "$(win32_debugdir)"; \ + fi; done + if BUILD_MOZILLA - $(STRIP) "vlc-$(VERSION)/mozilla/npvlc$(LIBEXT)" + $(OBJCOPY) --only-keep-debug "$(npvlc)" "$(npvlc).dbg" + $(OBJCOPY) --strip-debug "$(npvlc)" + $(OBJCOPY) --add-gnu-debuglink="$(npvlc).dbg" "$(npvlc)" + mv "$(npvlc).dbg" "$(win32_debugdir)" endif if BUILD_ACTIVEX - $(STRIP) "vlc-$(VERSION)/activex/axvlc$(LIBEXT)" + $(OBJCOPY) --only-keep-debug "$(axvlc)" "$(axvlc).dbg" + $(OBJCOPY) --strip-debug "$(axvlc)" + $(OBJCOPY) --add-gnu-debuglink="$(axvlc).dbg" "$(axvlc)" + mv "$(axvlc).dbg" "$(win32_debugdir)" endif #strip all plugins dll package-win32-base: package-win-common-strip for i in "" $(win32_destdir)/plugins/*$(LIBEXT) ; \ - do if test -n "$$i" ; then $(STRIP) "$$i" ; fi ; done + do if test -n "$$i" ; then \ + $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \ + $(OBJCOPY) --strip-debug "$$i" ; \ + $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \ + mv "$$i.dbg" "$(win32_debugdir)"; \ + fi ; done package-win32-base-exe: package-win32-base # Create package diff --git a/configure.ac b/configure.ac index 20d92bc..5f9e09b 100644 --- a/configure.ac +++ b/configure.ac @@ -311,6 +311,7 @@ case "${host_os}" in ;; *mingw32* | *cygwin* | *wince* | *mingwce* | *pe*) AC_CHECK_TOOL(WINDRES, windres, :) + AC_CHECK_TOOL(OBJCOPY, objcopy, :) case "${host_os}" in *wince* | *mingwce* | *mingw32ce* | *pe*) From brezhoneg1 at yahoo.fr Mon Feb 2 14:09:35 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Mon, 2 Feb 2009 14:09:35 +0100 Subject: [vlc-devel] RE : [PATCH] -- fullscreen enhancements In-Reply-To: <20090202025005.GA14452@videolan.org> Message-ID: <002901c98537$7fe26a10$5652fac1@CCCC> > Objet?: Re: [vlc-devel] [PATCH] -- fullscreen enhancements > > On Fri, Jan 30, 2009 at 07:43:13PM +0100, brezhoneg1 wrote : > > The first family of patches (patches 1 to 6) implements resizing video > > within fullscreen. > > Mostly applied with a few changes. > > > It features the following hotkeys : > > - 'o' : toggle "video scaled to fullscreen" and > > "original video" > > - Shift-alt-'o' : enlarging video > > - ctrl-alt-'o ' : shrinking video > Keys have changed a bit. No problem. Thanks for your time spent on this issue. > > > The second patch (patch 7) corrects transition issues (vout reuse) > > especially in fullscreen mode. > I really don't feel at ease with that one. Don't ask me to apply it. > This patch was originally aimed at proving width/height restrictions should not be seen as a big problem. This patch can certainly be improved. Ideally, setting (the first time) and resetting (when reusing vout) should be mutualized. Yet, it is a working patch, and hopefully I have not made wrong assumptions. My point is: - vlc1.0 will be a landmark in vlc history. - vlc1.0 has raised expectations that the transition problems will be solved (see numerous posts and answers on the forum) For the sake of vlc, I really think working out this height/width limitation would avoid users complaining bitterly for what can honestly be considered a bug. (With vlc1.0, this will even be more annoying that users don't have in mind this limitation and will see it as an erratic behavior) Maybe, if someone with good knowledge of vout could react to it (fenrir, from what I was said ?). Erwan10 From agent_007 at luukku.com Mon Feb 2 16:26:42 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Mon, 2 Feb 2009 17:26:42 +0200 (EET) Subject: [vlc-devel] Compile vlc with gcc 4.2.1 sjlj (mingw32-2) Message-ID: <1233588402823.agent_007.49761.wKCm_pMg0kfRFnqS2jKfEg@luukku.com> Son Tran kirjoitti 02.02.2009 kello 13:04: > 2. After doing as mentioned above, I could compile gcrypt, and vlc > itself. > The problem is that whenever I open a film, the video is presented in > another window, and the VLC controls remain in the origin window. I > wonder > why? This issue has been SO long in nightlies under Win32. But IIRC it was fixed. At least my Jan 23 git clone build opens the video in same Window. > Best regards > Son TRAN ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku From brezhoneg1 at yahoo.fr Mon Feb 2 17:52:57 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Mon, 2 Feb 2009 17:52:57 +0100 Subject: [vlc-devel] [PATCH] -- libvlc regression Message-ID: <000001c98556$b459b770$a06bfac1@CCCC> Just to let you know that libvlc doesn't work anymore with the new Vout_RequestWindow. Libvlc doesn't use window providers but directly gets its handle from a "drawable" VLC variable. Please, find attached the patch I use as a workaround (not sure about the quality, but can help pinpoint problems) Erwan10? -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-correction-for-libvlc-to-work-with-new-vout_window_t.patch Type: application/octet-stream Size: 2067 bytes Desc: not available URL: From rem at videolan.org Mon Feb 2 18:32:16 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Mon, 2 Feb 2009 19:32:16 +0200 Subject: [vlc-devel] [PATCH] -- libvlc regression In-Reply-To: <000001c98556$b459b770$a06bfac1@CCCC> References: <000001c98556$b459b770$a06bfac1@CCCC> Message-ID: <200902021932.16648.rem@videolan.org> Le lundi 2 f?vrier 2009 18:52:57 brezhoneg1, vous avez ?crit?: > Just to let you know that libvlc doesn't work anymore with the new > Vout_RequestWindow. > > Libvlc doesn't use window providers but directly gets its handle from a > "drawable" VLC variable. > > Please, find attached the patch I use as a workaround (not sure about > the quality, but can help pinpoint problems) Yes and no. This patch gets back to the semi-functional earlier state. But it still fails: - with multiple video outputs, - to check the type of drawable, - to return correct size informations. There has already been complaints about the first issue at least. I'm rewriting the whole thing into a proper window provider. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From rem at videolan.org Mon Feb 2 18:53:44 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Mon, 2 Feb 2009 19:53:44 +0200 Subject: [vlc-devel] [PATCH] -- libvlc regression In-Reply-To: <200902021932.16648.rem@videolan.org> References: <000001c98556$b459b770$a06bfac1@CCCC> <200902021932.16648.rem@videolan.org> Message-ID: <200902021953.44368.rem@videolan.org> Le lundi 2 f?vrier 2009 19:32:16 R?mi Denis-Courmont, vous avez ?crit?: > I'm rewriting the whole thing into a proper window provider. By the way, anyone knows if Win64 HANDLEs are 32 or 64 bits? In the latter case, we have yet another problem as drawable is an int value... -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From exsephiroth87 at gmail.com Mon Feb 2 19:03:37 2009 From: exsephiroth87 at gmail.com (Fabio Ritrovato) Date: Mon, 2 Feb 2009 19:03:37 +0100 Subject: [vlc-devel] [PATCH] GSoC: MTP Devices initial release In-Reply-To: <0319c492fed4e6cbf701150d6b61c526@chewa.net> References: <57529f2d0901241136l548e1ce9h2a5239a6517c01cc@mail.gmail.com> <20090128091102.GA8430@via.ecp.fr> <57529f2d0901281203m28aeb901v8eeada8a2a8c546@mail.gmail.com> <200901282228.16027.rem@videolan.org> <57529f2d0901281409u1b3efac8l3dd2362f436f58f6@mail.gmail.com> <0319c492fed4e6cbf701150d6b61c526@chewa.net> Message-ID: <57529f2d0902021003q1dbe608cv9346699a77d6782d@mail.gmail.com> Here's the new patch, I hope the way I check if libmtp has already been initialized is ok... tempnam() is still there, I couldn't find any other way to have the file name and not the handle... -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-GSoC-MTP-Devices-initial-release.patch Type: text/x-diff Size: 23003 bytes Desc: not available URL: From jb at videolan.org Mon Feb 2 19:03:57 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Mon, 2 Feb 2009 19:03:57 +0100 Subject: [vlc-devel] RE : [PATCH] -- fullscreen enhancements In-Reply-To: <002901c98537$7fe26a10$5652fac1@CCCC> References: <20090202025005.GA14452@videolan.org> <002901c98537$7fe26a10$5652fac1@CCCC> Message-ID: <20090202180357.GB16773@videolan.org> On Mon, Feb 02, 2009 at 02:09:35PM +0100, brezhoneg1 wrote : > This patch was originally aimed at proving width/height restrictions > should not be seen as a big problem. This patch can certainly be > improved. Ideally, setting (the first time) and resetting (when reusing > vout) should be mutualized. Yet, it is a working patch, and hopefully I > have not made wrong assumptions. > > My point is: > - vlc1.0 will be a landmark in vlc history. > - vlc1.0 has raised expectations that the transition problems will be > solved (see numerous posts and answers on the forum) I think you are right on this one. > For the sake of vlc, I really think working out this height/width > limitation would avoid users complaining bitterly for what can honestly > be considered a bug. (With vlc1.0, this will even be more annoying that > users don't have in mind this limitation and will see it as an erratic > behavior) From a user PoV, you are right. On the developer side, if noone can say: 'this is OK', this will probably have to wait.. > Maybe, if someone with good knowledge of vout could react to it (fenrir, > from what I was said ?). Notme, for sure. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From noxelia at gmail.com Mon Feb 2 19:04:18 2009 From: noxelia at gmail.com (basos g) Date: Mon, 2 Feb 2009 20:04:18 +0200 Subject: [vlc-devel] [PATCH] 4 patches to commit: [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules In-Reply-To: <9d98edc70902021000k4ff3271dne2bb15359f612346@mail.gmail.com> References: <9d98edc70902020352h1155cabbsd138f3008f313a11@mail.gmail.com> <9d98edc70902021000k4ff3271dne2bb15359f612346@mail.gmail.com> Message-ID: <9d98edc70902021004i2e4ab388j8e182f9bbcf26561@mail.gmail.com> Damn i can not sent this monster. I provide it inline below as a last resort ---------- Forwarded message ---------- From: basos g Date: 2009/2/2 Subject: [PATCH] 4 patches to commit: [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules To: Mailing list for VLC media player developers For some reason this is not posted right.... Resent ---------- Forwarded message ---------- From: basos g Date: 2009/2/2 Subject: [PATCH] 4 patches to commit: [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules To: Mailing list for VLC media player developers > #2 mega-patch for text_style -- this is a patch rework after fenrir comments > [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules > > text_style_New -- allocates default text style > text_style_Dup -- allocates and copies text style > text_style_Copy -- copies text style > text_style_Delete -- deallocates text style > > NOTE that the vout_ShowText* functions > will take a p_style and copy it internally so you have > to free in the caller function. Other modules where p_style > was malloced there are now fixed to copy before calling > the sout* functions. > PS: This is part of of a 4 patch pack. Please, i'd like all these patches comited or give a good rejection reason. > > basos > --------------------------------_CUT HERE------------------------------------------------------------ >From 4f7ca87dce869899687ba7d867557e0e3b833ef0 Mon Sep 17 00:00:00 2001 From: basOS G Date: Mon, 29 Dec 2008 23:11:05 +0200 Subject: [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules text_style_New -- allocates default text style text_style_Dup -- allocates and copies text style text_style_Copy -- copies text style text_style_Delete -- deallocates text style NOTE that the vout_ShowText* functions will take a p_style and copy it internally so you have to free in the caller function. Other modules where p_style was malloced there are now fixed to copy before calling the sout* functions. --- include/vlc_osd.h | 21 ++- modules/codec/subtitles/subsass.c | 156 ++++++++++---------- modules/codec/subtitles/subsusf.c | 137 +++++++++-------- modules/gui/fbosd.c | 9 +- .../video_filter/dynamicoverlay/dynamicoverlay.c | 4 +- .../video_filter/dynamicoverlay/dynamicoverlay.h | 2 +- .../dynamicoverlay/dynamicoverlay_commands.c | 15 +- modules/video_filter/marq.c | 11 +- modules/video_filter/rss.c | 14 +- src/libvlccore.sym | 4 + src/video_output/video_text.c | 4 +- src/video_output/vout_subpictures.c | 60 ++++++++- 12 files changed, 258 insertions(+), 179 deletions(-) diff --git a/include/vlc_osd.h b/include/vlc_osd.h index df855f6..c2b8a18 100644 --- a/include/vlc_osd.h +++ b/include/vlc_osd.h @@ -265,8 +265,21 @@ struct text_style_t #define STYLE_UNDERLINE 32 #define STYLE_STRIKEOUT 64 -static const text_style_t default_text_style = { NULL, 22, 0xffffff, 0xff, STYLE_OUTLINE, - 0x000000, 0xff, 0x000000, 0xff, 0xffffff, 0x80, 0xffffff, 0xff, 1, 0, -1 }; +/** + * text_style manipulation + * text_style_ + * New : creates default text style + * Dup : creates new from another allocating storage + * Copy : copies data without allocating + * Delete : Dealocates all data + */ +VLC_EXPORT( text_style_t*, text_style_New, ( void ) ); + +VLC_EXPORT( text_style_t*, text_style_Dup, ( const text_style_t* ) ) ; + +VLC_EXPORT( text_style_t*, text_style_Copy, ( text_style_t*, const text_style_t* ) ) ; + +VLC_EXPORT( void, text_style_Delete, ( text_style_t* ) ) ; /** * OSD menu button states @@ -616,7 +629,7 @@ VLC_EXPORT( int, osd_Icon, ( vlc_object_t *, spu_t *, int, int, int, int, int, s * \param p_vout pointer to the vout the text is to be showed on * \param i_channel Subpicture channel * \param psz_string The text to be shown - * \param p_style Pointer to a struct with text style info + * \param p_style Pointer to a struct with text style info (struct is copied) * \param i_flags flags for alignment and such * \param i_hmargin horizontal margin in pixels * \param i_vmargin vertical margin in pixels @@ -629,7 +642,7 @@ VLC_EXPORT( int, vout_ShowTextRelative, ( vout_thread_t *, int, char *, text_sty * \param p_vout pointer to the vout the text is to be showed on * \param i_channel Subpicture channel * \param psz_string The text to be shown - * \param p_style Pointer to a struct with text style info + * \param p_style Pointer to a struct with text style info (struct is copied ) * \param i_flags flags for alignment and such * \param i_hmargin horizontal margin in pixels * \param i_vmargin vertical margin in pixels diff --git a/modules/codec/subtitles/subsass.c b/modules/codec/subtitles/subsass.c index e642673..c37c016 100644 --- a/modules/codec/subtitles/subsass.c +++ b/modules/codec/subtitles/subsass.c @@ -38,7 +38,7 @@ void ParseSSAString( decoder_t *p_dec, * MarginV, Effect, Text */ decoder_sys_t *p_sys = p_dec->p_sys; subpicture_t *p_spu = p_spu_in; - ssa_style_t *p_style = NULL; + ssa_style_t *p_ssa_style = NULL; char *psz_new_subtitle = NULL; char *psz_buffer_sub = NULL; char *psz_style = NULL; @@ -118,12 +118,12 @@ void ParseSSAString( decoder_t *p_dec, for( i = 0; i < p_sys->i_ssa_styles; i++ ) { if( !strcmp( p_sys->pp_ssa_styles[i]->psz_stylename, psz_style ) ) - p_style = p_sys->pp_ssa_styles[i]; + p_ssa_style = p_sys->pp_ssa_styles[i]; } free( psz_style ); p_spu->p_region->psz_text = psz_new_subtitle; - if( p_style == NULL ) + if( p_ssa_style == NULL ) { p_spu->p_region->i_align = SUBPICTURE_ALIGN_BOTTOM | p_sys->i_align; p_spu->p_region->i_x = p_sys->i_align ? 20 : 0; @@ -131,18 +131,18 @@ void ParseSSAString( decoder_t *p_dec, } else { - msg_Dbg( p_dec, "style is: %s", p_style->psz_stylename); - p_spu->p_region->p_style = &p_style->font_style; - p_spu->p_region->i_align = p_style->i_align; - if( p_style->i_align & SUBPICTURE_ALIGN_LEFT ) + msg_Dbg( p_dec, "style is: %s", p_ssa_style->psz_stylename); + p_spu->p_region->p_style = text_style_Dup( &p_ssa_style->font_style ) ; + p_spu->p_region->i_align = p_ssa_style->i_align; + if( p_ssa_style->i_align & SUBPICTURE_ALIGN_LEFT ) { - p_spu->p_region->i_x = (i_margin_l) ? i_margin_l : p_style->i_margin_h; + p_spu->p_region->i_x = (i_margin_l) ? i_margin_l : p_ssa_style->i_margin_h; } - else if( p_style->i_align & SUBPICTURE_ALIGN_RIGHT ) + else if( p_ssa_style->i_align & SUBPICTURE_ALIGN_RIGHT ) { - p_spu->p_region->i_x = (i_margin_r) ? i_margin_r : p_style->i_margin_h; + p_spu->p_region->i_x = (i_margin_r) ? i_margin_r : p_ssa_style->i_margin_h; } - p_spu->p_region->i_y = (i_margin_v) ? i_margin_v : p_style->i_margin_v; + p_spu->p_region->i_y = (i_margin_v) ? i_margin_v : p_ssa_style->i_margin_v; } } @@ -233,52 +233,52 @@ void ParseSSAHeader( decoder_t *p_dec ) &i_border, &i_outline, &i_shadow, &i_align, &i_margin_l, &i_margin_r, &i_margin_v ) == 16 ) { - ssa_style_t *p_style = malloc( sizeof(ssa_style_t) ); + ssa_style_t *p_ssa_style = malloc( sizeof(ssa_style_t) ); - p_style->psz_stylename = strdup( psz_temp_stylename ); - p_style->font_style.psz_fontname = strdup( psz_temp_fontname ); - p_style->font_style.i_font_size = i_font_size; + p_ssa_style->psz_stylename = strdup( psz_temp_stylename ); + p_ssa_style->font_style.psz_fontname = strdup( psz_temp_fontname ); + p_ssa_style->font_style.i_font_size = i_font_size; - ParseColor( psz_temp_color1, &p_style->font_style.i_font_color, NULL ); - ParseColor( psz_temp_color4, &p_style->font_style.i_shadow_color, NULL ); - p_style->font_style.i_outline_color = p_style->font_style.i_shadow_color; - p_style->font_style.i_font_alpha = p_style->font_style.i_outline_alpha - = p_style->font_style.i_shadow_alpha = 0x00; - p_style->font_style.i_style_flags = 0; - if( i_bold ) p_style->font_style.i_style_flags |= STYLE_BOLD; - if( i_italic ) p_style->font_style.i_style_flags |= STYLE_ITALIC; + ParseColor( psz_temp_color1, &p_ssa_style->font_style.i_font_color, NULL ); + ParseColor( psz_temp_color4, &p_ssa_style->font_style.i_shadow_color, NULL ); + p_ssa_style->font_style.i_outline_color = p_ssa_style->font_style.i_shadow_color; + p_ssa_style->font_style.i_font_alpha = p_ssa_style->font_style.i_outline_alpha + = p_ssa_style->font_style.i_shadow_alpha = 0x00; + p_ssa_style->font_style.i_style_flags = 0; + if( i_bold ) p_ssa_style->font_style.i_style_flags |= STYLE_BOLD; + if( i_italic ) p_ssa_style->font_style.i_style_flags |= STYLE_ITALIC; if( i_border == 1 ) - p_style->font_style.i_style_flags |= (STYLE_ITALIC | STYLE_OUTLINE); + p_ssa_style->font_style.i_style_flags |= (STYLE_ITALIC | STYLE_OUTLINE); else if( i_border == 3 ) { - p_style->font_style.i_style_flags |= STYLE_BACKGROUND; - p_style->font_style.i_background_color = p_style->font_style.i_shadow_color; - p_style->font_style.i_background_alpha = p_style->font_style.i_shadow_alpha; + p_ssa_style->font_style.i_style_flags |= STYLE_BACKGROUND; + p_ssa_style->font_style.i_background_color = p_ssa_style->font_style.i_shadow_color; + p_ssa_style->font_style.i_background_alpha = p_ssa_style->font_style.i_shadow_alpha; } - p_style->font_style.i_shadow_width = i_shadow; - p_style->font_style.i_outline_width = i_outline; + p_ssa_style->font_style.i_shadow_width = i_shadow; + p_ssa_style->font_style.i_outline_width = i_outline; - p_style->i_align = 0; + p_ssa_style->i_align = 0; if( i_align == 1 || i_align == 5 || i_align == 9 ) - p_style->i_align |= SUBPICTURE_ALIGN_LEFT; + p_ssa_style->i_align |= SUBPICTURE_ALIGN_LEFT; if( i_align == 3 || i_align == 7 || i_align == 11 ) - p_style->i_align |= SUBPICTURE_ALIGN_RIGHT; + p_ssa_style->i_align |= SUBPICTURE_ALIGN_RIGHT; if( i_align < 4 ) - p_style->i_align |= SUBPICTURE_ALIGN_BOTTOM; + p_ssa_style->i_align |= SUBPICTURE_ALIGN_BOTTOM; else if( i_align < 8 ) - p_style->i_align |= SUBPICTURE_ALIGN_TOP; + p_ssa_style->i_align |= SUBPICTURE_ALIGN_TOP; - p_style->i_margin_h = ( p_style->i_align & SUBPICTURE_ALIGN_RIGHT ) ? + p_ssa_style->i_margin_h = ( p_ssa_style->i_align & SUBPICTURE_ALIGN_RIGHT ) ? i_margin_r : i_margin_l; - p_style->i_margin_v = i_margin_v; - p_style->i_margin_percent_h = 0; - p_style->i_margin_percent_v = 0; + p_ssa_style->i_margin_v = i_margin_v; + p_ssa_style->i_margin_percent_h = 0; + p_ssa_style->i_margin_percent_v = 0; - p_style->font_style.i_karaoke_background_color = 0xffffff; - p_style->font_style.i_karaoke_background_alpha = 0xff; + p_ssa_style->font_style.i_karaoke_background_color = 0xffffff; + p_ssa_style->font_style.i_karaoke_background_alpha = 0xff; - TAB_APPEND( p_sys->i_ssa_styles, p_sys->pp_ssa_styles, p_style ); + TAB_APPEND( p_sys->i_ssa_styles, p_sys->pp_ssa_styles, p_ssa_style ); } else msg_Warn( p_dec, "SSA v4 styleline parsing failed" ); } @@ -294,55 +294,55 @@ void ParseSSAHeader( decoder_t *p_dec ) &i_underline, &i_strikeout, &i_scale_x, &i_scale_y, &i_spacing, &i_border, &i_outline, &i_shadow, &i_align, &i_margin_l, &i_margin_r, &i_margin_v ) == 21 ) { - ssa_style_t *p_style = malloc( sizeof(ssa_style_t) ); - - p_style->psz_stylename = strdup( psz_temp_stylename ); - p_style->font_style.psz_fontname = strdup( psz_temp_fontname ); - p_style->font_style.i_font_size = i_font_size; - ParseColor( psz_temp_color1, &p_style->font_style.i_font_color, - &p_style->font_style.i_font_alpha ); - ParseColor( psz_temp_color3, &p_style->font_style.i_outline_color, - &p_style->font_style.i_outline_alpha ); - ParseColor( psz_temp_color4, &p_style->font_style.i_shadow_color, - &p_style->font_style.i_shadow_alpha ); - - p_style->font_style.i_style_flags = 0; - if( i_bold ) p_style->font_style.i_style_flags |= STYLE_BOLD; - if( i_italic ) p_style->font_style.i_style_flags |= STYLE_ITALIC; - if( i_underline ) p_style->font_style.i_style_flags |= STYLE_UNDERLINE; - if( i_strikeout ) p_style->font_style.i_style_flags |= STYLE_STRIKEOUT; - if( i_border == 1 ) p_style->font_style.i_style_flags |= (STYLE_ITALIC | STYLE_OUTLINE); + ssa_style_t *p_ssa_style = malloc( sizeof(ssa_style_t) ); + + p_ssa_style->psz_stylename = strdup( psz_temp_stylename ); + p_ssa_style->font_style.psz_fontname = strdup( psz_temp_fontname ); + p_ssa_style->font_style.i_font_size = i_font_size; + ParseColor( psz_temp_color1, &p_ssa_style->font_style.i_font_color, + &p_ssa_style->font_style.i_font_alpha ); + ParseColor( psz_temp_color3, &p_ssa_style->font_style.i_outline_color, + &p_ssa_style->font_style.i_outline_alpha ); + ParseColor( psz_temp_color4, &p_ssa_style->font_style.i_shadow_color, + &p_ssa_style->font_style.i_shadow_alpha ); + + p_ssa_style->font_style.i_style_flags = 0; + if( i_bold ) p_ssa_style->font_style.i_style_flags |= STYLE_BOLD; + if( i_italic ) p_ssa_style->font_style.i_style_flags |= STYLE_ITALIC; + if( i_underline ) p_ssa_style->font_style.i_style_flags |= STYLE_UNDERLINE; + if( i_strikeout ) p_ssa_style->font_style.i_style_flags |= STYLE_STRIKEOUT; + if( i_border == 1 ) p_ssa_style->font_style.i_style_flags |= (STYLE_ITALIC | STYLE_OUTLINE); else if( i_border == 3 ) { - p_style->font_style.i_style_flags |= STYLE_BACKGROUND; - p_style->font_style.i_background_color = p_style->font_style.i_shadow_color; - p_style->font_style.i_background_alpha = p_style->font_style.i_shadow_alpha; + p_ssa_style->font_style.i_style_flags |= STYLE_BACKGROUND; + p_ssa_style->font_style.i_background_color = p_ssa_style->font_style.i_shadow_color; + p_ssa_style->font_style.i_background_alpha = p_ssa_style->font_style.i_shadow_alpha; } - p_style->font_style.i_shadow_width = ( i_border == 1 ) ? i_shadow : 0; - p_style->font_style.i_outline_width = ( i_border == 1 ) ? i_outline : 0; - p_style->font_style.i_spacing = i_spacing; - //p_style->font_style.f_angle = f_angle; + p_ssa_style->font_style.i_shadow_width = ( i_border == 1 ) ? i_shadow : 0; + p_ssa_style->font_style.i_outline_width = ( i_border == 1 ) ? i_outline : 0; + p_ssa_style->font_style.i_spacing = i_spacing; + //p_ssa_style->font_style.f_angle = f_angle; - p_style->i_align = 0; + p_ssa_style->i_align = 0; if( i_align == 0x1 || i_align == 0x4 || i_align == 0x7 ) - p_style->i_align |= SUBPICTURE_ALIGN_LEFT; + p_ssa_style->i_align |= SUBPICTURE_ALIGN_LEFT; if( i_align == 0x3 || i_align == 0x6 || i_align == 0x9 ) - p_style->i_align |= SUBPICTURE_ALIGN_RIGHT; + p_ssa_style->i_align |= SUBPICTURE_ALIGN_RIGHT; if( i_align == 0x7 || i_align == 0x8 || i_align == 0x9 ) - p_style->i_align |= SUBPICTURE_ALIGN_TOP; + p_ssa_style->i_align |= SUBPICTURE_ALIGN_TOP; if( i_align == 0x1 || i_align == 0x2 || i_align == 0x3 ) - p_style->i_align |= SUBPICTURE_ALIGN_BOTTOM; - p_style->i_margin_h = ( p_style->i_align & SUBPICTURE_ALIGN_RIGHT ) ? + p_ssa_style->i_align |= SUBPICTURE_ALIGN_BOTTOM; + p_ssa_style->i_margin_h = ( p_ssa_style->i_align & SUBPICTURE_ALIGN_RIGHT ) ? i_margin_r : i_margin_l; - p_style->i_margin_v = i_margin_v; - p_style->i_margin_percent_h = 0; - p_style->i_margin_percent_v = 0; + p_ssa_style->i_margin_v = i_margin_v; + p_ssa_style->i_margin_percent_h = 0; + p_ssa_style->i_margin_percent_v = 0; - p_style->font_style.i_karaoke_background_color = 0xffffff; - p_style->font_style.i_karaoke_background_alpha = 0xff; + p_ssa_style->font_style.i_karaoke_background_color = 0xffffff; + p_ssa_style->font_style.i_karaoke_background_alpha = 0xff; /*TODO: Ignored: angle i_scale_x|y (fontscaling), i_encoding */ - TAB_APPEND( p_sys->i_ssa_styles, p_sys->pp_ssa_styles, p_style ); + TAB_APPEND( p_sys->i_ssa_styles, p_sys->pp_ssa_styles, p_ssa_style ); } else msg_Dbg( p_dec, "SSA V4+ styleline parsing failed" ); } diff --git a/modules/codec/subtitles/subsusf.c b/modules/codec/subtitles/subsusf.c index ab7756b..52325bb 100644 --- a/modules/codec/subtitles/subsusf.c +++ b/modules/codec/subtitles/subsusf.c @@ -144,6 +144,7 @@ static void CloseDecoder( vlc_object_t *p_this ) continue; free( p_sys->pp_ssa_styles[i]->psz_stylename ); + //FIXME: Make font_style a pointer and use text_style_* functions free( p_sys->pp_ssa_styles[i]->font_style.psz_fontname ); free( p_sys->pp_ssa_styles[i] ); } @@ -259,7 +260,7 @@ static char *GrabAttributeValue( const char *psz_attribute, static ssa_style_t *ParseStyle( decoder_sys_t *p_sys, char *psz_subtitle ) { - ssa_style_t *p_style = NULL; + ssa_style_t *p_ssa_style = NULL; char *psz_style = GrabAttributeValue( "style", psz_subtitle ); if( psz_style ) @@ -269,11 +270,11 @@ static ssa_style_t *ParseStyle( decoder_sys_t *p_sys, char *psz_subtitle ) for( i = 0; i < p_sys->i_ssa_styles; i++ ) { if( !strcmp( p_sys->pp_ssa_styles[i]->psz_stylename, psz_style ) ) - p_style = p_sys->pp_ssa_styles[i]; + p_ssa_style = p_sys->pp_ssa_styles[i]; } free( psz_style ); } - return p_style; + return p_ssa_style; } static int ParsePositionAttributeList( char *psz_subtitle, int *i_align, @@ -388,7 +389,7 @@ static subpicture_region_t *CreateTextRegion( decoder_t *p_dec, if( p_text_region != NULL ) { - ssa_style_t *p_style = NULL; + ssa_style_t *p_ssa_style = NULL; p_text_region->psz_text = NULL; p_text_region->psz_html = strndup( psz_subtitle, i_len ); @@ -398,34 +399,36 @@ static subpicture_region_t *CreateTextRegion( decoder_t *p_dec, return NULL; } - p_style = ParseStyle( p_sys, p_text_region->psz_html ); - if( !p_style ) + p_ssa_style = ParseStyle( p_sys, p_text_region->psz_html ); + if( !p_ssa_style ) { int i; for( i = 0; i < p_sys->i_ssa_styles; i++ ) { if( !strcasecmp( p_sys->pp_ssa_styles[i]->psz_stylename, "Default" ) ) - p_style = p_sys->pp_ssa_styles[i]; + p_ssa_style = p_sys->pp_ssa_styles[i]; } } - if( p_style ) + if( p_ssa_style ) { - msg_Dbg( p_dec, "style is: %s", p_style->psz_stylename ); + msg_Dbg( p_dec, "style is: %s", p_ssa_style->psz_stylename ); - p_text_region->p_style = &p_style->font_style; - p_text_region->i_align = p_style->i_align; + /* basos g: region->p_style is freed by the vout. Decoder may live shorter. + */ + p_text_region->p_style = text_style_Dup( &p_ssa_style->font_style ) ; + p_text_region->i_align = p_ssa_style->i_align; /* TODO: Setup % based offsets properly, without adversely affecting * everything else in vlc. Will address with separate patch, * to prevent this one being any more complicated. - * p_style->i_margin_percent_h; - * p_style->i_margin_percent_v; + * p_ssa_style->i_margin_percent_h; + * p_ssa_style->i_margin_percent_v; */ - p_text_region->i_x = p_style->i_margin_h; - p_text_region->i_y = p_style->i_margin_v; + p_text_region->i_x = p_ssa_style->i_margin_h; + p_text_region->i_y = p_ssa_style->i_margin_v; } else @@ -559,7 +562,7 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) { decoder_sys_t *p_sys = p_dec->p_sys; char *psz_node; - ssa_style_t *p_style = NULL; + ssa_style_t *p_ssa_style = NULL; int i_style_level = 0; int i_metadata_level = 0; @@ -592,9 +595,9 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) case 2: if( !strcasecmp( "style", psz_node ) ) { - TAB_APPEND( p_sys->i_ssa_styles, p_sys->pp_ssa_styles, p_style ); + TAB_APPEND( p_sys->i_ssa_styles, p_sys->pp_ssa_styles, p_ssa_style ); - p_style = NULL; + p_ssa_style = NULL; i_style_level--; } break; @@ -639,8 +642,8 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) { i_style_level++; - p_style = calloc( 1, sizeof(ssa_style_t) ); - if( ! p_style ) + p_ssa_style = calloc( 1, sizeof(ssa_style_t) ); + if( ! p_ssa_style ) { free( psz_node ); return; @@ -657,9 +660,11 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) { ssa_style_t *p_default_style = p_sys->pp_ssa_styles[i]; - memcpy( p_style, p_default_style, sizeof( ssa_style_t ) ); - p_style->font_style.psz_fontname = strdup( p_style->font_style.psz_fontname ); - p_style->psz_stylename = NULL; + memcpy( p_ssa_style, p_default_style, sizeof( ssa_style_t ) ); + //FIXME: Make font_style a pointer. Actually we double copy some data here, + // we use text_style_Copy to avoid copying psz_fontname, though . + text_style_Copy( &p_ssa_style->font_style, &p_default_style->font_style ) ; + p_ssa_style->psz_stylename = NULL; } } @@ -671,7 +676,7 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) if( psz_name && psz_value ) { if( !strcasecmp( "name", psz_name ) ) - p_style->psz_stylename = strdup( psz_value); + p_ssa_style->psz_stylename = strdup( psz_value); } free( psz_name ); free( psz_value ); @@ -688,8 +693,8 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) { if( !strcasecmp( "face", psz_name ) ) { - free( p_style->font_style.psz_fontname ); - p_style->font_style.psz_fontname = strdup( psz_value ); + free( p_ssa_style->font_style.psz_fontname ); + p_ssa_style->font_style.psz_fontname = strdup( psz_value ); } else if( !strcasecmp( "size", psz_name ) ) { @@ -698,44 +703,44 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) int i_value = atoi( psz_value ); if( ( i_value >= -5 ) && ( i_value <= 5 ) ) - p_style->font_style.i_font_size += - ( i_value * p_style->font_style.i_font_size ) / 10; + p_ssa_style->font_style.i_font_size += + ( i_value * p_ssa_style->font_style.i_font_size ) / 10; else if( i_value < -5 ) - p_style->font_style.i_font_size = - i_value; + p_ssa_style->font_style.i_font_size = - i_value; else if( i_value > 5 ) - p_style->font_style.i_font_size = i_value; + p_ssa_style->font_style.i_font_size = i_value; } else - p_style->font_style.i_font_size = atoi( psz_value ); + p_ssa_style->font_style.i_font_size = atoi( psz_value ); } else if( !strcasecmp( "italic", psz_name ) ) { if( !strcasecmp( "yes", psz_value )) - p_style->font_style.i_style_flags |= STYLE_ITALIC; + p_ssa_style->font_style.i_style_flags |= STYLE_ITALIC; else - p_style->font_style.i_style_flags &= ~STYLE_ITALIC; + p_ssa_style->font_style.i_style_flags &= ~STYLE_ITALIC; } else if( !strcasecmp( "weight", psz_name ) ) { if( !strcasecmp( "bold", psz_value )) - p_style->font_style.i_style_flags |= STYLE_BOLD; + p_ssa_style->font_style.i_style_flags |= STYLE_BOLD; else - p_style->font_style.i_style_flags &= ~STYLE_BOLD; + p_ssa_style->font_style.i_style_flags &= ~STYLE_BOLD; } else if( !strcasecmp( "underline", psz_name ) ) { if( !strcasecmp( "yes", psz_value )) - p_style->font_style.i_style_flags |= STYLE_UNDERLINE; + p_ssa_style->font_style.i_style_flags |= STYLE_UNDERLINE; else - p_style->font_style.i_style_flags &= ~STYLE_UNDERLINE; + p_ssa_style->font_style.i_style_flags &= ~STYLE_UNDERLINE; } else if( !strcasecmp( "color", psz_name ) ) { if( *psz_value == '#' ) { unsigned long col = strtol(psz_value+1, NULL, 16); - p_style->font_style.i_font_color = (col & 0x00ffffff); - p_style->font_style.i_font_alpha = (col >> 24) & 0xff; + p_ssa_style->font_style.i_font_color = (col & 0x00ffffff); + p_ssa_style->font_style.i_font_alpha = (col >> 24) & 0xff; } } else if( !strcasecmp( "outline-color", psz_name ) ) @@ -743,39 +748,39 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) if( *psz_value == '#' ) { unsigned long col = strtol(psz_value+1, NULL, 16); - p_style->font_style.i_outline_color = (col & 0x00ffffff); - p_style->font_style.i_outline_alpha = (col >> 24) & 0xff; + p_ssa_style->font_style.i_outline_color = (col & 0x00ffffff); + p_ssa_style->font_style.i_outline_alpha = (col >> 24) & 0xff; } } else if( !strcasecmp( "outline-level", psz_name ) ) { - p_style->font_style.i_outline_width = atoi( psz_value ); + p_ssa_style->font_style.i_outline_width = atoi( psz_value ); } else if( !strcasecmp( "shadow-color", psz_name ) ) { if( *psz_value == '#' ) { unsigned long col = strtol(psz_value+1, NULL, 16); - p_style->font_style.i_shadow_color = (col & 0x00ffffff); - p_style->font_style.i_shadow_alpha = (col >> 24) & 0xff; + p_ssa_style->font_style.i_shadow_color = (col & 0x00ffffff); + p_ssa_style->font_style.i_shadow_alpha = (col >> 24) & 0xff; } } else if( !strcasecmp( "shadow-level", psz_name ) ) { - p_style->font_style.i_shadow_width = atoi( psz_value ); + p_ssa_style->font_style.i_shadow_width = atoi( psz_value ); } else if( !strcasecmp( "back-color", psz_name ) ) { if( *psz_value == '#' ) { unsigned long col = strtol(psz_value+1, NULL, 16); - p_style->font_style.i_karaoke_background_color = (col & 0x00ffffff); - p_style->font_style.i_karaoke_background_alpha = (col >> 24) & 0xff; + p_ssa_style->font_style.i_karaoke_background_color = (col & 0x00ffffff); + p_ssa_style->font_style.i_karaoke_background_alpha = (col >> 24) & 0xff; } } else if( !strcasecmp( "spacing", psz_name ) ) { - p_style->font_style.i_spacing = atoi( psz_value ); + p_ssa_style->font_style.i_spacing = atoi( psz_value ); } } free( psz_name ); @@ -794,48 +799,48 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) if( !strcasecmp( "alignment", psz_name ) ) { if( !strcasecmp( "TopLeft", psz_value ) ) - p_style->i_align = SUBPICTURE_ALIGN_TOP | SUBPICTURE_ALIGN_LEFT; + p_ssa_style->i_align = SUBPICTURE_ALIGN_TOP | SUBPICTURE_ALIGN_LEFT; else if( !strcasecmp( "TopCenter", psz_value ) ) - p_style->i_align = SUBPICTURE_ALIGN_TOP; + p_ssa_style->i_align = SUBPICTURE_ALIGN_TOP; else if( !strcasecmp( "TopRight", psz_value ) ) - p_style->i_align = SUBPICTURE_ALIGN_TOP | SUBPICTURE_ALIGN_RIGHT; + p_ssa_style->i_align = SUBPICTURE_ALIGN_TOP | SUBPICTURE_ALIGN_RIGHT; else if( !strcasecmp( "MiddleLeft", psz_value ) ) - p_style->i_align = SUBPICTURE_ALIGN_LEFT; + p_ssa_style->i_align = SUBPICTURE_ALIGN_LEFT; else if( !strcasecmp( "MiddleCenter", psz_value ) ) - p_style->i_align = 0; + p_ssa_style->i_align = 0; else if( !strcasecmp( "MiddleRight", psz_value ) ) - p_style->i_align = SUBPICTURE_ALIGN_RIGHT; + p_ssa_style->i_align = SUBPICTURE_ALIGN_RIGHT; else if( !strcasecmp( "BottomLeft", psz_value ) ) - p_style->i_align = SUBPICTURE_ALIGN_BOTTOM | SUBPICTURE_ALIGN_LEFT; + p_ssa_style->i_align = SUBPICTURE_ALIGN_BOTTOM | SUBPICTURE_ALIGN_LEFT; else if( !strcasecmp( "BottomCenter", psz_value ) ) - p_style->i_align = SUBPICTURE_ALIGN_BOTTOM; + p_ssa_style->i_align = SUBPICTURE_ALIGN_BOTTOM; else if( !strcasecmp( "BottomRight", psz_value ) ) - p_style->i_align = SUBPICTURE_ALIGN_BOTTOM | SUBPICTURE_ALIGN_RIGHT; + p_ssa_style->i_align = SUBPICTURE_ALIGN_BOTTOM | SUBPICTURE_ALIGN_RIGHT; } else if( !strcasecmp( "horizontal-margin", psz_name ) ) { if( strchr( psz_value, '%' ) ) { - p_style->i_margin_h = 0; - p_style->i_margin_percent_h = atoi( psz_value ); + p_ssa_style->i_margin_h = 0; + p_ssa_style->i_margin_percent_h = atoi( psz_value ); } else { - p_style->i_margin_h = atoi( psz_value ); - p_style->i_margin_percent_h = 0; + p_ssa_style->i_margin_h = atoi( psz_value ); + p_ssa_style->i_margin_percent_h = 0; } } else if( !strcasecmp( "vertical-margin", psz_name ) ) { if( strchr( psz_value, '%' ) ) { - p_style->i_margin_v = 0; - p_style->i_margin_percent_v = atoi( psz_value ); + p_ssa_style->i_margin_v = 0; + p_ssa_style->i_margin_percent_v = atoi( psz_value ); } else { - p_style->i_margin_v = atoi( psz_value ); - p_style->i_margin_percent_v = 0; + p_ssa_style->i_margin_v = atoi( psz_value ); + p_ssa_style->i_margin_percent_v = 0; } } } @@ -848,7 +853,7 @@ static void ParseUSFHeaderTags( decoder_t *p_dec, xml_reader_t *p_xml_reader ) break; } } - free( p_style ); + free( p_ssa_style ); } diff --git a/modules/gui/fbosd.c b/modules/gui/fbosd.c index 002c441..b697642 100644 --- a/modules/gui/fbosd.c +++ b/modules/gui/fbosd.c @@ -311,20 +311,19 @@ static int Create( vlc_object_t *p_this ) return VLC_ENOMEM; memset( p_sys, 0, sizeof(intf_sys_t) ); - p_sys->p_style = malloc( sizeof( text_style_t ) ); + p_sys->p_style = text_style_New() ; if( !p_sys->p_style ) { free( p_intf->p_sys ); return VLC_ENOMEM; } - vlc_memcpy( p_sys->p_style, &default_text_style, sizeof( text_style_t ) ); p_intf->pf_run = Run; p_sys->p_image = image_HandlerCreate( p_this ); if( !p_sys->p_image ) { - free( p_intf->p_sys->p_style ); + text_style_Delete( p_intf->p_sys->p_style ); free( p_intf->p_sys ); return VLC_ENOMEM; } @@ -521,7 +520,7 @@ static void Destroy( vlc_object_t *p_this ) if( p_sys->p_overlay ) picture_Release( p_sys->p_overlay ); - free( p_sys->p_style ); + text_style_Delete( p_sys->p_style ) ; free( p_sys ); } @@ -866,7 +865,7 @@ static picture_t *RenderText( intf_thread_t *p_intf, const char *psz_string, subpicture_region_Delete( p_region ); return NULL; } - p_region->p_style = p_style; + p_region->p_style = text_style_Dup( p_style ); p_region->i_align = OSD_ALIGN_LEFT | OSD_ALIGN_TOP; if( p_sys->p_text->pf_render_text ) diff --git a/modules/video_filter/dynamicoverlay/dynamicoverlay.c b/modules/video_filter/dynamicoverlay/dynamicoverlay.c index c015c4c..8808836 100644 --- a/modules/video_filter/dynamicoverlay/dynamicoverlay.c +++ b/modules/video_filter/dynamicoverlay/dynamicoverlay.c @@ -358,9 +358,7 @@ static subpicture_t *Filter( filter_t *p_filter, mtime_t date ) if( p_overlay->format.i_chroma == VLC_FOURCC('T','E','X','T') ) { p_region->psz_text = strdup( p_overlay->data.p_text ); - p_region->p_style = malloc( sizeof(struct text_style_t) ); - if( p_region->p_style ) - *p_region->p_style = p_overlay->fontstyle; + p_region->p_style = text_style_Dup( p_overlay->p_fontstyle ) ; } else { diff --git a/modules/video_filter/dynamicoverlay/dynamicoverlay.h b/modules/video_filter/dynamicoverlay/dynamicoverlay.h index 8eb500a..86caa18 100644 --- a/modules/video_filter/dynamicoverlay/dynamicoverlay.h +++ b/modules/video_filter/dynamicoverlay/dynamicoverlay.h @@ -122,7 +122,7 @@ typedef struct overlay_t bool b_active; video_format_t format; - struct text_style_t fontstyle; + struct text_style_t* p_fontstyle; union { picture_t *p_pic; char *p_text; diff --git a/modules/video_filter/dynamicoverlay/dynamicoverlay_commands.c b/modules/video_filter/dynamicoverlay/dynamicoverlay_commands.c index 3f3f5b8..47a1690 100644 --- a/modules/video_filter/dynamicoverlay/dynamicoverlay_commands.c +++ b/modules/video_filter/dynamicoverlay/dynamicoverlay_commands.c @@ -58,7 +58,7 @@ overlay_t *OverlayCreate( void ) p_ovl->b_active = false; vout_InitFormat( &p_ovl->format, VLC_FOURCC( '\0','\0','\0','\0') , 0, 0, VOUT_ASPECT_FACTOR ); - memcpy( &p_ovl->fontstyle, &default_text_style, sizeof(struct text_style_t) ); + p_ovl->p_fontstyle = text_style_New() ; p_ovl->data.p_text = NULL; return p_ovl; @@ -68,6 +68,7 @@ int OverlayDestroy( overlay_t *p_ovl ) { if( p_ovl->data.p_text != NULL ) free( p_ovl->data.p_text ); + text_style_Delete( p_ovl->p_fontstyle ) ; return VLC_SUCCESS; } @@ -636,7 +637,7 @@ static int exec_GetTextAlpha( filter_t *p_filter, if( p_ovl == NULL ) return VLC_EGENERIC; - p_results->fontstyle.i_font_alpha = p_ovl->fontstyle.i_font_alpha; + p_results->fontstyle.i_font_alpha = p_ovl->p_fontstyle->i_font_alpha; return VLC_SUCCESS; } @@ -649,7 +650,7 @@ static int exec_GetTextColor( filter_t *p_filter, if( p_ovl == NULL ) return VLC_EGENERIC; - p_results->fontstyle.i_font_color = p_ovl->fontstyle.i_font_color; + p_results->fontstyle.i_font_color = p_ovl->p_fontstyle->i_font_color; return VLC_SUCCESS; } @@ -662,7 +663,7 @@ static int exec_GetTextSize( filter_t *p_filter, if( p_ovl == NULL ) return VLC_EGENERIC; - p_results->fontstyle.i_font_size = p_ovl->fontstyle.i_font_size; + p_results->fontstyle.i_font_size = p_ovl->p_fontstyle->i_font_size; return VLC_SUCCESS; } @@ -725,7 +726,7 @@ static int exec_SetTextAlpha( filter_t *p_filter, if( p_ovl == NULL ) return VLC_EGENERIC; - p_ovl->fontstyle.i_font_alpha = p_params->fontstyle.i_font_alpha; + p_ovl->p_fontstyle->i_font_alpha = p_params->fontstyle.i_font_alpha; p_sys->b_updated = p_ovl->b_active; return VLC_SUCCESS; } @@ -741,7 +742,7 @@ static int exec_SetTextColor( filter_t *p_filter, if( p_ovl == NULL ) return VLC_EGENERIC; - p_ovl->fontstyle.i_font_color = p_params->fontstyle.i_font_color; + p_ovl->p_fontstyle->i_font_color = p_params->fontstyle.i_font_color; p_sys->b_updated = p_ovl->b_active; return VLC_SUCCESS; } @@ -757,7 +758,7 @@ static int exec_SetTextSize( filter_t *p_filter, if( p_ovl == NULL ) return VLC_EGENERIC; - p_ovl->fontstyle.i_font_size = p_params->fontstyle.i_font_size; + p_ovl->p_fontstyle->i_font_size = p_params->fontstyle.i_font_size; p_sys->b_updated = p_ovl->b_active; return VLC_SUCCESS; } diff --git a/modules/video_filter/marq.c b/modules/video_filter/marq.c index 94b3f91..4a2f710 100644 --- a/modules/video_filter/marq.c +++ b/modules/video_filter/marq.c @@ -200,9 +200,8 @@ static int CreateFilter( vlc_object_t *p_this ) p_sys = p_filter->p_sys = malloc( sizeof( filter_sys_t ) ); if( p_sys == NULL ) return VLC_ENOMEM; - - p_sys->p_style = malloc( sizeof( text_style_t ) ); - memcpy( p_sys->p_style, &default_text_style, sizeof( text_style_t ) ); + /* NOTE: this sub filter could be a nice guide on how to use text_style_* functions */ + p_sys->p_style = text_style_New() ; config_ChainParse( p_filter, CFG_PREFIX, ppsz_filter_options, p_filter->p_cfg ); @@ -239,7 +238,7 @@ static void DestroyFilter( vlc_object_t *p_this ) filter_t *p_filter = (filter_t *)p_this; filter_sys_t *p_sys = p_filter->p_sys; - free( p_sys->p_style ); + text_style_Delete( p_sys->p_style ); free( p_sys->psz_marquee ); /* Delete the marquee variables */ @@ -332,7 +331,9 @@ static subpicture_t *Filter( filter_t *p_filter, mtime_t date ) p_spu->p_region->i_x = p_sys->i_xoff; p_spu->p_region->i_y = p_sys->i_yoff; - p_spu->p_region->p_style = p_sys->p_style; + + //basos:: we should copy here as spu manages deletion from now and on + p_spu->p_region->p_style = text_style_Dup( p_sys->p_style ) ; out: vlc_object_unlock( p_filter ); diff --git a/modules/video_filter/rss.c b/modules/video_filter/rss.c index 8eef177..ce0f5ff 100644 --- a/modules/video_filter/rss.c +++ b/modules/video_filter/rss.c @@ -272,7 +272,7 @@ static int CreateFilter( vlc_object_t *p_this ) } p_sys->psz_marquee[p_sys->i_length] = '\0'; - p_sys->p_style = malloc( sizeof( text_style_t )); + p_sys->p_style = text_style_New() ; if( p_sys->p_style == NULL ) { free( p_sys->psz_marquee ); @@ -282,7 +282,6 @@ static int CreateFilter( vlc_object_t *p_this ) free( p_sys ); return VLC_ENOMEM; } - memcpy( p_sys->p_style, &default_text_style, sizeof( text_style_t )); p_sys->i_xoff = var_CreateGetInteger( p_filter, CFG_PREFIX "x" ); p_sys->i_yoff = var_CreateGetInteger( p_filter, CFG_PREFIX "y" ); @@ -299,7 +298,7 @@ static int CreateFilter( vlc_object_t *p_this ) if( FetchRSS( p_filter ) ) { msg_Err( p_filter, "failed while fetching RSS ... too bad" ); - free( p_sys->p_style ); + text_style_Delete( p_sys->p_style ); free( p_sys->psz_marquee ); vlc_mutex_unlock( &p_sys->lock ); vlc_mutex_destroy( &p_sys->lock ); @@ -311,7 +310,7 @@ static int CreateFilter( vlc_object_t *p_this ) if( p_sys->i_feeds == 0 ) { - free( p_sys->p_style ); + text_style_Delete( p_sys->p_style ); free( p_sys->psz_marquee ); vlc_mutex_unlock( &p_sys->lock ); vlc_mutex_destroy( &p_sys->lock ); @@ -323,7 +322,7 @@ static int CreateFilter( vlc_object_t *p_this ) { if( p_sys->p_feeds[i_feed].i_items == 0 ) { - free( p_sys->p_style ); + text_style_Delete( p_sys->p_style ); free( p_sys->psz_marquee ); FreeRSS( p_filter ); vlc_mutex_unlock( &p_sys->lock ); @@ -351,7 +350,7 @@ static void DestroyFilter( vlc_object_t *p_this ) vlc_mutex_lock( &p_sys->lock ); - free( p_sys->p_style ); + text_style_Delete( p_sys->p_style ); free( p_sys->psz_marquee ); free( p_sys->psz_urls ); FreeRSS( p_filter ); @@ -530,7 +529,8 @@ static subpicture_t *Filter( filter_t *p_filter, mtime_t date ) p_spu->b_absolute = false; } - p_spu->p_region->p_style = p_sys->p_style; + // basos:: we should copy here as style mem is managed by spu from now and on + p_spu->p_region->p_style = text_style_Dup( p_sys->p_style ); if( p_feed->p_pic ) { diff --git a/src/libvlccore.sym b/src/libvlccore.sym index 1dd9549..8367f28 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -548,3 +548,7 @@ vout_UnlinkPicture vout_vaControlDefault __xml_Create xml_Delete +text_style_New +text_style_Copy +text_style_Dup +text_style_Delete diff --git a/src/video_output/video_text.c b/src/video_output/video_text.c index d0e7a0a..0c55a4c 100644 --- a/src/video_output/video_text.c +++ b/src/video_output/video_text.c @@ -73,10 +73,8 @@ int vout_ShowTextAbsolute( vout_thread_t *p_vout, int i_channel, int i_flags, int i_hmargin, int i_vmargin, mtime_t i_start, mtime_t i_stop ) { - (void)p_style; subpicture_t *p_spu; video_format_t fmt; - /* (void)p_style; FIXME: <-- why ask for this if it's unused?!? */ if( !psz_string ) return VLC_EGENERIC; @@ -110,6 +108,8 @@ int vout_ShowTextAbsolute( vout_thread_t *p_vout, int i_channel, p_spu->p_region->i_align = i_flags & SUBPICTURE_ALIGN_MASK; p_spu->p_region->i_x = i_hmargin; p_spu->p_region->i_y = i_vmargin; + if ( p_style ) + p_spu->p_region->p_style = text_style_Dup( p_style ); spu_DisplaySubpicture( p_vout->p_spu, p_spu ); diff --git a/src/video_output/vout_subpictures.c b/src/video_output/vout_subpictures.c index d20d4e0..6117281 100644 --- a/src/video_output/vout_subpictures.c +++ b/src/video_output/vout_subpictures.c @@ -52,6 +52,12 @@ #define VLC_FOURCC_RGBA VLC_FOURCC('R','G','B','A') #define VLC_FOURCC_TEXT VLC_FOURCC('T','E','X','T') +/* Default text style + DONT memcpy. Use p_style = text_style_New( ) to allocate default text style + and text_style_Delete( p_style ) to deallocate */ +static const text_style_t default_text_style = { NULL, 22, 0xffffff, 0xff, STYLE_OUTLINE, + 0x000000, 0xff, 0x000000, 0xff, 0xffffff, 0x80, 0xffffff, 0xff, 1, 0, -1 }; + /* */ typedef struct { @@ -330,6 +336,55 @@ void spu_Attach( spu_t *p_spu, vlc_object_t *p_this, bool b_attach ) } /** + * Initialize/Copy/Delete/Dupicate a text style struct managing all the memory stuff + */ +text_style_t* text_style_New( ) +{ + text_style_t* p_style_out = + calloc(1, sizeof( text_style_t ) ) ; + if ( !p_style_out ) + return NULL ; + // initialize to default text style + text_style_Copy( p_style_out, &default_text_style ) ; + return p_style_out ; +} + +text_style_t* text_style_Copy( text_style_t* p_style_out, const text_style_t* p_style_in ) +{ + if ( p_style_in ) + { + /* each text_style struct owns the psz_fontname, so clear old, if any, fontname */ + if ( p_style_out->psz_fontname ) + free( p_style_out->psz_fontname ) ; + memcpy( p_style_out, p_style_in, sizeof( text_style_t ) ); + if ( p_style_out->psz_fontname ) + p_style_out->psz_fontname = strdup( p_style_out->psz_fontname ) ; + } + return p_style_out ; +} + +text_style_t* text_style_Dup( const text_style_t* p_style_in ) +{ + if ( !p_style_in ) + return NULL ; + text_style_t* p_style_out = + calloc( 1, sizeof( text_style_t ) ) ; + if ( !p_style_out ) + return NULL ; + text_style_Copy( p_style_out, p_style_in ) ; + return p_style_out ; +} + +void text_style_Delete( text_style_t* p_style ) +{ + if ( !p_style ) + return ; + if ( p_style->psz_fontname ) + free( p_style->psz_fontname ) ; + free( p_style ) ; +} + +/** * Display a subpicture * * Remove the reservation flag of a subpicture, which will cause it to be @@ -776,7 +831,10 @@ void subpicture_region_Delete( subpicture_region_t *p_region ) free( p_region->psz_text ); free( p_region->psz_html ); - //free( p_region->p_style ); FIXME --fenrir plugin does not allocate the memory for it. I think it might lead to segfault, video renderer can live longer than the decoder + // basos: p_region owns a copy of p_style (with text_style_Dup) + if ( p_region->p_style ) { + text_style_Delete( p_region->p_style ) ; + } free( p_region ); } -- 1.5.6.5 --------------------------------_CUT_STOP------------------------------------------------------------ From noxelia at gmail.com Mon Feb 2 19:00:02 2009 From: noxelia at gmail.com (basos g) Date: Mon, 2 Feb 2009 20:00:02 +0200 Subject: [vlc-devel] [PATCH] 4 patches to commit: [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules In-Reply-To: <9d98edc70902020352h1155cabbsd138f3008f313a11@mail.gmail.com> References: <9d98edc70902020352h1155cabbsd138f3008f313a11@mail.gmail.com> Message-ID: <9d98edc70902021000k4ff3271dne2bb15359f612346@mail.gmail.com> For some reason this is not posted right.... Resent ---------- Forwarded message ---------- From: basos g Date: 2009/2/2 Subject: [PATCH] 4 patches to commit: [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules To: Mailing list for VLC media player developers > #2 mega-patch for text_style -- this is a patch rework after fenrir comments > [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules > > text_style_New -- allocates default text style > text_style_Dup -- allocates and copies text style > text_style_Copy -- copies text style > text_style_Delete -- deallocates text style > > NOTE that the vout_ShowText* functions > will take a p_style and copy it internally so you have > to free in the caller function. Other modules where p_style > was malloced there are now fixed to copy before calling > the sout* functions. > PS: This is part of of a 4 patch pack. Please, i'd like all these patches comited or give a good rejection reason. > > basos > -------------- next part -------------- A non-text attachment was scrubbed... Name: 0007-ADD-CLEAN-Added-text_style_-methods.-Cleaned-module.patch Type: text/x-diff Size: 51053 bytes Desc: not available URL: From rem at videolan.org Mon Feb 2 19:20:31 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Mon, 2 Feb 2009 20:20:31 +0200 Subject: [vlc-devel] RE : [PATCH] -- fullscreen enhancements In-Reply-To: <20090202180357.GB16773@videolan.org> References: <20090202025005.GA14452@videolan.org> <002901c98537$7fe26a10$5652fac1@CCCC> <20090202180357.GB16773@videolan.org> Message-ID: <200902022020.32500.rem@videolan.org> Le lundi 2 f?vrier 2009 20:03:57 Jean-Baptiste Kempf, vous avez ?crit?: > On Mon, Feb 02, 2009 at 02:09:35PM +0100, brezhoneg1 wrote : > > This patch was originally aimed at proving width/height restrictions > > should not be seen as a big problem. This patch can certainly be > > improved. Ideally, setting (the first time) and resetting (when reusing > > vout) should be mutualized. Yet, it is a working patch, and hopefully I > > have not made wrong assumptions. > > > > My point is: > > - vlc1.0 will be a landmark in vlc history. > > - vlc1.0 has raised expectations that the transition problems will be > > solved (see numerous posts and answers on the forum) > > I think you are right on this one. > > > For the sake of vlc, I really think working out this height/width > > limitation would avoid users complaining bitterly for what can honestly > > be considered a bug. (With vlc1.0, this will even be more annoying that > > users don't have in mind this limitation and will see it as an erratic > > behavior) > > From a user PoV, you are right. Arguable. At this point, users expect to have 0.9 regressions. This really looks like a new feature more than a bug to me. > > Maybe, if someone with good knowledge of vout could react to it (fenrir, > > from what I was said ?). I'm afraid no active commiters know the vout code well currently. At least I don't, Laurent made the same claim, and Antoine gave some similar hints in his few video output commits as well. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Mon Feb 2 19:32:15 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 19:32:15 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_old_core_drawable_support_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090202183215.5D9CA2E779@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 2 20:22:53 2009 +0200| [0f10d537baee7912fb6178303fd1e67cf7bc35bd] | committer: R?mi Denis-Courmont Remove old core drawable support > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0f10d537baee7912fb6178303fd1e67cf7bc35bd --- src/video_output/vout_intf.c | 4 ---- 1 files changed, 0 insertions(+), 4 deletions(-) diff --git a/src/video_output/vout_intf.c b/src/video_output/vout_intf.c index 4145bde..9794eee 100644 --- a/src/video_output/vout_intf.c +++ b/src/video_output/vout_intf.c @@ -110,10 +110,6 @@ vout_window_t *vout_RequestWindow( vout_thread_t *p_vout, const char *psz_cap, *pi_width_hint = p_vout->i_window_width; *pi_height_hint = p_vout->i_window_height; - /* Check whether someone provided us with a window ID */ - int drawable = var_CreateGetInteger( p_vout, "drawable" ); - if( drawable ) return (void *)(intptr_t)drawable; - vout_window_t *wnd = vlc_custom_create (VLC_OBJECT(p_vout), sizeof (*wnd), VLC_OBJECT_GENERIC, "window"); if (wnd == NULL) From git at videolan.org Mon Feb 2 19:32:15 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 19:32:15 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Reimplement_libvlc=5Fvideo=5Fset?= =?utf-8?q?=5Fparent_back-end_as_a_plugin_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090202183215.6E2432E7E5@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 2 20:28:18 2009 +0200| [76fd9cb9b2efe77ea27f0f14e175f35bcdd32057] | committer: R?mi Denis-Courmont Reimplement libvlc_video_set_parent back-end as a plugin If multiple video ouputs exist, only one will now use the drawable. This still does not implement drawable size, window type and probably Win64 support properly. Also, this is not currently used by libvlc_media_player_set_drawable although it probably should. This function looks pretty weirdly -to stay polite- implemented. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=76fd9cb9b2efe77ea27f0f14e175f35bcdd32057 --- modules/video_output/Modules.am | 7 ++ modules/video_output/drawable.c | 136 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 143 insertions(+), 0 deletions(-) diff --git a/modules/video_output/Modules.am b/modules/video_output/Modules.am index b8886fa..49a1755 100644 --- a/modules/video_output/Modules.am +++ b/modules/video_output/Modules.am @@ -46,3 +46,10 @@ libxcb_window_plugin_la_LIBADD = $(AM_LIBADD) \ libxcb_window_plugin_la_DEPENDENCIES = EXTRA_LTLIBRARIES += libxcb_plugin.la libxcb_window_plugin.la + +# XXX: do we need yet another modules/ subdirectory? +libdrawable_plugin_la_SOURCES = drawable.c +libdrawable_plugin_la_CFLAGS = $(AM_CFLAGS) +libdrawable_plugin_la_LIBADD = $(AM_LIBADD) +libdrawable_plugin_la_DEPENDENCIES = +libvlc_LTLIBRARIES += libdrawable_plugin.la diff --git a/modules/video_output/drawable.c b/modules/video_output/drawable.c new file mode 100644 index 0000000..bc64d43 --- /dev/null +++ b/modules/video_output/drawable.c @@ -0,0 +1,136 @@ +/** + * @file drawable.c + * @brief Legacy monolithic LibVLC video window provider + */ +/***************************************************************************** + * Copyright ? 2009 R?mi Denis-Courmont + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2.0 + * of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + ****************************************************************************/ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include + +#include +#include +#include +#include + +static int Open (vlc_object_t *); +static void Close (vlc_object_t *); + +/* + * Module descriptor + */ +vlc_module_begin () + set_shortname (N_("Drawable")) + set_description (N_("External embedded video window")) + set_category (CAT_VIDEO) + set_subcategory (SUBCAT_VIDEO_VOUT) +#ifdef WIN32 + set_capability ("hwnd", 70) +#else + set_capability ("xwindow", 70) +#endif + set_callbacks (Open, Close) + +vlc_module_end () + +static int Control (vout_window_t *, int, va_list); + +/** + * Find the drawable set by libvlc application. + */ +static int Open (vlc_object_t *obj) +{ + static vlc_mutex_t serializer = VLC_STATIC_MUTEX; + vout_window_t *wnd = (vout_window_t *)obj; + int drawable = 0; + + if (var_Create (obj->p_libvlc, "drawable-busy", VLC_VAR_BOOL)) + return VLC_ENOMEM; + + vlc_mutex_lock (&serializer); + /* Note: We cannot simply clear the drawable variable. + * It would break libvlc_video_get_parent(). */ + if (!var_GetBool (obj->p_libvlc, "drawable-busy")) + { + /* TODO: implement separate variables for XIDs and HWNDs */ + drawable = var_GetInteger (obj->p_libvlc, "drawable"); + if (drawable != 0) + var_SetBool (obj->p_libvlc, "drawable-busy", true); + } + vlc_mutex_unlock (&serializer); + + if (drawable == 0) + { + var_Destroy (obj->p_libvlc, "drawable-busy"); + return VLC_EGENERIC; + } + +#ifdef WIN32 + /* FIXME: don't loose critical bits on Win64 */ + wnd->handle.hwnd = (void *)drawable; +#else + /* FIXME: check that X server matches --x11-display (if specified) */ + /* FIXME: get X drawable dimensions */ + wnd->handle.xid = drawable; +#endif + /* FIXME: get window size (in platform-dependent ways) */ + + wnd->control = Control; + return VLC_SUCCESS; +} + + +/** + * Release the drawable. + */ +static void Close (vlc_object_t *obj) +{ + /* This is atomic with regards to var_GetBool() in Open(): */ + var_SetBool (obj->p_libvlc, "drawable-busy", false); + + /* Variables are reference-counted... */ + var_Destroy (obj->p_libvlc, "drawable-busy"); +} + + +static int Control (vout_window_t *wnd, int query, va_list ap) +{ + switch (query) + { + case VOUT_GET_SIZE: + { + unsigned int *pi_width = va_arg (ap, unsigned int *); + unsigned int *pi_height = va_arg (ap, unsigned int *); + *pi_width = wnd->width; + *pi_height = wnd->height; + return VLC_SUCCESS; + } + + case VOUT_SET_SIZE: /* not allowed */ + case VOUT_SET_STAY_ON_TOP: /* not allowed either, would be ugly */ + return VLC_EGENERIC; + } + + msg_Warn (wnd, "unsupported control query %d", query); + return VLC_EGENERIC; +} + From brezhoneg1 at yahoo.fr Mon Feb 2 20:11:16 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Mon, 2 Feb 2009 20:11:16 +0100 Subject: [vlc-devel] RE : RE : [PATCH] -- fullscreen enhancements In-Reply-To: <200902022020.32500.rem@videolan.org> Message-ID: <001e01c9856a$06ee5500$a06bfac1@CCCC> > -----Message d'origine----- > De?: vlc-devel-bounces at videolan.org [mailto:vlc-devel- > bounces at videolan.org] De la part de R?mi Denis-Courmont > Envoy??: lundi 2 f?vrier 2009 19:21 > ??: vlc-devel at videolan.org > Objet?: Re: [vlc-devel] RE : [PATCH] -- fullscreen enhancements > > Le lundi 2 f?vrier 2009 20:03:57 Jean-Baptiste Kempf, vous avez ?crit?: > > On Mon, Feb 02, 2009 at 02:09:35PM +0100, brezhoneg1 wrote : > > > This patch was originally aimed at proving width/height restrictions > > > should not be seen as a big problem. This patch can certainly be > > > improved. Ideally, setting (the first time) and resetting (when > reusing > > > vout) should be mutualized. Yet, it is a working patch, and hopefully > I > > > have not made wrong assumptions. > > > > > > My point is: > > > - vlc1.0 will be a landmark in vlc history. > > > - vlc1.0 has raised expectations that the transition problems will be > > > solved (see numerous posts and answers on the forum) > > > > I think you are right on this one. > > > > > For the sake of vlc, I really think working out this height/width > > > limitation would avoid users complaining bitterly for what can > honestly > > > be considered a bug. (With vlc1.0, this will even be more annoying > that > > > users don't have in mind this limitation and will see it as an erratic > > > behavior) > > > > From a user PoV, you are right. > > Arguable. At this point, users expect to have 0.9 regressions. This really > looks like a new feature more than a bug to me. > > > > Maybe, if someone with good knowledge of vout could react to it > (fenrir, > > > from what I was said ?). > > I'm afraid no active commiters know the vout code well currently. At least > I > don't, Laurent made the same claim, and Antoine gave some similar hints in > his few video output commits as well. > What about the forefathers of vlc ..., if any of them is still reading this email list, and would come up and bring their expertise. I suppose you all feel proud of this Open source project and it is a pity keeping such a recurrent bug? (at least unfortunate behavior) for so long. Erwan10 From git at videolan.org Mon Feb 2 20:40:05 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 20:40:05 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Improve_libvlc_drawable_documenta?= =?utf-8?q?tion_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090202194005.959BB2E7A1@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 2 21:02:39 2009 +0200| [248faa09ed297b6674672e841751996b5265e8e2] | committer: R?mi Denis-Courmont Improve libvlc drawable documentation > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=248faa09ed297b6674672e841751996b5265e8e2 --- include/vlc/deprecated.h | 5 +++-- include/vlc/libvlc.h | 13 ++++++++++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/include/vlc/deprecated.h b/include/vlc/deprecated.h index ba9a7be..f7711ca 100644 --- a/include/vlc/deprecated.h +++ b/include/vlc/deprecated.h @@ -37,10 +37,11 @@ extern "C" { /** * Set the default video output's parent. * - * This setting will be used as default for all video outputs. + * This setting will be used as default for any video output. * * \param p_instance libvlc instance - * \param drawable the new parent window (Drawable on X11, CGrafPort on MacOSX, HWND on Win32) + * \param drawable the new parent window + * (see libvlc_media_player_set_drawable() for details) * \param p_e an initialized exception pointer * @deprecated Use libvlc_media_player_set_drawable */ diff --git a/include/vlc/libvlc.h b/include/vlc/libvlc.h index 11c4fb9..baab65f 100644 --- a/include/vlc/libvlc.h +++ b/include/vlc/libvlc.h @@ -550,7 +550,18 @@ VLC_PUBLIC_API void libvlc_media_player_pause ( libvlc_media_player_t *, libvlc_ VLC_PUBLIC_API void libvlc_media_player_stop ( libvlc_media_player_t *, libvlc_exception_t * ); /** - * Set the drawable where the media player should render its video output + * Set the drawable where the media player should render its video output. + * + * On Windows 32-bits, a window handle (HWND) is expected. + * On Windows 64-bits, this function will always fail. + * + * On OSX, a CGrafPort is expected. + * + * Otherwise, this shall be the identifier of an existing X11 drawable (window + * or pixmap). It is assumed that the X11 server is the same as the one in + * x11-display if configured. If XVideo is not supported, it is assumed + * that the drawable has the same pixmap format as the default X11 screen + * (especially depth, scan line pad, black pixel); this is a bug. * * \param p_mi the Media Player * \param drawable the libvlc_drawable_t where the media player From git at videolan.org Mon Feb 2 20:40:05 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 20:40:05 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Drawable=3A_separate_XIDs_and_HWN?= =?utf-8?q?Ds_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090202194005.B3E992E7DC@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 2 21:39:07 2009 +0200| [ab044cf5fc48be7d74097b7855558875b50e991c] | committer: R?mi Denis-Courmont Drawable: separate XIDs and HWNDs Also partially (internally only) fix missing Win64 drawable bits > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ab044cf5fc48be7d74097b7855558875b50e991c --- modules/video_output/drawable.c | 49 +++++++++++++++++++++++---------------- src/control/libvlc_internal.h | 6 ++++- src/control/media_player.c | 28 +++++++++++++-------- src/control/video.c | 24 +++++++++++++++---- src/libvlc.c | 3 +- 5 files changed, 72 insertions(+), 38 deletions(-) diff --git a/modules/video_output/drawable.c b/modules/video_output/drawable.c index bc64d43..113ddb1 100644 --- a/modules/video_output/drawable.c +++ b/modules/video_output/drawable.c @@ -32,7 +32,8 @@ #include #include -static int Open (vlc_object_t *); +static int OpenXID (vlc_object_t *); +static int OpenHWND (vlc_object_t *); static void Close (vlc_object_t *); /* @@ -40,15 +41,16 @@ static void Close (vlc_object_t *); */ vlc_module_begin () set_shortname (N_("Drawable")) - set_description (N_("External embedded video window")) + set_description (N_("Embedded X window video")) set_category (CAT_VIDEO) set_subcategory (SUBCAT_VIDEO_VOUT) -#ifdef WIN32 - set_capability ("hwnd", 70) -#else set_capability ("xwindow", 70) -#endif - set_callbacks (Open, Close) + set_callbacks (OpenXID, Close) + + add_submodule () + set_description (N_("Embedded Windows video")) + set_capability ("hwnd", 70) + set_callbacks (OpenHWND, Close) vlc_module_end () @@ -57,11 +59,11 @@ static int Control (vout_window_t *, int, va_list); /** * Find the drawable set by libvlc application. */ -static int Open (vlc_object_t *obj) +static int Open (vlc_object_t *obj, const char *varname, bool ptr) { static vlc_mutex_t serializer = VLC_STATIC_MUTEX; vout_window_t *wnd = (vout_window_t *)obj; - int drawable = 0; + vlc_value_t val; if (var_Create (obj->p_libvlc, "drawable-busy", VLC_VAR_BOOL)) return VLC_ENOMEM; @@ -71,33 +73,40 @@ static int Open (vlc_object_t *obj) * It would break libvlc_video_get_parent(). */ if (!var_GetBool (obj->p_libvlc, "drawable-busy")) { - /* TODO: implement separate variables for XIDs and HWNDs */ - drawable = var_GetInteger (obj->p_libvlc, "drawable"); - if (drawable != 0) + var_Get (obj->p_libvlc, varname, &val); + if (ptr ? (val.p_address != NULL): (val.i_int == 0)) var_SetBool (obj->p_libvlc, "drawable-busy", true); } vlc_mutex_unlock (&serializer); - if (drawable == 0) + if (ptr ? (val.p_address == NULL) : (val.i_int == 0)) { var_Destroy (obj->p_libvlc, "drawable-busy"); return VLC_EGENERIC; } -#ifdef WIN32 - /* FIXME: don't loose critical bits on Win64 */ - wnd->handle.hwnd = (void *)drawable; -#else + if (ptr) + wnd->handle.hwnd = val.p_address; + else + wnd->handle.xid = val.i_int; + /* FIXME: check that X server matches --x11-display (if specified) */ - /* FIXME: get X drawable dimensions */ - wnd->handle.xid = drawable; -#endif /* FIXME: get window size (in platform-dependent ways) */ wnd->control = Control; return VLC_SUCCESS; } +static int OpenXID (vlc_object_t *obj) +{ + return Open (obj, "drawable-xid", false); +} + +static int OpenHWND (vlc_object_t *obj) +{ + return Open (obj, "drawable-hwnd", true); +} + /** * Release the drawable. diff --git a/src/control/libvlc_internal.h b/src/control/libvlc_internal.h index 2fcc51b..fb26449 100644 --- a/src/control/libvlc_internal.h +++ b/src/control/libvlc_internal.h @@ -153,7 +153,11 @@ struct libvlc_media_player_t struct libvlc_instance_t * p_libvlc_instance; /* Parent instance */ libvlc_media_t * p_md; /* current media descriptor */ libvlc_event_manager_t * p_event_manager; - libvlc_drawable_t drawable; + union + { + void *hwnd; + uint32_t xid; + } drawable; bool b_own_its_input_thread; }; diff --git a/src/control/media_player.c b/src/control/media_player.c index 5d36c59..7be73ed 100644 --- a/src/control/media_player.c +++ b/src/control/media_player.c @@ -89,7 +89,8 @@ static void release_input_thread( libvlc_media_player_t *p_mi ) input_StopThread( p_input_thread ); vlc_thread_join( p_input_thread ); - var_Destroy( p_input_thread, "drawable" ); + var_Destroy( p_input_thread, "drawable-hwnd" ); + var_Destroy( p_input_thread, "drawable-xid" ); } vlc_object_release( p_input_thread ); @@ -257,7 +258,11 @@ libvlc_media_player_new( libvlc_instance_t * p_libvlc_instance, return NULL; } p_mi->p_md = NULL; - p_mi->drawable = 0; +#ifndef WIN32 + p_mi->drawable.xid = 0; +#else + p_mi->drawable.hwnd = NULL; +#endif p_mi->p_libvlc_instance = p_libvlc_instance; p_mi->p_input_thread = NULL; /* refcount strategy: @@ -592,13 +597,14 @@ void libvlc_media_player_play( libvlc_media_player_t *p_mi, p_input_thread = p_mi->p_input_thread; - if( p_mi->drawable ) - { - vlc_value_t val; - val.i_int = p_mi->drawable; - var_Create( p_input_thread, "drawable", VLC_VAR_DOINHERIT ); - var_Set( p_input_thread, "drawable", val ); - } + var_Create( p_input_thread, "drawable-xid", VLC_VAR_INTEGER ); + var_Create( p_input_thread, "drawable-hwnd", VLC_VAR_ADDRESS ); + +#ifndef WIN32 + var_SetInteger( p_input_thread, "drawable-xid", p_mi->drawable.xid ); +#else + var_SetInteger( p_input_thread, "drawable-hwnd", p_mi->drawable.hwnd ); +#endif var_AddCallback( p_input_thread, "can-seek", input_seekable_changed, p_mi ); var_AddCallback( p_input_thread, "can-pause", input_pausable_changed, p_mi ); @@ -703,7 +709,7 @@ void libvlc_media_player_set_drawable( libvlc_media_player_t *p_mi, input_thread_t *p_input_thread; vout_thread_t *p_vout = NULL; - p_mi->drawable = drawable; + p_mi->drawable.xid = drawable; /* Allow on the fly drawable changing. This is tricky has this may * not be supported by every vout. We though can't disable it @@ -732,7 +738,7 @@ libvlc_drawable_t libvlc_media_player_get_drawable ( libvlc_media_player_t *p_mi, libvlc_exception_t *p_e ) { VLC_UNUSED(p_e); - return p_mi->drawable; + return p_mi->drawable.xid; } /************************************************************************** diff --git a/src/control/video.c b/src/control/video.c index 7b952af..9e846ba 100644 --- a/src/control/video.c +++ b/src/control/video.c @@ -236,7 +236,16 @@ void libvlc_video_set_parent( libvlc_instance_t *p_instance, libvlc_drawable_t d libvlc_exception_t *p_e ) { /* set as default for future vout instances */ - var_SetInteger(p_instance->p_libvlc_int, "drawable", (int)d); +#ifdef WIN32 + vlc_value_t val; + + if( sizeof(HWND) > sizeof(libvlc_drawable_t) ) + return; /* BOOM! we told you not to use this function! */ + val.p_address = (void *)(uintptr_t)d; + var_Set( p_instance->p_libvlc_int, "drawable-hwnd", val ); +#else + var_SetInteger( p_instance->p_libvlc_int, "drawable-xid", d ); +#endif libvlc_media_player_t *p_mi = libvlc_playlist_get_media_player(p_instance, p_e); if( p_mi ) @@ -251,11 +260,16 @@ libvlc_drawable_t libvlc_video_get_parent( libvlc_instance_t *p_instance, libvlc { VLC_UNUSED(p_e); - libvlc_drawable_t result; - - result = var_GetInteger( p_instance->p_libvlc_int, "drawable" ); +#ifdef WIN32 + vlc_value_t val; - return result; + if( sizeof(HWND) > sizeof(libvlc_drawable_t) ) + return 0; + var_Get( p_instance->p_libvlc_int, "drawable-hwnd", &val ); + return (uintptr_t)val.p_address; +#else + return var_GetInteger( p_instance->p_libvlc_int, "drawable-xid" ); +#endif } diff --git a/src/libvlc.c b/src/libvlc.c index f297420..95f10cb 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -983,7 +983,8 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, /* * FIXME: kludge to use a p_libvlc-local variable for the Mozilla plugin */ - var_Create( p_libvlc, "drawable", VLC_VAR_INTEGER ); + var_Create( p_libvlc, "drawable-xid", VLC_VAR_INTEGER ); + var_Create( p_libvlc, "drawable-hwnd", VLC_VAR_ADDRESS ); var_Create( p_libvlc, "drawable-view-top", VLC_VAR_INTEGER ); var_Create( p_libvlc, "drawable-view-left", VLC_VAR_INTEGER ); var_Create( p_libvlc, "drawable-view-bottom", VLC_VAR_INTEGER ); From rem at videolan.org Mon Feb 2 20:42:33 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Mon, 2 Feb 2009 21:42:33 +0200 Subject: [vlc-devel] RE : RE : [PATCH] -- fullscreen enhancements In-Reply-To: <001e01c9856a$06ee5500$a06bfac1@CCCC> References: <001e01c9856a$06ee5500$a06bfac1@CCCC> Message-ID: <200902022142.33987.rem@videolan.org> Le lundi 2 f?vrier 2009 21:11:16 brezhoneg1, vous avez ?crit?: > What about the forefathers of vlc ..., if any of them is still reading > this email list, and would come up and bring their expertise. > > I suppose you all feel proud of this Open source project and it is a > pity keeping such a recurrent bug? (at least unfortunate behavior) for > so long. Contributors, including key ones, moving on to other things is part of the life cycle of an open-source project. There is nothing we can or want to do about this. It is a fact that we have to cope with. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From fenrir at via.ecp.fr Mon Feb 2 20:47:09 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 2 Feb 2009 20:47:09 +0100 Subject: [vlc-devel] RE : [PATCH] -- fullscreen enhancements In-Reply-To: <002901c98537$7fe26a10$5652fac1@CCCC> References: <20090202025005.GA14452@videolan.org> <002901c98537$7fe26a10$5652fac1@CCCC> Message-ID: <20090202194709.GA27239@via.ecp.fr> Hi, On Mon, Feb 02, 2009, brezhoneg1 wrote: > > > The second patch (patch 7) corrects transition issues (vout reuse) > > > especially in fullscreen mode. > > I really don't feel at ease with that one. Don't ask me to apply it. > > > > This patch was originally aimed at proving width/height restrictions > should not be seen as a big problem. This patch can certainly be > improved. Ideally, setting (the first time) and resetting (when reusing > vout) should be mutualized. Yet, it is a working patch, and hopefully I > have not made wrong assumptions. > > My point is: > - vlc1.0 will be a landmark in vlc history. > - vlc1.0 has raised expectations that the transition problems will be > solved (see numerous posts and answers on the forum) > > For the sake of vlc, I really think working out this height/width > limitation would avoid users complaining bitterly for what can honestly > be considered a bug. (With vlc1.0, this will even be more annoying that > users don't have in mind this limitation and will see it as an erratic > behavior) I do agree that this functionnality/fix is really welcome, and I thank you for your patch. > Maybe, if someone with good knowledge of vout could react to it (fenrir, > from what I was said ?). The only problem is that I do not feel confident enough on the vout part to be sure it won't create any problem. If we were not about to issue the 1.0 release I would have applied it. But for 1.0 I think it is safer to not use it (or at least I cannot say if applying it is safe), so yes it will be a bit less user friendly but I prefer to avoid regression. As soon as 1.0 is released (and in its own branch) I will apply this patch (bug me if I don't) and if tested stable it could (if agreed) make it to 1.0 stabilization branch later on. Regards, -- fenrir From git at videolan.org Mon Feb 2 21:00:02 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 21:00:02 +0100 (CET) Subject: [vlc-devel] commit: Translate Kate category tags to display a more user friendly menu. (ogg.k.ogg.k ) Message-ID: <20090202200002.F36072E7C8@skanda.videolan.org> vlc | branch: master | ogg.k.ogg.k | Sun Feb 1 13:28:38 2009 +0000| [8abaa1b2536c844e926981290ab6b3f156af0ad7] | committer: Laurent Aimar Translate Kate category tags to display a more user friendly menu. Signed-off-by: Laurent Aimar > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8abaa1b2536c844e926981290ab6b3f156af0ad7 --- modules/demux/Modules.am | 2 +- modules/demux/kate_categories.c | 76 +++++++++++++++++++++++++++++++++++++++ modules/demux/kate_categories.h | 30 +++++++++++++++ modules/demux/ogg.c | 18 +++++++-- 4 files changed, 121 insertions(+), 5 deletions(-) diff --git a/modules/demux/Modules.am b/modules/demux/Modules.am index 350f320..97c6d04 100644 --- a/modules/demux/Modules.am +++ b/modules/demux/Modules.am @@ -1,6 +1,6 @@ SUBDIRS = asf avformat avi mkv mp4 mpeg playlist SOURCES_flacsys = flac.c -SOURCES_ogg = ogg.c vorbis.h +SOURCES_ogg = ogg.c vorbis.h kate_categories.c kate_categories.h SOURCES_demuxdump = demuxdump.c SOURCES_rawdv = rawdv.c SOURCES_rawvid = rawvid.c diff --git a/modules/demux/kate_categories.c b/modules/demux/kate_categories.c new file mode 100644 index 0000000..bfe98d4 --- /dev/null +++ b/modules/demux/kate_categories.c @@ -0,0 +1,76 @@ +/***************************************************************************** + * kate_categories.c : maps well known category tags to translated strings. + ***************************************************************************** + * Copyright (C) 2009 ogg.k.ogg.k at googlemail.com + * $Id$ + * + * Authors: ogg.k.ogg.k at googlemail.com + * + * 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 + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. + *****************************************************************************/ + +/***************************************************************************** + * Preamble + *****************************************************************************/ +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include +#include +#include "kate_categories.h" + +static const struct { + const char *psz_tag; + const char *psz_i18n; +} Katei18nCategories[] = { + /* From Silvia's Mozilla list */ + { "CC", N_("Closed captions") }, + { "SUB", N_("Subtitles") }, + { "TAD", N_("Textual audio descriptions") }, + { "KTV", N_("Karaoke") }, + { "TIK", N_("Ticker text") }, + { "AR", N_("Active regions") }, + { "NB", N_("Semantic annotations") }, + { "META", N_("Metadata") }, + { "TRX", N_("Transcript") }, + { "LRC", N_("Lyrics") }, + { "LIN", N_("Linguistic markup") }, + { "CUE", N_("Cue points") }, + + /* Grandfathered */ + { "subtitles", N_("Subtitles") }, + { "spu-subtitles", N_("Subtitles (images)") }, + { "lyrics", N_("Lyrics") }, + + /* Kate specific */ + { "K-SPU", N_("Subtitles (images)") }, + { "K-SLD-T", N_("Slides (text)") }, + { "K-SLD-I", N_("Slides (images)") }, +}; + +const char *FindKateCategoryName( const char *psz_tag ) +{ + size_t i; + + for( i = 0; i < sizeof(Katei18nCategories)/sizeof(Katei18nCategories[0]); i++ ) + { + if( !strcmp( psz_tag, Katei18nCategories[i].psz_tag ) ) + return Katei18nCategories[i].psz_i18n; + } + return N_("Unknown category"); +} + + diff --git a/modules/demux/kate_categories.h b/modules/demux/kate_categories.h new file mode 100644 index 0000000..f3118df --- /dev/null +++ b/modules/demux/kate_categories.h @@ -0,0 +1,30 @@ +/***************************************************************************** + * kate_categories.h : maps well known category tags to translated strings. + ***************************************************************************** + * Copyright (C) 2009 ogg.k.ogg.k at googlemail.com + * $Id$ + * + * Authors: ogg.k.ogg.k at googlemail.com + * + * 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 + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. + *****************************************************************************/ + +#ifndef KATE_CATEGORIES_H_ +#define KATE_CATEGORIES_H_ 1 + +const char *FindKateCategoryName( const char *psz_tag ); + +#endif + diff --git a/modules/demux/ogg.c b/modules/demux/ogg.c index 577934c..568278f 100644 --- a/modules/demux/ogg.c +++ b/modules/demux/ogg.c @@ -41,6 +41,7 @@ #include #include #include "vorbis.h" +#include "kate_categories.h" /***************************************************************************** * Module descriptor @@ -1696,6 +1697,7 @@ static void Ogg_ReadKateHeader( logical_stream_t *p_stream, int32_t gnum; int32_t gden; int n; + char *psz_desc; p_stream->fmt.i_cat = SPU_ES; p_stream->fmt.i_codec = VLC_FOURCC( 'k','a','t','e' ); @@ -1719,25 +1721,33 @@ static void Ogg_ReadKateHeader( logical_stream_t *p_stream, p_stream->fmt.psz_language = malloc(16); if( p_stream->fmt.psz_language ) { - for( n = 0; n < 16; ++n ) + for( n = 0; n < 16; n++ ) p_stream->fmt.psz_language[n] = oggpack_read(&opb,8); p_stream->fmt.psz_language[15] = 0; /* just in case */ } else { - for( n = 0; n < 16; ++n ) + for( n = 0; n < 16; n++ ) oggpack_read(&opb,8); } p_stream->fmt.psz_description = malloc(16); if( p_stream->fmt.psz_description ) { - for( n = 0; n < 16; ++n ) + for( n = 0; n < 16; n++ ) p_stream->fmt.psz_description[n] = oggpack_read(&opb,8); p_stream->fmt.psz_description[15] = 0; /* just in case */ + + /* Now find a localized user readable description for this category */ + psz_desc = strdup(FindKateCategoryName(p_stream->fmt.psz_description)); + if( psz_desc ) + { + free( p_stream->fmt.psz_description ); + p_stream->fmt.psz_description = psz_desc; + } } else { - for( n = 0; n < 16; ++n ) + for( n = 0; n < 16; n++ ) oggpack_read(&opb,8); } } From fenrir at via.ecp.fr Mon Feb 2 21:01:42 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 2 Feb 2009 21:01:42 +0100 Subject: [vlc-devel] [PATCH] Translate Kate category tags to display a more user friendly subtitles selection menu In-Reply-To: References: <20090201180639.GA20026@via.ecp.fr> <20090201184954.GA6498@via.ecp.fr> Message-ID: <20090202200142.GA31803@via.ecp.fr> On Sun, Feb 01, 2009, ogg.k.ogg.k at googlemail.com wrote: > Revised version attached. Merged by [8abaa1b2536c844e926981290ab6b3f156af0ad7] Thanks for your work. Could you share a ogg file with kate content ? (or links) ? Regards, -- fenrir From fenrir at via.ecp.fr Mon Feb 2 21:06:39 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 2 Feb 2009 21:06:39 +0100 Subject: [vlc-devel] commit: Enable telx decoder when zvbi is disabled. (Laurent Aimar ) In-Reply-To: <49861C06.9080706@gmail.com> References: <20090201165734.6B3E52E8A1@skanda.videolan.org> <49861C06.9080706@gmail.com> Message-ID: <20090202200638.GB31803@via.ecp.fr> Hi, On Mon, Feb 02, 2009, xxcv wrote: > @@ -32,5 +32,5 @@ > --enable-activex \ > --disable-gnomevfs --disable-hal --disable-gtk \ > --disable-cddax --disable-vcdx \ > - --disable-libcddb --disable-dvb --disable-zvbi \ > + --disable-libcddb --disable-dvb --disable-zvbi --enable-telx\ > --disable-pulse > > Hmm, there's zvbi double entry. Yes, I let the previous entry and just fix the --disable-zvbi (to keep telx/zvbi together) as it is meant to be removed once zvbi contrib is fixed. -- fenrir From git at videolan.org Mon Feb 2 21:27:58 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 21:27:58 +0100 (CET) Subject: [vlc-devel] commit: Fixed qt4 extended panel for "spatializer" module. (Laurent Aimar ) Message-ID: <20090202202758.628BE2E82A@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 2 21:03:31 2009 +0100| [05c8ebc52b0729a8f85c7ad5e3df46c81ef3ade4] | committer: Laurent Aimar Fixed qt4 extended panel for "spatializer" module. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=05c8ebc52b0729a8f85c7ad5e3df46c81ef3ade4 --- modules/gui/qt4/components/extended_panels.cpp | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/extended_panels.cpp b/modules/gui/qt4/components/extended_panels.cpp index 3b30a40..349dca4 100644 --- a/modules/gui/qt4/components/extended_panels.cpp +++ b/modules/gui/qt4/components/extended_panels.cpp @@ -1100,7 +1100,8 @@ void Equalizer::addCallbacks( aout_instance_t *p_aout ) **********************************************************************/ static const char *psz_control_names[] = { - "Roomsize", "Width" , "Wet", "Dry", "Damp" + "spatializer-roomsize", "spatializer-width", + "spatializer-wet", "spatializer-dry", "spatializer-damp" }; Spatializer::Spatializer( intf_thread_t *_p_intf, QWidget *_parent ) : From git at videolan.org Mon Feb 2 21:27:58 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 21:27:58 +0100 (CET) Subject: [vlc-devel] commit: Variable inheritance hints (basos G ) Message-ID: <20090202202758.719742E835@skanda.videolan.org> vlc | branch: master | basos G | Sun Jan 11 04:51:27 2009 +0200| [edf32d6b5d7857c87275965f2e84417899ce264d] | committer: Laurent Aimar Variable inheritance hints Added a comment to describe inheritable variables Added debug messages to get clues about variable inheritance final source Signed-off-by: Laurent Aimar > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=edf32d6b5d7857c87275965f2e84417899ce264d --- include/vlc_variables.h | 2 ++ src/misc/variables.c | 6 +++++- 2 files changed, 7 insertions(+), 1 deletions(-) diff --git a/include/vlc_variables.h b/include/vlc_variables.h index 082660f..79c95e3 100644 --- a/include/vlc_variables.h +++ b/include/vlc_variables.h @@ -61,6 +61,8 @@ #define VLC_VAR_ISCOMMAND 0x2000 /** Creation flag */ +/* If the variable is not found on the current module + search all parents and finally module config until found */ #define VLC_VAR_DOINHERIT 0x8000 /**@}*/ diff --git a/src/misc/variables.c b/src/misc/variables.c index dc0e8e6..26d79d0 100644 --- a/src/misc/variables.c +++ b/src/misc/variables.c @@ -1384,7 +1384,7 @@ static int InheritValue( vlc_object_t *p_this, const char *psz_name, int i_var; variable_t *p_var; - if( p_this->p_parent || ( p_this->p_libvlc && p_this != p_this->p_libvlc ) ) + if( p_this->p_parent || ( p_this->p_libvlc && p_this != (vlc_object_t*) p_this->p_libvlc ) ) { vlc_object_internals_t *p_priv; @@ -1406,6 +1406,8 @@ static int InheritValue( vlc_object_t *p_this, const char *psz_name, /* Duplicate value if needed */ p_var->ops->pf_dup( p_val ); + msg_Dbg( p_this, "Inherited value for var %s from object %s", psz_name ? : "(null)", + p_this->psz_object_name ? : "(Unknown)" ) ; return VLC_SUCCESS; } else if ( p_this->p_parent ) /* We are still not there */ @@ -1460,9 +1462,11 @@ static int InheritValue( vlc_object_t *p_this, const char *psz_name, break; } default: + msg_Warn( p_this, "Could not inherit value for var %s from config. Invalid Type", psz_name ) ; return VLC_ENOOBJ; break; } + msg_Dbg( p_this, "Inherited value for var %s from config", psz_name ) ; return VLC_SUCCESS; } From ogg.k.ogg.k at googlemail.com Mon Feb 2 21:29:06 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 2 Feb 2009 20:29:06 +0000 Subject: [vlc-devel] [PATCH] Translate Kate category tags to display a more user friendly subtitles selection menu In-Reply-To: <20090202200142.GA31803@via.ecp.fr> References: <20090201180639.GA20026@via.ecp.fr> <20090201184954.GA6498@via.ecp.fr> <20090202200142.GA31803@via.ecp.fr> Message-ID: > Merged by [8abaa1b2536c844e926981290ab6b3f156af0ad7] > Thanks for your work. Thanks > Could you share a ogg file with kate content ? (or links) ? http://streams.videolan.org/streams-videolan/ogg/ http://people.xiph.org/~oggk/elephants_dream/elephantsdream-with-subtitles.ogg http://stallman.org/fry/Stephen_Fry-Happy_Birthday_GNU-nq_600px_425kbit.ogv From fenrir at via.ecp.fr Mon Feb 2 21:29:32 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 2 Feb 2009 21:29:32 +0100 Subject: [vlc-devel] [PATCH] 4 patches to commit: Variable inheritance hints In-Reply-To: <9d98edc70902020354n2518c8d4ta6f3866961b054ca@mail.gmail.com> References: <9d98edc70902020354n2518c8d4ta6f3866961b054ca@mail.gmail.com> Message-ID: <20090202202932.GA6298@via.ecp.fr> Hi, On Mon, Feb 02, 2009, basos g wrote: > > #4 just some informative only mini-patch for better inheritance understanding > > [PATCH] Variable inheritance hints > > > > Added a comment to describe inheritable variables > > Added debug messages to get clues about variable > > inheritance final source Merged by [edf32d6b5d7857c87275965f2e84417899ce264d] Thanks for your work. -- fenrir From git at videolan.org Mon Feb 2 21:33:56 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 21:33:56 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Use_--x11-display_whenever_callin?= =?utf-8?q?g_XOpenDisplay_=28_except_Qt4_this_far=29_=28_R=C3=A9mi_Denis-C?= =?utf-8?q?ourmont_=29?= Message-ID: <20090202203356.C1AB82E7F2@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 2 22:32:41 2009 +0200| [1590cffcccc6df3c65b5034e08b6bee121030164] | committer: R?mi Denis-Courmont Use --x11-display whenever calling XOpenDisplay (except Qt4 this far) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1590cffcccc6df3c65b5034e08b6bee121030164 --- modules/access/screen/x11.c | 4 +++- modules/control/globalhotkeys/x11.c | 4 +++- modules/gui/skins2/x11/x11_display.cpp | 4 +++- modules/video_filter/panoramix.c | 5 ++++- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/modules/access/screen/x11.c b/modules/access/screen/x11.c index 2cd3bed..177f382 100644 --- a/modules/access/screen/x11.c +++ b/modules/access/screen/x11.c @@ -41,11 +41,13 @@ int screen_InitCapture( demux_t *p_demux ) { demux_sys_t *p_sys = p_demux->p_sys; Display *p_display; + char *psz_display = var_CreateGetNonEmptyString( p_demux, "x11-display" ); XWindowAttributes win_info; int i_chroma; /* Open the display */ - p_display = XOpenDisplay( NULL ); + p_display = XOpenDisplay( psz_display ); + free( psz_display ); if( !p_display ) { msg_Err( p_demux, "cannot open display" ); diff --git a/modules/control/globalhotkeys/x11.c b/modules/control/globalhotkeys/x11.c index 7ffd007..7a0099e 100644 --- a/modules/control/globalhotkeys/x11.c +++ b/modules/control/globalhotkeys/x11.c @@ -81,8 +81,10 @@ static int Open( vlc_object_t *p_this ) { intf_thread_t *p_intf = (intf_thread_t *)p_this; intf_sys_t *p_sys; + char *psz_display = var_CreateGetNonEmptyString( p_intf, "x11-display" ); - Display *p_display = XOpenDisplay( NULL ); + Display *p_display = XOpenDisplay( psz_display ); + free( psz_display ); if( !p_display ) return VLC_EGENERIC; XSetErrorHandler( X11ErrorHandler ); diff --git a/modules/gui/skins2/x11/x11_display.cpp b/modules/gui/skins2/x11/x11_display.cpp index 5cb0bf1..143c45f 100644 --- a/modules/gui/skins2/x11/x11_display.cpp +++ b/modules/gui/skins2/x11/x11_display.cpp @@ -53,8 +53,10 @@ X11Display::X11Display( intf_thread_t *pIntf ): SkinObject( pIntf ), m_mainWindow( 0 ), m_gc( NULL ), m_colormap( 0 ) { + char *psz_display = var_CreateGetNonEmptyString( pIntf, "x11-display" ); // Open a connection to the X Server - m_pDisplay = XOpenDisplay( NULL ); + m_pDisplay = XOpenDisplay( psz_display ); + free( psz_display ); if( m_pDisplay == NULL ) { diff --git a/modules/video_filter/panoramix.c b/modules/video_filter/panoramix.c index 3b7c9ab..7d20669 100644 --- a/modules/video_filter/panoramix.c +++ b/modules/video_filter/panoramix.c @@ -558,7 +558,10 @@ static int AdjustHeight( vout_thread_t *p_vout ) i_window_width = GetSystemMetrics(SM_CXSCREEN); i_window_height = GetSystemMetrics(SM_CYSCREEN); #else - Display *p_display = XOpenDisplay( "" ); + char *psz_display = var_CreateGetNonEmptyString( p_vout, + "x11-display" ); + Display *p_display = XOpenDisplay( psz_display ); + free( psz_display ); if (p_vout->p_sys->b_xinerama) { i_window_width = DisplayWidth(p_display, 0) / p_vout->p_sys->i_col; From brezhoneg1 at yahoo.fr Mon Feb 2 22:12:06 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Mon, 2 Feb 2009 22:12:06 +0100 Subject: [vlc-devel] RE : [PATCH] -- fullscreen enhancements In-Reply-To: <20090202194709.GA27239@via.ecp.fr> Message-ID: <002301c9857a$e7ddd8f0$a06bfac1@CCCC> > -----Message d'origine----- > De?: vlc-devel-bounces at videolan.org [mailto:vlc-devel- > bounces at videolan.org] De la part de Laurent Aimar > Envoy??: lundi 2 f?vrier 2009 20:47 > ??: Mailing list for VLC media player developers > Objet?: Re: [vlc-devel] RE : [PATCH] -- fullscreen enhancements > > Hi, > On Mon, Feb 02, 2009, brezhoneg1 wrote: > > > > The second patch (patch 7) corrects transition issues (vout reuse) > > > > especially in fullscreen mode. > > > I really don't feel at ease with that one. Don't ask me to apply it. > > > > > > > This patch was originally aimed at proving width/height restrictions > > should not be seen as a big problem. This patch can certainly be > > improved. Ideally, setting (the first time) and resetting (when reusing > > vout) should be mutualized. Yet, it is a working patch, and hopefully I > > have not made wrong assumptions. > > > > My point is: > > - vlc1.0 will be a landmark in vlc history. > > - vlc1.0 has raised expectations that the transition problems will be > > solved (see numerous posts and answers on the forum) > > > > For the sake of vlc, I really think working out this height/width > > limitation would avoid users complaining bitterly for what can honestly > > be considered a bug. (With vlc1.0, this will even be more annoying that > > users don't have in mind this limitation and will see it as an erratic > > behavior) > I do agree that this functionnality/fix is really welcome, and I thank > you > for your patch. > > > Maybe, if someone with good knowledge of vout could react to it (fenrir, > > from what I was said ?). > The only problem is that I do not feel confident enough on the vout part > to be sure it won't create any problem. > If we were not about to issue the 1.0 release I would have applied it. > But for 1.0 I think it is safer to not use it (or at least I cannot say > if applying it is safe), so yes it will be a bit less user friendly but I > prefer to avoid regression. > > As soon as 1.0 is released (and in its own branch) I will apply this > patch > (bug me if I don't) and if tested stable it could (if agreed) make it to > 1.0 > stabilization branch later on. > Well, let's do it your way. I too am not sure 100% there is no side effect whatsoever. The one thing I know is that I have been using this patch for a while on many different formats as a rather basic user (no fancy vout-filter and so on), and it works fine. I also think the vout architecture is well designed once you get to know how it is done (only missing thing is a good doc to start with). And my conviction is that width and height are never a problem (proof is resizing is done at the vout level for x11 for example). Chroma has not been a problem either in my tests (chroma conversion is also managed on the fly when required), but I am less certain of all the implications. Erwan10 From ogg.k.ogg.k at googlemail.com Mon Feb 2 22:13:41 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 2 Feb 2009 21:13:41 +0000 Subject: [vlc-devel] Theora in configure.ac Message-ID: Any reason why Theora is disabled by default ? Should it not be autodetected ? From git at videolan.org Mon Feb 2 22:16:28 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 22:16:28 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Qt4=3A_use_the_display_we=27ve_op?= =?utf-8?q?ened_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090202211628.D6CEA2E84C@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 2 23:14:52 2009 +0200| [19e0e15f383978e93d719ce241b9199eca3b5501] | committer: R?mi Denis-Courmont Qt4: use the display we've opened > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=19e0e15f383978e93d719ce241b9199eca3b5501 --- modules/gui/qt4/qt4.cpp | 33 +++++++++++++++++++++------------ modules/gui/qt4/qt4.hpp | 3 +++ modules/gui/qt4/util/qvlcapp.hpp | 10 ++++++++-- 3 files changed, 32 insertions(+), 14 deletions(-) diff --git a/modules/gui/qt4/qt4.cpp b/modules/gui/qt4/qt4.cpp index 816076a..6c55915 100644 --- a/modules/gui/qt4/qt4.cpp +++ b/modules/gui/qt4/qt4.cpp @@ -259,7 +259,7 @@ static int Open( vlc_object_t *p_this ) intf_thread_t *p_intf = (intf_thread_t *)p_this; intf_sys_t *p_sys; -#if defined Q_WS_X11 && defined HAVE_X11_XLIB_H +#ifdef Q_WS_X11 /* Thanks for libqt4 calling exit() in QApplication::QApplication() * instead of returning an error, we have to check the X11 display */ Display *p_display = XOpenDisplay( NULL ); @@ -268,7 +268,6 @@ static int Open( vlc_object_t *p_this ) msg_Err( p_intf, "Could not connect to X server" ); return VLC_EGENERIC; } - XCloseDisplay( p_display ); #endif /* Allocations */ @@ -277,6 +276,9 @@ static int Open( vlc_object_t *p_this ) p_sys->p_popup_menu = NULL; /* ??? */ p_sys->p_playlist = pl_Hold( p_intf ); p_sys->p_mi = NULL; +#ifdef Q_WS_X11 + p_sys->display = p_display; +#endif if( vlc_clone( &p_sys->thread, Thread, p_intf, VLC_THREAD_PRIORITY_LOW ) ) { @@ -318,6 +320,9 @@ static void Close( vlc_object_t *p_this ) QApplication::quit(); vlc_join (p_sys->thread, NULL); +#ifdef Q_WS_X11 + XCloseDisplay ((Display *)p_sys->display); +#endif pl_Release (p_this); delete p_sys; } @@ -349,8 +354,12 @@ static void *Thread( void *obj ) #endif /* Start the QApplication here */ - QVLCApp *app = new QVLCApp( argc, argv , true ); - p_intf->p_sys->p_app = app; +#ifdef Q_WS_X11 + QVLCApp app( (Display *)p_intf->p_sys->display, argc, argv ); +#else + QVLCApp app( argc, argv ); +#endif + p_intf->p_sys->p_app = &app; p_intf->p_sys->mainSettings = new QSettings( #ifdef WIN32 @@ -362,16 +371,16 @@ static void *Thread( void *obj ) /* Icon setting */ if( QDate::currentDate().dayOfYear() >= 354 ) - app->setWindowIcon( QIcon( QPixmap(vlc_christmas_xpm) ) ); + app.setWindowIcon( QIcon( QPixmap(vlc_christmas_xpm) ) ); else - app->setWindowIcon( QIcon( QPixmap(vlc_xpm) ) ); + app.setWindowIcon( QIcon( QPixmap(vlc_xpm) ) ); /* Initialize timers and the Dialog Provider */ DialogsProvider::getInstance( p_intf ); /* Detect screensize for small screens like TV or EEEpc*/ p_intf->p_sys->i_screenHeight = - app->QApplication::desktop()->availableGeometry().height(); + app.QApplication::desktop()->availableGeometry().height(); #ifdef UPDATE_CHECK /* Checking for VLC updates */ @@ -429,11 +438,11 @@ static void *Thread( void *obj ) bool b_loaded = qtTranslator.load( path + "qt_" + lang ); if (!b_loaded) msg_Dbg( p_intf, "Error while initializing qt-specific localization" ); - app->installTranslator( &qtTranslator ); + app.installTranslator( &qtTranslator ); #endif //ENABLE_NLS /* Last settings */ - app->setQuitOnLastWindowClosed( false ); + app.setQuitOnLastWindowClosed( false ); /* Retrieve last known path used in file browsing */ char *psz_path = config_GetPsz( p_intf, "qt-filedialog-path" ); @@ -441,7 +450,7 @@ static void *Thread( void *obj ) : psz_path; /* Launch */ - app->exec(); + app.exec(); /* And quit */ msg_Dbg( p_intf, "Quitting the Qt4 Interface" ); @@ -475,12 +484,12 @@ static void *Thread( void *obj ) /* Destroy the MainInputManager */ MainInputManager::killInstance(); - /* Delete the application */ - delete app; /* Save the path */ config_PutPsz( p_intf, "qt-filedialog-path", p_intf->p_sys->psz_filepath ); free( psz_path ); + + /* Delete the application automatically */ return NULL; } diff --git a/modules/gui/qt4/qt4.hpp b/modules/gui/qt4/qt4.hpp index a39b978..bfd8416 100644 --- a/modules/gui/qt4/qt4.hpp +++ b/modules/gui/qt4/qt4.hpp @@ -75,6 +75,9 @@ struct intf_sys_t const char *psz_filepath; /* Last path used in dialogs */ QMenu * p_popup_menu; /* The right click menu */ +#ifdef Q_WS_X11 /* WTH is this included in ALL files? :( */ + void *display; +#endif }; #define THEPL p_intf->p_sys->p_playlist diff --git a/modules/gui/qt4/util/qvlcapp.hpp b/modules/gui/qt4/util/qvlcapp.hpp index a6e8db4..b2a2ad6 100644 --- a/modules/gui/qt4/util/qvlcapp.hpp +++ b/modules/gui/qt4/util/qvlcapp.hpp @@ -31,8 +31,14 @@ class QVLCApp : public QApplication { public: - QVLCApp( int & argc, char ** argv, bool GUIenabled ) : QApplication( argc, - argv, GUIenabled ) {} + QVLCApp( int & argc, char ** argv ) : QApplication( argc, argv, true ) { } + +#if defined (Q_WS_X11) + QVLCApp( Display *dp, int & argc, char ** argv ) + : QApplication( dp, argc, argv ) + { + } +#endif #if defined(Q_WS_WIN) protected: From git at videolan.org Mon Feb 2 22:16:28 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 22:16:28 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Qt4=3A_use_--x11-display_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont__=29?= Message-ID: <20090202211628.E571E2E839@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 2 23:16:19 2009 +0200| [a33c431deacf55c728602118989ffd7be8faa3a0] | committer: R?mi Denis-Courmont Qt4: use --x11-display > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a33c431deacf55c728602118989ffd7be8faa3a0 --- modules/gui/qt4/qt4.cpp | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/qt4.cpp b/modules/gui/qt4/qt4.cpp index 6c55915..15a8f88 100644 --- a/modules/gui/qt4/qt4.cpp +++ b/modules/gui/qt4/qt4.cpp @@ -260,9 +260,9 @@ static int Open( vlc_object_t *p_this ) intf_sys_t *p_sys; #ifdef Q_WS_X11 - /* Thanks for libqt4 calling exit() in QApplication::QApplication() - * instead of returning an error, we have to check the X11 display */ - Display *p_display = XOpenDisplay( NULL ); + char *psz_display = var_CreateGetNonEmptyString( p_intf, "x11-display" ); + Display *p_display = XOpenDisplay( psz_display ); + free( psz_display ); if( !p_display ) { msg_Err( p_intf, "Could not connect to X server" ); From git at videolan.org Mon Feb 2 22:25:27 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 22:25:27 +0100 (CET) Subject: [vlc-devel] commit: Delete sub-filter callback before destroying p_spu memebers... ( Laurent Aimar ) Message-ID: <20090202212527.682B02E889@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 2 22:09:25 2009 +0100| [8a353bf6dc813d0f54810df685504a0ec458a522] | committer: Laurent Aimar Delete sub-filter callback before destroying p_spu memebers... > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8a353bf6dc813d0f54810df685504a0ec458a522 --- src/video_output/vout_subpictures.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/src/video_output/vout_subpictures.c b/src/video_output/vout_subpictures.c index d20d4e0..a86b948 100644 --- a/src/video_output/vout_subpictures.c +++ b/src/video_output/vout_subpictures.c @@ -280,6 +280,8 @@ void spu_Destroy( spu_t *p_spu ) { spu_private_t *p_sys = p_spu->p; + var_DelCallback( p_spu, "sub-filter", SubFilterCallback, p_spu ); + if( p_sys->p_blend ) FilterRelease( p_sys->p_blend ); From git at videolan.org Mon Feb 2 22:25:27 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 22:25:27 +0100 (CET) Subject: [vlc-devel] commit: Sub filter deadlock fixes. (Laurent Aimar ) Message-ID: <20090202212527.781A82E895@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 2 21:49:52 2009 +0100| [f0fc0b2353b5234746b8e2e5fd7b764d7915f469] | committer: Laurent Aimar Sub filter deadlock fixes. The original idea and debug come from basos g patch with the following comment: "A dead lock was created when adding an spu filter (like marq) because the same mutex was used for spu->p stuff and sub filter chain (p_spu->p->p_chain)." I implemented the creation/destruction of the chain outside the sub-filter callback. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f0fc0b2353b5234746b8e2e5fd7b764d7915f469 --- src/video_output/vout_subpictures.c | 47 ++++++++++++++++++----------------- 1 files changed, 24 insertions(+), 23 deletions(-) diff --git a/src/video_output/vout_subpictures.c b/src/video_output/vout_subpictures.c index a86b948..eca71ab 100644 --- a/src/video_output/vout_subpictures.c +++ b/src/video_output/vout_subpictures.c @@ -90,6 +90,7 @@ struct spu_private_t uint8_t palette[4][4]; /**< forced palette */ /* Subpiture filters */ + char *psz_chain_update; filter_chain_t *p_chain; /* */ @@ -168,8 +169,6 @@ static void spu_del_buffer( filter_t *, subpicture_t * ); static picture_t *spu_new_video_buffer( filter_t * ); static void spu_del_video_buffer( filter_t *, picture_t * ); -static int spu_ParseChain( spu_t * ); - /* Buffer aloccation fir SUB filter */ static int SubFilterCallback( vlc_object_t *, char const *, vlc_value_t, vlc_value_t, void * ); @@ -221,6 +220,7 @@ spu_t *__spu_Create( vlc_object_t *p_this ) vlc_object_attach( p_spu, p_this ); + p_sys->psz_chain_update = NULL; p_sys->p_chain = filter_chain_New( p_spu, "sub filter", false, SubFilterAllocationInit, SubFilterAllocationClean, @@ -250,27 +250,11 @@ int spu_Init( spu_t *p_spu ) var_Create( p_spu, "sub-filter", VLC_VAR_STRING | VLC_VAR_DOINHERIT ); var_AddCallback( p_spu, "sub-filter", SubFilterCallback, p_spu ); - - spu_ParseChain( p_spu ); + var_TriggerCallback( p_spu, "sub-filter" ); return VLC_SUCCESS; } -int spu_ParseChain( spu_t *p_spu ) -{ - char *psz_parser = var_GetString( p_spu, "sub-filter" ); - int i_ret; - - if( !psz_parser ) - return VLC_EGENERIC; - - i_ret = filter_chain_AppendFromString( p_spu->p->p_chain, psz_parser ); - - free( psz_parser ); - - return i_ret; -} - /** * Destroy the subpicture unit * @@ -295,6 +279,7 @@ void spu_Destroy( spu_t *p_spu ) FilterRelease( p_sys->p_scale ); filter_chain_Delete( p_sys->p_chain ); + free( p_sys->psz_chain_update ); /* Destroy all remaining subpictures */ SpuHeapClean( &p_sys->heap ); @@ -566,6 +551,21 @@ subpicture_t *spu_SortSubpictures( spu_t *p_spu, mtime_t display_date, int i_channel; subpicture_t *p_subpic = NULL; + /* Update sub-filter chain */ + vlc_mutex_lock( &p_sys->lock ); + char *psz_chain_update = p_sys->psz_chain_update; + p_sys->psz_chain_update = NULL; + vlc_mutex_unlock( &p_sys->lock ); + + if( psz_chain_update ) + { + filter_chain_Reset( p_sys->p_chain, NULL, NULL ); + + filter_chain_AppendFromString( p_spu->p->p_chain, psz_chain_update ); + + free( psz_chain_update ); + } + /* Run subpicture filters */ filter_chain_SubFilter( p_sys->p_chain, display_date ); @@ -1856,12 +1856,13 @@ static int SubFilterCallback( vlc_object_t *p_object, char const *psz_var, spu_t *p_spu = p_data; spu_private_t *p_sys = p_spu->p; - VLC_UNUSED(p_object); VLC_UNUSED(oldval); - VLC_UNUSED(newval); VLC_UNUSED(psz_var); + VLC_UNUSED(p_object); VLC_UNUSED(oldval); VLC_UNUSED(psz_var); vlc_mutex_lock( &p_sys->lock ); - filter_chain_Reset( p_sys->p_chain, NULL, NULL ); - spu_ParseChain( p_spu ); + + free( p_sys->psz_chain_update ); + p_sys->psz_chain_update = strdup( newval.psz_string ); + vlc_mutex_unlock( &p_sys->lock ); return VLC_SUCCESS; } From rem at videolan.org Mon Feb 2 22:27:46 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Mon, 2 Feb 2009 23:27:46 +0200 Subject: [vlc-devel] Theora in configure.ac In-Reply-To: References: Message-ID: <200902022327.46377.rem@videolan.org> Le lundi 2 f?vrier 2009 23:13:41 ogg.k.ogg.k at googlemail.com, vous avez ?crit?: > Any reason why Theora is disabled by default ? > Should it not be autodetected ? I guess the codec itself was experimental when it was added to VLC by Gildas. But hey, we still don't have RTP support for Theora, so OUR support is incomplete. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From fenrir at via.ecp.fr Mon Feb 2 22:29:02 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 2 Feb 2009 22:29:02 +0100 Subject: [vlc-devel] [PATCH] 4 patches to commit: [PATCH] FIX sub filter dead lock issue -- a recently occured dead lock issue In-Reply-To: <9d98edc70902020353m42522839p133aa2f1dac163d0@mail.gmail.com> References: <9d98edc70902020353m42522839p133aa2f1dac163d0@mail.gmail.com> Message-ID: <20090202212902.GA19446@via.ecp.fr> Hi, On Mon, Feb 02, 2009, basos g wrote: > > [PATCH] FIX sub filter dead lock issue -- a recently occured dead lock issue > > > > A dead lock was created when adding an spu filter (like marq) > > because the same mutex was used for spu->p stuff and sub filter > > chain (p_spu->p->p_chain). A new mutex was added for to update > > the filter chain. Thanks for your work. > > Maybe in the future the subfiltercallback code will just update a > > string and the real filter update would take place in the vout > > code (just like video filter). Then this mutext should only > > lock that string and remove it from spu_SortSubPictures. I have partially implemented this instead of applying the proposed patch as it make the code simpler [f0fc0b2353b5234746b8e2e5fd7b764d7915f469]. Could you confirm it fixes all your issue ? Regards, -- fenrir From fenrir at via.ecp.fr Mon Feb 2 22:35:09 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 2 Feb 2009 22:35:09 +0100 Subject: [vlc-devel] Theora in configure.ac In-Reply-To: References: Message-ID: <20090202213509.GB19446@via.ecp.fr> On Mon, Feb 02, 2009, ogg.k.ogg.k at googlemail.com wrote: > Any reason why Theora is disabled by default ? > Should it not be autodetected ? I am not sure, but I think the ffmpeg decoder works pretty well, so the native theora decoder should not be needed (unless there is a problem with our wrapper). -- fenrir From hadi.hadizadeh at hotmail.com Mon Feb 2 22:39:05 2009 From: hadi.hadizadeh at hotmail.com (Hadi Hadizadeh) Date: Mon, 2 Feb 2009 13:39:05 -0800 Subject: [vlc-devel] How to compile VLC in MSVC++? Message-ID: Hi, How can we compile VLC in MSVC++? I searched a lot about this issue but unfortunately, I couldn't find any useful link. Any idea? Thanks. Best Regards, Hadi _________________________________________________________________ How fun is this? IMing with Windows Live Messenger just got better. http://www.microsoft.com/windows/windowslive/messenger.aspx -------------- next part -------------- An HTML attachment was scrubbed... URL: From ogg.k.ogg.k at googlemail.com Mon Feb 2 23:05:47 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 2 Feb 2009 22:05:47 +0000 Subject: [vlc-devel] Theora in configure.ac In-Reply-To: <20090202213509.GB19446@via.ecp.fr> References: <20090202213509.GB19446@via.ecp.fr> Message-ID: > I am not sure, but I think the ffmpeg decoder works pretty well, so the > native theora decoder should not be needed (unless there is a problem with > our > wrapper). Actually, I was bisecting yesterday for a problem that only shows up when using the ffmpeg plugin for decoding Theora video (I really didn't intend on using ffmpeg, I'd forgotten to disable it and enable Theora as I usually do). Kate subtitles are drawn with what seems to be an incorrect stride for chroma (but luma's OK). Not sure *what* causes it, as I had a hard time bisecting due to the ffmpeg plugin apparently being broken for a while in January. Also, I wouldn't be too surprised if ffmpeg only implemented the bits it likes in the Theora spec. The new Thusnelda encoder makes much more use of the freedom offered by the format. Now, it may not be ffmpeg's fault, but some side effect, I'll know when I've found it. From git at videolan.org Mon Feb 2 23:37:28 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 23:37:28 +0100 (CET) Subject: [vlc-devel] commit: mozilla: fix MacOS X plugin packaging (Jean-Paul Saman ) Message-ID: <20090202223728.4FE042E9BC@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Mon Feb 2 21:37:52 2009 +0100| [5467cacefc0b2ffd4a93e82f9a65a70e17907626] | committer: Jean-Paul Saman mozilla: fix MacOS X plugin packaging > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5467cacefc0b2ffd4a93e82f9a65a70e17907626 --- projects/mozilla/Makefile.am | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index 9c3dfd5..3c9720f 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -106,6 +106,8 @@ VLC\ Plugin.plugin: npvlc.rsrc $(lib_LTLIBRARIES) rm -Rf "$@" $(INSTALL) -d "$@/Contents/MacOS/lib" $(INSTALL) -d "$@/Contents/Resources" + $(INSTALL) .libs/npvlc.dylib "$@/Contents/MacOS/VLC Plugin" + dylib="$@/Contents/MacOS/VLC Plugin"; $(FIXEXECPATH); $(INSTALL) npvlc.rsrc "$@/Contents/Resources/VLC Plugin.rsrc" cp -r "$(top_srcdir)/extras/package/macosx/plugin/English.lproj" "$@/Contents/Resources/" cp -r "$(top_builddir)/extras/package/macosx/plugin/English.lproj" "$@/Contents/Resources/" From git at videolan.org Mon Feb 2 23:37:28 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 23:37:28 +0100 (CET) Subject: [vlc-devel] commit: mozilla: update the version number (Jean-Paul Saman ) Message-ID: <20090202223728.613F52E9C8@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Mon Feb 2 21:41:52 2009 +0100| [b198db8f65f91f9bfbd463f8e68d84906957932d] | committer: Jean-Paul Saman mozilla: update the version number > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b198db8f65f91f9bfbd463f8e68d84906957932d --- projects/mozilla/vlc.r | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/projects/mozilla/vlc.r b/projects/mozilla/vlc.r index 12e07ec..e5174e9 100644 --- a/projects/mozilla/vlc.r +++ b/projects/mozilla/vlc.r @@ -13,7 +13,7 @@ data 'carb' (0) resource 'STR#' (126) { { - "Version 0.9.0, copyright 1996-2007 The VideoLAN Team" + "Version 1.0.0-git, copyright 1996-2009 The VideoLAN Team" "
http://www.videolan.org", "VLC Multimedia Plug-in" }; From git at videolan.org Mon Feb 2 23:37:28 2009 From: git at videolan.org (git version control) Date: Mon, 2 Feb 2009 23:37:28 +0100 (CET) Subject: [vlc-devel] commit: live555: unbreak windows RTSP servers ( introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). (Jean-Paul Saman ) Message-ID: <20090202223728.8A42D2E9C3@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Mon Feb 2 23:33:10 2009 +0100| [76f34d998b53665e31ec582d480373b8f4d03100] | committer: Jean-Paul Saman live555: unbreak windows RTSP servers (introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=76f34d998b53665e31ec582d480373b8f4d03100 --- modules/demux/live555.cpp | 10 ++++------ 1 files changed, 4 insertions(+), 6 deletions(-) diff --git a/modules/demux/live555.cpp b/modules/demux/live555.cpp index 1643f8b..00b5171 100644 --- a/modules/demux/live555.cpp +++ b/modules/demux/live555.cpp @@ -564,19 +564,17 @@ describe: #endif } if( psz_options ) - { p_sys->b_get_param = strstr( psz_options, "GET_PARAMETER" ) ? true : false ; + delete [] psz_options; + #if LIVEMEDIA_LIBRARY_VERSION_INT >= 1223337600 - p_sdp = p_sys->rtsp->describeWithPassword( psz_url, (const char*)psz_user, (const char*)psz_pwd, + p_sdp = p_sys->rtsp->describeWithPassword( psz_url, (const char*)psz_user, (const char*)psz_pwd, var_GetBool( p_demux, "rtsp-kasenna" ), timeout ); #else - p_sdp = p_sys->rtsp->describeWithPassword( psz_url, (const char*)psz_user, (const char*)psz_pwd, + p_sdp = p_sys->rtsp->describeWithPassword( psz_url, (const char*)psz_user, (const char*)psz_pwd, var_GetBool( p_demux, "rtsp-kasenna" ) ); #endif - } - delete [] psz_options; - if( p_sdp == NULL ) { /* failure occurred */ From ogg.k.ogg.k at googlemail.com Tue Feb 3 00:09:32 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 2 Feb 2009 23:09:32 +0000 Subject: [vlc-devel] Theora in configure.ac In-Reply-To: References: <20090202213509.GB19446@via.ecp.fr> Message-ID: The weird stride problem happens also (on some videos) for the 'filename on top of video' string. A clue might also be that the video comes in at 4:3 ratio, though the libtheora plugin makes it come at 16:9 ratio, it that rings a bell for anyone. Also, the ffmpeg not playing nice with Thusnelda videos bug I was remembering was fixed in december, it seems. From git at videolan.org Tue Feb 3 00:44:30 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 00:44:30 +0100 (CET) Subject: [vlc-devel] commit: i18n: Fix in the popup menu (Christophe Mutricy ) Message-ID: <20090202234430.AB33D2E9C1@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Mon Feb 2 23:04:10 2009 +0000| [55bd6c18babd47583ba4a1a3d64834c5d1f38565] | committer: Christophe Mutricy i18n: Fix in the popup menu Pointed-By: Eric Lassauge > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=55bd6c18babd47583ba4a1a3d64834c5d1f38565 --- .../gui/qt4/components/playlist/playlist_model.cpp | 16 ++++++++-------- 1 files changed, 8 insertions(+), 8 deletions(-) diff --git a/modules/gui/qt4/components/playlist/playlist_model.cpp b/modules/gui/qt4/components/playlist/playlist_model.cpp index d2e07ce..fd45e75 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.cpp +++ b/modules/gui/qt4/components/playlist/playlist_model.cpp @@ -796,21 +796,21 @@ void PLModel::popup( QModelIndex & index, QPoint &point, QModelIndexList list ) PL_UNLOCK; current_selection = list; QMenu *menu = new QMenu; - menu->addAction( qfu(I_POP_PLAY), this, SLOT( popupPlay() ) ); - menu->addAction( qfu(I_POP_DEL), this, SLOT( popupDel() ) ); + menu->addAction( qtr(I_POP_PLAY), this, SLOT( popupPlay() ) ); + menu->addAction( qtr(I_POP_DEL), this, SLOT( popupDel() ) ); menu->addSeparator(); - menu->addAction( qfu(I_POP_STREAM), this, SLOT( popupStream() ) ); - menu->addAction( qfu(I_POP_SAVE), this, SLOT( popupSave() ) ); + menu->addAction( qtr(I_POP_STREAM), this, SLOT( popupStream() ) ); + menu->addAction( qtr(I_POP_SAVE), this, SLOT( popupSave() ) ); menu->addSeparator(); - menu->addAction( qfu(I_POP_INFO), this, SLOT( popupInfo() ) ); + menu->addAction( qtr(I_POP_INFO), this, SLOT( popupInfo() ) ); if( p_item->i_children > -1 ) { menu->addSeparator(); - menu->addAction( qfu(I_POP_SORT), this, SLOT( popupSort() ) ); - menu->addAction( qfu(I_POP_ADD), this, SLOT( popupAdd() ) ); + menu->addAction( qtr(I_POP_SORT), this, SLOT( popupSort() ) ); + menu->addAction( qtr(I_POP_ADD), this, SLOT( popupAdd() ) ); } menu->addSeparator(); - menu->addAction( qfu( I_POP_EXPLORE ), this, SLOT( popupExplore() ) ); + menu->addAction( qtr( I_POP_EXPLORE ), this, SLOT( popupExplore() ) ); menu->popup( point ); } else From git at videolan.org Tue Feb 3 00:46:59 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 00:46:59 +0100 (CET) Subject: [vlc-devel] commit: l10n: Russian update (Andrey Wolk ) Message-ID: <20090202234659.901542E9F4@skanda.videolan.org> vlc | branch: 0.9-bugfix | Andrey Wolk | Mon Feb 2 23:31:02 2009 +0000| [25bca420ed0312b2875751f522831c3ebd7c44b3] | committer: Christophe Mutricy l10n: Russian update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=25bca420ed0312b2875751f522831c3ebd7c44b3 --- po/ru.po | 1402 +++++++++++++++++++++++++++++++------------------------------- 1 files changed, 699 insertions(+), 703 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=25bca420ed0312b2875751f522831c3ebd7c44b3 From git at videolan.org Tue Feb 3 00:46:59 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 00:46:59 +0100 (CET) Subject: [vlc-devel] commit: l10n: French update (Eric Lassauge ) Message-ID: <20090202234659.BD51B2E9F4@skanda.videolan.org> vlc | branch: 0.9-bugfix | Eric Lassauge | Mon Feb 2 23:32:33 2009 +0000| [44b504fea0334289e953fc0c7f85a28be3de50b4] | committer: Christophe Mutricy l10n: French update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=44b504fea0334289e953fc0c7f85a28be3de50b4 --- po/fr.po | 1706 +++++++++++++++++++++++++++++++------------------------------- 1 files changed, 854 insertions(+), 852 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=44b504fea0334289e953fc0c7f85a28be3de50b4 From git at videolan.org Tue Feb 3 00:46:59 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 00:46:59 +0100 (CET) Subject: [vlc-devel] commit: i18n: Fix in the popup menu (Christophe Mutricy ) Message-ID: <20090202234659.CDB202E9FF@skanda.videolan.org> vlc | branch: 0.9-bugfix | Christophe Mutricy | Mon Feb 2 23:04:10 2009 +0000| [dc12c9b37f14f1f5527f2bc4c2b10792dc5b8866] | committer: Christophe Mutricy i18n: Fix in the popup menu Pointed-By: Eric Lassauge (cherry picked from commit 55bd6c18babd47583ba4a1a3d64834c5d1f38565) Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dc12c9b37f14f1f5527f2bc4c2b10792dc5b8866 --- .../gui/qt4/components/playlist/playlist_model.cpp | 16 ++++++++-------- 1 files changed, 8 insertions(+), 8 deletions(-) diff --git a/modules/gui/qt4/components/playlist/playlist_model.cpp b/modules/gui/qt4/components/playlist/playlist_model.cpp index 72c4a37..deee520 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.cpp +++ b/modules/gui/qt4/components/playlist/playlist_model.cpp @@ -806,21 +806,21 @@ void PLModel::popup( QModelIndex & index, QPoint &point, QModelIndexList list ) PL_UNLOCK; current_selection = list; QMenu *menu = new QMenu; - menu->addAction( qfu(I_POP_PLAY), this, SLOT( popupPlay() ) ); - menu->addAction( qfu(I_POP_DEL), this, SLOT( popupDel() ) ); + menu->addAction( qtr(I_POP_PLAY), this, SLOT( popupPlay() ) ); + menu->addAction( qtr(I_POP_DEL), this, SLOT( popupDel() ) ); menu->addSeparator(); - menu->addAction( qfu(I_POP_STREAM), this, SLOT( popupStream() ) ); - menu->addAction( qfu(I_POP_SAVE), this, SLOT( popupSave() ) ); + menu->addAction( qtr(I_POP_STREAM), this, SLOT( popupStream() ) ); + menu->addAction( qtr(I_POP_SAVE), this, SLOT( popupSave() ) ); menu->addSeparator(); - menu->addAction( qfu(I_POP_INFO), this, SLOT( popupInfo() ) ); + menu->addAction( qtr(I_POP_INFO), this, SLOT( popupInfo() ) ); if( p_item->i_children > -1 ) { menu->addSeparator(); - menu->addAction( qfu(I_POP_SORT), this, SLOT( popupSort() ) ); - menu->addAction( qfu(I_POP_ADD), this, SLOT( popupAdd() ) ); + menu->addAction( qtr(I_POP_SORT), this, SLOT( popupSort() ) ); + menu->addAction( qtr(I_POP_ADD), this, SLOT( popupAdd() ) ); } menu->addSeparator(); - menu->addAction( qfu( I_POP_EXPLORE ), this, SLOT( popupExplore() ) ); + menu->addAction( qtr( I_POP_EXPLORE ), this, SLOT( popupExplore() ) ); menu->popup( point ); } else From jb at videolan.org Tue Feb 3 00:58:52 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 3 Feb 2009 00:58:52 +0100 Subject: [vlc-devel] How to compile VLC in MSVC++? In-Reply-To: References: Message-ID: <20090202235852.GA29828@videolan.org> On Mon, Feb 02, 2009 at 01:39:05PM -0800, Hadi Hadizadeh wrote : > How can we compile VLC in MSVC++? I searched a lot about this issue but > unfortunately, I couldn't find any useful link. Any idea? Thanks. You CANNOT compile VLC in MSVC. Use MSys or Linux. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From silencewang at msn.com Tue Feb 3 02:38:52 2009 From: silencewang at msn.com (Wang Bo) Date: Tue, 3 Feb 2009 09:38:52 +0800 Subject: [vlc-devel] [PATCH] realvideo: use new buffer struct according new real demux, Message-ID: <1233625132-30141-1-git-send-email-silencewang@msn.com> --- doc/realvideo-howto.txt | 25 +++++++ modules/codec/realvideo.c | 157 ++++++++++++++++++++++++++++++--------------- 2 files changed, 129 insertions(+), 53 deletions(-) create mode 100644 doc/realvideo-howto.txt diff --git a/doc/realvideo-howto.txt b/doc/realvideo-howto.txt new file mode 100644 index 0000000..8a936f8 --- /dev/null +++ b/doc/realvideo-howto.txt @@ -0,0 +1,25 @@ +RealVideo howto + +if you want to play RealNetworks' .rm/.rmvb video, +you need configure the vlc with --enable-real, and +--enable-realrtsp for real's rtsp protocol. + +After config and make vlc, you need download the +RealNetworks' codecs, general you can use codec +from Real Player 9 or 10, the newer codec has not +tested. Or you can install Real's player or Helix SDK. +The important file is "drv4.so.6" for linux, and +"drv43260.dll" for windows. you can put the file +in same directory with vlc, or you can check +module/codec/realvideo.c to get the better location +for the codec dll. if you can not find the dll, +you can check http://code.google.com/p/rm-for-vlc/ +to get more info. + +Now the realvideo has tested on linux ( intel, 32bit) +and windows ( intel, 32bit ), if you have tested it on +other platform, please let me know. + +-- +WangBo + diff --git a/modules/codec/realvideo.c b/modules/codec/realvideo.c index 6e5c512..9a78ded 100644 --- a/modules/codec/realvideo.c +++ b/modules/codec/realvideo.c @@ -31,6 +31,8 @@ #include #include +#include + #ifdef LOADER /* Need the w32dll loader from mplayer */ # include @@ -89,9 +91,9 @@ struct rv_init_t short h; short unk3; int unk2; - unsigned int * subformat; + int subformat; int unk5; - unsigned int * format; + int format; } rv_init_t; struct decoder_sys_t @@ -241,19 +243,81 @@ static int InitVideo(decoder_t *p_dec) init_data.h = p_dec->fmt_in.video.i_height ; init_data.unk3 = 0; init_data.unk2 = 0; - init_data.subformat = (unsigned int*)p_vide[0]; + init_data.subformat = ntohl( p_vide[0] ); init_data.unk5 = 1; - init_data.format = (unsigned int*)p_vide[1]; + init_data.format = ntohl( p_vide[1]); /* first try to load linux dlls, if failed and we're supporting win32 dlls, then try to load the windows ones */ - bool b_so_opened = false; + + p_sys->rv_handle = NULL; #ifdef WIN32 - g_decode_path="plugins\\drv43260.dll"; + static const char psz_paths[MAX_PATH*3] = "\0"; + if ( psz_paths[0] == '\0' ) + { + HKEY h_key; + DWORD i_type, i_data = MAX_PATH + 1; + char * p_data; + char * p_end = psz_paths; + + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, + _T("Software\\RealNetworks\\Preferences\\DT_Codecs"), + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) + { + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS + && i_type == REG_SZ ) + { + int i_len = strlen( p_data ); + if ( i_len && p_data[i_len-1] == '\\' ) + p_data[i_len - 1] = '\0'; + memcpy( p_end, p_data, strlen( p_data) + 1 ); + p_end += strlen( p_data ) + 1; + } + RegCloseKey( h_key ); + } + + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, + _T("Helix\\HelixSDK\\10.0\\Preferences\\DT_Codecs"), + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) + { + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS + && i_type == REG_SZ ) + { + int i_len = strlen( p_data ); + if ( i_len && p_data[i_len-1] == '\\' ) + p_data[i_len - 1] = '\0'; + memcpy( p_end, p_data, strlen( p_data) + 1 ); + p_end += strlen( p_data ) + 1; + } + RegCloseKey( h_key ); + } + + memcpy( p_end, ".\0codecs\0plugins\0\0\0", 20 ); + } + + for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) + { + if( asprintf( &g_decode_path, "%s/drv4.dll", psz_paths + i ) != -1 ) + { + p_sys->rv_handle = load_syms(p_dec, g_decode_path); + free( g_decode_path ); + } + if( p_sys->rv_handle ) + break; + + if( asprintf( &g_decode_path, "%s/drv43260.dll", psz_paths + i ) != -1 ) + { + p_sys->rv_handle = load_syms(p_dec, g_decode_path); + free( g_decode_path ); + } + if( p_sys->rv_handle ) + break; - if( (p_sys->rv_handle = load_syms(p_dec, g_decode_path)) ) - b_so_opened = true; + msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); + } #else static const char psz_paths[] = { @@ -272,6 +336,8 @@ static int InitVideo(decoder_t *p_dec) "/usr/lib64/RealPlayer10/codecs\0" "/usr/lib64/RealPlayer10GOLD/codecs\0" "/usr/local/lib/codecs\0" + ".\0" + "codecs\0" "\0" }; @@ -283,10 +349,7 @@ static int InitVideo(decoder_t *p_dec) free( g_decode_path ); } if( p_sys->rv_handle ) - { - b_so_opened = true; break; - } if( asprintf( &g_decode_path, "%s/drv3.so.6.0", psz_paths + i ) != -1 ) { @@ -294,16 +357,13 @@ static int InitVideo(decoder_t *p_dec) free( g_decode_path ); } if( p_sys->rv_handle ) - { - b_so_opened = true; break; - } msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); } #endif - if(!b_so_opened ) + if( p_sys->rv_handle == NULL ) { msg_Err( p_dec, "Cannot any real decoder library" ); free( p_sys ); @@ -321,24 +381,27 @@ static int InitVideo(decoder_t *p_dec) result=(*rvyuv_init)(&init_data, &p_sys->handle); if (result) { - msg_Err( p_dec, "Cannot Init real decoder library: %s", g_decode_path); + msg_Err( p_dec, "Cannot Init real decoder, error code: %X", result ); free( p_sys ); return VLC_EGENERIC; } + msg_Dbg( p_dec, "codec id: 0x%8X subid: 0x%8X\n", ntohl(p_vide[1]), ntohl(p_vide[0]) ); + /* setup rv30 codec (codec sub-type and image dimensions): */ /*if ( p_dec->fmt_in.i_codec == VLC_FOURCC('R','V','3','0') )*/ - if (p_vide[1]>=0x20200002) + if ( ntohl( p_vide[1])>=0x20200002) { - int i, cmsg_cnt; + int cmsg_cnt; + unsigned char * p_extrahdr = (unsigned char *) p_vide ; uint32_t cmsg24[16]={p_dec->fmt_in.video.i_width,p_dec->fmt_in.video.i_height}; - cmsg_data_t cmsg_data={0x24,1+(p_vide[1]&7), &cmsg24[0]}; - cmsg_cnt = (p_vide[1]&7)*2; + cmsg_data_t cmsg_data={0x24,1+(p_extrahdr[1]&7), &cmsg24[0]}; + cmsg_cnt = (p_extrahdr[1]&7)*2; if (i_vide - 8 < cmsg_cnt) { cmsg_cnt = i_vide - 8; } - for (i = 0; i < cmsg_cnt; i++) - cmsg24[2+i] = p_vide[8+i]*4; + for (int i = 0; i < cmsg_cnt; i++) + cmsg24[2+i] = p_extrahdr[8+i]*4; #ifdef WIN32 if (dll_type == 1) (*wrvyuv_custom_message)(&cmsg_data,p_sys->handle); @@ -349,7 +412,7 @@ static int InitVideo(decoder_t *p_dec) /* es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','V','1','2' )); es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','U','Y','2' )); - */ + */ es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'I', '4', '2', '0')); p_dec->fmt_out.video.i_width = p_dec->fmt_in.video.i_width; @@ -467,25 +530,20 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) if ( p_pic ) { unsigned int transform_out[5]; - dp_hdr_t dp_hdr; transform_in_t transform_in; - uint32_t pkg_len = ((uint32_t*)p_block->p_buffer)[0]; - unsigned char* dp_data=((unsigned char*)p_block->p_buffer)+8; - uint32_t* extra=(uint32_t*)(((char*)p_block->p_buffer)+8+pkg_len); - uint32_t img_size; - - dp_hdr.len = pkg_len; - dp_hdr.chunktab = 8 + pkg_len; - dp_hdr.chunks = ((uint32_t*)p_block->p_buffer)[1]-1; - dp_hdr.timestamp = i_pts; + uint8_t i_chunks = p_block->p_buffer[0]; + uint32_t pkg_len = p_block->i_buffer - 2*4*(i_chunks + 1) - 1; + unsigned char* dp_data=p_block->p_buffer + 2*4*(i_chunks+1) + 1; + uint32_t* extra=(uint32_t*)(p_block->p_buffer + 1); + uint32_t img_size; memset(&transform_in, 0, sizeof(transform_in_t)); - transform_in.len = dp_hdr.len; + transform_in.len = pkg_len; transform_in.extra = extra; - transform_in.chunks = dp_hdr.chunks; - transform_in.timestamp = dp_hdr.timestamp; + transform_in.chunks = i_chunks; + transform_in.timestamp = i_pts; memset (p_sys->plane, 0, p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height *3/2 ); @@ -496,17 +554,7 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) #endif result=(*rvyuv_transform)(dp_data, p_sys->plane, &transform_in, transform_out, p_sys->handle); - /* msg_Warn(p_dec, "Real Size %d X %d", transform_out[3], - transform_out[4]); */ - /* some bug rm file will print the messages : - [00000551] realvideo decoder warning: Real Size 320 X 240 - [00000551] realvideo decoder warning: Real Size 480 X 272 - [00000551] realvideo decoder warning: Real Size 320 X 240 - [00000551] realvideo decoder warning: Real Size 320 X 240 - ... - so it needs fixing! - */ - if ( p_sys->inited == 0 ) + if ( result == 0 && p_sys->inited == 0 ) { /* fix and get the correct image size! */ if ( p_dec->fmt_in.video.i_width != transform_out[3] @@ -540,16 +588,19 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) p_sys->inited = 1; } - img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; - memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); - memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); - memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); - p_pic->date = i_pts ; + if ( result == 0 ) + { + img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; + memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); + memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); + memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); + p_pic->date = i_pts ; /* real video frame is small( frame and frame's time-shift is short), so it will become late picture easier (when render-time changed)and droped by video-output.*/ - p_pic->b_force = 1; + p_pic->b_force = 1; + } } vlc_mutex_unlock( &rm_mutex ); -- 1.5.5.1 From silencewang at msn.com Tue Feb 3 03:11:10 2009 From: silencewang at msn.com (=?gb2312?B?zfWyqA==?=) Date: Tue, 3 Feb 2009 14:11:10 +1200 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: <498574B1.5010504@gmail.com> References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> Message-ID: oh, i use git-send-mail to send the patch. and forget attach it here. :( ok, here is patch, please help me to do test in windows. :) thanks. -- wang bo Date: Sun, 1 Feb 2009 21:08:49 +1100From: xxcv07 at gmail.comTo: vlc-devel at videolan.orgSubject: Re: [vlc-devel] the new patch for real video has submit?? wrote: ok, attachment is patch, too.Where's the updated patch you're posting the exact same patch file. _________________________________________________________________ MSN??????????????????MSN??? http://im.live.cn/safe/ -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-realvideo.patch Type: application/octet-stream Size: 11806 bytes Desc: not available URL: From xxcv07 at gmail.com Tue Feb 3 04:46:33 2009 From: xxcv07 at gmail.com (xxcv) Date: Tue, 03 Feb 2009 14:46:33 +1100 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> Message-ID: <4987BE19.60807@gmail.com> ?? wrote: > oh, i use git-send-mail to send the patch. > and forget attach it here. :( > > ok, here is patch, please help me to do test in windows. > Program received signal SIGSEGV, Segmentation fault. > [Switching to thread 4924.0x81c] > 0x0aa31616 in Open (p_this=0x1117a980) at realvideo.c:272 > in realvideo.c > (gdb) Error: dll starting at 0x77560000 not found. > Error: dll starting at 0x771d0000 not found. > Error: dll starting at 0x77560000 not found. > Error: dll starting at 0x77490000 not found. > 272 realvideo.c: No such file or directory. > bt > #0 0x0aa31616 in Open (p_this=0x1117a980) at realvideo.c:272 > #1 0x6a58645e in __module_need (p_this=0x1117a980, After increasing the capability from 10 to 70. -------------- next part -------------- An HTML attachment was scrubbed... URL: From silencewang at msn.com Tue Feb 3 04:53:16 2009 From: silencewang at msn.com (=?gb2312?B?zfWyqA==?=) Date: Tue, 3 Feb 2009 15:53:16 +1200 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: <4987BE19.60807@gmail.com> References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> <4987BE19.60807@gmail.com> Message-ID: what means "After increasing the capability from 10 to 70" ? Date: Tue, 3 Feb 2009 14:46:33 +1100From: xxcv07 at gmail.comTo: vlc-devel at videolan.orgSubject: Re: [vlc-devel] the new patch for real video has submit?? wrote: oh, i use git-send-mail to send the patch.and forget attach it here. :( ok, here is patch, please help me to do test in windows. Program received signal SIGSEGV, Segmentation fault.[Switching to thread 4924.0x81c]0x0aa31616 in Open (p_this=0x1117a980) at realvideo.c:272 in realvideo.c(gdb) Error: dll starting at 0x77560000 not found.Error: dll starting at 0x771d0000 not found.Error: dll starting at 0x77560000 not found.Error: dll starting at 0x77490000 not found.272 realvideo.c: No such file or directory.bt#0 0x0aa31616 in Open (p_this=0x1117a980) at realvideo.c:272#1 0x6a58645e in __module_need (p_this=0x1117a980, After increasing the capability from 10 to 70. _________________________________________________________________ MSN????????????MSN???????? http://im.live.cn/msn9/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From xxcv07 at gmail.com Tue Feb 3 05:02:35 2009 From: xxcv07 at gmail.com (xxcv) Date: Tue, 03 Feb 2009 15:02:35 +1100 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> <4987BE19.60807@gmail.com> Message-ID: <4987C1DB.1080405@gmail.com> ?? wrote: > what means "After increasing the capability from 10 to 70" ? > > set_capability( "decoder", 70 ) So that vlc will run realvideo.c instead of avcodec.c -------------- next part -------------- An HTML attachment was scrubbed... URL: From silencewang at msn.com Tue Feb 3 05:05:10 2009 From: silencewang at msn.com (=?gb2312?B?zfWyqA==?=) Date: Tue, 3 Feb 2009 16:05:10 +1200 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> <4987BE19.60807@gmail.com> Message-ID: ok, i find the problem. sorry xxcv, in fact i have not test it on windows, please help me to test it, ok? From: silencewang at msn.comTo: vlc-devel at videolan.orgDate: Tue, 3 Feb 2009 15:53:16 +1200Subject: Re: [vlc-devel] the new patch for real video has submit what means "After increasing the capability from 10 to 70" ? Date: Tue, 3 Feb 2009 14:46:33 +1100From: xxcv07 at gmail.comTo: vlc-devel at videolan.orgSubject: Re: [vlc-devel] the new patch for real video has submit?? wrote: oh, i use git-send-mail to send the patch.and forget attach it here. :( ok, here is patch, please help me to do test in windows. Program received signal SIGSEGV, Segmentation fault.[Switching to thread 4924.0x81c]0x0aa31616 in Open (p_this=0x1117a980) at realvideo.c:272 in realvideo.c(gdb) Error: dll starting at 0x77560000 not found.Error: dll starting at 0x771d0000 not found.Error: dll starting at 0x77560000 not found.Error: dll starting at 0x77490000 not found.272 realvideo.c: No such file or directory.bt#0 0x0aa31616 in Open (p_this=0x1117a980) at realvideo.c:272#1 0x6a58645e in __module_need (p_this=0x1117a980, After increasing the capability from 10 to 70. MSN 9.0 ??????????25G????? ????? _________________________________________________________________ MSN??????????????????MSN??? http://im.live.cn/safe/ -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-realvideo.patch Type: application/octet-stream Size: 11824 bytes Desc: not available URL: From xxcv07 at gmail.com Tue Feb 3 05:22:48 2009 From: xxcv07 at gmail.com (xxcv) Date: Tue, 03 Feb 2009 15:22:48 +1100 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> <4987BE19.60807@gmail.com> Message-ID: <4987C698.2010207@gmail.com> ?? wrote: > please help me to test it, ok? > Program received signal SIGSEGV, Segmentation fault. > [Switching to thread 2192.0x1024] > 0x76319b30 in msvcrt!memcpy () from C:\Windows\syswow64\msvcrt.dll > (gdb) Error: dll starting at 0x77560000 not found. > Error: dll starting at 0x771d0000 not found. > Error: dll starting at 0x77560000 not found. > Error: dll starting at 0x77490000 not found. > bt > #0 0x76319b30 in msvcrt!memcpy () from C:\Windows\syswow64\msvcrt.dll > #1 0x0aa6165e in Open (p_this=0x112ad6c8) at realvideo.c:277 > #2 0x6a58645e in __module_need (p_this=0x112ad6c8, From silencewang at msn.com Tue Feb 3 07:12:47 2009 From: silencewang at msn.com (=?gb2312?B?zfWyqA==?=) Date: Tue, 3 Feb 2009 18:12:47 +1200 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: <4987C698.2010207@gmail.com> References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> <4987BE19.60807@gmail.com> <4987C698.2010207@gmail.com> Message-ID: hi, xxcv: i comment the code about registry , i will install a mingw cross compiler later and check the problem. please help test if there is any problem , thanks. -- wangbo > Date: Tue, 3 Feb 2009 15:22:48 +1100> From: xxcv07 at gmail.com> To: vlc-devel at videolan.org> Subject: Re: [vlc-devel] the new patch for real video has submit> > ?? wrote:> > please help me to test it, ok?> > Program received signal SIGSEGV, Segmentation fault.> > [Switching to thread 2192.0x1024]> > 0x76319b30 in msvcrt!memcpy () from C:\Windows\syswow64\msvcrt.dll> > (gdb) Error: dll starting at 0x77560000 not found.> > Error: dll starting at 0x771d0000 not found.> > Error: dll starting at 0x77560000 not found.> > Error: dll starting at 0x77490000 not found.> > bt> > #0 0x76319b30 in msvcrt!memcpy () from C:\Windows\syswow64\msvcrt.dll> > #1 0x0aa6165e in Open (p_this=0x112ad6c8) at realvideo.c:277> > #2 0x6a58645e in __module_need (p_this=0x112ad6c8,> > > _______________________________________________> vlc-devel mailing list> To unsubscribe or modify your subscription options:> http://mailman.videolan.org/listinfo/vlc-devel _________________________________________________________________ ?????????????????????????????? http://piao.live.com/?form=PANER01 -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-realvideo.patch Type: application/octet-stream Size: 12066 bytes Desc: not available URL: From xxcv07 at gmail.com Tue Feb 3 07:51:28 2009 From: xxcv07 at gmail.com (xxcv) Date: Tue, 03 Feb 2009 17:51:28 +1100 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> <4987BE19.60807@gmail.com> <4987C698.2010207@gmail.com> Message-ID: <4987E970.4000503@gmail.com> ?? wrote: > hi, xxcv: > > i comment the code about registry , i will install a mingw cross > compiler later > and check the problem. > > please help test if there is any problem , thanks. Just remove the static from line below otherwise you're going to have memory copy error. This is the last bug which prevent it from running on win32. > + static const char psz_paths[MAX_PATH*3] = "\0"; -------------- next part -------------- An HTML attachment was scrubbed... URL: From rdenis at simphalempin.com Tue Feb 3 08:50:36 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Tue, 03 Feb 2009 08:50:36 +0100 Subject: [vlc-devel] commit: mozilla: update the version number (Jean-Paul Saman ) In-Reply-To: <20090202223728.613F52E9C8@skanda.videolan.org> References: <20090202223728.613F52E9C8@skanda.videolan.org> Message-ID: <9448d3473b3fa68722e7d0c3e560b8df@chewa.net> On Mon, 2 Feb 2009 23:37:28 +0100 (CET), git at videolan.org (git version control) wrote: > vlc | branch: master | Jean-Paul Saman | Mon Feb 2 > 21:41:52 2009 +0100| [b198db8f65f91f9bfbd463f8e68d84906957932d] | > committer: Jean-Paul Saman > > mozilla: update the version number config.status is your friend. -- R?mi Denis-Courmont From rdenis at simphalempin.com Tue Feb 3 08:52:37 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Tue, 03 Feb 2009 08:52:37 +0100 Subject: [vlc-devel] =?utf-8?q?How_to_compile_VLC_in_MSVC++=3F?= In-Reply-To: References: Message-ID: <3c23fc31043f1fed16331928f346e210@chewa.net> On Mon, 2 Feb 2009 13:39:05 -0800, Hadi Hadizadeh wrote: > How can we compile VLC in MSVC++? I searched a lot about this issue but > unfortunately, I couldn't find any useful link. Any idea? Thanks. MSVC++ is not a (standards-compliant) C compiler, and is hence unable to build VLC. -- R?mi Denis-Courmont From sebastien-devel at celeos.eu Tue Feb 3 08:53:46 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Tue, 03 Feb 2009 08:53:46 +0100 Subject: [vlc-devel] commit: live555: unbreak windows RTSP servers ( introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). (Jean-Paul Saman ) In-Reply-To: <20090202223728.8A42D2E9C3@skanda.videolan.org> References: <20090202223728.8A42D2E9C3@skanda.videolan.org> Message-ID: <1233647626.4987f80adee3c@imp.celeos.eu> Quoting git version control : > vlc | branch: master | Jean-Paul Saman | Mon Feb 2 > 23:33:10 2009 +0100| [76f34d998b53665e31ec582d480373b8f4d03100] | committer: > Jean-Paul Saman > > live555: unbreak windows RTSP servers (introduced in > c0d37c7c881712e182f03b52d0b00a911cab81ac). Hi What do you mean by "windows rtsp servers". How did the previous commit break it ? and why sending describe request if OPTIONS request failed ? Thanks. From hadi.hadizadeh at hotmail.com Tue Feb 3 09:05:14 2009 From: hadi.hadizadeh at hotmail.com (Hadi Hadizadeh) Date: Tue, 3 Feb 2009 00:05:14 -0800 Subject: [vlc-devel] A problem with bootstrap of VLC player... Message-ID: Hi, I want to compile VLC source code with MSYS/MINGW. I got the last soure code of VLC at http://www.videolan.org/vlc/download-sources.html . Also, I got the additional libraries from http://download.videolan.org/pub/testing/win32/contrib-20060330-win32-bin-gcc-3.4.5-only.tar.bz2 . I extracted it to the root directory. Now I have VLC/usr/win32/bin. To compile the source code, I used the following instruction: ./bootstrap && \ PKG_CONFIG_PATH=/usr/win32/lib/pkgconfig \ PATH=/usr/win32/bin:$PATH \ CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" \ LDFLAGS=-L/usr/win32/lib \ ./configure \ --disable-gtk \ --enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \ --enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \ --with-ffmpeg-zlib --enable-faad --enable-flac --enable-theora \ --with-wx-config-path=/usr/win32/bin \ --with-freetype-config-path=/usr/win32/bin \ --with-fribidi-config-path=/usr/win32/bin \ --enable-caca --with-caca-config-path=/usr/win32/bin \ --with-xml2-config-path=/usr/win32/bin \ --with-dvdnav-config-path=/usr/win32/bin \ --disable-cddax --disable-vcdx --enable-goom \ --enable-twolame --enable-dvdread \ --disable-mkv \ --enable-debugBut when I enter it, I get the following error which is related to bootstrap: generating modules/**Makefile.am..........................................................+echo+echo+cp -f INSTALL INSTALL.git+autoreconf --install --force --verbose -I m4./bootstrap: line 110: autoreconf : command not found But what is the problem? Thank you in advance! Best regards,Hadi _________________________________________________________________ Windows Live Messenger. Multitasking at its finest. http://www.microsoft.com/windows/windowslive/messenger.aspx -------------- next part -------------- An HTML attachment was scrubbed... URL: From hadi.hadizadeh at hotmail.com Tue Feb 3 09:09:35 2009 From: hadi.hadizadeh at hotmail.com (Hadi Hadizadeh) Date: Tue, 3 Feb 2009 00:09:35 -0800 Subject: [vlc-devel] A problem with bootstrap of VLC player... Message-ID: From: hadi.hadizadeh at hotmail.comTo: vlc-devel at videolan.orgSubject: A problem with bootstrap of VLC player...Date: Tue, 3 Feb 2009 00:05:14 -0800 Hi, I want to compile VLC source code with MSYS/MINGW. I got the last soure code of VLC at http://www.videolan.org/vlc/download-sources.html . Also, I got the additional libraries from http://download.videolan.org/pub/testing/win32/contrib-20060330-win32-bin-gcc-3.4.5-only.tar.bz2 . I extracted it to the root directory. Now I have VLC/usr/win32/bin. To compile the source code, I used the following instruction: ./bootstrap && PKG_CONFIG_PATH=/usr/win32/lib/pkgconfig \ PATH=/usr/win32/bin:$PATH \CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" LDFLAGS=-L/usr/win32/lib But when I enter it, I get the following error:generating modules/**Makefile.am..........................................................+echo+echo+cp -f INSTALL INSTALL.git+autoreconf --install --force --verbose -I m4./bootstrap: line 110: autoreconf : command not found But what is the problem? Thank you in advance! Best regards,Hadi _________________________________________________________________ The new Windows Live Messenger. You don?t want to miss this. http://www.microsoft.com/windows/windowslive/messenger.aspx -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Tue Feb 3 11:50:40 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 11:50:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_taglib=3A_fix_warning_about_overr?= =?utf-8?q?iden_variable=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090203105040.77AA62E9E0@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 1 17:19:41 2009 +0100| [b10e05092c2daf1de4f3502486e76999148f7066] | committer: R?mi Duraffort taglib: fix warning about overriden variable. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b10e05092c2daf1de4f3502486e76999148f7066 --- modules/meta_engine/taglib.cpp | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/modules/meta_engine/taglib.cpp b/modules/meta_engine/taglib.cpp index 0a62e66..6d42247 100644 --- a/modules/meta_engine/taglib.cpp +++ b/modules/meta_engine/taglib.cpp @@ -196,8 +196,7 @@ static void ReadMetaFromId3v2( ID3v2::Tag* tag, demux_t* p_demux, demux_meta_t* return; TAB_INIT( p_demux_meta->i_attachments, p_demux_meta->attachments ); - for( ID3v2::FrameList::Iterator iter = list.begin(); - iter != list.end(); iter++ ) + for( iter = list.begin(); iter != list.end(); iter++ ) { ID3v2::AttachedPictureFrame* p_apic = dynamic_cast(*iter); From git at videolan.org Tue Feb 3 11:50:40 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 11:50:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_vlc=5Furl=2Eh=3A_warning_about_ov?= =?utf-8?q?erriden_variable=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090203105040.840B82E9E9@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 1 17:23:18 2009 +0100| [bbd5ed6247b2b683af3beeda0e727e4072c9bd09] | committer: R?mi Duraffort vlc_url.h: warning about overriden variable. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bbd5ed6247b2b683af3beeda0e727e4072c9bd09 --- include/vlc_url.h | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) diff --git a/include/vlc_url.h b/include/vlc_url.h index 7cedd5b..dc2a021 100644 --- a/include/vlc_url.h +++ b/include/vlc_url.h @@ -85,7 +85,6 @@ static inline void vlc_UrlParse( vlc_url_t *url, const char *psz_url, p = strstr( psz_parse, ":/" ); if( p != NULL ) { - char *p2; for( p2 = psz_parse; p2 < p; p2++ ) { #define I(i,a,b) ( (a) <= (i) && (i) <= (b) ) @@ -132,8 +131,6 @@ static inline void vlc_UrlParse( vlc_url_t *url, const char *psz_url, p = strchr( psz_parse, '/' ); if( !p || psz_parse < p ) { - char *p2; - /* We have a host[:port] */ url->psz_host = strdup( psz_parse ); if( p ) From git at videolan.org Tue Feb 3 11:50:40 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 11:50:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_unused_variables=2E_=28_R=C3=A9mi?= =?utf-8?q?_Duraffort_=29?= Message-ID: <20090203105040.9491B2EA39@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 1 17:25:29 2009 +0100| [16d476260d73913e87f26c8fe283c8dee0dcb86a] | committer: R?mi Duraffort unused variables. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=16d476260d73913e87f26c8fe283c8dee0dcb86a --- modules/access/gnomevfs.c | 1 - modules/access/mmap.c | 2 -- 2 files changed, 0 insertions(+), 3 deletions(-) diff --git a/modules/access/gnomevfs.c b/modules/access/gnomevfs.c index 635b7ca..b0ce8ec 100644 --- a/modules/access/gnomevfs.c +++ b/modules/access/gnomevfs.c @@ -376,7 +376,6 @@ static int Control( access_t *p_access, int i_query, va_list args ) { access_sys_t *p_sys = p_access->p_sys; bool *pb_bool; - int *pi_int; int64_t *pi_64; switch( i_query ) diff --git a/modules/access/mmap.c b/modules/access/mmap.c index 384129f..00af60c 100644 --- a/modules/access/mmap.c +++ b/modules/access/mmap.c @@ -280,8 +280,6 @@ static int Seek (access_t *p_access, int64_t i_pos) static int Control (access_t *p_access, int query, va_list args) { - access_sys_t *p_sys = p_access->p_sys; - switch (query) { case ACCESS_CAN_SEEK: From git at videolan.org Tue Feb 3 11:50:40 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 11:50:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_x11=3A_fix_compiler_warnings=2E_?= =?utf-8?q?=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090203105040.C18E02EA3D@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Tue Feb 3 11:49:21 2009 +0100| [7b3cb7d92c6c05dc4cd39f6826755895564d5759] | committer: R?mi Duraffort x11: fix compiler warnings. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7b3cb7d92c6c05dc4cd39f6826755895564d5759 --- modules/video_output/x11/xcommon.c | 13 ++++--------- 1 files changed, 4 insertions(+), 9 deletions(-) diff --git a/modules/video_output/x11/xcommon.c b/modules/video_output/x11/xcommon.c index bad0e01..7b6d6d6 100644 --- a/modules/video_output/x11/xcommon.c +++ b/modules/video_output/x11/xcommon.c @@ -1302,9 +1302,7 @@ static int ManageVideo( vout_thread_t *p_vout ) var_Set( p_vout, "mouse-button-down", val ); var_SetBool( p_vout, "mouse-clicked", true ); - - vlc_value_t val; val.b_bool = false; - var_Set( p_vout->p_libvlc, "intf-popupmenu", val ); + var_SetBool( p_vout->p_libvlc, "intf-popupmenu", false ); } break; @@ -1326,8 +1324,7 @@ static int ManageVideo( vout_thread_t *p_vout ) val.i_int &= ~4; var_Set( p_vout, "mouse-button-down", val ); - vlc_value_t val; val.b_bool = true; - var_Set( p_vout->p_libvlc, "intf-popupmenu", val ); + var_SetBool( p_vout->p_libvlc, "intf-popupmenu", true ); } break; @@ -1349,7 +1346,6 @@ static int ManageVideo( vout_thread_t *p_vout ) else if( xevent.type == MotionNotify ) { unsigned int i_width, i_height, i_x, i_y; - vlc_value_t val; /* somewhat different use for vout_PlacePicture: * here the values are needed to give to mouse coordinates @@ -1384,8 +1380,7 @@ static int ManageVideo( vout_thread_t *p_vout ) var_Set( p_vout, "mouse-y", val ); - val.b_bool = true; - var_Set( p_vout, "mouse-moved", val ); + var_SetBool( p_vout, "mouse-moved", true ); p_vout->p_sys->i_time_mouse_last_moved = mdate(); if( ! p_vout->p_sys->b_mouse_pointer_visible ) @@ -2795,7 +2790,7 @@ static int InitDisplay( vout_thread_t *p_vout ) if( p_vout->p_sys->i_shm_opcode ) { - int major, minor; + int minor; Bool pixmaps; XShmQueryVersion( p_vout->p_sys->p_display, &major, &minor, From git at videolan.org Tue Feb 3 11:50:40 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 11:50:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_fix_overriden_variables=2E_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090203105040.AC2432E9E0@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 1 18:35:21 2009 +0100| [0bed6fc3e3d1622f999b88bc908b8f5f1327da7c] | committer: R?mi Duraffort fix overriden variables. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0bed6fc3e3d1622f999b88bc908b8f5f1327da7c --- modules/demux/ps.h | 2 -- modules/demux/vobsub.c | 3 +-- 2 files changed, 1 insertions(+), 4 deletions(-) diff --git a/modules/demux/ps.h b/modules/demux/ps.h index a15daad..2c25151 100644 --- a/modules/demux/ps.h +++ b/modules/demux/ps.h @@ -559,8 +559,6 @@ static inline int ps_psm_fill( ps_psm_t *p_psm, block_t *p_pkt, es.i_descriptor = i_info_length; if( i_info_length > 0 ) { - int i = 0; - es.p_descriptor = malloc( i_info_length ); if( es.p_descriptor ) { diff --git a/modules/demux/vobsub.c b/modules/demux/vobsub.c index 3b90e2d..c52e19f 100644 --- a/modules/demux/vobsub.c +++ b/modules/demux/vobsub.c @@ -472,7 +472,6 @@ static int ParseVobSubIDX( demux_t *p_demux ) demux_sys_t *p_sys = p_demux->p_sys; text_t *txt = &p_sys->txt; char *line; - vobsub_track_t *current_tk = NULL; for( ;; ) { @@ -549,7 +548,7 @@ static int ParseVobSubIDX( demux_t *p_demux ) p_sys->track = realloc( p_sys->track, sizeof( vobsub_track_t ) * (p_sys->i_tracks + 1 ) ); /* Init the track */ - current_tk = &p_sys->track[p_sys->i_tracks - 1]; + vobsub_track_t *current_tk = &p_sys->track[p_sys->i_tracks - 1]; memset( current_tk, 0, sizeof( vobsub_track_t ) ); current_tk->i_current_subtitle = 0; current_tk->i_subtitles = 0; From git at videolan.org Tue Feb 3 14:00:56 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 14:00:56 +0100 (CET) Subject: [vlc-devel] commit: Improve spectrum visualization. Change options : the number of bands for the spectrum and spectrometer visualization is now set with a boolean . Ban some actions to avoid segfaults in visualizations. (Adrien Maglo ) Message-ID: <20090203130056.C9AC32EA4D@skanda.videolan.org> vlc | branch: master | Adrien Maglo | Tue Feb 3 13:48:10 2009 +0100| [df325fb8649129a961813f7b82bb6715042ccf25] | committer: Jean-Baptiste Kempf Improve spectrum visualization. Change options : the number of bands for the spectrum and spectrometer visualization is now set with a boolean. Ban some actions to avoid segfaults in visualizations. Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=df325fb8649129a961813f7b82bb6715042ccf25 --- modules/visualization/visual/effects.c | 219 +++++++++++++++++--------------- modules/visualization/visual/visual.c | 31 +++-- modules/visualization/visual/visual.h | 6 + 3 files changed, 141 insertions(+), 115 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=df325fb8649129a961813f7b82bb6715042ccf25 From rdenis at simphalempin.com Tue Feb 3 15:01:52 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Tue, 03 Feb 2009 15:01:52 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_vlc=5Furl=2Eh=3A_warning_about_ov?= =?utf-8?q?erriden_variable=2E_=28_R=C3=A9mi_Duraffort_=29?= In-Reply-To: <20090203105040.840B82E9E9@skanda.videolan.org> References: <20090203105040.840B82E9E9@skanda.videolan.org> Message-ID: <9a29add5fce402adc7306f0f90553816@chewa.net> On Tue, 3 Feb 2009 11:50:40 +0100 (CET), git at videolan.org (git version control) wrote: > vlc | branch: master | R?mi Duraffort | Sun Feb 1 > 17:23:18 2009 +0100| [bbd5ed6247b2b683af3beeda0e727e4072c9bd09] | > committer: R?mi Duraffort > > vlc_url.h: warning about overriden variable. This is NOT the way to fix this problem. Removing USED variables reduces code maintainability at best, and introduces new bugs at worse. Change the names if you really want to fix this issue. But as I already said many times, removing warnings is not an end in itself. When I see bad things like this being committed, I think it's best to do nothing. -- R?mi Denis-Courmont From rdenis at simphalempin.com Tue Feb 3 15:02:26 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Tue, 03 Feb 2009 15:02:26 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_x11=3A_fix_compiler_warnings=2E_?= =?utf-8?q?=28_R=C3=A9mi_Duraffort_=29?= In-Reply-To: <20090203105040.C18E02EA3D@skanda.videolan.org> References: <20090203105040.C18E02EA3D@skanda.videolan.org> Message-ID: <54dfb72410d31c45fadf8973beb040c7@chewa.net> On Tue, 3 Feb 2009 11:50:40 +0100 (CET), git at videolan.org (git version control) wrote: > @@ -2795,7 +2790,7 @@ static int InitDisplay( vout_thread_t *p_vout ) > > if( p_vout->p_sys->i_shm_opcode ) > { > - int major, minor; > + int minor; > Bool pixmaps; > > XShmQueryVersion( p_vout->p_sys->p_display, &major, &minor, Expanding the scope of a variable without reason is seldom a good idea. -- R?mi Denis-Courmont From ivoire at via.ecp.fr Tue Feb 3 16:03:29 2009 From: ivoire at via.ecp.fr (=?iso-8859-1?Q?R=E9mi?= Duraffort) Date: Tue, 3 Feb 2009 16:03:29 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_x11=3A_fix_compiler_warnings?= =?iso-8859-1?q?=2E_=28_R=E9mi_Duraffort_=29?= In-Reply-To: <54dfb72410d31c45fadf8973beb040c7@chewa.net> References: <20090203105040.C18E02EA3D@skanda.videolan.org> <54dfb72410d31c45fadf8973beb040c7@chewa.net> Message-ID: <20090203150329.GA4833@via.ecp.fr> > > if( p_vout->p_sys->i_shm_opcode ) > > { > > - int major, minor; > > + int minor; > > Bool pixmaps; > > > > XShmQueryVersion( p_vout->p_sys->p_display, &major, &minor, > > Expanding the scope of a variable without reason is seldom a good idea. I know, that why I have read the code and IMHO it doesn't change anything. -- ivoire | R?mi Duraffort From fenrir at via.ecp.fr Tue Feb 3 16:28:22 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Tue, 3 Feb 2009 16:28:22 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_x11=3A_fix_compiler_warnings?= =?iso-8859-1?q?=2E_=28_R=E9mi_Duraffort_=29?= In-Reply-To: <20090203150329.GA4833@via.ecp.fr> References: <20090203105040.C18E02EA3D@skanda.videolan.org> <54dfb72410d31c45fadf8973beb040c7@chewa.net> <20090203150329.GA4833@via.ecp.fr> Message-ID: <20090203152822.GA3674@via.ecp.fr> Hi, On Tue, Feb 03, 2009, R?mi Duraffort wrote: > > > if( p_vout->p_sys->i_shm_opcode ) > > > { > > > - int major, minor; > > > + int minor; > > > Bool pixmaps; > > > > > > XShmQueryVersion( p_vout->p_sys->p_display, &major, &minor, > > > > Expanding the scope of a variable without reason is seldom a good idea. > I know, that why I have read the code and IMHO it doesn't change > anything. If someone has to read code to make sure it does not have side effects whereas previously it was not needed, then the 'correction' is wrong. Warning should be used to make the code clearer, not more obscure (in case of pure cosmetics). I dislike this warning of gcc, as it is rarely a real bug. -- fenrir From git at videolan.org Tue Feb 3 16:45:14 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 16:45:14 +0100 (CET) Subject: [vlc-devel] commit: mozilla: keep version info automatically up-to-date. ( Jean-Paul Saman ) Message-ID: <20090203154514.0DA742E1FD@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Tue Feb 3 16:41:49 2009 +0100| [c5f610c90dfa81c54a45c256d637e11324eb8d68] | committer: Jean-Paul Saman mozilla: keep version info automatically up-to-date. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c5f610c90dfa81c54a45c256d637e11324eb8d68 --- configure.ac | 1 + projects/mozilla/{vlc.r => vlc.r.in} | 2 +- 2 files changed, 2 insertions(+), 1 deletions(-) diff --git a/configure.ac b/configure.ac index 5f9e09b..26bc6fd 100644 --- a/configure.ac +++ b/configure.ac @@ -5891,6 +5891,7 @@ AC_CONFIG_FILES([ po/Makefile.in projects/activex/axvlc_rc.rc projects/mozilla/npvlc_rc.rc + projects/mozilla/vlc.r share/Makefile share/vlc_win32_rc.rc share/libvlc_win32_rc.rc diff --git a/projects/mozilla/vlc.r b/projects/mozilla/vlc.r.in similarity index 98% rename from projects/mozilla/vlc.r rename to projects/mozilla/vlc.r.in index e5174e9..7679784 100644 --- a/projects/mozilla/vlc.r +++ b/projects/mozilla/vlc.r.in @@ -13,7 +13,7 @@ data 'carb' (0) resource 'STR#' (126) { { - "Version 1.0.0-git, copyright 1996-2009 The VideoLAN Team" + "@COPYRIGHT_MESSAGE@" "
http://www.videolan.org", "VLC Multimedia Plug-in" }; From jpsaman at videolan.org Tue Feb 3 17:14:32 2009 From: jpsaman at videolan.org (Jean-Paul Saman) Date: Tue, 03 Feb 2009 17:14:32 +0100 Subject: [vlc-devel] commit: live555: unbreak windows RTSP servers ( introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). (Jean-Paul Saman ) In-Reply-To: <1233647626.4987f80adee3c@imp.celeos.eu> References: <20090202223728.8A42D2E9C3@skanda.videolan.org> <1233647626.4987f80adee3c@imp.celeos.eu> Message-ID: <49886D68.9010205@videolan.org> S?bastien Escudier wrote: > Quoting git version control : > >> vlc | branch: master | Jean-Paul Saman | Mon Feb 2 >> 23:33:10 2009 +0100| [76f34d998b53665e31ec582d480373b8f4d03100] | committer: >> Jean-Paul Saman >> >> live555: unbreak windows RTSP servers (introduced in >> c0d37c7c881712e182f03b52d0b00a911cab81ac). > > Hi > > What do you mean by "windows rtsp servers". > How did the previous commit break it ? and why sending describe request if > OPTIONS request failed ? Well that is exactly the problem. The OPTIONS request doesn't fail according to this snippit of the RTSP dialog. However it also doesn't return a list of supported OPTIONS at all. Live555 library thus returns NULL although the Windows RTSP server says: "RTSP/1.0 200 OK" -- snippit -- Sending request: OPTIONS rtsp://193.37.129.197/VLC/Screen1.asf RTSP/1.0 CSeq: 1 User-Agent: VLC media player (LIVE555 Streaming Media v2008.10.07) Received OPTIONS response: RTSP/1.0 200 OK Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile Date: Tue, 03 Feb 2009 17:14:06 GMT CSeq: 1 Server: WMServer/9.1.1.3862 -- snippit -- AFAIK live555 libraries doesn't have a way (or API call) to get the necessary information to resolve this. Gtz Jean-Paul Sman. From git at videolan.org Tue Feb 3 17:16:09 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 17:16:09 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A__resized_to_the_open_di?= =?utf-8?q?alogue_again_and_cleaned-up_the_screen_input_section__=28_Felix?= =?utf-8?q?_Paul_K=C3=BChne_=29?= Message-ID: <20090203161610.012D02E5FA@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Tue Feb 3 17:12:48 2009 +0100| [c62a73d1f5ed365e33d1f3d4f855f2737e29c476] | committer: Felix Paul K?hne macosx: resized to the open dialogue again and cleaned-up the screen input section > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c62a73d1f5ed365e33d1f3d4f855f2737e29c476 --- .../Resources/English.lproj/Open.nib/classes.nib | 615 +++++++------------- .../Resources/English.lproj/Open.nib/info.nib | 18 +- .../English.lproj/Open.nib/keyedobjects.nib | Bin 72823 -> 75219 bytes modules/gui/macosx/open.h | 11 +- modules/gui/macosx/open.m | 31 +- 5 files changed, 253 insertions(+), 422 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=c62a73d1f5ed365e33d1f3d4f855f2737e29c476 From git at videolan.org Tue Feb 3 17:16:10 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 17:16:10 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_Renamed_=27Quick_Open_F?= =?utf-8?q?ile=27_to_=27Open_File=27_and_=27Open_File=27__to_=27Advanced_O?= =?utf-8?q?pen_File=27__and_switched_the_menu_order_accordingly_to_provide?= =?utf-8?q?_the_same_names_as_the_Qt4_intf__=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090203161610.152E72E7E0@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Tue Feb 3 17:15:50 2009 +0100| [c887168f58ece7bd5cb6140c63569a3581e3b18d] | committer: Felix Paul K?hne macosx: Renamed 'Quick Open File' to 'Open File' and 'Open File' to 'Advanced Open File' and switched the menu order accordingly to provide the same names as the Qt4 intf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c887168f58ece7bd5cb6140c63569a3581e3b18d --- .../English.lproj/MainMenu.nib/classes.nib | 1277 +++++++------------- .../Resources/English.lproj/MainMenu.nib/info.nib | 21 +- .../English.lproj/MainMenu.nib/keyedobjects.nib | Bin 120407 -> 119489 bytes modules/gui/macosx/intf.m | 4 +- 4 files changed, 460 insertions(+), 842 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=c887168f58ece7bd5cb6140c63569a3581e3b18d From fkuehne.videolan at googlemail.com Tue Feb 3 17:18:28 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Tue, 3 Feb 2009 17:18:28 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_macosx=3A__resized_to_the_op?= =?iso-8859-1?q?en_dialogue_again_and_cleaned-up_the_screen_input_section_?= =?iso-8859-1?q?_=28_Felix_Paul_K=FChne_=29?= In-Reply-To: <20090203161610.012D02E5FA@skanda.videolan.org> References: <20090203161610.012D02E5FA@skanda.videolan.org> Message-ID: Am 03.02.2009 um 17:16 schrieb git version control: > vlc | branch: master | Felix Paul K?hne | Tue > Feb 3 17:12:48 2009 +0100| > [c62a73d1f5ed365e33d1f3d4f855f2737e29c476] | committer: Felix Paul > K?hne > > macosx: resized to the open dialogue again and cleaned-up the screen > input section This commit also improved the way we open directories using the former "Quick Open File"... F. From thiago_hr at yahoo.com.br Tue Feb 3 17:32:21 2009 From: thiago_hr at yahoo.com.br (Thiago Rodrigues) Date: Tue, 3 Feb 2009 08:32:21 -0800 (PST) Subject: [vlc-devel] VideoLan ActiveX Component Message-ID: <201628.35322.qm@web111504.mail.gq1.yahoo.com> Hello, Is it possible to use the VideoLan ActiveX component to control BDA tuners in my own application, in C++ Builder 6? If positive, how could I do this? Regards, Thiago Veja quais s?o os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com From sebastien-devel at celeos.eu Tue Feb 3 18:01:39 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Tue, 03 Feb 2009 18:01:39 +0100 Subject: [vlc-devel] commit: live555: unbreak windows RTSP servers ( introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). (Jean-Paul Saman ) In-Reply-To: <49886D68.9010205@videolan.org> References: <20090202223728.8A42D2E9C3@skanda.videolan.org> <1233647626.4987f80adee3c@imp.celeos.eu> <49886D68.9010205@videolan.org> Message-ID: <1233680499.498878730d8db@imp.celeos.eu> Quoting Jean-Paul Saman : > Well that is exactly the problem. The OPTIONS request doesn't fail Ok thank you for the information. But I don't know if a server which doesn't implement Public field is valid. And that's why psz_options is null. RFC 2326 says : http://www.ietf.org/rfc/rfc2326.txt A minimal server implementation MUST be able to do the following: [...] * Include the following headers in responses: Connection, Content-Length, Content-Type, Content-Language, Content-Encoding, Transport, Public. [...] From rem at videolan.org Tue Feb 3 18:02:44 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Tue, 3 Feb 2009 19:02:44 +0200 Subject: [vlc-devel] commit: live555: unbreak windows RTSP servers ( introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). (Jean-Paul Saman ) In-Reply-To: <1233680499.498878730d8db@imp.celeos.eu> References: <20090202223728.8A42D2E9C3@skanda.videolan.org> <49886D68.9010205@videolan.org> <1233680499.498878730d8db@imp.celeos.eu> Message-ID: <200902031902.44906.rem@videolan.org> Le mardi 3 f?vrier 2009 19:01:39 S?bastien Escudier, vous avez ?crit?: > But I don't know if a server which doesn't implement Public field is valid. It is optional see, RFC2326 ?1.5. The only warranted way to check whether a request is implemented is to try it and handle errors. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From sebastien-devel at celeos.eu Tue Feb 3 18:16:04 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Tue, 03 Feb 2009 18:16:04 +0100 Subject: [vlc-devel] commit: live555: unbreak windows RTSP servers ( introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). (Jean-Paul Saman ) In-Reply-To: <200902031902.44906.rem@videolan.org> References: <20090202223728.8A42D2E9C3@skanda.videolan.org> <49886D68.9010205@videolan.org> <1233680499.498878730d8db@imp.celeos.eu> <200902031902.44906.rem@videolan.org> Message-ID: <1233681364.49887bd4d58a8@imp.celeos.eu> Quoting R?mi Denis-Courmont : > It is optional see, RFC2326 ?1.5. > > The only warranted way to check whether a request is implemented is to try it > and handle errors. ok thank you. From agent_007 at luukku.com Tue Feb 3 18:37:30 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Tue, 3 Feb 2009 19:37:30 +0200 (EET) Subject: [vlc-devel] VideoLan ActiveX Component Message-ID: <1233682650358.agent_007.60699.c2tt-MIL4Gt0Z_NFr-8JXg@luukku.com> Thiago Rodrigues kirjoitti 03.02.2009 kello 18:32: > Hello, > > Is it possible to use the VideoLan ActiveX component to control BDA > tuners > in my own application, in C++ Builder 6? If positive, how could I do > this? You should be able to play video using ActiveX component if that is what you want. Just use VLC to figure out right DVB parameters and use ActiveX to open DVB. eg. dvb-t:// :dvb-frequency=0 :dvb-bandwidth=-1 > > Regards, > > Thiago > > > Veja quais s?o os assuntos do momento no Yahoo! +Buscados > http://br.maisbuscados.yahoo.com > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku From git at videolan.org Tue Feb 3 18:44:01 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 18:44:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_removed_settings_for_th?= =?utf-8?q?e_former_access-filters_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090203174401.592F52E7E4@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Tue Feb 3 18:43:56 2009 +0100| [565bb4caf0b8df76befa05b13a44bff0cbfbbdf8] | committer: Felix Paul K?hne macosx: removed settings for the former access-filters > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=565bb4caf0b8df76befa05b13a44bff0cbfbbdf8 --- .../English.lproj/Preferences.nib/classes.nib | 6 --- .../English.lproj/Preferences.nib/info.nib | 8 ++-- .../English.lproj/Preferences.nib/keyedobjects.nib | Bin 94245 -> 91661 bytes modules/gui/macosx/simple_prefs.h | 5 --- modules/gui/macosx/simple_prefs.m | 35 -------------------- 5 files changed, 4 insertions(+), 50 deletions(-) diff --git a/extras/package/macosx/Resources/English.lproj/Preferences.nib/classes.nib b/extras/package/macosx/Resources/English.lproj/Preferences.nib/classes.nib index 8c565d2..aa96895 100644 --- a/extras/package/macosx/Resources/English.lproj/Preferences.nib/classes.nib +++ b/extras/package/macosx/Resources/English.lproj/Preferences.nib/classes.nib @@ -78,7 +78,6 @@ "o_audio_vol_fld" = id; "o_audio_vol_sld" = id; "o_audio_vol_txt" = id; - "o_currentlyShownCategoryView" = id; "o_hotkeys_change_btn" = id; "o_hotkeys_change_cancel_btn" = id; "o_hotkeys_change_keys_lbl" = id; @@ -90,15 +89,12 @@ "o_hotkeys_lbl" = id; "o_hotkeys_listbox" = id; "o_hotkeys_view" = id; - "o_input_access_box" = id; "o_input_avi_pop" = id; "o_input_avi_txt" = id; - "o_input_bandwidth_ckb" = id; "o_input_cachelevel_custom_txt" = id; "o_input_cachelevel_pop" = id; "o_input_cachelevel_txt" = id; "o_input_caching_box" = id; - "o_input_dump_ckb" = id; "o_input_httpproxy_fld" = id; "o_input_httpproxy_txt" = id; "o_input_httpproxypwd_sfld" = id; @@ -107,11 +103,9 @@ "o_input_net_box" = id; "o_input_postproc_fld" = id; "o_input_postproc_txt" = id; - "o_input_record_ckb" = id; "o_input_rtsp_ckb" = id; "o_input_serverport_fld" = id; "o_input_serverport_txt" = id; - "o_input_timeshift_ckb" = id; "o_input_view" = id; "o_intf_art_pop" = id; "o_intf_art_txt" = id; diff --git a/extras/package/macosx/Resources/English.lproj/Preferences.nib/info.nib b/extras/package/macosx/Resources/English.lproj/Preferences.nib/info.nib index 5ec7ae9..568a08b 100644 --- a/extras/package/macosx/Resources/English.lproj/Preferences.nib/info.nib +++ b/extras/package/macosx/Resources/English.lproj/Preferences.nib/info.nib @@ -3,7 +3,7 @@ IBDocumentLocation - 69 71 356 240 0 0 1280 778 + 76 135 356 240 0 0 1280 778 IBEditorPositions 2311 @@ -15,7 +15,7 @@ 2523 345 341 590 343 0 0 1280 778 2562 - 345 220 590 505 0 0 1280 778 + 258 273 590 505 0 0 1280 778 2668 345 256 590 457 0 0 1280 778 @@ -27,11 +27,11 @@ 5 IBOpenObjects - 1530 2265 + 1530 IBSystem Version - 9F33 + 9G55 targetFramework IBCocoaFramework diff --git a/extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib b/extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib index e56cf58..cf6e2df 100644 Binary files a/extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib and b/extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib differ diff --git a/modules/gui/macosx/simple_prefs.h b/modules/gui/macosx/simple_prefs.h index 71da8d4..072970a 100644 --- a/modules/gui/macosx/simple_prefs.h +++ b/modules/gui/macosx/simple_prefs.h @@ -64,15 +64,12 @@ IBOutlet id o_hotkeys_listbox; IBOutlet id o_hotkeys_view; - IBOutlet id o_input_access_box; IBOutlet id o_input_avi_pop; IBOutlet id o_input_avi_txt; - IBOutlet id o_input_bandwidth_ckb; IBOutlet id o_input_cachelevel_pop; IBOutlet id o_input_cachelevel_txt; IBOutlet id o_input_cachelevel_custom_txt; IBOutlet id o_input_caching_box; - IBOutlet id o_input_dump_ckb; IBOutlet id o_input_httpproxy_fld; IBOutlet id o_input_httpproxy_txt; IBOutlet id o_input_httpproxypwd_sfld; @@ -81,11 +78,9 @@ IBOutlet id o_input_net_box; IBOutlet id o_input_postproc_fld; IBOutlet id o_input_postproc_txt; - IBOutlet id o_input_record_ckb; IBOutlet id o_input_rtsp_ckb; IBOutlet id o_input_serverport_fld; IBOutlet id o_input_serverport_txt; - IBOutlet id o_input_timeshift_ckb; IBOutlet id o_input_view; IBOutlet id o_intf_art_pop; diff --git a/modules/gui/macosx/simple_prefs.m b/modules/gui/macosx/simple_prefs.m index 4146d44..4d27788 100644 --- a/modules/gui/macosx/simple_prefs.m +++ b/modules/gui/macosx/simple_prefs.m @@ -242,22 +242,17 @@ create_toolbar_item( NSString * o_itemIdent, NSString * o_name, NSString * o_des [[[o_hotkeys_listbox tableColumnWithIdentifier: @"shortcut"] headerCell] setStringValue: _NS("Shortcut")]; /* input */ - [o_input_access_box setTitle: _NS("Access Filter")]; [o_input_avi_txt setStringValue: _NS("Repair AVI Files")]; - [o_input_bandwidth_ckb setTitle: _NS("Bandwidth limiter")]; [o_input_cachelevel_txt setStringValue: _NS("Default Caching Level")]; [o_input_caching_box setTitle: _NS("Caching")]; [o_input_cachelevel_custom_txt setStringValue: _NS("Use the complete preferences to configure custom caching values for each access module.")]; - [o_input_dump_ckb setTitle: _NS("Dump")]; [o_input_httpproxy_txt setStringValue: _NS("HTTP Proxy")]; [o_input_httpproxypwd_txt setStringValue: _NS("Password for HTTP Proxy")]; [o_input_mux_box setTitle: _NS("Codecs / Muxers")]; [o_input_net_box setTitle: _NS("Network")]; [o_input_postproc_txt setStringValue: _NS("Post-Processing Quality")]; - [o_input_record_ckb setTitle: _NS("Record")]; [o_input_rtsp_ckb setTitle: _NS("Use RTP over RTSP (TCP)")]; [o_input_serverport_txt setStringValue: _NS("Default Server Port")]; - [o_input_timeshift_ckb setTitle: _NS("Timeshift")]; /* interface */ [o_intf_art_txt setStringValue: _NS("Album art download policy")]; @@ -505,15 +500,6 @@ create_toolbar_item( NSString * o_itemIdent, NSString * o_name, NSString * o_des [o_input_rtsp_ckb setState: config_GetInt( p_intf, "rtsp-tcp" )]; - psz_tmp = config_GetPsz( p_intf, "access-filter" ); - if( psz_tmp ) - { - [o_input_record_ckb setState: (int)strstr( psz_tmp, "record" )]; - [o_input_dump_ckb setState: (int)strstr( psz_tmp, "dump" )]; - [o_input_bandwidth_ckb setState: (int)strstr( psz_tmp, "bandwidth" )]; - [o_input_timeshift_ckb setState: (int)strstr( psz_tmp, "timeshift" )]; - } - [o_input_cachelevel_pop removeAllItems]; [o_input_cachelevel_pop addItemsWithTitles: [NSArray arrayWithObjects: _NS("Custom"), _NS("Lowest latency"), _NS("Low latency"), _NS("Normal"), @@ -883,27 +869,6 @@ static inline void save_module_list( intf_thread_t * p_intf, id object, const ch } CaCi( "mms-caching", 19 ); - #define SaveAccessFilter( object, name ) \ - if( [object state] == NSOnState ) \ - { \ - if( b_first ) \ - { \ - [o_temp appendString: name]; \ - b_first = NO; \ - } \ - else \ - [o_temp appendFormat: @":%@", name]; \ - } - - BOOL b_first = YES; - NSMutableString *o_temp = [[NSMutableString alloc] init]; - SaveAccessFilter( o_input_record_ckb, @"record" ); - SaveAccessFilter( o_input_dump_ckb, @"dump" ); - SaveAccessFilter( o_input_bandwidth_ckb, @"bandwidth" ); - SaveAccessFilter( o_input_timeshift_ckb, @"timeshift" ); - config_PutPsz( p_intf, "access-filter", [o_temp UTF8String] ); - [o_temp release]; - i = config_SaveConfigFile( p_intf, "main" ); i = i + config_SaveConfigFile( p_intf, "ffmpeg" ); i = i + config_SaveConfigFile( p_intf, "access_http" ); From aballier at gentoo.org Tue Feb 3 21:10:04 2009 From: aballier at gentoo.org (Alexis Ballier) Date: Tue, 3 Feb 2009 21:10:04 +0100 Subject: [vlc-devel] [PATCH] Fix non posix test construction in configure. Message-ID: <1233691804-18300-1-git-send-email-aballier@gentoo.org> POSIX does not document the == construction for test; Even if GNU test and bash builtin allow it, configure is run by sh and FreeBSD test does not allow it so that this test is always false there. --- configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/configure.ac b/configure.ac index 26bc6fd..b33b2ac 100644 --- a/configure.ac +++ b/configure.ac @@ -1572,7 +1572,7 @@ dnl Allow runing as root (usefull for people runing on embedded platforms) dnl AC_ARG_ENABLE(run-as-root, [ --enable-run-as-root allow runing VLC as root (default disabled)]) -AS_IF([test "${enable_run_as_root}" == "yes"],[ +AS_IF([test "${enable_run_as_root}" = "yes"],[ AC_DEFINE(ALLOW_RUN_AS_ROOT, 1, [Define to 1 to allow runing VLC as root (uid 0).]) ]) -- 1.6.1.2 From cperras at u.washington.edu Tue Feb 3 21:27:08 2009 From: cperras at u.washington.edu (Craig Perras) Date: Tue, 3 Feb 2009 12:27:08 -0800 (PST) Subject: [vlc-devel] v210 codec support Message-ID: hi - is anyone working on adding v210 codec support to vlc (eg: 10-bit YCbCr via blackmagic hd-sdi cards) to vlc? i might be interested in contributing if someone could help me get started (i have 10+ years in c/c++ development, but i'm pretty new to av codecs). oh, it would also be ideal to support 16 and 24 bit lpcm audio from those cards. thanks, --craig From rem at videolan.org Tue Feb 3 21:41:56 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Tue, 3 Feb 2009 22:41:56 +0200 Subject: [vlc-devel] v210 codec support In-Reply-To: References: Message-ID: <200902032241.56845.rem@videolan.org> Le mardi 3 f?vrier 2009 22:27:08 Craig Perras, vous avez ?crit?: > is anyone working on adding v210 codec support to vlc (eg: 10-bit YCbCr > via blackmagic hd-sdi cards) to vlc? Nobody ever claimed so. > i might be interested in contributing > if someone could help me get started (i have 10+ years in c/c++ > development, but i'm pretty new to av codecs). If this is raw video, it probably should not be implemented as a codec, but rather as a chroma conversion. Either way, not-too-complicated-to-read existing plugins can be found at modules/codec/rawvideo.c and modules/video_chroma/yuy2_i422.c You can also ask on the IRC channel (depending on developper's availability) Best regards, -- R?mi Denis-Courmont From ramiro.polla at gmail.com Tue Feb 3 22:05:22 2009 From: ramiro.polla at gmail.com (Ramiro Polla) Date: Tue, 3 Feb 2009 19:05:22 -0200 Subject: [vlc-devel] v210 codec support In-Reply-To: <200902032241.56845.rem@videolan.org> References: <200902032241.56845.rem@videolan.org> Message-ID: Hi, On Tue, Feb 3, 2009 at 6:41 PM, R?mi Denis-Courmont wrote: > Le mardi 3 f?vrier 2009 22:27:08 Craig Perras, vous avez ?crit : >> is anyone working on adding v210 codec support to vlc (eg: 10-bit YCbCr >> via blackmagic hd-sdi cards) to vlc? > > Nobody ever claimed so. > >> i might be interested in contributing >> if someone could help me get started (i have 10+ years in c/c++ >> development, but i'm pretty new to av codecs). > > If this is raw video, it probably should not be implemented as a codec, but > rather as a chroma conversion. This has been discussed on this thread: http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/54195 in the FFmpeg devel mailing list. But then apparently the guy who was working on it gave up. If you add support for it for libswscale, VLC can make use of it. [...] Ramiro Polla From noxelia at gmail.com Tue Feb 3 22:33:48 2009 From: noxelia at gmail.com (basos g) Date: Tue, 3 Feb 2009 23:33:48 +0200 Subject: [vlc-devel] [PATCH] 4 patches to commit: [PATCH] FIX sub filter dead lock issue -- a recently occured dead lock issue In-Reply-To: <20090202212902.GA19446@via.ecp.fr> References: <9d98edc70902020353m42522839p133aa2f1dac163d0@mail.gmail.com> <20090202212902.GA19446@via.ecp.fr> Message-ID: <9d98edc70902031333t396f550cx966b135d5b819822@mail.gmail.com> 2009/2/2 Laurent Aimar : > Hi, > > On Mon, Feb 02, 2009, basos g wrote: >> > [PATCH] FIX sub filter dead lock issue -- a recently occured dead lock issue >> > >> > A dead lock was created when adding an spu filter (like marq) >> > because the same mutex was used for spu->p stuff and sub filter >> > chain (p_spu->p->p_chain). A new mutex was added for to update >> > the filter chain. > Thanks for your work. > >> > Maybe in the future the subfiltercallback code will just update a >> > string and the real filter update would take place in the vout >> > code (just like video filter). Then this mutext should only >> > lock that string and remove it from spu_SortSubPictures. > I have partially implemented this instead of applying the proposed patch as > it make the code simpler [f0fc0b2353b5234746b8e2e5fd7b764d7915f469]. > Could you confirm it fixes all your issue ? > yes, the dead lock does not occur after this patch. In addition that's the thing that should be done for the sub filter chain update. Effectively this update takes place in the vout_thread, and does not expose spu internals to video_output.c. So it is a good solution. From git at videolan.org Tue Feb 3 22:51:23 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 22:51:23 +0100 (CET) Subject: [vlc-devel] commit: Decrease fixed point decoder priority to lower than ffmpeg. ( Laurent Aimar ) Message-ID: <20090203215123.E4F032E155@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 3 22:50:28 2009 +0100| [67242bac7ca5c120d63cea2f730a15330fe682af] | committer: Laurent Aimar Decrease fixed point decoder priority to lower than ffmpeg. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=67242bac7ca5c120d63cea2f730a15330fe682af --- modules/codec/shine/shine_mod.c | 2 +- modules/codec/wmafixed/wma.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/codec/shine/shine_mod.c b/modules/codec/shine/shine_mod.c index 8e0a2d7..94de78e 100644 --- a/modules/codec/shine/shine_mod.c +++ b/modules/codec/shine/shine_mod.c @@ -64,7 +64,7 @@ vlc_module_begin(); set_category( CAT_INPUT ); set_subcategory( SUBCAT_INPUT_ACODEC ); set_description( _("MP3 fixed point audio encoder") ); - set_capability( "encoder", 101 ); + set_capability( "encoder", 50 ); set_callbacks( OpenEncoder, CloseEncoder ); vlc_module_end(); diff --git a/modules/codec/wmafixed/wma.c b/modules/codec/wmafixed/wma.c index c71542e..ba66158 100644 --- a/modules/codec/wmafixed/wma.c +++ b/modules/codec/wmafixed/wma.c @@ -81,7 +81,7 @@ vlc_module_begin(); set_category( CAT_INPUT ); set_subcategory( SUBCAT_INPUT_ACODEC ); set_description( _("WMA v1/v2 fixed point audio decoder") ); - set_capability( "decoder", 100 ); + set_capability( "decoder", 50 ); set_callbacks( OpenDecoder, CloseDecoder ); vlc_module_end(); From git at videolan.org Tue Feb 3 23:52:54 2009 From: git at videolan.org (git version control) Date: Tue, 3 Feb 2009 23:52:54 +0100 (CET) Subject: [vlc-devel] commit: Add more CDDA informations to the playlist node. (Laurent Aimar ) Message-ID: <20090203225254.478492E81A@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 3 23:51:53 2009 +0100| [9d9e1852a3c37c9771d9c9a29401579335bea60b] | committer: Laurent Aimar Add more CDDA informations to the playlist node. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9d9e1852a3c37c9771d9c9a29401579335bea60b --- modules/access/cdda.c | 60 +++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 48 insertions(+), 12 deletions(-) diff --git a/modules/access/cdda.c b/modules/access/cdda.c index fb6a714..e8c4ba6 100644 --- a/modules/access/cdda.c +++ b/modules/access/cdda.c @@ -396,11 +396,54 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) #ifdef HAVE_LIBCDDB GetCDDBInfo( p_access, i_titles, p_sys->p_sectors ); + const char *psz_album = NULL; + const char *psz_year = NULL; + const char *psz_genre = NULL; + char psz_year_buffer[4+1]; + if( p_sys->p_disc ) { - const char *psz_name = cddb_disc_get_title( p_sys->p_disc ); - if( psz_name && *psz_name ) - input_item_SetName( p_current, psz_name ); + psz_album = cddb_disc_get_title( p_sys->p_disc ); + if( psz_album && *psz_album ) + { + input_item_SetName( p_current, psz_album ); + input_item_SetAlbum( p_current, psz_album ); + } + + const unsigned i_year = cddb_disc_get_year( p_sys->p_disc ); + if( i_year > 0 ) + { + psz_year = psz_year_buffer; + snprintf( psz_year_buffer, sizeof(psz_year_buffer), "%u", i_year ); + input_item_SetDate( p_current, psz_year ); + } + + psz_genre = cddb_disc_get_genre( p_sys->p_disc ); + if( psz_genre && *psz_genre ) + input_item_SetGenre( p_current, psz_genre ); + + /* Set artist only if unique */ + const char *psz_artist = NULL; + for( int i = 0; i < i_titles; i++ ) + { + cddb_track_t *t = cddb_disc_get_track( p_sys->p_disc, i ); + if( !t ) + continue; + const char *psz_track_artist = cddb_track_get_artist( t ); + if( psz_artist && psz_track_artist && + strcmp( psz_artist, psz_track_artist ) ) + { + psz_artist = NULL; + break; + } + psz_artist = psz_track_artist; + } + if( psz_artist && *psz_artist ) + input_item_SetArtist( p_current, psz_artist ); + + const mtime_t i_duration = (int64_t)( p_sys->p_sectors[i_titles] - p_sys->p_sectors[0] ) * + CDDA_DATA_SIZE * 1000000 / 44100 / 2 / 2; + input_item_SetDuration( p_current, i_duration ); } #endif @@ -458,19 +501,12 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) input_item_SetArtist( p_input_item, psz_artist ); } - const char *psz_album = cddb_disc_get_title( p_sys->p_disc ); if( psz_album && *psz_album ) input_item_SetAlbum( p_input_item, psz_album ); - const unsigned i_year = cddb_disc_get_year( p_sys->p_disc ); - if( i_year > 0 ) - { - char psz_date[4+1]; - snprintf( psz_date, sizeof(psz_date), "%u", i_year ); - input_item_SetDate( p_input_item, psz_date ); - } + if( psz_year ) + input_item_SetDate( p_input_item, psz_year ); - const char *psz_genre = cddb_disc_get_genre( p_sys->p_disc ); if( psz_genre && *psz_genre ) input_item_SetGenre( p_input_item, psz_genre ); } From git at videolan.org Wed Feb 4 00:07:35 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 00:07:35 +0100 (CET) Subject: [vlc-devel] commit: Fix non posix test construction in configure. (Alexis Ballier ) Message-ID: <20090203230735.2295B2E7B4@skanda.videolan.org> vlc | branch: master | Alexis Ballier | Tue Feb 3 21:10:04 2009 +0100| [941cc25eb6a890f62766f52594300bce169d0271] | committer: Christophe Mutricy Fix non posix test construction in configure. POSIX does not document the == construction for test; Even if GNU test and bash builtin allow it, configure is run by sh and FreeBSD test does not allow it so that this test is always false there. Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=941cc25eb6a890f62766f52594300bce169d0271 --- configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/configure.ac b/configure.ac index 26bc6fd..b33b2ac 100644 --- a/configure.ac +++ b/configure.ac @@ -1572,7 +1572,7 @@ dnl Allow runing as root (usefull for people runing on embedded platforms) dnl AC_ARG_ENABLE(run-as-root, [ --enable-run-as-root allow runing VLC as root (default disabled)]) -AS_IF([test "${enable_run_as_root}" == "yes"],[ +AS_IF([test "${enable_run_as_root}" = "yes"],[ AC_DEFINE(ALLOW_RUN_AS_ROOT, 1, [Define to 1 to allow runing VLC as root (uid 0).]) ]) From git at videolan.org Wed Feb 4 00:07:35 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 00:07:35 +0100 (CET) Subject: [vlc-devel] commit: i18n: Fix (Christophe Mutricy ) Message-ID: <20090203230735.31BFD2E92E@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Tue Feb 3 22:32:02 2009 +0000| [4eb5aa9f62b500f41dc7ac131f6d1202ee50029f] | committer: Christophe Mutricy i18n: Fix > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4eb5aa9f62b500f41dc7ac131f6d1202ee50029f --- modules/gui/qt4/dialogs_provider.cpp | 2 +- modules/gui/qt4/menus.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/dialogs_provider.cpp b/modules/gui/qt4/dialogs_provider.cpp index e314df6..c4485d5 100644 --- a/modules/gui/qt4/dialogs_provider.cpp +++ b/modules/gui/qt4/dialogs_provider.cpp @@ -573,7 +573,7 @@ void DialogsProvider::streamingDialog( QWidget *parent, QString mrl, const char *psz_option = qtu( s->getMrl() ); msg_Dbg( p_intf, "Sout mrl %s", psz_option ); - playlist_AddExt( THEPL, qtu( mrl ), "Streaming", + playlist_AddExt( THEPL, qtu( mrl ), _("Streaming"), PLAYLIST_APPEND | PLAYLIST_GO, PLAYLIST_END, -1, 1, &psz_option, VLC_INPUT_OPTION_TRUSTED, true, pl_Unlocked ); RecentsMRL::getInstance( p_intf )->addRecent( mrl ); diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 0d16434..5630f16 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -1329,7 +1329,7 @@ void QVLCMenu::updateRecents( intf_thread_t *p_intf ) recentsMenu->clear(); if( !l.size() ) { - action = recentsMenu->addAction( " - Empty - " ); + action = recentsMenu->addAction( qtr(" - Empty - ") ); action->setEnabled( false ); } else @@ -1344,7 +1344,7 @@ void QVLCMenu::updateRecents( intf_thread_t *p_intf ) } recentsMenu->addSeparator(); - recentsMenu->addAction( "&Clear", rmrl, SLOT( clear() ) ); + recentsMenu->addAction( qtr("&Clear"), rmrl, SLOT( clear() ) ); } } } From finlayson at live555.com Wed Feb 4 00:06:28 2009 From: finlayson at live555.com (Ross Finlayson) Date: Tue, 3 Feb 2009 15:06:28 -0800 Subject: [vlc-devel] commit: live555: unbreak windows RTSP servers ( introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). (Jean-Paul Saman ) In-Reply-To: <49886D68.9010205@videolan.org> References: <20090202223728.8A42D2E9C3@skanda.videolan.org> <1233647626.4987f80adee3c@imp.celeos.eu> <49886D68.9010205@videolan.org> Message-ID: >Well that is exactly the problem. The OPTIONS request doesn't fail >according to this snippit of the RTSP dialog. However it also doesn't >return a list of supported OPTIONS at all. Live555 library thus returns >NULL although the Windows RTSP server says: "RTSP/1.0 200 OK" > >-- snippit -- > >Sending request: OPTIONS rtsp://193.37.129.197/VLC/Screen1.asf RTSP/1.0 >CSeq: 1 >User-Agent: VLC media player (LIVE555 Streaming Media v2008.10.07) > > >Received OPTIONS response: RTSP/1.0 200 OK >Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, >com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, >com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile >Date: Tue, 03 Feb 2009 17:14:06 GMT >CSeq: 1 >Server: WMServer/9.1.1.3862 > >-- snippit -- > >AFAIK live555 libraries doesn't have a way (or API call) to get the >necessary information to resolve this. Would you like me to change the LIVE555 "RTSPClient::sendOptionsCmd()" function to return an empty string (i.e., "") instead of NULL in this case? I could do this easily; just let me know. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ From silencewang at msn.com Wed Feb 4 03:50:07 2009 From: silencewang at msn.com (=?gb2312?B?zfWyqA==?=) Date: Wed, 4 Feb 2009 14:50:07 +1200 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: <4987E970.4000503@gmail.com> References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> <4987BE19.60807@gmail.com> <4987C698.2010207@gmail.com> <4987E970.4000503@gmail.com> Message-ID: ok, it is the last patch. -- wangbo Date: Tue, 3 Feb 2009 17:51:28 +1100From: xxcv07 at gmail.comTo: vlc-devel at videolan.orgSubject: Re: [vlc-devel] the new patch for real video has submit?? wrote: hi, xxcv:i comment the code about registry , i will install a mingw cross compiler later and check the problem. please help test if there is any problem , thanks.Just remove the static from line below otherwise you're going to have memory copy error.This is the last bug which prevent it from running on win32. + static const char psz_paths[MAX_PATH*3] = "\0"; _________________________________________________________________ MSN??????????????????MSN??? http://im.live.cn/safe/ -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-realvideo.patch Type: application/octet-stream Size: 11899 bytes Desc: not available URL: From silencewang at msn.com Wed Feb 4 03:20:14 2009 From: silencewang at msn.com (Wang Bo) Date: Wed, 4 Feb 2009 10:20:14 +0800 Subject: [vlc-devel] [PATCH] realvideo bug fix and how to document Message-ID: <1233714014-4727-1-git-send-email-silencewang@msn.com> --- doc/realvideo-howto.txt | 25 +++++++ modules/codec/realvideo.c | 164 ++++++++++++++++++++++++++++++--------------- 2 files changed, 135 insertions(+), 54 deletions(-) create mode 100644 doc/realvideo-howto.txt diff --git a/doc/realvideo-howto.txt b/doc/realvideo-howto.txt new file mode 100644 index 0000000..8a936f8 --- /dev/null +++ b/doc/realvideo-howto.txt @@ -0,0 +1,25 @@ +RealVideo howto + +if you want to play RealNetworks' .rm/.rmvb video, +you need configure the vlc with --enable-real, and +--enable-realrtsp for real's rtsp protocol. + +After config and make vlc, you need download the +RealNetworks' codecs, general you can use codec +from Real Player 9 or 10, the newer codec has not +tested. Or you can install Real's player or Helix SDK. +The important file is "drv4.so.6" for linux, and +"drv43260.dll" for windows. you can put the file +in same directory with vlc, or you can check +module/codec/realvideo.c to get the better location +for the codec dll. if you can not find the dll, +you can check http://code.google.com/p/rm-for-vlc/ +to get more info. + +Now the realvideo has tested on linux ( intel, 32bit) +and windows ( intel, 32bit ), if you have tested it on +other platform, please let me know. + +-- +WangBo + diff --git a/modules/codec/realvideo.c b/modules/codec/realvideo.c index 6e5c512..79c710f 100644 --- a/modules/codec/realvideo.c +++ b/modules/codec/realvideo.c @@ -31,6 +31,8 @@ #include #include +#include + #ifdef LOADER /* Need the w32dll loader from mplayer */ # include @@ -89,9 +91,9 @@ struct rv_init_t short h; short unk3; int unk2; - unsigned int * subformat; + int subformat; int unk5; - unsigned int * format; + int format; } rv_init_t; struct decoder_sys_t @@ -241,19 +243,85 @@ static int InitVideo(decoder_t *p_dec) init_data.h = p_dec->fmt_in.video.i_height ; init_data.unk3 = 0; init_data.unk2 = 0; - init_data.subformat = (unsigned int*)p_vide[0]; + init_data.subformat = ntohl( p_vide[0] ); init_data.unk5 = 1; - init_data.format = (unsigned int*)p_vide[1]; + init_data.format = ntohl( p_vide[1]); /* first try to load linux dlls, if failed and we're supporting win32 dlls, then try to load the windows ones */ - bool b_so_opened = false; + + p_sys->rv_handle = NULL; #ifdef WIN32 - g_decode_path="plugins\\drv43260.dll"; - if( (p_sys->rv_handle = load_syms(p_dec, g_decode_path)) ) - b_so_opened = true; + const char psz_paths[MAX_PATH*3] ; + + { + HKEY h_key; + DWORD i_type, i_data = MAX_PATH + 1; + char psz_codecs[MAX_PATH+1]; + char * p_data ; + char * p_end = psz_paths; + + p_data = psz_codecs; + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, + _T("Software\\RealNetworks\\Preferences\\DT_Codecs"), + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) + { + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS + && i_type == REG_SZ ) + { + int i_len = strlen( p_data ); + if ( i_len && p_data[i_len-1] == '\\' ) + p_data[i_len - 1] = '\0'; + memcpy( p_end, p_data, strlen( p_data) + 1 ); + p_end += strlen( p_data ) + 1; + } + RegCloseKey( h_key ); + } + + p_data = psz_codecs; + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, + _T("Helix\\HelixSDK\\10.0\\Preferences\\DT_Codecs"), + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) + { + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS + && i_type == REG_SZ ) + { + int i_len = strlen( p_data ); + if ( i_len && p_data[i_len-1] == '\\' ) + p_data[i_len - 1] = '\0'; + memcpy( p_end, p_data, strlen( p_data) + 1 ); + p_end += strlen( p_data ) + 1; + } + RegCloseKey( h_key ); + } + + memcpy( p_end, ".\0codecs\0plugins\0\0\0", 20 ); + } + + for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) + { + if( asprintf( &g_decode_path, "%s/drv4.dll", psz_paths + i ) != -1 ) + { + p_sys->rv_handle = load_syms(p_dec, g_decode_path); + free( g_decode_path ); + } + if( p_sys->rv_handle ) + break; + + if( asprintf( &g_decode_path, "%s/drv43260.dll", psz_paths + i ) != -1 ) + { + p_sys->rv_handle = load_syms(p_dec, g_decode_path); + free( g_decode_path ); + } + if( p_sys->rv_handle ) + break; + + msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); + } #else static const char psz_paths[] = { @@ -272,7 +340,10 @@ static int InitVideo(decoder_t *p_dec) "/usr/lib64/RealPlayer10/codecs\0" "/usr/lib64/RealPlayer10GOLD/codecs\0" "/usr/local/lib/codecs\0" - "\0" + ".\0" + "codecs\0" + "plugins\0" + "\0\0" }; for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) @@ -283,10 +354,7 @@ static int InitVideo(decoder_t *p_dec) free( g_decode_path ); } if( p_sys->rv_handle ) - { - b_so_opened = true; break; - } if( asprintf( &g_decode_path, "%s/drv3.so.6.0", psz_paths + i ) != -1 ) { @@ -294,16 +362,13 @@ static int InitVideo(decoder_t *p_dec) free( g_decode_path ); } if( p_sys->rv_handle ) - { - b_so_opened = true; break; - } msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); } #endif - if(!b_so_opened ) + if( p_sys->rv_handle == NULL ) { msg_Err( p_dec, "Cannot any real decoder library" ); free( p_sys ); @@ -321,24 +386,27 @@ static int InitVideo(decoder_t *p_dec) result=(*rvyuv_init)(&init_data, &p_sys->handle); if (result) { - msg_Err( p_dec, "Cannot Init real decoder library: %s", g_decode_path); + msg_Err( p_dec, "Cannot Init real decoder, error code: %X", result ); free( p_sys ); return VLC_EGENERIC; } + msg_Dbg( p_dec, "codec id: 0x%8X subid: 0x%8X\n", ntohl(p_vide[1]), ntohl(p_vide[0]) ); + /* setup rv30 codec (codec sub-type and image dimensions): */ /*if ( p_dec->fmt_in.i_codec == VLC_FOURCC('R','V','3','0') )*/ - if (p_vide[1]>=0x20200002) + if ( ntohl( p_vide[1])>=0x20200002) { - int i, cmsg_cnt; + int cmsg_cnt; + unsigned char * p_extrahdr = (unsigned char *) p_vide ; uint32_t cmsg24[16]={p_dec->fmt_in.video.i_width,p_dec->fmt_in.video.i_height}; - cmsg_data_t cmsg_data={0x24,1+(p_vide[1]&7), &cmsg24[0]}; - cmsg_cnt = (p_vide[1]&7)*2; + cmsg_data_t cmsg_data={0x24,1+(p_extrahdr[1]&7), &cmsg24[0]}; + cmsg_cnt = (p_extrahdr[1]&7)*2; if (i_vide - 8 < cmsg_cnt) { cmsg_cnt = i_vide - 8; } - for (i = 0; i < cmsg_cnt; i++) - cmsg24[2+i] = p_vide[8+i]*4; + for (int i = 0; i < cmsg_cnt; i++) + cmsg24[2+i] = p_extrahdr[8+i]*4; #ifdef WIN32 if (dll_type == 1) (*wrvyuv_custom_message)(&cmsg_data,p_sys->handle); @@ -349,7 +417,7 @@ static int InitVideo(decoder_t *p_dec) /* es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','V','1','2' )); es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','U','Y','2' )); - */ + */ es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'I', '4', '2', '0')); p_dec->fmt_out.video.i_width = p_dec->fmt_in.video.i_width; @@ -467,25 +535,20 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) if ( p_pic ) { unsigned int transform_out[5]; - dp_hdr_t dp_hdr; transform_in_t transform_in; - uint32_t pkg_len = ((uint32_t*)p_block->p_buffer)[0]; - unsigned char* dp_data=((unsigned char*)p_block->p_buffer)+8; - uint32_t* extra=(uint32_t*)(((char*)p_block->p_buffer)+8+pkg_len); - uint32_t img_size; - - dp_hdr.len = pkg_len; - dp_hdr.chunktab = 8 + pkg_len; - dp_hdr.chunks = ((uint32_t*)p_block->p_buffer)[1]-1; - dp_hdr.timestamp = i_pts; + uint8_t i_chunks = p_block->p_buffer[0]; + uint32_t pkg_len = p_block->i_buffer - 2*4*(i_chunks + 1) - 1; + unsigned char* dp_data=p_block->p_buffer + 2*4*(i_chunks+1) + 1; + uint32_t* extra=(uint32_t*)(p_block->p_buffer + 1); + uint32_t img_size; memset(&transform_in, 0, sizeof(transform_in_t)); - transform_in.len = dp_hdr.len; + transform_in.len = pkg_len; transform_in.extra = extra; - transform_in.chunks = dp_hdr.chunks; - transform_in.timestamp = dp_hdr.timestamp; + transform_in.chunks = i_chunks; + transform_in.timestamp = i_pts; memset (p_sys->plane, 0, p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height *3/2 ); @@ -496,17 +559,7 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) #endif result=(*rvyuv_transform)(dp_data, p_sys->plane, &transform_in, transform_out, p_sys->handle); - /* msg_Warn(p_dec, "Real Size %d X %d", transform_out[3], - transform_out[4]); */ - /* some bug rm file will print the messages : - [00000551] realvideo decoder warning: Real Size 320 X 240 - [00000551] realvideo decoder warning: Real Size 480 X 272 - [00000551] realvideo decoder warning: Real Size 320 X 240 - [00000551] realvideo decoder warning: Real Size 320 X 240 - ... - so it needs fixing! - */ - if ( p_sys->inited == 0 ) + if ( result == 0 && p_sys->inited == 0 ) { /* fix and get the correct image size! */ if ( p_dec->fmt_in.video.i_width != transform_out[3] @@ -540,16 +593,19 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) p_sys->inited = 1; } - img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; - memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); - memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); - memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); - p_pic->date = i_pts ; + if ( result == 0 ) + { + img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; + memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); + memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); + memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); + p_pic->date = i_pts ; /* real video frame is small( frame and frame's time-shift is short), so it will become late picture easier (when render-time changed)and droped by video-output.*/ - p_pic->b_force = 1; + p_pic->b_force = 1; + } } vlc_mutex_unlock( &rm_mutex ); -- 1.5.5.1 From xxcv07 at gmail.com Wed Feb 4 05:35:05 2009 From: xxcv07 at gmail.com (xxcv) Date: Wed, 04 Feb 2009 15:35:05 +1100 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> <4987BE19.60807@gmail.com> <4987C698.2010207@gmail.com> <4987E970.4000503@gmail.com> Message-ID: <49891AF9.4020008@gmail.com> ?? wrote: > ok, it is the last patch. g_decode_path has already been freed, don't print it in debug message. > + if( asprintf( &g_decode_path, "%s/drv43260.dll", psz_paths + i ) != -1 ) > + { > + p_sys->rv_handle = load_syms(p_dec, g_decode_path); > + free( g_decode_path ); > + } > + if( p_sys->rv_handle ) > + break; > + > + msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); -------------- next part -------------- An HTML attachment was scrubbed... URL: From silencewang at msn.com Wed Feb 4 07:28:31 2009 From: silencewang at msn.com (=?gb2312?B?zfWyqA==?=) Date: Wed, 4 Feb 2009 18:28:31 +1200 Subject: [vlc-devel] the new patch for real video has submit In-Reply-To: <49891AF9.4020008@gmail.com> References: <4984340D.6050806@gmail.com> <498574B1.5010504@gmail.com> <4987BE19.60807@gmail.com> <4987C698.2010207@gmail.com> <4987E970.4000503@gmail.com> <49891AF9.4020008@gmail.com> Message-ID: oh, fix it. -- wangbo Date: Wed, 4 Feb 2009 15:35:05 +1100From: xxcv07 at gmail.comTo: vlc-devel at videolan.orgSubject: Re: [vlc-devel] the new patch for real video has submit?? wrote: ok, it is the last patch.g_decode_path has already been freed, don't print it in debug message. + if( asprintf( &g_decode_path, "%s/drv43260.dll", psz_paths + i ) != -1 )+ {+ p_sys->rv_handle = load_syms(p_dec, g_decode_path);+ free( g_decode_path );+ }+ if( p_sys->rv_handle )+ break;++ msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); _________________________________________________________________ MSN??????????????????MSN??? http://im.live.cn/safe/ -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-realvideo.patch Type: application/octet-stream Size: 11981 bytes Desc: not available URL: From silencewang at msn.com Wed Feb 4 06:58:40 2009 From: silencewang at msn.com (Wang Bo) Date: Wed, 4 Feb 2009 13:58:40 +0800 Subject: [vlc-devel] [PATCH] realvideo bug fix and document Message-ID: <1233727120-5510-1-git-send-email-silencewang@msn.com> --- doc/realvideo-howto.txt | 25 +++++++ modules/codec/realvideo.c | 166 ++++++++++++++++++++++++++++++--------------- 2 files changed, 136 insertions(+), 55 deletions(-) create mode 100644 doc/realvideo-howto.txt diff --git a/doc/realvideo-howto.txt b/doc/realvideo-howto.txt new file mode 100644 index 0000000..8a936f8 --- /dev/null +++ b/doc/realvideo-howto.txt @@ -0,0 +1,25 @@ +RealVideo howto + +if you want to play RealNetworks' .rm/.rmvb video, +you need configure the vlc with --enable-real, and +--enable-realrtsp for real's rtsp protocol. + +After config and make vlc, you need download the +RealNetworks' codecs, general you can use codec +from Real Player 9 or 10, the newer codec has not +tested. Or you can install Real's player or Helix SDK. +The important file is "drv4.so.6" for linux, and +"drv43260.dll" for windows. you can put the file +in same directory with vlc, or you can check +module/codec/realvideo.c to get the better location +for the codec dll. if you can not find the dll, +you can check http://code.google.com/p/rm-for-vlc/ +to get more info. + +Now the realvideo has tested on linux ( intel, 32bit) +and windows ( intel, 32bit ), if you have tested it on +other platform, please let me know. + +-- +WangBo + diff --git a/modules/codec/realvideo.c b/modules/codec/realvideo.c index 6e5c512..92e9da1 100644 --- a/modules/codec/realvideo.c +++ b/modules/codec/realvideo.c @@ -31,6 +31,8 @@ #include #include +#include + #ifdef LOADER /* Need the w32dll loader from mplayer */ # include @@ -89,9 +91,9 @@ struct rv_init_t short h; short unk3; int unk2; - unsigned int * subformat; + int subformat; int unk5; - unsigned int * format; + int format; } rv_init_t; struct decoder_sys_t @@ -241,19 +243,85 @@ static int InitVideo(decoder_t *p_dec) init_data.h = p_dec->fmt_in.video.i_height ; init_data.unk3 = 0; init_data.unk2 = 0; - init_data.subformat = (unsigned int*)p_vide[0]; + init_data.subformat = ntohl( p_vide[0] ); init_data.unk5 = 1; - init_data.format = (unsigned int*)p_vide[1]; + init_data.format = ntohl( p_vide[1]); /* first try to load linux dlls, if failed and we're supporting win32 dlls, then try to load the windows ones */ - bool b_so_opened = false; + + p_sys->rv_handle = NULL; #ifdef WIN32 - g_decode_path="plugins\\drv43260.dll"; - if( (p_sys->rv_handle = load_syms(p_dec, g_decode_path)) ) - b_so_opened = true; + const char psz_paths[MAX_PATH*3] ; + + { + HKEY h_key; + DWORD i_type, i_data = MAX_PATH + 1; + char psz_codecs[MAX_PATH+1]; + char * p_data ; + char * p_end = psz_paths; + + p_data = psz_codecs; + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, + _T("Software\\RealNetworks\\Preferences\\DT_Codecs"), + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) + { + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS + && i_type == REG_SZ ) + { + int i_len = strlen( p_data ); + if ( i_len && p_data[i_len-1] == '\\' ) + p_data[i_len - 1] = '\0'; + memcpy( p_end, p_data, strlen( p_data) + 1 ); + p_end += strlen( p_data ) + 1; + } + RegCloseKey( h_key ); + } + + p_data = psz_codecs; + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, + _T("Helix\\HelixSDK\\10.0\\Preferences\\DT_Codecs"), + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) + { + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS + && i_type == REG_SZ ) + { + int i_len = strlen( p_data ); + if ( i_len && p_data[i_len-1] == '\\' ) + p_data[i_len - 1] = '\0'; + memcpy( p_end, p_data, strlen( p_data) + 1 ); + p_end += strlen( p_data ) + 1; + } + RegCloseKey( h_key ); + } + + memcpy( p_end, ".\0codecs\0plugins\0\0\0", 20 ); + } + + for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) + { + if( asprintf( &g_decode_path, "%s/drv4.dll", psz_paths + i ) != -1 ) + { + p_sys->rv_handle = load_syms(p_dec, g_decode_path); + free( g_decode_path ); + } + if( p_sys->rv_handle ) + break; + + if( asprintf( &g_decode_path, "%s/drv43260.dll", psz_paths + i ) != -1 ) + { + p_sys->rv_handle = load_syms(p_dec, g_decode_path); + free( g_decode_path ); + } + if( p_sys->rv_handle ) + break; + + /*msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path);*/ + } #else static const char psz_paths[] = { @@ -272,7 +340,10 @@ static int InitVideo(decoder_t *p_dec) "/usr/lib64/RealPlayer10/codecs\0" "/usr/lib64/RealPlayer10GOLD/codecs\0" "/usr/local/lib/codecs\0" - "\0" + ".\0" + "codecs\0" + "plugins\0" + "\0\0" }; for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) @@ -283,10 +354,7 @@ static int InitVideo(decoder_t *p_dec) free( g_decode_path ); } if( p_sys->rv_handle ) - { - b_so_opened = true; break; - } if( asprintf( &g_decode_path, "%s/drv3.so.6.0", psz_paths + i ) != -1 ) { @@ -294,16 +362,13 @@ static int InitVideo(decoder_t *p_dec) free( g_decode_path ); } if( p_sys->rv_handle ) - { - b_so_opened = true; break; - } - msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); + /*msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path);*/ } #endif - if(!b_so_opened ) + if( p_sys->rv_handle == NULL ) { msg_Err( p_dec, "Cannot any real decoder library" ); free( p_sys ); @@ -321,24 +386,27 @@ static int InitVideo(decoder_t *p_dec) result=(*rvyuv_init)(&init_data, &p_sys->handle); if (result) { - msg_Err( p_dec, "Cannot Init real decoder library: %s", g_decode_path); + msg_Err( p_dec, "Cannot Init real decoder, error code: %X", result ); free( p_sys ); return VLC_EGENERIC; } + msg_Dbg( p_dec, "codec id: 0x%8X subid: 0x%8X\n", ntohl(p_vide[1]), ntohl(p_vide[0]) ); + /* setup rv30 codec (codec sub-type and image dimensions): */ /*if ( p_dec->fmt_in.i_codec == VLC_FOURCC('R','V','3','0') )*/ - if (p_vide[1]>=0x20200002) + if ( ntohl( p_vide[1])>=0x20200002) { - int i, cmsg_cnt; + int cmsg_cnt; + unsigned char * p_extrahdr = (unsigned char *) p_vide ; uint32_t cmsg24[16]={p_dec->fmt_in.video.i_width,p_dec->fmt_in.video.i_height}; - cmsg_data_t cmsg_data={0x24,1+(p_vide[1]&7), &cmsg24[0]}; - cmsg_cnt = (p_vide[1]&7)*2; + cmsg_data_t cmsg_data={0x24,1+(p_extrahdr[1]&7), &cmsg24[0]}; + cmsg_cnt = (p_extrahdr[1]&7)*2; if (i_vide - 8 < cmsg_cnt) { cmsg_cnt = i_vide - 8; } - for (i = 0; i < cmsg_cnt; i++) - cmsg24[2+i] = p_vide[8+i]*4; + for (int i = 0; i < cmsg_cnt; i++) + cmsg24[2+i] = p_extrahdr[8+i]*4; #ifdef WIN32 if (dll_type == 1) (*wrvyuv_custom_message)(&cmsg_data,p_sys->handle); @@ -349,7 +417,7 @@ static int InitVideo(decoder_t *p_dec) /* es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','V','1','2' )); es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','U','Y','2' )); - */ + */ es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'I', '4', '2', '0')); p_dec->fmt_out.video.i_width = p_dec->fmt_in.video.i_width; @@ -467,25 +535,20 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) if ( p_pic ) { unsigned int transform_out[5]; - dp_hdr_t dp_hdr; transform_in_t transform_in; - uint32_t pkg_len = ((uint32_t*)p_block->p_buffer)[0]; - unsigned char* dp_data=((unsigned char*)p_block->p_buffer)+8; - uint32_t* extra=(uint32_t*)(((char*)p_block->p_buffer)+8+pkg_len); - uint32_t img_size; - - dp_hdr.len = pkg_len; - dp_hdr.chunktab = 8 + pkg_len; - dp_hdr.chunks = ((uint32_t*)p_block->p_buffer)[1]-1; - dp_hdr.timestamp = i_pts; + uint8_t i_chunks = p_block->p_buffer[0]; + uint32_t pkg_len = p_block->i_buffer - 2*4*(i_chunks + 1) - 1; + unsigned char* dp_data=p_block->p_buffer + 2*4*(i_chunks+1) + 1; + uint32_t* extra=(uint32_t*)(p_block->p_buffer + 1); + uint32_t img_size; memset(&transform_in, 0, sizeof(transform_in_t)); - transform_in.len = dp_hdr.len; + transform_in.len = pkg_len; transform_in.extra = extra; - transform_in.chunks = dp_hdr.chunks; - transform_in.timestamp = dp_hdr.timestamp; + transform_in.chunks = i_chunks; + transform_in.timestamp = i_pts; memset (p_sys->plane, 0, p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height *3/2 ); @@ -496,17 +559,7 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) #endif result=(*rvyuv_transform)(dp_data, p_sys->plane, &transform_in, transform_out, p_sys->handle); - /* msg_Warn(p_dec, "Real Size %d X %d", transform_out[3], - transform_out[4]); */ - /* some bug rm file will print the messages : - [00000551] realvideo decoder warning: Real Size 320 X 240 - [00000551] realvideo decoder warning: Real Size 480 X 272 - [00000551] realvideo decoder warning: Real Size 320 X 240 - [00000551] realvideo decoder warning: Real Size 320 X 240 - ... - so it needs fixing! - */ - if ( p_sys->inited == 0 ) + if ( result == 0 && p_sys->inited == 0 ) { /* fix and get the correct image size! */ if ( p_dec->fmt_in.video.i_width != transform_out[3] @@ -540,16 +593,19 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) p_sys->inited = 1; } - img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; - memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); - memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); - memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); - p_pic->date = i_pts ; + if ( result == 0 ) + { + img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; + memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); + memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); + memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); + p_pic->date = i_pts ; /* real video frame is small( frame and frame's time-shift is short), so it will become late picture easier (when render-time changed)and droped by video-output.*/ - p_pic->b_force = 1; + p_pic->b_force = 1; + } } vlc_mutex_unlock( &rm_mutex ); -- 1.5.5.1 From sebastien-devel at celeos.eu Wed Feb 4 09:31:07 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Wed, 04 Feb 2009 09:31:07 +0100 Subject: [vlc-devel] commit: live555: unbreak windows RTSP servers ( introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). (Jean-Paul Saman ) In-Reply-To: References: <20090202223728.8A42D2E9C3@skanda.videolan.org> <1233647626.4987f80adee3c@imp.celeos.eu> <49886D68.9010205@videolan.org> Message-ID: <1233736267.4989524ba1c9d@imp.celeos.eu> Quoting Ross Finlayson : > Would you like me to change the LIVE555 > "RTSPClient::sendOptionsCmd()" function to return an empty string > (i.e., "") instead of NULL in this case? I could do this easily; > just let me know. Yes that would be usefull. Unless someone here disagree, it would be good to be able to know if sendOptionsCmd really failed, and not issue Describe command in that case. Thanks. From jb at videolan.org Wed Feb 4 12:04:13 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 4 Feb 2009 12:04:13 +0100 Subject: [vlc-devel] commit: Vout: autoscaling support for windows (Joseph Tulou ) In-Reply-To: <20090202025031.D42D32E987@skanda.videolan.org> References: <20090202025031.D42D32E987@skanda.videolan.org> Message-ID: <20090204110413.GA2664@videolan.org> On Mon, Feb 02, 2009 at 03:50:31AM +0100, git version control wrote : > vlc | branch: master | Joseph Tulou | Fri Jan 30 17:46:47 2009 +0100| [48c3f24d72bb7e9b52cf1a83a61ca1ed94b29297] | committer: Jean-Baptiste Kempf > > Vout: autoscaling support for windows Tested with VLC 1.0.0-git master and works fine on Windows. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From rdenis at simphalempin.com Wed Feb 4 12:11:27 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 04 Feb 2009 12:11:27 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_live555=3A_unbreak_windows_RTSP_s?= =?utf-8?q?ervers_=28_introduced_in_c0d37c7c881712e182f03b52d0b00a911cab81?= =?utf-8?b?YWMpLgkoSmVhbi1QYXVsIFNhbWFuICk=?= In-Reply-To: References: <20090202223728.8A42D2E9C3@skanda.videolan.org> <1233647626.4987f80adee3c@imp.celeos.eu> <49886D68.9010205@videolan.org> Message-ID: <2f5393a80b5f9c1dee7507ba936ca4fb@chewa.net> On Tue, 3 Feb 2009 15:06:28 -0800, Ross Finlayson wrote: > Would you like me to change the LIVE555 > "RTSPClient::sendOptionsCmd()" function to return an empty string > (i.e., "") instead of NULL in this case? I could do this easily; > just let me know. With _no_ Public field, the server does not tell you what it supports. This is very different from an empty Public field which would mean the server supports nothing at all. So in principles, this would be wrong IMHO. In practice, VLC needs to cope with the NULL case anyway, due to older live555 versions, unless we start requiring a new version. I do not think this minor change would justify us doing it. -- R?mi Denis-Courmont From git at videolan.org Wed Feb 4 12:44:39 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 12:44:39 +0100 (CET) Subject: [vlc-devel] commit: s/41000/44100 in sout panel (Jean-Baptiste Kempf ) Message-ID: <20090204114439.77B9A2E5EA@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 4 12:44:17 2009 +0100| [06dea9e8c9c6df2278c7fe2a9363e68c896fa41b] | committer: Jean-Baptiste Kempf s/41000/44100 in sout panel > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=06dea9e8c9c6df2278c7fe2a9363e68c896fa41b --- .../gui/qt4/components/sout/profile_selector.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/sout/profile_selector.cpp b/modules/gui/qt4/components/sout/profile_selector.cpp index 8baa3d7..9dd0f7b 100644 --- a/modules/gui/qt4/components/sout/profile_selector.cpp +++ b/modules/gui/qt4/components/sout/profile_selector.cpp @@ -244,7 +244,7 @@ inline void VLCProfileEditor::registerCodecs() #define ADD_SAMPLERATE( sample ) ui.aSampleBox->addItem( sample ); ADD_SAMPLERATE( "11250" ) ADD_SAMPLERATE( "22500" ) - ADD_SAMPLERATE( "41000" ) + ADD_SAMPLERATE( "44100" ) ADD_SAMPLERATE( "48000" ) #define ADD_SCODEC( name, fourcc ) ui.subsCodecBox->addItem( name, QVariant( fourcc ) ); From sebastien-devel at celeos.eu Wed Feb 4 12:49:57 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Wed, 04 Feb 2009 12:49:57 +0100 Subject: [vlc-devel] commit: live555: unbreak windows RTSP servers ( introduced in c0d37c7c881712e182f03b52d0b00a911cab81ac). (Jean-Paul Saman ) In-Reply-To: <2f5393a80b5f9c1dee7507ba936ca4fb@chewa.net> References: <20090202223728.8A42D2E9C3@skanda.videolan.org> <1233647626.4987f80adee3c@imp.celeos.eu> <49886D68.9010205@videolan.org> <2f5393a80b5f9c1dee7507ba936ca4fb@chewa.net> Message-ID: <1233748197.498980e53e093@imp.celeos.eu> Quoting R?mi Denis-Courmont : > In practice, VLC needs to cope with the NULL case anyway, due to older > live555 versions, unless we start requiring a new version. or LIVEMEDIA_LIBRARY_VERSION_INT check in the code. From rdenis at simphalempin.com Wed Feb 4 14:34:56 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 04 Feb 2009 14:34:56 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_live555=3A_unbreak_windows_RTSP_s?= =?utf-8?q?ervers_=28_introduced_in_c0d37c7c881712e182f03b52d0b00a911cab81?= =?utf-8?b?YWMpLgkoSmVhbi1QYXVsIFNhbWFuICk=?= In-Reply-To: <1233748197.498980e53e093@imp.celeos.eu> References: <20090202223728.8A42D2E9C3@skanda.videolan.org> <1233647626.4987f80adee3c@imp.celeos.eu> <49886D68.9010205@videolan.org> <2f5393a80b5f9c1dee7507ba936ca4fb@chewa.net> <1233748197.498980e53e093@imp.celeos.eu> Message-ID: On Wed, 04 Feb 2009 12:49:57 +0100, S?bastien Escudier wrote: > Quoting R?mi Denis-Courmont : > >> In practice, VLC needs to cope with the NULL case anyway, due to older >> live555 versions, unless we start requiring a new version. > or LIVEMEDIA_LIBRARY_VERSION_INT check in the code. And how does that help when the library run-time is updated? -- R?mi Denis-Courmont From brezhoneg1 at yahoo.fr Wed Feb 4 15:30:40 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Wed, 4 Feb 2009 15:30:40 +0100 Subject: [vlc-devel] RE : ] commit: Vout: autoscaling support In-Reply-To: <20090204110413.GA2664@videolan.org> Message-ID: <002c01c986d5$28ea0070$d052fac1@CCCC> > -----Message d'origine----- > De?: vlc-devel-bounces at videolan.org [mailto:vlc-devel- > bounces at videolan.org] De la part de Jean-Baptiste Kempf > Envoy??: mercredi 4 f?vrier 2009 12:04 > ??: Mailing list for VLC media player developers > Objet?: Re: [vlc-devel] commit: Vout: autoscaling support for > windows(Joseph Tulou ) > > On Mon, Feb 02, 2009 at 03:50:31AM +0100, git version control wrote : > > vlc | branch: master | Joseph Tulou | Fri Jan 30 > 17:46:47 2009 +0100| [48c3f24d72bb7e9b52cf1a83a61ca1ed94b29297] | > committer: Jean-Baptiste Kempf > > > > Vout: autoscaling support for windows > > Tested with VLC 1.0.0-git master and works fine on Windows. > Great To finish off the work, a Mac developer may be interested in integrating it too Erwan10 From git at videolan.org Wed Feb 4 17:00:52 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 17:00:52 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Add_libvlc=5Fmedia=5Fadd=5Foption?= =?utf-8?q?=5Funtrusted=28=29_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090204160052.A58B22EB12@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Wed Feb 4 17:33:50 2009 +0200| [918d00864fd730dcf5b41ef30635cc838f0ce502] | committer: R?mi Denis-Courmont Add libvlc_media_add_option_untrusted() Based on 059a3399daacd4532299d04cb2dd1a472cc25a83 by Laurent Aimar > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=918d00864fd730dcf5b41ef30635cc838f0ce502 --- include/vlc/libvlc.h | 18 ++++++++++++++++++ src/control/media.c | 14 ++++++++++++++ src/libvlc.sym | 1 + 3 files changed, 33 insertions(+), 0 deletions(-) diff --git a/include/vlc/libvlc.h b/include/vlc/libvlc.h index 7f2f384..f262fb9 100644 --- a/include/vlc/libvlc.h +++ b/include/vlc/libvlc.h @@ -265,6 +265,24 @@ VLC_PUBLIC_API void libvlc_media_add_option( libvlc_media_t * p_md, const char * ppsz_options, libvlc_exception_t * p_e ); +/** + * Add an option to the media from an untrusted source. + * + * This option will be used to determine how the media_player will + * read the media. This allows to use VLC's advanced + * reading/streaming options on a per-media basis. + * + * The options are detailed in vlc --long-help, for instance "--sout-all" + * + * \param p_instance the instance + * \param ppsz_options the options (as a string) + * \param p_e an initialized exception pointer + */ +VLC_PUBLIC_API void libvlc_media_add_option_untrusted( + libvlc_media_t * p_md, + const char * ppsz_options, + libvlc_exception_t * p_e ); + /** * Retain a reference to a media descriptor object (libvlc_media_t). Use diff --git a/src/control/media.c b/src/control/media.c index 0192227..b079aa8 100644 --- a/src/control/media.c +++ b/src/control/media.c @@ -351,6 +351,20 @@ void libvlc_media_add_option( } /************************************************************************** + * Same as libvlc_media_add_option but with untrusted source. + **************************************************************************/ +void libvlc_media_add_option_untrusted( + libvlc_media_t * p_md, + const char * ppsz_option, + libvlc_exception_t *p_e ) +{ + VLC_UNUSED(p_e); + input_item_AddOpt( p_md->p_input_item, ppsz_option, + VLC_INPUT_OPTION_UNIQUE ); +} + + +/************************************************************************** * Delete a media descriptor object **************************************************************************/ void libvlc_media_release( libvlc_media_t *p_md ) diff --git a/src/libvlc.sym b/src/libvlc.sym index ce03edd..c5f0f42 100644 --- a/src/libvlc.sym +++ b/src/libvlc.sym @@ -37,6 +37,7 @@ libvlc_log_iterator_has_next libvlc_log_iterator_next libvlc_log_open libvlc_media_add_option +libvlc_media_add_option_untrusted libvlc_media_discoverer_event_manager libvlc_media_discoverer_is_running libvlc_media_discoverer_localized_name From git at videolan.org Wed Feb 4 17:00:52 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 17:00:52 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Back-end_for_creating_playlist_in?= =?utf-8?q?put_items_with_option_flags_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090204160052.B54D82EB28@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Wed Feb 4 17:50:51 2009 +0200| [4409e905c6f899c7388dfed98055398ff8a3a6c4] | committer: R?mi Denis-Courmont Back-end for creating playlist input items with option flags This is untested (no plugin here). If you care about the Mozilla or ActiveX plugin, you really do want to trial it before 0.9.9 goes out. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4409e905c6f899c7388dfed98055398ff8a3a6c4 --- src/control/libvlc_internal.h | 3 +++ src/libvlccore.sym | 1 + src/playlist/item.c | 18 ++++++++++++++++-- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/control/libvlc_internal.h b/src/control/libvlc_internal.h index a291858..7d62b88 100644 --- a/src/control/libvlc_internal.h +++ b/src/control/libvlc_internal.h @@ -46,6 +46,9 @@ VLC_EXPORT (int, libvlc_InternalDestroy, ( libvlc_int_t * ) ); VLC_EXPORT (int, libvlc_InternalAddIntf, ( libvlc_int_t *, const char * ) ); +VLC_EXPORT (int, playlist_AddExtOpt, ( playlist_t *, const char *, const char *, int, int, mtime_t, const char *const *, int, int, bool, bool ) ); + + /*************************************************************************** * Opaque structures for libvlc API ***************************************************************************/ diff --git a/src/libvlccore.sym b/src/libvlccore.sym index 05acc07..0c45847 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -262,6 +262,7 @@ picture_New plane_CopyPixels playlist_Add playlist_AddExt +playlist_AddExtOpt playlist_AddInput playlist_AskForArtEnqueue playlist_BothAddInput diff --git a/src/playlist/item.c b/src/playlist/item.c index d72e415..590c825 100644 --- a/src/playlist/item.c +++ b/src/playlist/item.c @@ -29,6 +29,7 @@ #include #include #include "playlist_internal.h" +#include "control/libvlc_internal.h" static void AddItem( playlist_t *p_playlist, playlist_item_t *p_item, playlist_item_t *p_node, int i_mode, int i_pos ); @@ -382,10 +383,23 @@ int playlist_AddExt( playlist_t *p_playlist, const char * psz_uri, mtime_t i_duration, const char *const *ppsz_options, int i_options, bool b_playlist, bool b_locked ) { + return playlist_AddExtOpt( p_playlist, psz_uri, psz_name, i_mode, i_pos, + i_duration, ppsz_options, i_options, + VLC_INPUT_OPTION_TRUSTED, + b_playlist, b_locked ); +} + +int playlist_AddExtOpt( playlist_t *p_playlist, const char * psz_uri, + const char *psz_name, int i_mode, int i_pos, + mtime_t i_duration, const char *const *ppsz_options, + int i_options, int flags, + bool b_playlist, bool b_locked ) +{ int i_ret; input_item_t *p_input = input_item_NewExt( p_playlist, psz_uri, psz_name, - i_options, ppsz_options, - i_duration ); + 0, NULL, i_duration ); + for( int i = 0; i < i_options; i++ ) + input_item_AddOpt( p_input, ppsz_options[i], flags ); i_ret = playlist_AddInput( p_playlist, p_input, i_mode, i_pos, b_playlist, b_locked ); From git at videolan.org Wed Feb 4 17:00:52 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 17:00:52 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Add_libvlc=5Fplaylist=5Fadd=5Fext?= =?utf-8?q?ended=5Funtrusted=28=29_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090204160052.CDC092E783@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Wed Feb 4 17:51:37 2009 +0200| [f77b039a872aeb58045106917741bec4e23ff340] | committer: R?mi Denis-Courmont Add libvlc_playlist_add_extended_untrusted() Based on 059a3399daacd4532299d04cb2dd1a472cc25a83 by Laurent Aimar > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f77b039a872aeb58045106917741bec4e23ff340 --- include/vlc/deprecated.h | 16 ++++++++++++++++ src/control/playlist.c | 34 ++++++++++++++++++++++++++-------- src/libvlc.sym | 1 + 3 files changed, 43 insertions(+), 8 deletions(-) diff --git a/include/vlc/deprecated.h b/include/vlc/deprecated.h index c683ecb..ba9a7be 100644 --- a/include/vlc/deprecated.h +++ b/include/vlc/deprecated.h @@ -216,6 +216,22 @@ VLC_DEPRECATED_API int libvlc_playlist_add_extended( libvlc_instance_t *, const libvlc_exception_t * ); /** + * Append an item to the playlist. The item is added at the end, with + * additional input options from an untrusted source. + * + * \param p_instance the playlist instance + * \param psz_uri the URI to open, using VLC format + * \param psz_name a name that you might want to give or NULL + * \param i_options the number of options to add + * \param ppsz_options strings representing the options to add + * \param p_e an initialized exception pointer + * \return the identifier of the new item + */ +VLC_DEPRECATED_API int libvlc_playlist_add_extended_untrusted( libvlc_instance_t *, const char *, + const char *, int, const char **, + libvlc_exception_t * ); + +/** * Delete the playlist item with the given ID. * * \param p_instance the playlist instance diff --git a/src/control/playlist.c b/src/control/playlist.c index 4cd0ecc..86d6868 100644 --- a/src/control/playlist.c +++ b/src/control/playlist.c @@ -158,10 +158,11 @@ int libvlc_playlist_add( libvlc_instance_t *p_instance, const char *psz_uri, 0, NULL, p_e ); } -int libvlc_playlist_add_extended( libvlc_instance_t *p_instance, - const char *psz_uri, const char *psz_name, - int i_options, const char **ppsz_options, - libvlc_exception_t *p_e ) +static int PlaylistAddExtended( libvlc_instance_t *p_instance, + const char *psz_uri, const char *psz_name, + int i_options, const char **ppsz_options, + unsigned i_option_flags, + libvlc_exception_t *p_e ) { assert( PL ); if( playlist_was_locked( p_instance ) ) @@ -170,11 +171,28 @@ int libvlc_playlist_add_extended( libvlc_instance_t *p_instance, "calling libvlc_playlist_add" ); return VLC_EGENERIC; } - return playlist_AddExt( PL, psz_uri, psz_name, - PLAYLIST_INSERT, PLAYLIST_END, -1, ppsz_options, - i_options, 1, pl_Unlocked ); + return playlist_AddExtOpt( PL, psz_uri, psz_name, PLAYLIST_INSERT, + PLAYLIST_END, -1, ppsz_options, i_options, + i_option_flags, true, pl_Unlocked ); +} +int libvlc_playlist_add_extended( libvlc_instance_t *p_instance, + const char *psz_uri, const char *psz_name, + int i_options, const char **ppsz_options, + libvlc_exception_t *p_e ) +{ + return PlaylistAddExtended( p_instance, psz_uri, psz_name, + i_options, ppsz_options, VLC_INPUT_OPTION_TRUSTED, + p_e ); +} +int libvlc_playlist_add_extended_untrusted( libvlc_instance_t *p_instance, + const char *psz_uri, const char *psz_name, + int i_options, const char **ppsz_options, + libvlc_exception_t *p_e ) +{ + return PlaylistAddExtended( p_instance, psz_uri, psz_name, + i_options, ppsz_options, 0, + p_e ); } - int libvlc_playlist_delete_item( libvlc_instance_t *p_instance, int i_id, libvlc_exception_t *p_e ) diff --git a/src/libvlc.sym b/src/libvlc.sym index c5f0f42..4fdb653 100644 --- a/src/libvlc.sym +++ b/src/libvlc.sym @@ -144,6 +144,7 @@ libvlc_media_subitems libvlc_new libvlc_playlist_add libvlc_playlist_add_extended +libvlc_playlist_add_extended_untrusted libvlc_playlist_clear libvlc_playlist_delete_item libvlc_playlist_get_media_player From git at videolan.org Wed Feb 4 17:00:53 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 17:00:53 +0100 (CET) Subject: [vlc-devel] commit: Use libvlc_playlist_add_extended_untrusted in activex plugin. ( Laurent Aimar ) Message-ID: <20090204160054.19C732EB38@skanda.videolan.org> vlc | branch: 0.9-bugfix | Laurent Aimar | Wed Jan 28 20:41:55 2009 +0100| [561c0c4cd26ef2df83a90639f9f5cd1b08e8ead5] | committer: R?mi Denis-Courmont Use libvlc_playlist_add_extended_untrusted in activex plugin. (cherry picked from commit c349af1472890395de9bc62566d69f6d4b881099) Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=561c0c4cd26ef2df83a90639f9f5cd1b08e8ead5 --- projects/activex/plugin.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/projects/activex/plugin.cpp b/projects/activex/plugin.cpp index 72d9848..6a8c3f8 100644 --- a/projects/activex/plugin.cpp +++ b/projects/activex/plugin.cpp @@ -535,7 +535,7 @@ HRESULT VLCPlugin::getVLC(libvlc_instance_t** pp_libvlc) options[i_options++] = timeBuffer; } // add default target to playlist - libvlc_playlist_add_extended(_p_libvlc, psz_mrl, NULL, i_options, options, NULL); + libvlc_playlist_add_extended_untrusted(_p_libvlc, psz_mrl, NULL, i_options, options, NULL); CoTaskMemFree(psz_mrl); } } From git at videolan.org Wed Feb 4 17:00:54 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 17:00:54 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Update_libvlc_and_libvlccore_vers?= =?utf-8?q?ion_numbers_due_to_new_APIs_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090204160054.5C6362EB3E@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Wed Feb 4 17:52:59 2009 +0200| [ce669714751bb6914d13ea05028f4e83453f914e] | committer: R?mi Denis-Courmont Update libvlc and libvlccore version numbers due to new APIs > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ce669714751bb6914d13ea05028f4e83453f914e --- src/Makefile.am | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index e699bbd..7d97b84 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -179,7 +179,7 @@ libvlccore_la_CFLAGS = `$(VLC_CONFIG) --cflags libvlc` \ -DPLUGIN_PATH=\"$(pkglibdir)\" libvlccore_la_LDFLAGS = `$(VLC_CONFIG) --ldflags libvlc` $(AM_LDFLAGS) \ -export-symbols $(srcdir)/libvlccore.sym \ - -version-info 0:3 + -version-info 1:0:1 libvlccore_la_LIBADD = `$(VLC_CONFIG) -libs libvlc` $(AM_LIBADD) $(LTLIBINTL) libvlccore_la_DEPENDENCIES = libvlccore.sym if HAVE_WIN32 @@ -195,7 +195,7 @@ libvlc_la_LIBADD = libvlccore.la libvlc_la_CFLAGS = `$(VLC_CONFIG) --cflags libvlc` \ -DMODULE_STRING=\"control\" libvlc_la_LDFLAGS = $(AM_LDFLAGS) \ - -version-info 2:3 \ + -version-info 3:0:1 \ -export-symbols $(srcdir)/libvlc.sym libvlc_la_DEPENDENCIES = libvlc.sym libvlccore.la if HAVE_WIN32 From git at videolan.org Wed Feb 4 17:00:52 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 17:00:52 +0100 (CET) Subject: [vlc-devel] commit: Use libvlc_playlist_add_extended_untrusted in mozilla plugin. ( Laurent Aimar ) Message-ID: <20090204160052.ED28F2EB29@skanda.videolan.org> vlc | branch: 0.9-bugfix | Laurent Aimar | Wed Jan 28 20:31:59 2009 +0100| [09928e492272aad572a805cf54e8cd0ad20603f1] | committer: R?mi Denis-Courmont Use libvlc_playlist_add_extended_untrusted in mozilla plugin. (cherry picked from commit e1d3ebead77f64b66983f75746d69df43e145c54) Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=09928e492272aad572a805cf54e8cd0ad20603f1 --- projects/mozilla/control/npolibvlc.cpp | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/projects/mozilla/control/npolibvlc.cpp b/projects/mozilla/control/npolibvlc.cpp index 7c0f7e9..516bb8b 100644 --- a/projects/mozilla/control/npolibvlc.cpp +++ b/projects/mozilla/control/npolibvlc.cpp @@ -1481,12 +1481,12 @@ RuntimeNPObject::InvokeResult LibvlcPlaylistNPObject::invoke(int index, const NP } } - int item = libvlc_playlist_add_extended(p_plugin->getVLC(), - url, - name, - i_options, - const_cast(ppsz_options), - &ex); + int item = libvlc_playlist_add_extended_untrusted(p_plugin->getVLC(), + url, + name, + i_options, + const_cast(ppsz_options), + &ex); free(url); free(name); for( int i=0; i< i_options; ++i ) From git at videolan.org Wed Feb 4 17:03:06 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 17:03:06 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Set_libvlccore_and_libvlc_version?= =?utf-8?q?s_to_that_of_0=2E9=2E9_+_1_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090204160306.ABC472EB3B@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 4 18:01:45 2009 +0200| [1f3f64f793c13f4cec2c3f33b036af307c560d82] | committer: R?mi Denis-Courmont Set libvlccore and libvlc versions to that of 0.9.9 + 1 Also libvlccore is not backward compatible, whereas libvlc is. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1f3f64f793c13f4cec2c3f33b036af307c560d82 --- src/Makefile.am | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index 4ab1dce..00a32c6 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -182,7 +182,7 @@ libvlccore_la_CFLAGS = `$(VLC_CONFIG) --cflags libvlc` \ -DPLUGIN_PATH=\"$(vlclibdir)\" libvlccore_la_LDFLAGS = `$(VLC_CONFIG) --ldflags libvlc` $(AM_LDFLAGS) \ -export-symbols $(srcdir)/libvlccore.sym \ - -version-info 1:0:0 + -version-info 2:0:0 libvlccore_la_LIBADD = `$(VLC_CONFIG) -libs libvlc` $(AM_LIBADD) $(LTLIBINTL) libvlccore_la_DEPENDENCIES = libvlccore.sym if HAVE_WIN32 @@ -198,7 +198,7 @@ libvlc_la_LIBADD = libvlccore.la libvlc_la_CFLAGS = `$(VLC_CONFIG) --cflags libvlc` \ -DMODULE_STRING=\"control\" libvlc_la_LDFLAGS = $(AM_LDFLAGS) \ - -version-info 2:2:0 \ + -version-info 4:0:2 \ -export-symbols $(srcdir)/libvlc.sym libvlc_la_DEPENDENCIES = libvlc.sym libvlccore.la if HAVE_WIN32 From jpsaman at videolan.org Wed Feb 4 19:22:44 2009 From: jpsaman at videolan.org (Jean-Paul Saman) Date: Wed, 04 Feb 2009 19:22:44 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_Back-end_for_creating_playlist_in?= =?utf-8?q?put_items_with_option_flags_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <20090204160052.B54D82EB28@skanda.videolan.org> References: <20090204160052.B54D82EB28@skanda.videolan.org> Message-ID: <4989DCF4.4070007@videolan.org> git version control wrote: > vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Wed Feb 4 17:50:51 2009 +0200| [4409e905c6f899c7388dfed98055398ff8a3a6c4] | committer: R?mi Denis-Courmont > > Back-end for creating playlist input items with option flags > > This is untested (no plugin here). If you care about the Mozilla or > ActiveX plugin, you really do want to trial it before 0.9.9 goes out. > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4409e905c6f899c7388dfed98055398ff8a3a6c4 I wiil look into this. Gtz Jean-Paul Saman From rem at videolan.org Wed Feb 4 20:36:56 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 4 Feb 2009 21:36:56 +0200 Subject: [vlc-devel] XCB freeze exception Message-ID: <200902042136.57031.rem@videolan.org> Hello, I am claiming an exemption from the feature freeze for the XCB plugins. It is anyway not fully integrated into the build system yet, so there is hardly any risk of regressions. We can always debate whether to enable it or not, if/when it becomes closer to feature-completeness. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From maestas at aplabs.com Wed Feb 4 21:00:57 2009 From: maestas at aplabs.com (Mark Maestas) Date: Wed, 4 Feb 2009 12:00:57 -0800 Subject: [vlc-devel] Help Please (mjpeg decode problem) Message-ID: Hi VideoLan developers, I am working on a project that involves using VLC to demonstrate the functionality of a proprietary video encoder/server. The server uses hardware encoding of RGB and NTSC inputs and streams them out to another proprietary player running under windows using the Pegasus decoder. This new customer wants this to work with Linux and VLC. The good news is that VLC plays both the mjpeg streams well, however the RGB stream plays with incorrect colors. I have been working to resolve this through adjusting our JPEG header on this image and I have had no luck. The windows player has correct color. VLC is using the ffmpeg library to decode the stream and I now have built both VLC and FFMPEG and I can make code changes to try and fix the color problem, however nothing that I have tried has worked. I am hoping one of the smart VLC developers would be able to help me look into fixing this issue, which probably resides in the FFMPEG lib. I can provide a sample .avi file that I made with ffmpeg for testing purposes if someone is willing to help look into this. I think this is a good opportunity to advance the player and I am willing and able to help as much as possible. If anyone has an interest in fixing the decode of this RGB mjpeg stream I would be glad to know. Thanks Mark Maestas -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Wed Feb 4 21:16:46 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 21:16:46 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_XCB_key_press_handling_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont__=29?= Message-ID: <20090204201646.D94BE2EB24@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 3 23:49:15 2009 +0200| [4ab7d88131ac5eb16f193fe48f30fd05dc00961d] | committer: R?mi Denis-Courmont XCB key press handling Windows-specific keys are missing (found in XFree86?). Mouse wheel is implemented with mouse events (like X11); afterall it is not on the KEYboard. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4ab7d88131ac5eb16f193fe48f30fd05dc00961d --- modules/video_output/Modules.am | 10 +- modules/video_output/xcb/keys.c | 219 ++++++++++++++++++++++++++++++++++++ modules/video_output/xcb/xcb.c | 11 ++ modules/video_output/xcb/xcb_vlc.h | 5 + 4 files changed, 242 insertions(+), 3 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=4ab7d88131ac5eb16f193fe48f30fd05dc00961d From rdenis at simphalempin.com Wed Feb 4 21:57:55 2009 From: rdenis at simphalempin.com (=?utf-8?q?R=C3=A9mi=20Denis-Courmont?=) Date: Wed, 4 Feb 2009 22:57:55 +0200 Subject: [vlc-devel] [PATCH] Menu key triggers the popup menu Message-ID: <1233781075-7806-1-git-send-email-rdenis@simphalempin.com> That particular key is supposed to work that way. --- modules/control/hotkeys.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index bdb4ce1..aeba7fd 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -938,7 +938,6 @@ static int SpecialKeyEvent( vlc_object_t *libvlc, char const *psz_var, intf_thread_t *p_intf = (intf_thread_t *)p_data; int i_action; - (void)libvlc; (void)psz_var; (void)oldval; @@ -960,6 +959,9 @@ static int SpecialKeyEvent( vlc_object_t *libvlc, char const *psz_var, case KEY_MOUSEWHEELRIGHT: i_action = ACTIONID_JUMP_FORWARD_EXTRASHORT; break; + case KEY_MENU: + var_SetBool( libvlc, "intf-popupmenu", true ); + break; default: return VLC_SUCCESS; } -- 1.5.6.5 From rdenis at simphalempin.com Wed Feb 4 22:07:03 2009 From: rdenis at simphalempin.com (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Wed, 4 Feb 2009 23:07:03 +0200 Subject: [vlc-devel] [PATCH] Menu key triggers the popup menu In-Reply-To: <1233781075-7806-1-git-send-email-rdenis@simphalempin.com> References: <1233781075-7806-1-git-send-email-rdenis@simphalempin.com> Message-ID: <200902042307.03967.rdenis@simphalempin.com> Le mercredi 4 f?vrier 2009 22:57:55 R?mi Denis-Courmont, vous avez ?crit?: > That particular key is supposed to work that way. I'd also advocate removing it from the preference (if it is there). It makes as little sense to configure that one as the mouse right buttons. Then it becomes debatable where the handling should be done, in video outputs, or in the hotkeys interface. I don't have any strong opinion on that. -- R?mi Denis-Courmont http://www.remlab.net/ From git at videolan.org Wed Feb 4 23:42:25 2009 From: git at videolan.org (git version control) Date: Wed, 4 Feb 2009 23:42:25 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_really_fixed_packaging_?= =?utf-8?q?of_the_Mozilla/Safari_plugin_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090204224225.746DF2EB51@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Wed Feb 4 23:41:02 2009 +0100| [4946fda52441ea9bac8462feb371959c13e398d3] | committer: Felix Paul K?hne macosx: really fixed packaging of the Mozilla/Safari plugin Note that it will try to use the X11 vout right now, so you won't get any visible video output > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4946fda52441ea9bac8462feb371959c13e398d3 --- projects/macosx/framework/Pre-Compile.sh | 39 ++++++++++++++++++++--------- projects/mozilla/Makefile.am | 19 +++++++------- projects/mozilla/vlcplugin.cpp | 8 ++---- 3 files changed, 40 insertions(+), 26 deletions(-) diff --git a/projects/macosx/framework/Pre-Compile.sh b/projects/macosx/framework/Pre-Compile.sh index 27dd6c8..48e4a6e 100644 --- a/projects/macosx/framework/Pre-Compile.sh +++ b/projects/macosx/framework/Pre-Compile.sh @@ -10,8 +10,14 @@ if test "${ACTION}" = ""; then # Debug -- # Hack to use that script with the current VLC-release.app elif test "${ACTION}" = "release-makefile"; then - TARGET_BUILD_DIR="${build_dir}" + echo "running Pre-Compile.sh in release-makefile mode" + FULL_PRODUCT_NAME="${PRODUCT}" + if [ "$FULL_PRODUCT_NAME" = "VLC-Plugin.plugin" ] ; then + TARGET_BUILD_DIR="${src_dir}" + else + TARGET_BUILD_DIR="${build_dir}" + fi CONTENTS_FOLDER_PATH="${FULL_PRODUCT_NAME}/Contents/MacOS" VLC_BUILD_DIR="${build_dir}" VLC_SRC_DIR="${src_dir}" @@ -97,10 +103,10 @@ if test "${ACTION}" = "build"; then install_library "${VLC_BUILD_DIR}/bin/${prefix}vlc" "${target}" "bin" "@loader_path/lib" mv ${target}/vlc ${target}/VLC chmod +x ${target}/VLC - elif [ "$FULL_PRODUCT_NAME" = "VLC-release.app" ] ; then - install_library "${VLC_BUILD_DIR}/src/${prefix}npvlc.${suffix}" "${target}" "bin" "@loader_path/lib" - mv ${target}/npvlc.${suffix} "${target}/VLC Plugin.plugin" - chmod +x "${target}/VLC Plugin.plugin" +# elif [ "$FULL_PRODUCT_NAME" = "VLC-Plugin.plugin" ] ; then +# install_library "${VLC_BUILD_DIR}/projects/mozilla/.libs/${prefix}npvlc.${suffix}" "${target}" "bin" "@loader_path/lib" +# mv ${target}/npvlc.${suffix} "${target}/VLC\ Plugin" +# chmod +x "${target}/VLC\ Plugin" fi ########################## @@ -150,15 +156,24 @@ if test "${ACTION}" = "build"; then ########################## # Build the share folder - echo "Building share folder..." - pbxcp="/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -resolve-src-symlinks" - mkdir -p ${target_share} - $pbxcp ${VLC_SRC_DIR}/share/lua ${target_share} + if [ "$FULL_PRODUCT_NAME" = "VLC-release.app" ] ; then + echo "Building share folder..." + pbxcp="/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -resolve-src-symlinks" + mkdir -p ${target_share} + $pbxcp ${VLC_SRC_DIR}/share/lua ${target_share} + else + echo "Share folder not needed for this product" + fi + ########################## # Exporting headers - echo "Exporting headers..." - mkdir -p ${target_include}/vlc - $pbxcp ${VLC_SRC_DIR}/include/vlc/*.h ${target_include}/vlc + if [ "$FULL_PRODUCT_NAME" = "VLC-release.app" ] ; then + echo "Exporting headers..." + mkdir -p ${target_include}/vlc + $pbxcp ${VLC_SRC_DIR}/include/vlc/*.h ${target_include}/vlc + else + echo "Headers not needed for this product" + fi fi diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index 3c9720f..6f1bab8 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -104,15 +104,16 @@ endef VLC\ Plugin.plugin: npvlc.rsrc $(lib_LTLIBRARIES) rm -Rf "$@" - $(INSTALL) -d "$@/Contents/MacOS/lib" - $(INSTALL) -d "$@/Contents/Resources" - $(INSTALL) .libs/npvlc.dylib "$@/Contents/MacOS/VLC Plugin" - dylib="$@/Contents/MacOS/VLC Plugin"; $(FIXEXECPATH); - $(INSTALL) npvlc.rsrc "$@/Contents/Resources/VLC Plugin.rsrc" - cp -r "$(top_srcdir)/extras/package/macosx/plugin/English.lproj" "$@/Contents/Resources/" - cp -r "$(top_builddir)/extras/package/macosx/plugin/English.lproj" "$@/Contents/Resources/" - $(INSTALL) "$(top_builddir)/extras/package/macosx/plugin/Info.plist" "$@/Contents/Info.plist" - ACTION="release-makefile" PRODUCT="VLC Plugin.plugin" src_dir=$(srcdir) build_dir=$(top_builddir) sh $(srcdir)/projects/macosx/framework/Pre-Compile.sh + $(INSTALL) -d "VLC-Plugin.plugin/Contents/MacOS/lib" + $(INSTALL) -d "VLC-Plugin.plugin/Contents/Resources" + ACTION="release-makefile" PRODUCT="VLC-Plugin.plugin" src_dir=$(srcdir) build_dir=$(top_builddir) sh ../macosx/framework/Pre-Compile.sh + $(INSTALL) .libs/npvlc.dylib "VLC-Plugin.plugin/Contents/MacOS/VLC Plugin" + dylib="VLC-Plugin.plugin/Contents/MacOS/VLC Plugin"; $(FIXEXECPATH); + $(INSTALL) npvlc.rsrc "VLC-Plugin.plugin/Contents/Resources/VLC Plugin.rsrc" + cp -r "$(top_srcdir)/extras/package/macosx/plugin/English.lproj" "VLC-Plugin.plugin/Contents/Resources/" + cp -r "$(top_builddir)/extras/package/macosx/plugin/English.lproj" "VLC-Plugin.plugin/Contents/Resources/" + $(INSTALL) "$(top_builddir)/extras/package/macosx/plugin/Info.plist" "VLC-Plugin.plugin/Contents/Info.plist" + mv "VLC-Plugin.plugin" "VLC Plugin.plugin" # uncomment if dependencies on XPCOM libs is sought # if test -d "$(MOZILLA_SDK_PATH)/lib"; then \ diff --git a/projects/mozilla/vlcplugin.cpp b/projects/mozilla/vlcplugin.cpp index ec52f29..239684d 100644 --- a/projects/mozilla/vlcplugin.cpp +++ b/projects/mozilla/vlcplugin.cpp @@ -87,9 +87,8 @@ NPError VlcPlugin::init(int argc, char* const argn[], char* const argv[]) /* locate VLC module path */ #ifdef XP_MACOSX - ppsz_argv[ppsz_argc++] = "--plugin-path"; - ppsz_argv[ppsz_argc++] = "/Library/Internet Plug-Ins/VLC Plugin.plugin/" - "Contents/MacOS/modules"; + ppsz_argv[ppsz_argc++] = "--plugin-path=/Library/Internet\\ Plug-Ins/VLC\\ Plugin.plugin/Contents/MacOS/modules"; + ppsz_argv[ppsz_argc++] = "--vout=macosx"; #elif defined(XP_WIN) HKEY h_key; DWORD i_type, i_data = MAX_PATH + 1; @@ -118,8 +117,7 @@ NPError VlcPlugin::init(int argc, char* const argn[], char* const argv[]) ppsz_argv[ppsz_argc++] = "--no-stats"; ppsz_argv[ppsz_argc++] = "--no-media-library"; ppsz_argv[ppsz_argc++] = "--ignore-config"; - ppsz_argv[ppsz_argc++] = "--intf"; - ppsz_argv[ppsz_argc++] = "dummy"; + ppsz_argv[ppsz_argc++] = "--intf=dummy"; const char *progid = NULL; From gauritatke10 at gmail.com Wed Feb 4 16:28:04 2009 From: gauritatke10 at gmail.com (Gauri Tatke) Date: Wed, 4 Feb 2009 20:58:04 +0530 Subject: [vlc-devel] Regarding source code Message-ID: <5396daff0902040728p63388f95t1e9079c2d97e203b@mail.gmail.com> Hello, I have installed 0.8.6g on my FC7 machine. Can nybody tell me where will I get the complete source code of this version. I need it urgently for my project. Thamks. Gauri -------------- next part -------------- An HTML attachment was scrubbed... URL: From gilles.sabourin at free.fr Thu Feb 5 00:27:55 2009 From: gilles.sabourin at free.fr (Gilles Sabourin) Date: Thu, 5 Feb 2009 00:27:55 +0100 Subject: [vlc-devel] Regarding source code References: <5396daff0902040728p63388f95t1e9079c2d97e203b@mail.gmail.com> Message-ID: <8119B22AC7914670839540F500268964@gillesbureau> Hello, you can find it at : http://download.videolan.org/pub/vlc/0.8.6g/vlc-0.8.6g.tar.gz And you check your download against : http://download.videolan.org/pub/vlc/0.8.6g/vlc-0.8.6g.tar.gz.md5 Best Regards, Gilles Sabourin ----- Original Message ----- From: Gauri Tatke To: vlc at videolan.org Sent: Wednesday, February 04, 2009 4:28 PM Subject: [vlc-devel] Regarding source code Hello, I have installed 0.8.6g on my FC7 machine. Can nybody tell me where will I get the complete source code of this version. I need it urgently for my project. Thamks. Gauri ------------------------------------------------------------------------------ _______________________________________________ vlc-devel mailing list To unsubscribe or modify your subscription options: http://mailman.videolan.org/listinfo/vlc-devel __________ Information provenant d'ESET NOD32 Antivirus, version de la base des signatures de virus 3827 (20090204) __________ Le message a iti virifii par ESET NOD32 Antivirus. http://www.eset.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From xtophe at chewa.net Thu Feb 5 00:38:02 2009 From: xtophe at chewa.net (Christophe Mutricy) Date: Thu, 5 Feb 2009 00:38:02 +0100 Subject: [vlc-devel] [PATCH] fix h264 encoding in windows In-Reply-To: <692863.7101.qm@web23302.mail.ird.yahoo.com> References: <20090127235906.GQ3571@chewa.net> <692863.7101.qm@web23302.mail.ird.yahoo.com> Message-ID: <20090204233802.GY9996@chewa.net> On Thu, Jan 29, 09 at 11:32 +0000, Hannes Domani wrote: > Check it out, try, comment it. > +++ b/configure.ac > @@ -3657,6 +3657,14 @@ if test "${enable_x264}" != "no"; then > VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}]) > + if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then > + LIBS_save="${LIBS}" > + LIBS="-lwsock32" > + AC_CHECK_LIB(pthreadGC2, pthread_win32_process_attach_np, [ That's (hopefully) always true. So I think the grep on X264_LIBS on the basis that only win has pthread*GC2* and that win contribs are only static -- Xtophe From xtophe at chewa.net Thu Feb 5 01:03:26 2009 From: xtophe at chewa.net (Christophe Mutricy) Date: Thu, 5 Feb 2009 01:03:26 +0100 Subject: [vlc-devel] XCB freeze exception In-Reply-To: <200902042136.57031.rem@videolan.org> References: <200902042136.57031.rem@videolan.org> Message-ID: <20090205000326.GB9996@chewa.net> > I am claiming an exemption from the feature freeze for the XCB plugins. It is > anyway not fully integrated into the build system yet, so there is hardly any > risk of regressions. Well the code is already in and is not activated by default (and you really have to know what you're doing to build it) and the module's score is 0. So I really don't see any risk. I'm even in favour of adding the necessary bits in configure.ac so that we check for the necessary libs before building (disable by default and maybe with (experimental) in the text) So that it's less hard for people wanting to test to give you feed-backs -- Xtophe From agent_007 at luukku.com Thu Feb 5 09:13:47 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Thu, 5 Feb 2009 10:13:47 +0200 (EET) Subject: [vlc-devel] Regarding source code Message-ID: <1233821627196.agent_007.11166.XNVMWqzzkWBskrfpbjaUcg@luukku.com> Gauri Tatke kirjoitti 04.02.2009 kello 17:28: > Hello, > I have installed 0.8.6g on my FC7 machine. Can nybody tell me where > will I > get the complete source code of this version. I need it urgently for my > project. > > Thamks. > Gauri http://download.videolan.org/pub/videolan/vlc/ is the place. http://download.videolan.org/pub/videolan/vlc/0.8.6g/ for the 0.8.6g ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku From agent_007 at luukku.com Thu Feb 5 09:16:43 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Thu, 5 Feb 2009 10:16:43 +0200 (EET) Subject: [vlc-devel] Help Please (mjpeg decode problem) Message-ID: <1233821803982.agent_007.11389.oyYOGsTQFT7zZbg7tPUGdA@luukku.com> Mark Maestas kirjoitti 04.02.2009 kello 22:00: > Hi VideoLan developers, I am working on a project that involves using > VLC to demonstrate the functionality of a proprietary video > encoder/server. The server uses hardware encoding of RGB and NTSC > inputs and streams them out to another proprietary player running under > windows using the Pegasus decoder. > > This new customer wants this to work with Linux and VLC. The good news > is that VLC plays both the mjpeg streams well, however the RGB stream > plays with incorrect colors. I have been working to resolve this > through adjusting our JPEG header on this image and I have had no luck. > The windows player has correct color. VLC is using the ffmpeg library > to decode the stream and I now have built both VLC and FFMPEG and I can > make code changes to try and fix the color problem, however nothing that > I have tried has worked. > > I am hoping one of the smart VLC developers would be able to help me > look into fixing this issue, which probably resides in the FFMPEG lib. I > can provide a sample .avi file that I made with ffmpeg for testing > purposes if someone is willing to help look into this. > > I think this is a good opportunity to advance the player and I am > willing and able to help as much as possible. > > If anyone has an interest in fixing the decode of this RGB mjpeg stream > I would be glad to know. > > > > Thanks > > > > Mark Maestas > > > I would suggest that you open trac ticket with sample file that shows this issue. But before that, try 1.0.0 builds if you haven't already done that. They have some colorspace fixes (RGB related). ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku From rdenis at simphalempin.com Thu Feb 5 10:06:34 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 05 Feb 2009 10:06:34 +0100 Subject: [vlc-devel] XCB freeze exception In-Reply-To: <20090205000326.GB9996@chewa.net> References: <200902042136.57031.rem@videolan.org> <20090205000326.GB9996@chewa.net> Message-ID: <5575cbfead5a24811ef3617442e31b8e@chewa.net> On Thu, 5 Feb 2009 01:03:26 +0100, Christophe Mutricy wrote: > I'm even in favour of adding the necessary bits in configure.ac so that > we check for the necessary libs before building (disable by default and > maybe with (experimental) in the text) I don't like to change configure.ac all the time, as it causes a full rebuild. Changing an (existing) Modules.am has minimal impact. > So that it's less hard for people wanting to test to give you feed-backs Among other things, it still lacks: - cursor blanking, - resize (window or A/R change), - fullscreen, - XVideo (incl. HW chroma conversion and HW scaling). I think these would be the bare minimum. People are welcome to test it, but I don't want a flood of useless "feature missing" reports. Other things it does not do yet: - non-embedded window title, - hotkeys when the non-embedded window has focus (!= the video output window), - closed window detection, - XVideo Motion Compensation (any use for this?), - GLX OpenGL provider, - screen capture, - global hotkeys, - Xinerama. I am also not sure if these work: - 32-bits and 8-bits displays, - grey output (current X11 output does not support this), Known bugs: * The output screen is assumed to have same depth as main screen (if multi-screen display). X11 plugin also has this bug, but not XVideo. * Unusual RGB masks (if they exist) break. * Unusual 8-bits palettes break (IMHO, not an issue these days). * Non-embedded window has background is screwed up. -- R?mi Denis-Courmont From xxcv07 at gmail.com Thu Feb 5 10:21:26 2009 From: xxcv07 at gmail.com (xxcv) Date: Thu, 05 Feb 2009 20:21:26 +1100 Subject: [vlc-devel] [PATCH] realvideo bug fix and document In-Reply-To: <1233727120-5510-1-git-send-email-silencewang@msn.com> References: <1233727120-5510-1-git-send-email-silencewang@msn.com> Message-ID: <498AAF96.8010506@gmail.com> Wang Bo wrote: > --- > doc/realvideo-howto.txt | 25 +++++++ > modules/codec/realvideo.c | 166 ++++++++++++++++++++++++++++++--------------- > 2 files changed, 136 insertions(+), 55 deletions(-) > create mode 100644 doc/realvideo-howto.txt > > diff --git a/doc/realvideo-howto.txt b/doc/realvideo-howto.txt > new file mode 100644 > index 0000000..8a936f8 > --- /dev/null > +++ b/doc/realvideo-howto.txt > @@ -0,0 +1,25 @@ > +RealVideo howto > + > +if you want to play RealNetworks' .rm/.rmvb video, > +you need configure the vlc with --enable-real, and > +--enable-realrtsp for real's rtsp protocol. > + > +After config and make vlc, you need download the > +RealNetworks' codecs, general you can use codec > +from Real Player 9 or 10, the newer codec has not > +tested. Or you can install Real's player or Helix SDK. > +The important file is "drv4.so.6" for linux, and > +"drv43260.dll" for windows. you can put the file > +in same directory with vlc, or you can check > +module/codec/realvideo.c to get the better location > +for the codec dll. if you can not find the dll, > +you can check http://code.google.com/p/rm-for-vlc/ > +to get more info. > + > +Now the realvideo has tested on linux ( intel, 32bit) > +and windows ( intel, 32bit ), if you have tested it on > +other platform, please let me know. > + > +-- > +WangBo > + > Here's a sample which will crash drv43260.dll through vlc. http://www.megaupload.com/?d=7ZZXXZ9P -------------- next part -------------- An HTML attachment was scrubbed... URL: From fenrir at via.ecp.fr Thu Feb 5 10:44:54 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Thu, 5 Feb 2009 10:44:54 +0100 Subject: [vlc-devel] XCB freeze exception In-Reply-To: <5575cbfead5a24811ef3617442e31b8e@chewa.net> References: <200902042136.57031.rem@videolan.org> <20090205000326.GB9996@chewa.net> <5575cbfead5a24811ef3617442e31b8e@chewa.net> Message-ID: <20090205094454.GA20613@via.ecp.fr> Hi, On Thu, Feb 05, 2009, R?mi Denis-Courmont wrote: > Known bugs: > * The output screen is assumed to have same depth as main screen (if > multi-screen display). X11 plugin also has this bug, but not XVideo. > * Unusual RGB masks (if they exist) break. You just need to tell VLC the RGB mask you are supporting, the conversion will automatically be done if needed. (X11/Xv do it) Now, you may have a problem with rgb16/15 (ie wrong color) but I am not sure if it is our ffmpeg conversion or my server/driver X. -- fenrir From PHF at zurich.ibm.com Thu Feb 5 11:03:12 2009 From: PHF at zurich.ibm.com (Philip Frey1) Date: Thu, 5 Feb 2009 11:03:12 +0100 Subject: [vlc-devel] VLC Scalability Message-ID: Hello, we are running an experiment to evaluate the scalability of the VLC in RTP mode. For some reason we find that the server does not scale beyond 330 clients no matter what bitrate our movie is (we are streaming Quicktime content). When streaming Full HD content (~9Mbps), the number of clients is limited by the CPU power of the server. When using Standard Definition content (~1Mbps and ~3Mbps), the CPU load increases up to about 330 connected client and then dropps suddenly to almost 0 and the clients no longer receive any data. Do you have an explanation for this behavior? Is there a hard limit on the number of clients that can connect to the VLC server using RTP? We were running the same experiments also on the Darwin Streaming Server and found that DSS can do up to 400 clients (and even more) for small bitrates. With regard to HD content, the DSS is also limited by the CPU on the server. Many thanks for your advice, Philip -- Philip Frey IBM Zurich Research Laboratory Saumerstrasse 4 | Phone: +41 44 724 8613 CH-8803 Rueschlikon/Switzerland | Email: phf at zurich.ibm.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From rdenis at simphalempin.com Thu Feb 5 11:50:43 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 05 Feb 2009 11:50:43 +0100 Subject: [vlc-devel] XCB freeze exception In-Reply-To: <20090205094454.GA20613@via.ecp.fr> References: <200902042136.57031.rem@videolan.org> <20090205000326.GB9996@chewa.net> <5575cbfead5a24811ef3617442e31b8e@chewa.net> <20090205094454.GA20613@via.ecp.fr> Message-ID: On Thu, 5 Feb 2009 10:44:54 +0100, Laurent Aimar wrote: >> * Unusual RGB masks (if they exist) break. > You just need to tell VLC the RGB mask you are supporting, the conversion > will automatically be done if needed. > (X11/Xv do it) > Now, you may have a problem with rgb16/15 (ie wrong color) but I am not > sure if it is our ffmpeg conversion or my server/driver X. I tried successfully (with DVD input, so I guess I420 chroma), 24-, 16- and 15-bits TrueColor against both the Intel X.Org driver, and Xephyr. But yeah, I should really set the color mask from the X11 visuals. I could not try 8-bits StaticColor and GreyScale because VLC cannot find proper chroma conversion to RGB2 neither GRAY (Antoine said he'd look at the first one). I could not try 32-bits TrueColor because I don't have any such hardware. Besides, VLC only uses 24-bits for color in either RV32 and RGBA. And last I did not try B&W and 4-bits Static and Gray because VLC has no chroma for these. I am not aware of any other (real-life) visual type. -- R?mi Denis-Courmont From rdenis at simphalempin.com Thu Feb 5 11:56:36 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 05 Feb 2009 11:56:36 +0100 Subject: [vlc-devel] VLC Scalability In-Reply-To: References: Message-ID: <963160372e3aceac026fca4edcbbc6f4@chewa.net> On Thu, 5 Feb 2009 11:03:12 +0100, Philip Frey1 wrote: > we are running an experiment to evaluate the scalability of the VLC in RTP > mode. > For some reason we find that the server does not scale beyond 330 clients > no matter what bitrate our movie is (we are streaming Quicktime content). Increase the process open files limit. > When streaming Full HD content (~9Mbps), the number of clients is limited > by the CPU power of the server. When using Standard Definition content (~1Mbps > and ~3Mbps), the CPU load increases up to about 330 connected client and > then dropps suddenly to almost 0 and the clients no longer receive any data. You typically need 2 sockets per elementary stream (one for RTP and one for RTCP), plus one socket per client (for RTSP). The default file limit is 1024 on Linux. You do the math... Admittedly, we could stick to a single pair of RTP/RTCP sockets for all clients. But that would potentially cause disasters with kernel-level socket buffering. -- R?mi Denis-Courmont From tme at multicasttech.com Thu Feb 5 11:47:18 2009 From: tme at multicasttech.com (Marshall Eubanks) Date: Thu, 5 Feb 2009 05:47:18 -0500 Subject: [vlc-devel] [streaming] VLC Scalability In-Reply-To: References: Message-ID: On Feb 5, 2009, at 5:03 AM, Philip Frey1 wrote: > > Hello, > > we are running an experiment to evaluate the scalability of the VLC > in RTP mode. > For some reason we find that the server does not scale beyond 330 > clients no > matter what bitrate our movie is (we are streaming Quicktime content). > > When streaming Full HD content (~9Mbps), the number of clients is > limited by the > CPU power of the server. When using Standard Definition content > (~1Mbps and ~3Mbps), > the CPU load increases up to about 330 connected client and then > dropps suddenly > to almost 0 and the clients no longer receive any data. > > Do you have an explanation for this behavior? Is there a hard limit > on the number of > clients that can connect to the VLC server using RTP? > It would be useful to specify the operating system and hardware that these tests are being conducted on, and also the disk I/O speed. I find that disk I/O speeds are the biggest limit in practice to scaling on (qtss) servers. Also, are you sending 1 copy of the same stream to many clients, or different copies of different streams to many clients ? This has a big effect on the disk I/O issue. Regards Marshall > We were running the same experiments also on the Darwin Streaming > Server and > found that DSS can do up to 400 clients (and even more) for small > bitrates. > With regard to HD content, the DSS is also limited by the CPU on the > server. > > Many thanks for your advice, > Philip > > -- > Philip Frey > IBM Zurich Research Laboratory > Saumerstrasse 4 | Phone: +41 44 > 724 8613 > CH-8803 Rueschlikon/Switzerland | Email: phf at zurich.ibm.com_______________________________________________ > streaming mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/streaming From git at videolan.org Thu Feb 5 16:27:16 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 16:27:16 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Menu_key_triggers_the_popup_menu_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090205152716.1A6662EB81@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 4 22:56:19 2009 +0200| [069e8d419fb72defaf956f238ae475087ced2087] | committer: R?mi Denis-Courmont Menu key triggers the popup menu That particular key is supposed to work that way. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=069e8d419fb72defaf956f238ae475087ced2087 --- modules/control/hotkeys.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index bdb4ce1..aeba7fd 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -938,7 +938,6 @@ static int SpecialKeyEvent( vlc_object_t *libvlc, char const *psz_var, intf_thread_t *p_intf = (intf_thread_t *)p_data; int i_action; - (void)libvlc; (void)psz_var; (void)oldval; @@ -960,6 +959,9 @@ static int SpecialKeyEvent( vlc_object_t *libvlc, char const *psz_var, case KEY_MOUSEWHEELRIGHT: i_action = ACTIONID_JUMP_FORWARD_EXTRASHORT; break; + case KEY_MENU: + var_SetBool( libvlc, "intf-popupmenu", true ); + break; default: return VLC_SUCCESS; } From git at videolan.org Thu Feb 5 16:27:16 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 16:27:16 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Do_not_reinvent_eventfd=2E_Won=27?= =?utf-8?q?t_work_if_syscall=2Eh_is_old=2E_=28_R=C3=A9mi_Denis-Courmont_?= =?utf-8?q?=29?= Message-ID: <20090205152716.2E0B72EC17@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 17:26:33 2009 +0200| [28431c2d47ee6a5a80ab81a50fb2ca219fa62f20] | committer: R?mi Denis-Courmont Do not reinvent eventfd. Won't work if syscall.h is old. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=28431c2d47ee6a5a80ab81a50fb2ca219fa62f20 --- src/misc/objects.c | 12 ++---------- 1 files changed, 2 insertions(+), 10 deletions(-) diff --git a/src/misc/objects.c b/src/misc/objects.c index 2fe3206..1795c3e 100644 --- a/src/misc/objects.c +++ b/src/misc/objects.c @@ -56,16 +56,8 @@ #include -#ifdef __linux__ -# if defined (HAVE_SYS_EVENTFD_H) -# include -# else -# include -static inline int eventfd (unsigned int initval, int flags) -{ - return syscall (SYS_eventfd, initval, flags); -} -# endif +#if defined (HAVE_SYS_EVENTFD_H) +# include # define HAVE_EVENTFD 1 #endif From fkuehne.videolan at googlemail.com Thu Feb 5 16:50:58 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Thu, 5 Feb 2009 16:50:58 +0100 Subject: [vlc-devel] Mac OS X 10.4 support for VLC 1.0 Message-ID: <46EA85D9-9D87-4B2F-BC91-43C54F6EA5D1@gmail.com> Hello guys, as some of you know, I've been experimenting with Apple's LLVM GCC 4.2 compiler for quite some time. As this compiler requires the usage of the 10.5 SDK, I discovered that OS X 10.5 supports proper cancelation points, so VLC.app compiled from the latest master source runs and more importantly quits correctly (and really fast in fact). Because of this and a few other API limitations, I'm wondering whether we could drop the support for 10.4 once we release VLC 1.0. IMO, VLC 0.9.9 will be a solid release (whenever it will be published...) and therefore a nice last version for 10.4. What's your opinion? Since Apple itself will probably drop support for 10.4 once 10.6 is released (some time this spring) and the market share of 10.4 is shrinking, I think this step would be justified... Best regards, Felix From liquid.acid at gmx.net Thu Feb 5 17:33:54 2009 From: liquid.acid at gmx.net (Tobias Jakobi) Date: Thu, 05 Feb 2009 17:33:54 +0100 Subject: [vlc-devel] [RFC] Plugins removal Message-ID: <498B14F2.8020309@gmx.net> Hi there, I was told on IRC (after reporting a bug with cddax and GUI interaction) to report here. I'm someone actually using the cddax plugin, since it offers some neat features, like the already mentioned cd-text support. Also important are these features: - paranoia support (through libcdio) - handling of optical disc images (also through libcdio) So I'm opting against removing cddax. Especially since libcdio is a great library (mplayer has support for cdda playback through it), one shouldn't drop support for it. But that's just my opinion :) Greets, Tobias From git at videolan.org Thu Feb 5 17:40:43 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 17:40:43 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_access=5Ffile=3A_cosmetics_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont__=29?= Message-ID: <20090205164043.4586D2EC06@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 17:52:52 2009 +0200| [be6cfb05616fa88c5267eb6d8571b100538be77e] | committer: R?mi Denis-Courmont access_file: cosmetics > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=be6cfb05616fa88c5267eb6d8571b100538be77e --- modules/access/file.c | 40 +++++++++++++++++++--------------------- 1 files changed, 19 insertions(+), 21 deletions(-) diff --git a/modules/access/file.c b/modules/access/file.c index 213125a..9b3315b 100644 --- a/modules/access/file.c +++ b/modules/access/file.c @@ -128,7 +128,6 @@ static int Open( vlc_object_t *p_this ) STANDARD_READ_ACCESS_INIT; p_sys->i_nb_reads = 0; - int fd = p_sys->fd = -1; if (!strcasecmp (p_access->psz_access, "stream")) { @@ -144,38 +143,30 @@ static int Open( vlc_object_t *p_this ) /* Open file */ msg_Dbg (p_access, "opening file `%s'", p_access->psz_path); + int fd = -1; if (b_stdin) fd = dup (0); else fd = open_file (p_access, p_access->psz_path); + if (fd == -1) + goto error; #ifdef HAVE_SYS_STAT_H struct stat st; - while (fd != -1) + if (fstat (fd, &st)) { - if (fstat (fd, &st)) - msg_Err (p_access, "fstat(%d): %m", fd); - else - if (S_ISDIR (st.st_mode)) - /* The directory plugin takes care of that */ - msg_Dbg (p_access, "file is a directory, aborting"); - else - break; // success - - close (fd); - fd = -1; + msg_Err (p_access, "failed to read (%m)"); + goto error; } -#endif - - if (fd == -1) + /* Directories can be opened and read from, but only readdir() knows + * how to parse the data. The directory plugin will do it. */ + if (S_ISDIR (st.st_mode)) { - free (p_sys); - return VLC_EGENERIC; + msg_Dbg (p_access, "ignoring directory"); + goto error; } - p_sys->fd = fd; -#ifdef HAVE_SYS_STAT_H p_access->info.i_size = st.st_size; if (!S_ISREG (st.st_mode)) p_sys->b_seekable = false; @@ -184,7 +175,14 @@ static int Open( vlc_object_t *p_this ) # warning File size not known! #endif + p_sys->fd = fd; return VLC_SUCCESS; + +error: + if (fd != -1) + close (fd); + free (p_sys); + return VLC_EGENERIC; } /***************************************************************************** @@ -226,7 +224,7 @@ static ssize_t Read( access_t *p_access, uint8_t *p_buffer, size_t i_len ) break; default: - msg_Err (p_access, "read failed (%m)"); + msg_Err (p_access, "failed to read (%m)"); intf_UserFatal (p_access, false, _("File reading failed"), _("VLC could not read the file.")); p_access->info.b_eof = true; From git at videolan.org Thu Feb 5 17:40:43 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 17:40:43 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Only_use_file_size_for_regular_fi?= =?utf-8?q?les=2E_Allow_seeking_block_devices=2E__=28_R=C3=A9mi_Denis-Cour?= =?utf-8?q?mont_=29?= Message-ID: <20090205164043.53E7E2EC2D@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 18:34:43 2009 +0200| [9d4c2ee574c5bf99fc04c1141d96cfdc256b13f7] | committer: R?mi Denis-Courmont Only use file size for regular files. Allow seeking block devices. Block special files are always seekable. File size is undefined for non-regular files. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9d4c2ee574c5bf99fc04c1141d96cfdc256b13f7 --- modules/access/file.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/access/file.c b/modules/access/file.c index 9b3315b..80269cc 100644 --- a/modules/access/file.c +++ b/modules/access/file.c @@ -166,9 +166,9 @@ static int Open( vlc_object_t *p_this ) msg_Dbg (p_access, "ignoring directory"); goto error; } - - p_access->info.i_size = st.st_size; - if (!S_ISREG (st.st_mode)) + if (S_ISREG (st.st_mode)) + p_access->info.i_size = st.st_size; + else if (!S_ISBLK (st.st_mode)) p_sys->b_seekable = false; #else p_sys->b_seekable = !b_stdin; From git at videolan.org Thu Feb 5 17:40:43 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 17:40:43 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Do_not_poll_regular_files_=28usel?= =?utf-8?q?ess=29=2C_block_devices_=28undefined=29=2E_=28_R=C3=A9mi_Denis-?= =?utf-8?q?Courmont_=29?= Message-ID: <20090205164043.6FB712EC06@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 18:18:19 2009 +0200| [558ed80209b28f887c58a3f9451e3c9e7b4e0628] | committer: R?mi Denis-Courmont Do not poll regular files (useless), block devices (undefined). We do poll character devices, as it works for TTYs and some platform specific devices. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=558ed80209b28f887c58a3f9451e3c9e7b4e0628 --- modules/access/file.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/modules/access/file.c b/modules/access/file.c index 80269cc..dd5705e 100644 --- a/modules/access/file.c +++ b/modules/access/file.c @@ -210,10 +210,11 @@ static ssize_t Read( access_t *p_access, uint8_t *p_buffer, size_t i_len ) ssize_t i_ret; #ifndef WIN32 - i_ret = net_Read (p_access, fd, NULL, p_buffer, i_len, false); -#else - i_ret = read (fd, p_buffer, i_len); + if (!p_sys->b_seekable) + i_ret = net_Read (p_access, fd, NULL, p_buffer, i_len, false); + else #endif + i_ret = read (fd, p_buffer, i_len); if( i_ret < 0 ) { From git at videolan.org Thu Feb 5 17:40:43 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 17:40:43 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_System_knows_better_whether_we_ca?= =?utf-8?q?n_seek=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090205164044.8D53E2EC41@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 18:40:15 2009 +0200| [ecdec76a4bbb65cd24f4b165c20673494d3200bd] | committer: R?mi Denis-Courmont System knows better whether we can seek. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ecdec76a4bbb65cd24f4b165c20673494d3200bd --- modules/access/file.c | 6 ------ 1 files changed, 0 insertions(+), 6 deletions(-) diff --git a/modules/access/file.c b/modules/access/file.c index dd5705e..af90687 100644 --- a/modules/access/file.c +++ b/modules/access/file.c @@ -130,15 +130,9 @@ static int Open( vlc_object_t *p_this ) p_sys->i_nb_reads = 0; if (!strcasecmp (p_access->psz_access, "stream")) - { - p_sys->b_seekable = false; p_sys->b_pace_control = false; - } else - { - p_sys->b_seekable = true; p_sys->b_pace_control = true; - } /* Open file */ msg_Dbg (p_access, "opening file `%s'", p_access->psz_path); From git at videolan.org Thu Feb 5 18:00:22 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 18:00:22 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Unitialized_variable_=28_R=C3=A9m?= =?utf-8?q?i_Denis-Courmont_=29?= Message-ID: <20090205170023.4180A2EAA1@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 18:57:56 2009 +0200| [37acd67edfa16ebd122e75d9e9057885a3569911] | committer: R?mi Denis-Courmont Unitialized variable > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=37acd67edfa16ebd122e75d9e9057885a3569911 --- modules/control/hotkeys.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index aeba7fd..b4e5271 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -936,7 +936,7 @@ static int SpecialKeyEvent( vlc_object_t *libvlc, char const *psz_var, void *p_data ) { intf_thread_t *p_intf = (intf_thread_t *)p_data; - int i_action; + int i_action = 0; (void)psz_var; (void)oldval; From git at videolan.org Thu Feb 5 19:23:06 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 19:23:06 +0100 (CET) Subject: [vlc-devel] commit: Cosmetics (mod). (Laurent Aimar ) Message-ID: <20090205182306.EBF402EC40@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 4 21:01:43 2009 +0100| [2887a459ec27d946920bf5c653bba2dd78e8b9bf] | committer: Laurent Aimar Cosmetics (mod). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2887a459ec27d946920bf5c653bba2dd78e8b9bf --- modules/demux/mod.c | 153 ++++++++++++++++++++++---------------------------- 1 files changed, 67 insertions(+), 86 deletions(-) diff --git a/modules/demux/mod.c b/modules/demux/mod.c index b7b2124..d710006 100644 --- a/modules/demux/mod.c +++ b/modules/demux/mod.c @@ -1,7 +1,7 @@ /***************************************************************************** * mod.c: MOD file demuxer (using libmodplug) ***************************************************************************** - * Copyright (C) 2004 the VideoLAN team + * Copyright (C) 2004-2009 the VideoLAN team * $Id$ * * Authors: Laurent Aimar @@ -120,7 +120,7 @@ struct demux_sys_t static int Demux ( demux_t *p_demux ); static int Control( demux_t *p_demux, int i_query, va_list args ); -static const char* mod_ext[] = +static const char *ppsz_mod_ext[] = { "mod", "s3m", "xm", "it", "669", "amf", "ams", "dbm", "dmf", "dsm", "far", "mdl", "med", "mtm", "okt", "ptm", "stm", "ult", "umx", "mt2", @@ -135,26 +135,24 @@ static int Open( vlc_object_t *p_this ) demux_t *p_demux = (demux_t*)p_this; demux_sys_t *p_sys; ModPlug_Settings settings; - vlc_value_t val; /* We accept file based on extension match */ if( !p_demux->b_force ) { - char *ext; + char *psz_ext; int i; - if( ( ext = strrchr( p_demux->psz_path, '.' ) ) == NULL || + if( ( psz_ext = strrchr( p_demux->psz_path, '.' ) ) == NULL || stream_Size( p_demux->s ) == 0 ) return VLC_EGENERIC; - ext++; /* skip . */ - for( i = 0; mod_ext[i] != NULL; i++ ) + psz_ext++; /* skip . */ + for( i = 0; ppsz_mod_ext[i] != NULL; i++ ) { - if( !strcasecmp( ext, mod_ext[i] ) ) - { + if( !strcasecmp( psz_ext, ppsz_mod_ext[i] ) ) break; - } } - if( mod_ext[i] == NULL ) return VLC_EGENERIC; - msg_Dbg( p_demux, "running MOD demuxer (ext=%s)", mod_ext[i] ); + if( ppsz_mod_ext[i] == NULL ) + return VLC_EGENERIC; + msg_Dbg( p_demux, "running MOD demuxer (ext=%s)", ppsz_mod_ext[i] ); } /* Fill p_demux field */ @@ -173,17 +171,6 @@ static int Open( vlc_object_t *p_this ) free( p_sys ); return VLC_EGENERIC; } - /* Create our config variable */ - var_Create( p_demux, "mod-noisereduction", VLC_VAR_BOOL|VLC_VAR_DOINHERIT ); - var_Create( p_demux, "mod-reverb", VLC_VAR_BOOL|VLC_VAR_DOINHERIT ); - var_Create( p_demux, "mod-reverb-level", VLC_VAR_INTEGER|VLC_VAR_DOINHERIT ); - var_Create( p_demux, "mod-reverb-delay", VLC_VAR_INTEGER|VLC_VAR_DOINHERIT ); - var_Create( p_demux, "mod-megabass", VLC_VAR_BOOL|VLC_VAR_DOINHERIT ); - var_Create( p_demux, "mod-megabass-level", VLC_VAR_INTEGER|VLC_VAR_DOINHERIT ); - var_Create( p_demux, "mod-megabass-range", VLC_VAR_INTEGER|VLC_VAR_DOINHERIT ); - var_Create( p_demux, "mod-surround", VLC_VAR_BOOL|VLC_VAR_DOINHERIT ); - var_Create( p_demux, "mod-surround-level", VLC_VAR_INTEGER|VLC_VAR_DOINHERIT ); - var_Create( p_demux, "mod-surround-delay", VLC_VAR_INTEGER|VLC_VAR_DOINHERIT ); /* Configure modplug before loading the file */ ModPlug_GetSettings( &settings ); @@ -193,29 +180,23 @@ static int Open( vlc_object_t *p_this ) settings.mFrequency = 44100; settings.mResamplingMode = MODPLUG_RESAMPLE_FIR; - var_Get( p_demux, "mod-noisereduction", &val ); - if( val.b_bool) settings.mFlags |= MODPLUG_ENABLE_NOISE_REDUCTION; - - var_Get( p_demux, "mod-reverb", &val ); - if( val.b_bool) settings.mFlags |= MODPLUG_ENABLE_REVERB; - var_Get( p_demux, "mod-reverb-level", &val ); - settings.mReverbDepth = val.i_int; - var_Get( p_demux, "mod-reverb-delay", &val ); - settings.mReverbDelay = val.i_int; - - var_Get( p_demux, "mod-megabass", &val ); - if( val.b_bool) settings.mFlags |= MODPLUG_ENABLE_MEGABASS; - var_Get( p_demux, "mod-megabass-level", &val ); - settings.mBassAmount = val.i_int; - var_Get( p_demux, "mod-megabass-range", &val ); - settings.mBassRange = val.i_int; - - var_Get( p_demux, "mod-surround", &val ); - if( val.b_bool) settings.mFlags |= MODPLUG_ENABLE_SURROUND; - var_Get( p_demux, "mod-surround-level", &val ); - settings.mSurroundDepth = val.i_int; - var_Get( p_demux, "mod-surround-delay", &val ); - settings.mSurroundDelay = val.i_int; + if( var_CreateGetBool( p_demux, "mod-noisereduction" ) ) + settings.mFlags |= MODPLUG_ENABLE_NOISE_REDUCTION; + + if( var_CreateGetBool( p_demux, "mod-reverb" ) ) + settings.mFlags |= MODPLUG_ENABLE_REVERB; + settings.mReverbDepth = var_CreateGetInteger( p_demux, "mod-reverb-level" ); + settings.mReverbDelay = var_CreateGetInteger( p_demux, "mod-reverb-delay" ); + + if( var_CreateGetBool( p_demux, "mod-megabass" ) ) + settings.mFlags |= MODPLUG_ENABLE_MEGABASS; + settings.mBassAmount = var_CreateGetInteger( p_demux, "mod-megabass-level" ); + settings.mBassRange = var_CreateGetInteger( p_demux, "mod-megabass-range" ); + + if( var_CreateGetBool( p_demux, "mod-surround" ) ) + settings.mFlags |= MODPLUG_ENABLE_SURROUND; + settings.mSurroundDepth = var_CreateGetInteger( p_demux, "mod-surround-level" ); + settings.mSurroundDelay = var_CreateGetInteger( p_demux, "mod-surround-delay" ); ModPlug_SetSettings( &settings ); @@ -231,7 +212,7 @@ static int Open( vlc_object_t *p_this ) /* init time */ p_sys->i_time = 1; - p_sys->i_length = ModPlug_GetLength( p_sys->f ) * (int64_t)1000; + p_sys->i_length = ModPlug_GetLength( p_sys->f ) * INT64_C(1000); msg_Dbg( p_demux, "MOD loaded name=%s lenght=%"PRId64"ms", ModPlug_GetName( p_sys->f ), @@ -290,7 +271,7 @@ static int Demux( demux_t *p_demux ) es_out_Control( p_demux->out, ES_OUT_SET_PCR, (int64_t)p_sys->i_time ); /* We should use p_frame->i_buffer */ - p_sys->i_time += (int64_t)1000000 * p_frame->i_buffer / i_bk / p_sys->fmt.audio.i_rate; + p_sys->i_time += INT64_C(1000000) * p_frame->i_buffer / i_bk / p_sys->fmt.audio.i_rate; /* Send data */ p_frame->i_dts = p_frame->i_pts = p_sys->i_time; @@ -310,53 +291,53 @@ static int Control( demux_t *p_demux, int i_query, va_list args ) switch( i_query ) { - case DEMUX_GET_POSITION: - pf = (double*) va_arg( args, double* ); - if( p_sys->i_length > 0 ) - { - *pf = (double)p_sys->i_time / (double)p_sys->i_length; - return VLC_SUCCESS; - } - return VLC_EGENERIC; - - case DEMUX_SET_POSITION: - f = (double) va_arg( args, double ); + case DEMUX_GET_POSITION: + pf = (double*) va_arg( args, double* ); + if( p_sys->i_length > 0 ) + { + *pf = (double)p_sys->i_time / (double)p_sys->i_length; + return VLC_SUCCESS; + } + return VLC_EGENERIC; - i64 = f * p_sys->i_length; - if( i64 >= 0 && i64 <= p_sys->i_length ) - { - ModPlug_Seek( p_sys->f, i64 / 1000 ); - p_sys->i_time = i64 + 1; + case DEMUX_SET_POSITION: + f = (double) va_arg( args, double ); - return VLC_SUCCESS; - } - return VLC_EGENERIC; + i64 = f * p_sys->i_length; + if( i64 >= 0 && i64 <= p_sys->i_length ) + { + ModPlug_Seek( p_sys->f, i64 / 1000 ); + p_sys->i_time = i64 + 1; - case DEMUX_GET_TIME: - pi64 = (int64_t*)va_arg( args, int64_t * ); - *pi64 = p_sys->i_time; return VLC_SUCCESS; + } + return VLC_EGENERIC; - case DEMUX_GET_LENGTH: - pi64 = (int64_t*)va_arg( args, int64_t * ); - *pi64 = p_sys->i_length; - return VLC_SUCCESS; + case DEMUX_GET_TIME: + pi64 = (int64_t*)va_arg( args, int64_t * ); + *pi64 = p_sys->i_time; + return VLC_SUCCESS; - case DEMUX_SET_TIME: - i64 = (int64_t)va_arg( args, int64_t ); + case DEMUX_GET_LENGTH: + pi64 = (int64_t*)va_arg( args, int64_t * ); + *pi64 = p_sys->i_length; + return VLC_SUCCESS; - if( i64 >= 0 && i64 <= p_sys->i_length ) - { - ModPlug_Seek( p_sys->f, i64 / 1000 ); - p_sys->i_time = i64 + 1; + case DEMUX_SET_TIME: + i64 = (int64_t)va_arg( args, int64_t ); - return VLC_SUCCESS; - } - return VLC_EGENERIC; + if( i64 >= 0 && i64 <= p_sys->i_length ) + { + ModPlug_Seek( p_sys->f, i64 / 1000 ); + p_sys->i_time = i64 + 1; - case DEMUX_GET_FPS: /* meaningless */ - default: - return VLC_EGENERIC; + return VLC_SUCCESS; + } + return VLC_EGENERIC; + + case DEMUX_GET_FPS: /* meaningless */ + default: + return VLC_EGENERIC; } } From git at videolan.org Thu Feb 5 19:23:07 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 19:23:07 +0100 (CET) Subject: [vlc-devel] commit: Added a few sanity checks to mod. (Laurent Aimar ) Message-ID: <20090205182307.077102EC45@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 4 21:11:09 2009 +0100| [08b0129445f1e0aed7141925f638e992b8e2ca60] | committer: Laurent Aimar Added a few sanity checks to mod. Among them, it will now refuse to load file larger than 500Mbytes. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=08b0129445f1e0aed7141925f638e992b8e2ca60 --- modules/demux/mod.c | 28 +++++++++++++++++++++------- 1 files changed, 21 insertions(+), 7 deletions(-) diff --git a/modules/demux/mod.c b/modules/demux/mod.c index d710006..c0ff6dc 100644 --- a/modules/demux/mod.c +++ b/modules/demux/mod.c @@ -127,6 +127,10 @@ static const char *ppsz_mod_ext[] = "psm", NULL }; +/* We load the complete file in memory, put a higher bound + * of 500 Mo (which is really big anyway) */ +#define MOD_MAX_FILE_SIZE (500*1000*1000) + /***************************************************************************** * Open *****************************************************************************/ @@ -139,10 +143,11 @@ static int Open( vlc_object_t *p_this ) /* We accept file based on extension match */ if( !p_demux->b_force ) { - char *psz_ext; + const char *psz_ext = strrchr( p_demux->psz_path, '.' ); int i; - if( ( psz_ext = strrchr( p_demux->psz_path, '.' ) ) == NULL || - stream_Size( p_demux->s ) == 0 ) return VLC_EGENERIC; + + if( !psz_ext ) + return VLC_EGENERIC; psz_ext++; /* skip . */ for( i = 0; ppsz_mod_ext[i] != NULL; i++ ) @@ -155,16 +160,23 @@ static int Open( vlc_object_t *p_this ) msg_Dbg( p_demux, "running MOD demuxer (ext=%s)", ppsz_mod_ext[i] ); } + const int64_t i_size = stream_Size( p_demux->s ); + if( i_size <= 0 || i_size >= MOD_MAX_FILE_SIZE ) + return VLC_EGENERIC; + /* Fill p_demux field */ p_demux->pf_demux = Demux; p_demux->pf_control = Control; - p_demux->p_sys = p_sys = malloc( sizeof( demux_sys_t ) ); + p_demux->p_sys = p_sys = malloc( sizeof( *p_sys ) ); + if( !p_sys ) + return VLC_ENOMEM; msg_Dbg( p_demux, "loading complete file (could be long)" ); - p_sys->i_data = stream_Size( p_demux->s ); + p_sys->i_data = i_size; p_sys->p_data = malloc( p_sys->i_data ); - p_sys->i_data = stream_Read( p_demux->s, p_sys->p_data, p_sys->i_data ); - if( p_sys->i_data <= 0 ) + if( p_sys->p_data ) + p_sys->i_data = stream_Read( p_demux->s, p_sys->p_data, p_sys->i_data ); + if( p_sys->i_data <= 0 || !p_sys->p_data ) { msg_Err( p_demux, "failed to read the complete file" ); free( p_sys->p_data ); @@ -257,6 +269,8 @@ static int Demux( demux_t *p_demux ) int i_read; p_frame = block_New( p_demux, p_sys->fmt.audio.i_rate / 10 * i_bk ); + if( !p_frame ) + return -1; i_read = ModPlug_Read( p_sys->f, p_frame->p_buffer, p_frame->i_buffer ); if( i_read <= 0 ) From git at videolan.org Thu Feb 5 19:23:07 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 19:23:07 +0100 (CET) Subject: [vlc-devel] commit: Added mod title support. (Laurent Aimar ) Message-ID: <20090205182307.1DD872EC50@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 4 21:31:11 2009 +0100| [cf36a814e12cfa804462d5f2ef15bd63d12fd96b] | committer: Laurent Aimar Added mod title support. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cf36a814e12cfa804462d5f2ef15bd63d12fd96b --- modules/demux/mod.c | 16 ++++++++++++++++ 1 files changed, 16 insertions(+), 0 deletions(-) diff --git a/modules/demux/mod.c b/modules/demux/mod.c index c0ff6dc..38072d0 100644 --- a/modules/demux/mod.c +++ b/modules/demux/mod.c @@ -32,6 +32,7 @@ #include #include #include +#include #include @@ -349,6 +350,21 @@ static int Control( demux_t *p_demux, int i_query, va_list args ) } return VLC_EGENERIC; + case DEMUX_HAS_UNSUPPORTED_META: + { + bool *pb_bool = (bool*)va_arg( args, bool* ); + *pb_bool = false; /* FIXME I am not sure of this one */ + return VLC_SUCCESS; + } + case DEMUX_GET_META: + { + vlc_meta_t *p_meta = (vlc_meta_t *)va_arg( args, vlc_meta_t* ); + const char *psz_name = ModPlug_GetName( p_sys->f ); + if( psz_name && *psz_name ) + vlc_meta_SetTitle( p_meta, psz_name ); + return VLC_SUCCESS; + } + case DEMUX_GET_FPS: /* meaningless */ default: return VLC_EGENERIC; From git at videolan.org Thu Feb 5 19:23:07 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 19:23:07 +0100 (CET) Subject: [vlc-devel] commit: Fixed long term pts rounding error in mod. (Laurent Aimar ) Message-ID: <20090205182307.5613B2EC48@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 01:00:48 2009 +0100| [dd2c4d4400f9bb6a6ff463771ad322f567bf8b93] | committer: Laurent Aimar Fixed long term pts rounding error in mod. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dd2c4d4400f9bb6a6ff463771ad322f567bf8b93 --- modules/demux/mod.c | 26 ++++++++++++-------------- 1 files changed, 12 insertions(+), 14 deletions(-) diff --git a/modules/demux/mod.c b/modules/demux/mod.c index 3db053c..15e45bd 100644 --- a/modules/demux/mod.c +++ b/modules/demux/mod.c @@ -111,7 +111,7 @@ struct demux_sys_t es_format_t fmt; es_out_id_t *es; - int64_t i_time; + date_t pts; int64_t i_length; int i_data; @@ -233,7 +233,8 @@ static int Open( vlc_object_t *p_this ) } /* init time */ - p_sys->i_time = 1; + date_Init( &p_sys->pts, settings.mFrequency, 1 ); + date_Set( &p_sys->pts, 1 ); p_sys->i_length = ModPlug_GetLength( p_sys->f ) * INT64_C(1000); msg_Dbg( p_demux, "MOD loaded name=%s lenght=%"PRId64"ms", @@ -274,15 +275,14 @@ static int Demux( demux_t *p_demux ) { demux_sys_t *p_sys = p_demux->p_sys; block_t *p_frame; - int i_bk = ( p_sys->fmt.audio.i_bitspersample / 8 ) * + const int i_bk = ( p_sys->fmt.audio.i_bitspersample / 8 ) * p_sys->fmt.audio.i_channels; - int i_read; p_frame = block_New( p_demux, p_sys->fmt.audio.i_rate / 10 * i_bk ); if( !p_frame ) return -1; - i_read = ModPlug_Read( p_sys->f, p_frame->p_buffer, p_frame->i_buffer ); + const int i_read = ModPlug_Read( p_sys->f, p_frame->p_buffer, p_frame->i_buffer ); if( i_read <= 0 ) { /* EOF */ @@ -290,15 +290,13 @@ static int Demux( demux_t *p_demux ) return 0; } p_frame->i_buffer = i_read; + p_frame->i_dts = + p_frame->i_pts = date_Increment( &p_sys->pts, p_frame->i_buffer / i_bk ); /* Set PCR */ - es_out_Control( p_demux->out, ES_OUT_SET_PCR, (int64_t)p_sys->i_time ); - - /* We should use p_frame->i_buffer */ - p_sys->i_time += INT64_C(1000000) * p_frame->i_buffer / i_bk / p_sys->fmt.audio.i_rate; + es_out_Control( p_demux->out, ES_OUT_SET_PCR, p_frame->i_pts ); /* Send data */ - p_frame->i_dts = p_frame->i_pts = p_sys->i_time; es_out_Send( p_demux->out, p_sys->es, p_frame ); return 1; @@ -319,7 +317,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args ) pf = (double*) va_arg( args, double* ); if( p_sys->i_length > 0 ) { - *pf = (double)p_sys->i_time / (double)p_sys->i_length; + *pf = (double)date_Get( &p_sys->pts ) / (double)p_sys->i_length; return VLC_SUCCESS; } return VLC_EGENERIC; @@ -331,7 +329,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args ) if( i64 >= 0 && i64 <= p_sys->i_length ) { ModPlug_Seek( p_sys->f, i64 / 1000 ); - p_sys->i_time = i64 + 1; + date_Set( &p_sys->pts, i64 + 1 ); return VLC_SUCCESS; } @@ -339,7 +337,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args ) case DEMUX_GET_TIME: pi64 = (int64_t*)va_arg( args, int64_t * ); - *pi64 = p_sys->i_time; + *pi64 = date_Get( &p_sys->pts ); return VLC_SUCCESS; case DEMUX_GET_LENGTH: @@ -353,7 +351,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args ) if( i64 >= 0 && i64 <= p_sys->i_length ) { ModPlug_Seek( p_sys->f, i64 / 1000 ); - p_sys->i_time = i64 + 1; + date_Set( &p_sys->pts, i64 + 1 ); return VLC_SUCCESS; } From git at videolan.org Thu Feb 5 19:23:07 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 19:23:07 +0100 (CET) Subject: [vlc-devel] commit: Improved a bit mod detection checks. (Laurent Aimar ) Message-ID: <20090205182307.389C12EC54@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 00:50:56 2009 +0100| [8accabd39b88aa2f9a2fb610cf3f213bd8011b51] | committer: Laurent Aimar Improved a bit mod detection checks. Check the content of the file to validate the extension selection. Some checks are light but either the file format does not provide enough identifier data or too much code would be needed. But it is better than nothing. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8accabd39b88aa2f9a2fb610cf3f213bd8011b51 --- modules/demux/mod.c | 144 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 143 insertions(+), 1 deletions(-) diff --git a/modules/demux/mod.c b/modules/demux/mod.c index 38072d0..3db053c 100644 --- a/modules/demux/mod.c +++ b/modules/demux/mod.c @@ -33,6 +33,7 @@ #include #include #include +#include #include @@ -121,13 +122,16 @@ struct demux_sys_t static int Demux ( demux_t *p_demux ); static int Control( demux_t *p_demux, int i_query, va_list args ); +static int Validate( demux_t *p_demux, const char *psz_ext ); + static const char *ppsz_mod_ext[] = { "mod", "s3m", "xm", "it", "669", "amf", "ams", "dbm", "dmf", "dsm", "far", "mdl", "med", "mtm", "okt", "ptm", "stm", "ult", "umx", "mt2", - "psm", NULL + "psm", "abc", NULL }; + /* We load the complete file in memory, put a higher bound * of 500 Mo (which is really big anyway) */ #define MOD_MAX_FILE_SIZE (500*1000*1000) @@ -158,6 +162,11 @@ static int Open( vlc_object_t *p_this ) } if( ppsz_mod_ext[i] == NULL ) return VLC_EGENERIC; + if( Validate( p_demux, ppsz_mod_ext[i] ) ) + { + msg_Warn( p_demux, "MOD validation failed (ext=%s)", ppsz_mod_ext[i]); + return VLC_EGENERIC; + } msg_Dbg( p_demux, "running MOD demuxer (ext=%s)", ppsz_mod_ext[i] ); } @@ -371,3 +380,136 @@ static int Control( demux_t *p_demux, int i_query, va_list args ) } } +/***************************************************************************** + * Validate: try to ensure it is really a mod file. + * The tests are not robust enough to replace extension checks in the general + * cases. + * TODO: maybe it should return a score, which will be used to bypass the + * extension checks when high enough. + *****************************************************************************/ +static int Validate( demux_t *p_demux, const char *psz_ext ) +{ + static const struct + { + int i_offset; + const char *psz_marker; + } p_marker[] = { + { 0, "ziRCONia" }, /* MMCMP files */ + { 0, "Extended Module" }, /* XM */ + { 44, "SCRM" }, /* S3M */ + { 0, "IMPM" }, /* IT */ + { 0, "MThd" }, /* MID */ + { 0, "GF1PATCH110" }, /* PAT */ + { 20, "!SCREAM!" }, /* STM */ + { 20, "!Scream!" }, /* STM */ + { 20, "BMOD2STM" }, /* STM */ + { 0, "MMD0" }, /* MED */ + { 0, "MMD1" }, /* MED */ + { 0, "MTM" }, /* MTM */ + { 0, "DMDL" }, /* MDL */ + { 0, "DBM0" }, /* DBM */ + { 0, "if" }, /* 669 */ + { 0, "JN" }, /* 669 */ + { 0, "FAR\xfe" }, /* FAR */ + { 0, "Extreme" }, /* AMS */ + { 0, "OKTASONGCMOD" }, /* OKT */ + { 44, "PTMF" }, /* PTM */ + { 0, "MAS_UTrack_V00" }, /* Ult */ + { 0, "DDMF" }, /* DMF */ + { 8, "DSMFSONG" }, /* DSM */ + { 0, "\xc1\x83\x2a\x9e" }, /* UMX */ + { 0, "ASYLUM Music Format V1.0" }, /* AMF */ + { 0, "PSM\xfe" }, /* PSM */ + { 0, "PSM " }, /* PSM */ + { 0, "MT20" }, /* MT2 */ + + { 1080, "M.K." }, /* MOD */ + { 1080, "M!K!" }, + { 1080, "M&K!" }, + { 1080, "N.T." }, + { 1080, "CD81" }, + { 1080, "OKTA" }, + { 1080, "16CN" }, + { 1080, "32CN" }, + { 1080, "FLT" }, + { 1080, "TDZ" }, + { 1081, "CHN" }, + { 1082, "CH" }, + + { -1, NULL } + }; + + const uint8_t *p_peek; + const int i_peek = stream_Peek( p_demux->s, &p_peek, 2048 ); + if( i_peek < 4 ) + return VLC_EGENERIC; + + for( int i = 0; p_marker[i].i_offset >= 0; i++ ) + { + const char *psz_marker = p_marker[i].psz_marker; + const int i_size = strlen( psz_marker ); + const int i_offset = p_marker[i].i_offset; + + if( i_peek < i_offset + i_size ) + continue; + + if( !memcmp( &p_peek[i_offset], psz_marker, i_size ) ) + return VLC_SUCCESS; + } + + /* The only two format left untested are ABC and MOD(old version) + * ant they are difficult to test :( */ + + /* Check for ABC + * TODO i_peek = 2048 is too big for such files */ + if( !strcasecmp( psz_ext, "abc" ) ) + { + bool b_k = false; + bool b_tx = false; + + for( int i = 0; i < i_peek-1; i++ ) + { + b_k |= p_peek[i+0] == 'K' && p_peek[i+1] == ':'; + b_tx |= ( p_peek[i+0] == 'X' || p_peek[i+0] == 'T') && p_peek[i+1] == ':'; + } + if( !b_k || !b_tx ) + return VLC_EGENERIC; + return VLC_SUCCESS; + } + + /* Check for MOD */ + if( !strcasecmp( psz_ext, "mod" ) && i_peek >= 20 + 15 * 30 ) + { + /* Check that the name is correctly null padded */ + const uint8_t *p = memchr( p_peek, '\0', 20 ); + if( p ) + { + for( ; p < &p_peek[20]; p++ ) + { + if( *p ) + return VLC_EGENERIC; + } + } + + for( int i = 0; i < 15; i++ ) + { + const uint8_t *p_sample = &p_peek[20 + i*30]; + + /* Check correct null padding */ + const uint8_t *p = memchr( &p_sample[0], '\0', 22 ); + if( p ) + { + for( ; p < &p_sample[22]; p++ ) + { + if( *p ) + return VLC_EGENERIC; + } + } + + if( p_sample[25] > 64 ) /* Volume value */ + return VLC_EGENERIC; + } + return VLC_SUCCESS; + } + return VLC_EGENERIC; +} From git at videolan.org Thu Feb 5 19:34:12 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 19:34:12 +0100 (CET) Subject: [vlc-devel] commit: Revert "fix overriden variables." (Laurent Aimar ) Message-ID: <20090205183412.640F32EC3F@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 19:30:16 2009 +0100| [61ead2d3a28e166f88f2594031b6062b8f24aaa1] | committer: Laurent Aimar Revert "fix overriden variables." This reverts commit 0bed6fc3e3d1622f999b88bc908b8f5f1327da7c. It is broken (at least for ps). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=61ead2d3a28e166f88f2594031b6062b8f24aaa1 --- modules/demux/ps.h | 2 ++ modules/demux/vobsub.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletions(-) diff --git a/modules/demux/ps.h b/modules/demux/ps.h index 2c25151..a15daad 100644 --- a/modules/demux/ps.h +++ b/modules/demux/ps.h @@ -559,6 +559,8 @@ static inline int ps_psm_fill( ps_psm_t *p_psm, block_t *p_pkt, es.i_descriptor = i_info_length; if( i_info_length > 0 ) { + int i = 0; + es.p_descriptor = malloc( i_info_length ); if( es.p_descriptor ) { diff --git a/modules/demux/vobsub.c b/modules/demux/vobsub.c index c52e19f..3b90e2d 100644 --- a/modules/demux/vobsub.c +++ b/modules/demux/vobsub.c @@ -472,6 +472,7 @@ static int ParseVobSubIDX( demux_t *p_demux ) demux_sys_t *p_sys = p_demux->p_sys; text_t *txt = &p_sys->txt; char *line; + vobsub_track_t *current_tk = NULL; for( ;; ) { @@ -548,7 +549,7 @@ static int ParseVobSubIDX( demux_t *p_demux ) p_sys->track = realloc( p_sys->track, sizeof( vobsub_track_t ) * (p_sys->i_tracks + 1 ) ); /* Init the track */ - vobsub_track_t *current_tk = &p_sys->track[p_sys->i_tracks - 1]; + current_tk = &p_sys->track[p_sys->i_tracks - 1]; memset( current_tk, 0, sizeof( vobsub_track_t ) ); current_tk->i_current_subtitle = 0; current_tk->i_subtitles = 0; From git at videolan.org Thu Feb 5 19:34:12 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 19:34:12 +0100 (CET) Subject: [vlc-devel] commit: Cosmetics. (Laurent Aimar ) Message-ID: <20090205183412.74BFD2EC60@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 19:31:01 2009 +0100| [b8554d1c69c1dc6c236f2bc695d56f84e2d8c797] | committer: Laurent Aimar Cosmetics. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b8554d1c69c1dc6c236f2bc695d56f84e2d8c797 --- modules/demux/ps.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/demux/ps.h b/modules/demux/ps.h index a15daad..eb4f762 100644 --- a/modules/demux/ps.h +++ b/modules/demux/ps.h @@ -515,7 +515,7 @@ static inline int ps_psm_fill( ps_psm_t *p_psm, block_t *p_pkt, { int i_buffer = p_pkt->i_buffer; uint8_t *p_buffer = p_pkt->p_buffer; - int i_length, i_version, i_info_length, i_esm_length, i_es_base, i; + int i_length, i_version, i_info_length, i_esm_length, i_es_base; if( !p_psm || p_buffer[3] != 0xbc ) return VLC_EGENERIC; @@ -604,7 +604,7 @@ static inline int ps_psm_fill( ps_psm_t *p_psm, block_t *p_pkt, p_psm->i_version = i_version; /* Check/Modify our existing tracks */ - for( i = 0; i < PS_TK_COUNT; i++ ) + for( int i = 0; i < PS_TK_COUNT; i++ ) { ps_track_t tk_tmp; From git at videolan.org Thu Feb 5 19:58:43 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 19:58:43 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_XCB_window=3A_set_background_colo?= =?utf-8?q?r_to_black_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090205185843.4E1912EBBB@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 20:58:29 2009 +0200| [bfe80765bd0c7bab876e7e74b993dfcabc0dc935] | committer: R?mi Denis-Courmont XCB window: set background color to black > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bfe80765bd0c7bab876e7e74b993dfcabc0dc935 --- modules/video_output/xcb/window.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/modules/video_output/xcb/window.c b/modules/video_output/xcb/window.c index f5289c7..50cef9e 100644 --- a/modules/video_output/xcb/window.c +++ b/modules/video_output/xcb/window.c @@ -79,12 +79,17 @@ static int Open (vlc_object_t *obj) /* Create window */ xcb_screen_t *scr = xcb_aux_get_screen (conn, snum); + const uint32_t mask = XCB_CW_BACK_PIXEL; + uint32_t values[1] = { + /* XCB_CW_BACK_PIXEL */ + scr->black_pixel, + }; xcb_window_t window = xcb_generate_id (conn); ck = xcb_create_window_checked (conn, scr->root_depth, window, scr->root, 0, 0, wnd->width, wnd->height, 0, XCB_WINDOW_CLASS_INPUT_OUTPUT, - scr->root_visual, 0, NULL); + scr->root_visual, mask, values); err = xcb_request_check (conn, ck); if (err) { From mark.bidewell at alumni.clemson.edu Thu Feb 5 20:23:07 2009 From: mark.bidewell at alumni.clemson.edu (Mark Bidewell) Date: Thu, 5 Feb 2009 14:23:07 -0500 Subject: [vlc-devel] [PATCH] Overload toggleVisible() to update list with media from other interfaces. Message-ID: -- Mark Bidewell http://www.linkedin.com/in/markbidewell -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Overload-toggleVisible-to-update-list-with-media-f.patch Type: text/x-patch Size: 1025 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-Overload-toggleVisible-to-update-list-with-media-f.patch Type: text/x-patch Size: 714 bytes Desc: not available URL: From git at videolan.org Thu Feb 5 20:30:40 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 20:30:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_vout=5Fwindow=5Ft=2Ep=5Fsys_type_?= =?utf-8?q?safety_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090205193041.576402EBBB@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 21:23:43 2009 +0200| [126bc96b7952e9c2263d86b00f6bc3fc24c0c6d0] | committer: R?mi Denis-Courmont vout_window_t.p_sys type safety > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=126bc96b7952e9c2263d86b00f6bc3fc24c0c6d0 --- include/vlc_window.h | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/include/vlc_window.h b/include/vlc_window.h index a002f3a..144e622 100644 --- a/include/vlc_window.h +++ b/include/vlc_window.h @@ -29,6 +29,7 @@ # include typedef struct vout_window_t vout_window_t; +typedef struct vout_window_sys_t vout_window_sys_t; struct vout_window_t { @@ -41,7 +42,7 @@ struct vout_window_t void *hwnd; /* Win32 window handle */ uint32_t xid; /* X11 window ID */ } handle; - void *p_sys; /* window provider private data */ + vout_window_sys_t *p_sys; /* window provider private data */ unsigned width; /* pixels width */ unsigned height; /* pixels height */ From git at videolan.org Thu Feb 5 20:30:41 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 20:30:41 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_XCB_window_hoykeys_support_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090205193041.F00512E8B9@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 21:23:57 2009 +0200| [8cbb6fc3390565940ef6142fb745912220f127f7] | committer: R?mi Denis-Courmont XCB window hoykeys support It kinda suck to have to duplicate this though. Qt4 embedded X video exhibits the same problem. One ugly "fix" could involve the video output listening for the parent window event - not sure if this would work. Another option would be to now create a window in the video output at all, but then we loose reparenting (useless?). In either cases, handling of hotkeys in fullscreen mode would seem problematic, unless we handle fullscreen via the window provider too (control request?). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8cbb6fc3390565940ef6142fb745912220f127f7 --- modules/video_output/Modules.am | 8 ++- modules/video_output/xcb/window.c | 82 ++++++++++++++++++++++++++++++++++--- 2 files changed, 81 insertions(+), 9 deletions(-) diff --git a/modules/video_output/Modules.am b/modules/video_output/Modules.am index 5f68727..e8209b6 100644 --- a/modules/video_output/Modules.am +++ b/modules/video_output/Modules.am @@ -42,11 +42,13 @@ libxcb_plugin_la_LIBADD = $(AM_LIBADD) \ $(XCB_AUX_LIBS) $(XCB_IMAGE_LIBS) $(XCB_KEYSYMS_LIBS) libxcb_plugin_la_DEPENDENCIES = -libxcb_window_plugin_la_SOURCES = xcb/window.c +libxcb_window_plugin_la_SOURCES = xcb/window.c xcb/keys.c libxcb_window_plugin_la_CFLAGS = $(AM_CFLAGS) \ - $(XCB_CFLAGS) $(XCB_AUX_CFLAGS) + $(XCB_CFLAGS) \ + $(XCB_AUX_CFLAGS) $(XCB_KEYSYMS_CFLAGS) libxcb_window_plugin_la_LIBADD = $(AM_LIBADD) \ - $(XCB_LIBS) $(XCB_AUX_LIBS) + $(XCB_LIBS) \ + $(XCB_AUX_LIBS) $(XCB_KEYSYMS_LIBS) libxcb_window_plugin_la_DEPENDENCIES = EXTRA_LTLIBRARIES += libxcb_plugin.la libxcb_window_plugin.la diff --git a/modules/video_output/xcb/window.c b/modules/video_output/xcb/window.c index 50cef9e..f31690a 100644 --- a/modules/video_output/xcb/window.c +++ b/modules/video_output/xcb/window.c @@ -26,6 +26,7 @@ #include #include +#include #include #include @@ -34,6 +35,8 @@ #include #include +#include "xcb_vlc.h" + #define DISPLAY_TEXT N_("X11 display") #define DISPLAY_LONGTEXT N_( \ "X11 hardware display to use. By default VLC will " \ @@ -58,6 +61,14 @@ vlc_module_begin () vlc_module_end () static int Control (vout_window_t *, int, va_list ap); +static void *Thread (void *); + +struct vout_window_sys_t +{ + xcb_connection_t *conn; + key_handler_t *keys; + vlc_thread_t thread; +}; /** * Create an X11 window. @@ -65,9 +76,13 @@ static int Control (vout_window_t *, int, va_list ap); static int Open (vlc_object_t *obj) { vout_window_t *wnd = (vout_window_t *)obj; + vout_window_sys_t *p_sys = malloc (sizeof (*p_sys)); xcb_generic_error_t *err; xcb_void_cookie_t ck; + if (p_sys == NULL) + return VLC_ENOMEM; + /* Connect to X */ char *display = var_CreateGetNonEmptyString (wnd, "x11-display"); int snum; @@ -79,10 +94,12 @@ static int Open (vlc_object_t *obj) /* Create window */ xcb_screen_t *scr = xcb_aux_get_screen (conn, snum); - const uint32_t mask = XCB_CW_BACK_PIXEL; - uint32_t values[1] = { + const uint32_t mask = XCB_CW_BACK_PIXEL | XCB_CW_EVENT_MASK; + uint32_t values[2] = { /* XCB_CW_BACK_PIXEL */ scr->black_pixel, + /* XCB_CW_EVENT_MASK */ + XCB_EVENT_MASK_KEY_PRESS, }; xcb_window_t window = xcb_generate_id (conn); @@ -97,17 +114,26 @@ static int Open (vlc_object_t *obj) goto error; } + wnd->handle.xid = window; + wnd->p_sys = p_sys; + wnd->control = Control; + + p_sys->conn = conn; + p_sys->keys = CreateKeyHandler (obj, conn); + + if ((p_sys->keys != NULL) + && vlc_clone (&p_sys->thread, Thread, wnd, VLC_THREAD_PRIORITY_LOW)) + DestroyKeyHandler (p_sys->keys); + /* Make sure the window is ready */ xcb_map_window (conn, window); xcb_flush (conn); - wnd->handle.xid = window; - wnd->p_sys = conn; - wnd->control = Control; return VLC_SUCCESS; error: xcb_disconnect (conn); + free (p_sys); return VLC_EGENERIC; } @@ -118,12 +144,56 @@ error: static void Close (vlc_object_t *obj) { vout_window_t *wnd = (vout_window_t *)obj; - xcb_connection_t *conn = wnd->p_sys; + vout_window_sys_t *p_sys = wnd->p_sys; + xcb_connection_t *conn = p_sys->conn; xcb_window_t window = wnd->handle.xid; + if (p_sys->keys) + { + vlc_cancel (p_sys->thread); + vlc_join (p_sys->thread, NULL); + DestroyKeyHandler (p_sys->keys); + } xcb_unmap_window (conn, window); xcb_destroy_window (conn, window); xcb_disconnect (conn); + free (p_sys); +} + + +static void *Thread (void *data) +{ + vout_window_t *wnd = data; + vout_window_sys_t *p_sys = wnd->p_sys; + xcb_connection_t *conn = p_sys->conn; + + int fd = xcb_get_file_descriptor (conn); + if (fd == -1) + return NULL; + + for (;;) + { + xcb_generic_event_t *ev; + struct pollfd ufd = { .fd = fd, .events = POLLIN, }; + + poll (&ufd, 1, -1); + + int canc = vlc_savecancel (); + while ((ev = xcb_poll_for_event (conn)) != NULL) + { + if (ProcessKeyEvent (p_sys->keys, ev) == 0) + continue; + free (ev); + } + vlc_restorecancel (canc); + + if (xcb_connection_has_error (conn)) + { + msg_Err (wnd, "X server failure"); + break; + } + } + return NULL; } From fenrir at via.ecp.fr Thu Feb 5 20:31:38 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Thu, 5 Feb 2009 20:31:38 +0100 Subject: [vlc-devel] [PATCH] realvideo bug fix and document In-Reply-To: <1233727120-5510-1-git-send-email-silencewang@msn.com> References: <1233727120-5510-1-git-send-email-silencewang@msn.com> Message-ID: <20090205193138.GA21011@via.ecp.fr> Hi, It seems to me that your patch should be splitted in two: 1. Correction to make the plugin work after the demuxer changes 2. The dll/so path changes. I would prefer it as it is easier to review/comments and then eases regression searches. (Some of the following comments apply to the code that you may not have been responsible for.) > diff --git a/modules/codec/realvideo.c b/modules/codec/realvideo.c > index 6e5c512..92e9da1 100644 > --- a/modules/codec/realvideo.c > +++ b/modules/codec/realvideo.c > @@ -31,6 +31,8 @@ > #include > #include > > +#include > + > #ifdef LOADER > /* Need the w32dll loader from mplayer */ > # include > @@ -89,9 +91,9 @@ struct rv_init_t > short h; > short unk3; > int unk2; > - unsigned int * subformat; > + int subformat; > int unk5; > - unsigned int * format; > + int format; > } rv_init_t; > > struct decoder_sys_t > @@ -241,19 +243,85 @@ static int InitVideo(decoder_t *p_dec) > init_data.h = p_dec->fmt_in.video.i_height ; > init_data.unk3 = 0; > init_data.unk2 = 0; > - init_data.subformat = (unsigned int*)p_vide[0]; > + init_data.subformat = ntohl( p_vide[0] ); > init_data.unk5 = 1; > - init_data.format = (unsigned int*)p_vide[1]; > + init_data.format = ntohl( p_vide[1]); Using GetDWBE would be better and would avoid vlc_network.h inclusion. You have to use it directky on p_dec->fmt_in.p_extra and compute yourself the offset (it would also remove the implicit ugly unsigned int * cast). > /* first try to load linux dlls, if failed and we're supporting win32 dlls, > then try to load the windows ones */ > - bool b_so_opened = false; > + > + p_sys->rv_handle = NULL; > > #ifdef WIN32 > - g_decode_path="plugins\\drv43260.dll"; > > - if( (p_sys->rv_handle = load_syms(p_dec, g_decode_path)) ) > - b_so_opened = true; > + const char psz_paths[MAX_PATH*3] ; The const should be removed as you modify it. Now using an array would be really better, like char ppsz_path[3][MAX_PATH+1] as it would simplify a lot the code. > + { > + HKEY h_key; > + DWORD i_type, i_data = MAX_PATH + 1; > + char psz_codecs[MAX_PATH+1]; > + char * p_data ; > + char * p_end = psz_paths; With char ppsz_path[3][MAX_PATH+1] they can be removed I think. > + > + p_data = psz_codecs; > + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, > + _T("Software\\RealNetworks\\Preferences\\DT_Codecs"), > + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) > + { > + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, > + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS > + && i_type == REG_SZ ) > + { > + int i_len = strlen( p_data ); > + if ( i_len && p_data[i_len-1] == '\\' ) > + p_data[i_len - 1] = '\0'; > + memcpy( p_end, p_data, strlen( p_data) + 1 ); > + p_end += strlen( p_data ) + 1; > + } > + RegCloseKey( h_key ); > + } > + > + p_data = psz_codecs; > + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, > + _T("Helix\\HelixSDK\\10.0\\Preferences\\DT_Codecs"), > + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) > + { > + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, > + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS > + && i_type == REG_SZ ) > + { > + int i_len = strlen( p_data ); > + if ( i_len && p_data[i_len-1] == '\\' ) > + p_data[i_len - 1] = '\0'; > + memcpy( p_end, p_data, strlen( p_data) + 1 ); > + p_end += strlen( p_data ) + 1; > + } > + RegCloseKey( h_key ); > + } > + > + memcpy( p_end, ".\0codecs\0plugins\0\0\0", 20 ); > + } > + > + for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) > + { > + if( asprintf( &g_decode_path, "%s/drv4.dll", psz_paths + i ) != -1 ) > + { > + p_sys->rv_handle = load_syms(p_dec, g_decode_path); > + free( g_decode_path ); > + } > + if( p_sys->rv_handle ) > + break; > + > + if( asprintf( &g_decode_path, "%s/drv43260.dll", psz_paths + i ) != -1 ) > + { > + p_sys->rv_handle = load_syms(p_dec, g_decode_path); > + free( g_decode_path ); > + } > + if( p_sys->rv_handle ) > + break; > + > + /*msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path);*/ > + } > #else > static const char psz_paths[] = > { > @@ -272,7 +340,10 @@ static int InitVideo(decoder_t *p_dec) > "/usr/lib64/RealPlayer10/codecs\0" > "/usr/lib64/RealPlayer10GOLD/codecs\0" > "/usr/local/lib/codecs\0" > - "\0" > + ".\0" > + "codecs\0" > + "plugins\0" > + "\0\0" > }; Same here (array). > > for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) > @@ -283,10 +354,7 @@ static int InitVideo(decoder_t *p_dec) > free( g_decode_path ); > } > if( p_sys->rv_handle ) > - { > - b_so_opened = true; > break; > - } > > if( asprintf( &g_decode_path, "%s/drv3.so.6.0", psz_paths + i ) != -1 ) > { > @@ -294,16 +362,13 @@ static int InitVideo(decoder_t *p_dec) > free( g_decode_path ); > } > if( p_sys->rv_handle ) > - { > - b_so_opened = true; > break; > - } > > - msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); > + /*msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path);*/ > } > #endif > > - if(!b_so_opened ) > + if( p_sys->rv_handle == NULL ) > { > msg_Err( p_dec, "Cannot any real decoder library" ); > free( p_sys ); > @@ -321,24 +386,27 @@ static int InitVideo(decoder_t *p_dec) > result=(*rvyuv_init)(&init_data, &p_sys->handle); > if (result) > { > - msg_Err( p_dec, "Cannot Init real decoder library: %s", g_decode_path); > + msg_Err( p_dec, "Cannot Init real decoder, error code: %X", result ); > free( p_sys ); > return VLC_EGENERIC; > } > > + msg_Dbg( p_dec, "codec id: 0x%8X subid: 0x%8X\n", ntohl(p_vide[1]), ntohl(p_vide[0]) ); > + > /* setup rv30 codec (codec sub-type and image dimensions): */ > /*if ( p_dec->fmt_in.i_codec == VLC_FOURCC('R','V','3','0') )*/ > - if (p_vide[1]>=0x20200002) > + if ( ntohl( p_vide[1])>=0x20200002) Why not storing the ntohl( p_vide[1]) (same with p_vide[0]) values in a local variables ? > { > - int i, cmsg_cnt; > + int cmsg_cnt; > + unsigned char * p_extrahdr = (unsigned char *) p_vide ; uint8_t > uint32_t cmsg24[16]={p_dec->fmt_in.video.i_width,p_dec->fmt_in.video.i_height}; > - cmsg_data_t cmsg_data={0x24,1+(p_vide[1]&7), &cmsg24[0]}; > - cmsg_cnt = (p_vide[1]&7)*2; > + cmsg_data_t cmsg_data={0x24,1+(p_extrahdr[1]&7), &cmsg24[0]}; > + cmsg_cnt = (p_extrahdr[1]&7)*2; > if (i_vide - 8 < cmsg_cnt) { > cmsg_cnt = i_vide - 8; > } > - for (i = 0; i < cmsg_cnt; i++) > - cmsg24[2+i] = p_vide[8+i]*4; > + for (int i = 0; i < cmsg_cnt; i++) > + cmsg24[2+i] = p_extrahdr[8+i]*4; > #ifdef WIN32 > if (dll_type == 1) > (*wrvyuv_custom_message)(&cmsg_data,p_sys->handle); > @@ -349,7 +417,7 @@ static int InitVideo(decoder_t *p_dec) > /* > es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','V','1','2' )); > es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','U','Y','2' )); > - */ > + */ > es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'I', '4', '2', '0')); > > p_dec->fmt_out.video.i_width = p_dec->fmt_in.video.i_width; > @@ -467,25 +535,20 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) > if ( p_pic ) > { > unsigned int transform_out[5]; > - dp_hdr_t dp_hdr; > transform_in_t transform_in; > - uint32_t pkg_len = ((uint32_t*)p_block->p_buffer)[0]; > - unsigned char* dp_data=((unsigned char*)p_block->p_buffer)+8; > - uint32_t* extra=(uint32_t*)(((char*)p_block->p_buffer)+8+pkg_len); > - uint32_t img_size; > - > > - dp_hdr.len = pkg_len; > - dp_hdr.chunktab = 8 + pkg_len; > - dp_hdr.chunks = ((uint32_t*)p_block->p_buffer)[1]-1; > - dp_hdr.timestamp = i_pts; > + uint8_t i_chunks = p_block->p_buffer[0]; > + uint32_t pkg_len = p_block->i_buffer - 2*4*(i_chunks + 1) - 1; i_ prefix. > + unsigned char* dp_data=p_block->p_buffer + 2*4*(i_chunks+1) + 1; uint8_t > + uint32_t* extra=(uint32_t*)(p_block->p_buffer + 1); pi_ prefix. > + uint32_t img_size; > > memset(&transform_in, 0, sizeof(transform_in_t)); > > - transform_in.len = dp_hdr.len; > + transform_in.len = pkg_len; > transform_in.extra = extra; You can simply avoid the need of a local extra variable. > - transform_in.chunks = dp_hdr.chunks; > - transform_in.timestamp = dp_hdr.timestamp; > + transform_in.chunks = i_chunks; > + transform_in.timestamp = i_pts; > > memset (p_sys->plane, 0, p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height *3/2 ); > > @@ -496,17 +559,7 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) > #endif > result=(*rvyuv_transform)(dp_data, p_sys->plane, &transform_in, transform_out, p_sys->handle); > > - /* msg_Warn(p_dec, "Real Size %d X %d", transform_out[3], > - transform_out[4]); */ > - /* some bug rm file will print the messages : > - [00000551] realvideo decoder warning: Real Size 320 X 240 > - [00000551] realvideo decoder warning: Real Size 480 X 272 > - [00000551] realvideo decoder warning: Real Size 320 X 240 > - [00000551] realvideo decoder warning: Real Size 320 X 240 > - ... > - so it needs fixing! > - */ > - if ( p_sys->inited == 0 ) > + if ( result == 0 && p_sys->inited == 0 ) > { > /* fix and get the correct image size! */ > if ( p_dec->fmt_in.video.i_width != transform_out[3] > @@ -540,16 +593,19 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) > p_sys->inited = 1; > } > > - img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; > - memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); > - memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); > - memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); > - p_pic->date = i_pts ; > + if ( result == 0 ) > + { > + img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; > + memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); > + memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); > + memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); > + p_pic->date = i_pts ; Using vlc_memcpy here would probably be faster. > > /* real video frame is small( frame and frame's time-shift is short), > so it will become late picture easier (when render-time changed)and > droped by video-output.*/ > - p_pic->b_force = 1; > + p_pic->b_force = 1; Using true is prefered. > + } > } > > vlc_mutex_unlock( &rm_mutex ); Regards, -- fenrir From rem at videolan.org Thu Feb 5 20:39:24 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 5 Feb 2009 21:39:24 +0200 Subject: [vlc-devel] [PATCH] Overload toggleVisible() to update list with media from other interfaces. In-Reply-To: References: Message-ID: <200902052139.24337.rem@videolan.org> Le jeudi 5 f?vrier 2009 21:23:07 Mark Bidewell, vous avez ?crit?: > -- > Mark Bidewell > http://www.linkedin.com/in/markbidewell These patches are interdependent, you should squash them. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Thu Feb 5 20:40:20 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 20:40:20 +0100 (CET) Subject: [vlc-devel] commit: Simplify read timing in stream.c. (Laurent Aimar ) Message-ID: <20090205194020.D8C8B2EC6B@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 20:38:36 2009 +0100| [08b5947d023486b6dc81526d395cc4d9320757f1] | committer: Laurent Aimar Simplify read timing in stream.c. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=08b5947d023486b6dc81526d395cc4d9320757f1 --- src/input/stream.c | 8 ++------ 1 files changed, 2 insertions(+), 6 deletions(-) diff --git a/src/input/stream.c b/src/input/stream.c index 25053e3..1fafc00 100644 --- a/src/input/stream.c +++ b/src/input/stream.c @@ -976,7 +976,6 @@ static int AStreamSeekBlock( stream_t *s, int64_t i_pos ) static int AStreamRefillBlock( stream_t *s ) { stream_sys_t *p_sys = s->p_sys; - int64_t i_start, i_stop; block_t *b; /* Release data */ @@ -1000,7 +999,7 @@ static int AStreamRefillBlock( stream_t *s ) } /* Now read a new block */ - i_start = mdate(); + const int64_t i_start = mdate(); for( ;; ) { bool b_eof; @@ -1015,10 +1014,9 @@ static int AStreamRefillBlock( stream_t *s ) return VLC_EGENERIC; } + p_sys->stat.i_read_time += mdate() - i_start; while( b ) { - i_stop = mdate(); - /* Append the block */ p_sys->block.i_size += b->i_buffer; *p_sys->block.pp_last = b; @@ -1030,11 +1028,9 @@ static int AStreamRefillBlock( stream_t *s ) /* Update stat */ p_sys->stat.i_bytes += b->i_buffer; - p_sys->stat.i_read_time += i_stop - i_start; p_sys->stat.i_read_count++; b = b->p_next; - i_start = mdate(); } return VLC_SUCCESS; } From git at videolan.org Thu Feb 5 20:49:18 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 20:49:18 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_XCB=3A_remove_hotkeys_from_video_?= =?utf-8?q?output_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090205194918.94B1F2EC06@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 21:46:53 2009 +0200| [f9e0558e02e2679ef322db985caa6fb7965b8113] | committer: R?mi Denis-Courmont XCB: remove hotkeys from video output The window provider can take care of this (tested with Qt4 and XCB window). X11 forwards unhandled events to ancestor windows. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f9e0558e02e2679ef322db985caa6fb7965b8113 --- modules/video_output/Modules.am | 7 +++---- modules/video_output/xcb/xcb.c | 11 ----------- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/modules/video_output/Modules.am b/modules/video_output/Modules.am index e8209b6..5e9e356 100644 --- a/modules/video_output/Modules.am +++ b/modules/video_output/Modules.am @@ -30,16 +30,15 @@ XCB_KEYSYMS_LIBS = -lxcb-keysyms libxcb_plugin_la_SOURCES = \ xcb/xcb_vlc.h \ xcb/xcb.c \ - xcb/events.c \ - xcb/keys.c + xcb/events.c libxcb_plugin_la_CFLAGS = $(AM_CFLAGS) \ $(XCB_CFLAGS) $(XCB_SHM) \ $(XPROTO_CFLAGS) \ - $(XCB_AUX_CFLAGS) $(XCB_IMAGE_CFLAGS) $(XCB_KEYSYMS_CFLAGS) + $(XCB_AUX_CFLAGS) $(XCB_IMAGE_CFLAGS) libxcb_plugin_la_LIBADD = $(AM_LIBADD) \ $(XCB_LIBS) $(XCB_SHM) \ $(XPROTO_LIBS) \ - $(XCB_AUX_LIBS) $(XCB_IMAGE_LIBS) $(XCB_KEYSYMS_LIBS) + $(XCB_AUX_LIBS) $(XCB_IMAGE_LIBS) libxcb_plugin_la_DEPENDENCIES = libxcb_window_plugin_la_SOURCES = xcb/window.c xcb/keys.c diff --git a/modules/video_output/xcb/xcb.c b/modules/video_output/xcb/xcb.c index 52952fb..e39257c 100644 --- a/modules/video_output/xcb/xcb.c +++ b/modules/video_output/xcb/xcb.c @@ -76,7 +76,6 @@ struct vout_sys_t xcb_connection_t *conn; xcb_screen_t *screen; vout_window_t *embed; /* VLC window (when windowed) */ - key_handler_t *keys; xcb_visualid_t vid; xcb_window_t parent; /* parent X window */ @@ -193,9 +192,6 @@ static int Open (vlc_object_t *obj) } } - /* Prefetch keyboard mappings */ - p_sys->keys = CreateKeyHandler (obj, p_sys->conn); - vout->pf_init = Init; vout->pf_end = Deinit; vout->pf_display = Display; @@ -217,8 +213,6 @@ static void Close (vlc_object_t *obj) vout_sys_t *p_sys = vout->p_sys; assert (p_sys->embed == NULL); - if (p_sys->keys) - DestroyKeyHandler (p_sys->keys); if (p_sys->conn) xcb_disconnect (p_sys->conn); free (p_sys); @@ -441,7 +435,6 @@ static int Init (vout_thread_t *vout) /* XCB_CW_BACK_PIXEL */ screen->black_pixel, /* XCB_CW_EVENT_MASK */ - XCB_EVENT_MASK_KEY_PRESS | XCB_EVENT_MASK_BUTTON_PRESS | XCB_EVENT_MASK_BUTTON_RELEASE | XCB_EVENT_MASK_POINTER_MOTION, }; @@ -541,11 +534,7 @@ static int Manage (vout_thread_t *vout) xcb_generic_event_t *ev; while ((ev = xcb_poll_for_event (p_sys->conn)) != NULL) - { - if (p_sys->keys && (ProcessKeyEvent (p_sys->keys, ev) == 0)) - continue; ProcessEvent (vout, ev); - } if (xcb_connection_has_error (p_sys->conn)) { From git at videolan.org Thu Feb 5 21:27:46 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 21:27:46 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_unitialized_seekable_variable?= =?utf-8?q?_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090205202746.E91802EC2D@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 22:27:10 2009 +0200| [d61e4c6c8231a3240fa334a1efb33cab72f04c73] | committer: R?mi Denis-Courmont Fix unitialized seekable variable > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d61e4c6c8231a3240fa334a1efb33cab72f04c73 --- modules/access/file.c | 18 +++++++++++++----- 1 files changed, 13 insertions(+), 5 deletions(-) diff --git a/modules/access/file.c b/modules/access/file.c index af90687..91f2a84 100644 --- a/modules/access/file.c +++ b/modules/access/file.c @@ -97,6 +97,7 @@ vlc_module_end () * Exported prototypes *****************************************************************************/ static int Seek( access_t *, int64_t ); +static int NoSeek( access_t *, int64_t ); static ssize_t Read( access_t *, uint8_t *, size_t ); static int Control( access_t *, int, va_list ); @@ -109,7 +110,6 @@ struct access_sys_t int fd; /* */ - bool b_seekable; bool b_pace_control; }; @@ -163,9 +163,10 @@ static int Open( vlc_object_t *p_this ) if (S_ISREG (st.st_mode)) p_access->info.i_size = st.st_size; else if (!S_ISBLK (st.st_mode)) - p_sys->b_seekable = false; + p_access->pf_seek = NoSeek; #else - p_sys->b_seekable = !b_stdin; + if (b_stdin) + p_access->pf_seek = NoSeek; # warning File size not known! #endif @@ -204,7 +205,7 @@ static ssize_t Read( access_t *p_access, uint8_t *p_buffer, size_t i_len ) ssize_t i_ret; #ifndef WIN32 - if (!p_sys->b_seekable) + if (p_access->pf_seek == NoSeek) i_ret = net_Read (p_access, fd, NULL, p_buffer, i_len, false); else #endif @@ -263,6 +264,13 @@ static int Seek (access_t *p_access, int64_t i_pos) return VLC_SUCCESS; } +static int NoSeek (access_t *p_access, int64_t i_pos) +{ + /* assert(0); ?? */ + (void) p_access; (void) i_pos; + return VLC_EGENERIC; +} + /***************************************************************************** * Control: *****************************************************************************/ @@ -278,7 +286,7 @@ static int Control( access_t *p_access, int i_query, va_list args ) case ACCESS_CAN_SEEK: case ACCESS_CAN_FASTSEEK: pb_bool = (bool*)va_arg( args, bool* ); - *pb_bool = p_sys->b_seekable; + *pb_bool = (p_access->pf_seek != NoSeek); break; case ACCESS_CAN_PAUSE: From mark.bidewell at alumni.clemson.edu Thu Feb 5 21:35:44 2009 From: mark.bidewell at alumni.clemson.edu (Mark Bidewell) Date: Thu, 5 Feb 2009 15:35:44 -0500 Subject: [vlc-devel] [PATCH] Overload toggleVisible() to update list with media from other interfaces. In-Reply-To: <1233791292-13453-3-git-send-email-mark.bidewell@alumni.clemson.edu> References: <1233791292-13453-3-git-send-email-mark.bidewell@alumni.clemson.edu> Message-ID: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Overload-toggleVisible-to-update-list-with-media-f.patch Type: text/x-patch Size: 1490 bytes Desc: not available URL: From git at videolan.org Thu Feb 5 22:26:39 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 22:26:39 +0100 (CET) Subject: [vlc-devel] commit: Do not save a vout if there is still an active vout. ( Laurent Aimar ) Message-ID: <20090205212639.856112EC57@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 22:24:56 2009 +0100| [de6ce14e7b6974f29b3dbafe21e594b549c96385] | committer: Laurent Aimar Do not save a vout if there is still an active vout. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=de6ce14e7b6974f29b3dbafe21e594b549c96385 --- src/input/ressource.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/input/ressource.c b/src/input/ressource.c index 8320e90..0fd1e3b 100644 --- a/src/input/ressource.c +++ b/src/input/ressource.c @@ -229,11 +229,12 @@ static vout_thread_t *RequestVout( input_ressource_t *p_ressource, vlc_mutex_lock( &p_ressource->lock_vout ); TAB_REMOVE( p_ressource->i_vout, p_ressource->pp_vout, p_vout ); + const int i_vout_active = p_ressource->i_vout; vlc_mutex_unlock( &p_ressource->lock_vout ); - if( p_ressource->p_vout_free ) + if( p_ressource->p_vout_free || i_vout_active > 0 ) { - msg_Dbg( p_ressource->p_input, "detroying vout (already one saved)" ); + msg_Dbg( p_ressource->p_input, "detroying vout (already one saved or active)" ); vout_CloseAndRelease( p_vout ); } else From git at videolan.org Thu Feb 5 23:23:51 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 23:23:51 +0100 (CET) Subject: [vlc-devel] commit: Clean up a bit audio input.c (Laurent Aimar ) Message-ID: <20090205222351.2072B2EC83@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 22:46:19 2009 +0100| [0c5f718e4920edfad7e168fdd295239e45e19274] | committer: Laurent Aimar Clean up a bit audio input.c > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0c5f718e4920edfad7e168fdd295239e45e19274 --- src/audio_output/input.c | 27 ++++++++++----------------- 1 files changed, 10 insertions(+), 17 deletions(-) diff --git a/src/audio_output/input.c b/src/audio_output/input.c index cf1a603..c2dd544 100644 --- a/src/audio_output/input.c +++ b/src/audio_output/input.c @@ -51,7 +51,7 @@ #define AOUT_ASSERT_INPUT_LOCKED vlc_assert_locked( &p_input->lock ) static void inputFailure( aout_instance_t *, aout_input_t *, const char * ); -static void inputDrop( aout_instance_t *, aout_input_t *, aout_buffer_t * ); +static void inputDrop( aout_input_t *, aout_buffer_t * ); static void inputResamplingStop( aout_input_t *p_input ); static int VisualizationCallback( vlc_object_t *, char const *, @@ -135,7 +135,7 @@ int aout_InputNew( aout_instance_t * p_aout, aout_input_t * p_input, const aout_ if( var_Get( p_aout, "effect-list", &val ) == VLC_SUCCESS ) { - var_Set( p_aout, "visual", val ); + var_SetString( p_aout, "visual", val.psz_string ); free( val.psz_string ); } var_AddCallback( p_aout, "visual", VisualizationCallback, NULL ); @@ -230,10 +230,8 @@ int aout_InputNew( aout_instance_t * p_aout, aout_input_t * p_input, const aout_ VLC_VAR_BOOL | VLC_VAR_DOINHERIT ); } - var_Get( p_aout, "audio-filter", &val ); - psz_filters = val.psz_string; - var_Get( p_aout, "audio-visual", &val ); - psz_visual = val.psz_string; + psz_filters = var_GetString( p_aout, "audio-filter" ); + psz_visual = var_GetString( p_aout, "audio-visual"); psz_scaletempo = var_GetBool( p_aout, "audio-time-stretch" ) ? strdup( "scaletempo" ) : NULL; @@ -540,7 +538,7 @@ int aout_InputPlay( aout_instance_t * p_aout, aout_input_t * p_input, if( i_input_rate != INPUT_RATE_DEFAULT && p_input->p_playback_rate_filter == NULL ) { - inputDrop( p_aout, p_input, p_buffer ); + inputDrop( p_input, p_buffer ); return 0; } @@ -607,7 +605,7 @@ int aout_InputPlay( aout_instance_t * p_aout, aout_input_t * p_input, msg_Warn( p_aout, "PTS is out of range (%"PRId64"), dropping buffer", mdate() - p_buffer->start_date ); - inputDrop( p_aout, p_input, p_buffer ); + inputDrop( p_input, p_buffer ); inputResamplingStop( p_input ); return 0; } @@ -634,7 +632,7 @@ int aout_InputPlay( aout_instance_t * p_aout, aout_input_t * p_input, { msg_Warn( p_aout, "audio drift is too big (%"PRId64"), dropping buffer", start_date - p_buffer->start_date ); - inputDrop( p_aout, p_input, p_buffer ); + inputDrop( p_input, p_buffer ); return 0; } @@ -784,7 +782,7 @@ static void inputFailure( aout_instance_t * p_aout, aout_input_t * p_input, p_input->b_error = 1; } -static void inputDrop( aout_instance_t *p_aout, aout_input_t *p_input, aout_buffer_t *p_buffer ) +static void inputDrop( aout_input_t *p_input, aout_buffer_t *p_buffer ) { aout_BufferFree( p_buffer ); @@ -823,7 +821,6 @@ static int VisualizationCallback( vlc_object_t *p_this, char const *psz_cmd, { aout_instance_t *p_aout = (aout_instance_t *)p_this; char *psz_mode = newval.psz_string; - vlc_value_t val; (void)psz_cmd; (void)oldval; (void)p_data; if( !psz_mode || !*psz_mode ) @@ -848,9 +845,8 @@ static int VisualizationCallback( vlc_object_t *p_this, char const *psz_cmd, } else { - val.psz_string = psz_mode; var_Create( p_aout, "effect-list", VLC_VAR_STRING ); - var_Set( p_aout, "effect-list", val ); + var_SetString( p_aout, "effect-list", psz_mode ); ChangeFiltersString( p_aout, "audio-visual", "goom", false ); ChangeFiltersString( p_aout, "audio-visual", "visual", true ); @@ -869,7 +865,6 @@ static int EqualizerCallback( vlc_object_t *p_this, char const *psz_cmd, { aout_instance_t *p_aout = (aout_instance_t *)p_this; char *psz_mode = newval.psz_string; - vlc_value_t val; int i_ret; (void)psz_cmd; (void)oldval; (void)p_data; @@ -880,12 +875,10 @@ static int EqualizerCallback( vlc_object_t *p_this, char const *psz_cmd, } else { - val.psz_string = psz_mode; var_Create( p_aout, "equalizer-preset", VLC_VAR_STRING ); - var_Set( p_aout, "equalizer-preset", val ); + var_SetString( p_aout, "equalizer-preset", psz_mode ); i_ret = ChangeFiltersString( p_aout, "audio-filter", "equalizer", true ); - } /* That sucks */ From git at videolan.org Thu Feb 5 23:23:51 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 23:23:51 +0100 (CET) Subject: [vlc-devel] commit: Fixed aout visual vout recycling. (Laurent Aimar ) Message-ID: <20090205222351.30C432EC8E@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 23:22:01 2009 +0100| [00b6b76217c39d6a7abfa0ada531b743b2aa594a] | committer: Laurent Aimar Fixed aout visual vout recycling. It closes #2471 It changes a bit the public API but cannot(?) be avoided. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=00b6b76217c39d6a7abfa0ada531b743b2aa594a --- include/vlc_aout.h | 3 ++- src/audio_output/filters.c | 3 ++- src/audio_output/input.c | 36 +++++++++++++++++++++++++++++++----- src/input/decoder.c | 13 +++++++++---- 4 files changed, 44 insertions(+), 11 deletions(-) diff --git a/include/vlc_aout.h b/include/vlc_aout.h index 98a2a58..e721fa2 100644 --- a/include/vlc_aout.h +++ b/include/vlc_aout.h @@ -226,7 +226,7 @@ struct aout_fifo_t typedef struct { vout_thread_t *(*pf_request_vout)( void *, - vout_thread_t *, video_format_t * ); + vout_thread_t *, video_format_t *, bool b_recycle ); void *p_private; } aout_request_vout_t; @@ -314,6 +314,7 @@ struct aout_input_t mtime_t i_pause_date; /* */ + bool b_recycle_vout; aout_request_vout_t request_vout; }; diff --git a/src/audio_output/filters.c b/src/audio_output/filters.c index 4cd202b..d29352f 100644 --- a/src/audio_output/filters.c +++ b/src/audio_output/filters.c @@ -383,6 +383,7 @@ vout_thread_t *aout_filter_RequestVout( aout_filter_t *p_filter, { if( !p_filter->request_vout.pf_request_vout ) return NULL; - return p_filter->request_vout.pf_request_vout( p_filter->request_vout.p_private, p_vout, p_fmt ); + return p_filter->request_vout.pf_request_vout( p_filter->request_vout.p_private, + p_vout, p_fmt, true ); } diff --git a/src/audio_output/input.c b/src/audio_output/input.c index c2dd544..b4d9c48 100644 --- a/src/audio_output/input.c +++ b/src/audio_output/input.c @@ -63,7 +63,10 @@ static int ReplayGainCallback( vlc_object_t *, char const *, static void ReplayGainSelect( aout_instance_t *, aout_input_t * ); static vout_thread_t *RequestVout( void *, - vout_thread_t *, video_format_t * ); + vout_thread_t *, video_format_t *, bool ); +static vout_thread_t *RequestVoutFromFilter( void *, + vout_thread_t *, video_format_t *, bool ); + /***************************************************************************** * aout_InputNew : allocate a new input and rework the filter pipeline *****************************************************************************/ @@ -232,9 +235,10 @@ int aout_InputNew( aout_instance_t * p_aout, aout_input_t * p_input, const aout_ psz_filters = var_GetString( p_aout, "audio-filter" ); psz_visual = var_GetString( p_aout, "audio-visual"); - psz_scaletempo = var_GetBool( p_aout, "audio-time-stretch" ) ? strdup( "scaletempo" ) : NULL; + p_input->b_recycle_vout = psz_visual && *psz_visual; + /* parse user filter lists */ for( i_visual = 0; i_visual < 3 && !AOUT_FMT_NON_LINEAR(&chain_output_format); i_visual++ ) { @@ -282,7 +286,9 @@ int aout_InputNew( aout_instance_t * p_aout, aout_input_t * p_input, const aout_ vlc_object_attach( p_filter , p_aout ); - p_filter->request_vout = p_input->request_vout; + p_filter->request_vout.pf_request_vout = RequestVoutFromFilter; + p_filter->request_vout.p_private = p_input; + p_filter->p_owner = malloc( sizeof(*p_filter->p_owner) ); p_filter->p_owner->p_aout = p_aout; p_filter->p_owner->p_input = p_input; @@ -479,7 +485,16 @@ int aout_InputNew( aout_instance_t * p_aout, aout_input_t * p_input, const aout_ int aout_InputDelete( aout_instance_t * p_aout, aout_input_t * p_input ) { AOUT_ASSERT_MIXER_LOCKED; - if ( p_input->b_error ) return 0; + if ( p_input->b_error ) + return 0; + + /* XXX We need to update b_recycle_vout before calling aout_FiltersDestroyPipeline. + * FIXME They can be a race condition if audio-visual is updated between + * aout_InputDelete and aout_InputNew. + */ + char *psz_visual = var_GetString( p_aout, "audio-visual"); + p_input->b_recycle_vout = psz_visual && *psz_visual; + free( psz_visual ); aout_FiltersDestroyPipeline( p_aout, p_input->pp_filters, p_input->i_nb_filters ); @@ -803,12 +818,23 @@ static void inputResamplingStop( aout_input_t *p_input ) } static vout_thread_t *RequestVout( void *p_private, - vout_thread_t *p_vout, video_format_t *p_fmt ) + vout_thread_t *p_vout, video_format_t *p_fmt, bool b_recycle ) { aout_instance_t *p_aout = p_private; + VLC_UNUSED(b_recycle); return vout_Request( p_aout, p_vout, p_fmt ); } +static vout_thread_t *RequestVoutFromFilter( void *p_private, + vout_thread_t *p_vout, video_format_t *p_fmt, bool b_recycle ) +{ + aout_input_t *p_input = p_private; + aout_request_vout_t *p_request = &p_input->request_vout; + + return p_request->pf_request_vout( p_request->p_private, + p_vout, p_fmt, p_input->b_recycle_vout && b_recycle ); +} + static int ChangeFiltersString( aout_instance_t * p_aout, const char* psz_variable, const char *psz_name, bool b_add ) { diff --git a/src/input/decoder.c b/src/input/decoder.c index 4a5eeff..bcae5fe 100644 --- a/src/input/decoder.c +++ b/src/input/decoder.c @@ -2105,12 +2105,17 @@ static void DecoderUpdateFormatLocked( decoder_t *p_dec ) p_dec->p_description = NULL; } static vout_thread_t *aout_request_vout( void *p_private, - vout_thread_t *p_vout, video_format_t *p_fmt ) + vout_thread_t *p_vout, video_format_t *p_fmt, bool b_recyle ) { decoder_t *p_dec = p_private; - - p_vout = input_ressource_RequestVout( p_dec->p_owner->p_input->p->p_ressource, p_vout, p_fmt ); - input_SendEventVout( p_dec->p_owner->p_input ); + input_thread_t *p_input = p_dec->p_owner->p_input; + + p_vout = input_ressource_RequestVout( p_input->p->p_ressource, p_vout, p_fmt ); + /* TODO it would be better to give b_recyle to input_ressource_RequestVout + * as here we are not sure of which vout we destroy */ + if( !b_recyle ) + input_ressource_TerminateVout( p_input->p->p_ressource ); + input_SendEventVout( p_input ); return p_vout; } From git at videolan.org Thu Feb 5 23:34:45 2009 From: git at videolan.org (git version control) Date: Thu, 5 Feb 2009 23:34:45 +0100 (CET) Subject: [vlc-devel] commit: Modify input_ressource_RequestVout to allow avoiding recycling. ( Laurent Aimar ) Message-ID: <20090205223445.1A2EF2EC8D@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 23:31:29 2009 +0100| [340272f8d4a2372ad56d6971e5964095e22f6e5d] | committer: Laurent Aimar Modify input_ressource_RequestVout to allow avoiding recycling. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=340272f8d4a2372ad56d6971e5964095e22f6e5d --- src/input/decoder.c | 10 +++------- src/input/ressource.c | 14 ++++++++------ src/input/ressource.h | 2 +- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/src/input/decoder.c b/src/input/decoder.c index bcae5fe..3f7ff47 100644 --- a/src/input/decoder.c +++ b/src/input/decoder.c @@ -2030,7 +2030,7 @@ static void DeleteDecoder( decoder_t * p_dec ) vout_ChangePause( p_owner->p_vout, false, mdate() ); /* */ - input_ressource_RequestVout( p_owner->p_input->p->p_ressource, p_owner->p_vout, NULL ); + input_ressource_RequestVout( p_owner->p_input->p->p_ressource, p_owner->p_vout, NULL, true ); input_SendEventVout( p_owner->p_input ); } @@ -2110,11 +2110,7 @@ static vout_thread_t *aout_request_vout( void *p_private, decoder_t *p_dec = p_private; input_thread_t *p_input = p_dec->p_owner->p_input; - p_vout = input_ressource_RequestVout( p_input->p->p_ressource, p_vout, p_fmt ); - /* TODO it would be better to give b_recyle to input_ressource_RequestVout - * as here we are not sure of which vout we destroy */ - if( !b_recyle ) - input_ressource_TerminateVout( p_input->p->p_ressource ); + p_vout = input_ressource_RequestVout( p_input->p->p_ressource, p_vout, p_fmt, b_recyle ); input_SendEventVout( p_input ); return p_vout; @@ -2293,7 +2289,7 @@ static picture_t *vout_new_buffer( decoder_t *p_dec ) vlc_mutex_unlock( &p_owner->lock ); p_vout = input_ressource_RequestVout( p_owner->p_input->p->p_ressource, - p_vout, &p_dec->fmt_out.video ); + p_vout, &p_dec->fmt_out.video, true ); vlc_mutex_lock( &p_owner->lock ); p_owner->p_vout = p_vout; diff --git a/src/input/ressource.c b/src/input/ressource.c index 0fd1e3b..11003d9 100644 --- a/src/input/ressource.c +++ b/src/input/ressource.c @@ -177,7 +177,8 @@ static void DisplayVoutTitle( input_ressource_t *p_ressource, free( psz_nowplaying ); } static vout_thread_t *RequestVout( input_ressource_t *p_ressource, - vout_thread_t *p_vout, video_format_t *p_fmt ) + vout_thread_t *p_vout, video_format_t *p_fmt, + bool b_recycle ) { if( !p_vout && !p_fmt ) { @@ -232,9 +233,10 @@ static vout_thread_t *RequestVout( input_ressource_t *p_ressource, const int i_vout_active = p_ressource->i_vout; vlc_mutex_unlock( &p_ressource->lock_vout ); - if( p_ressource->p_vout_free || i_vout_active > 0 ) + if( p_ressource->p_vout_free || i_vout_active > 0 || !b_recycle ) { - msg_Dbg( p_ressource->p_input, "detroying vout (already one saved or active)" ); + if( b_recycle ) + msg_Dbg( p_ressource->p_input, "detroying vout (already one saved or active)" ); vout_CloseAndRelease( p_vout ); } else @@ -388,10 +390,10 @@ void input_ressource_SetInput( input_ressource_t *p_ressource, input_thread_t *p } vout_thread_t *input_ressource_RequestVout( input_ressource_t *p_ressource, - vout_thread_t *p_vout, video_format_t *p_fmt ) + vout_thread_t *p_vout, video_format_t *p_fmt, bool b_recycle ) { vlc_mutex_lock( &p_ressource->lock ); - vout_thread_t *p_ret = RequestVout( p_ressource, p_vout, p_fmt ); + vout_thread_t *p_ret = RequestVout( p_ressource, p_vout, p_fmt, b_recycle ); vlc_mutex_unlock( &p_ressource->lock ); return p_ret; @@ -406,7 +408,7 @@ void input_ressource_HoldVouts( input_ressource_t *p_ressource, vout_thread_t ** } void input_ressource_TerminateVout( input_ressource_t *p_ressource ) { - input_ressource_RequestVout( p_ressource, NULL, NULL ); + input_ressource_RequestVout( p_ressource, NULL, NULL, false ); } bool input_ressource_HasVout( input_ressource_t *p_ressource ) { diff --git a/src/input/ressource.h b/src/input/ressource.h index 4409a88..f0e0aef 100644 --- a/src/input/ressource.h +++ b/src/input/ressource.h @@ -60,7 +60,7 @@ aout_instance_t *input_ressource_HoldAout( input_ressource_t *p_ressource ); /** * This function handles vout request. */ -vout_thread_t *input_ressource_RequestVout( input_ressource_t *, vout_thread_t *, video_format_t * ); +vout_thread_t *input_ressource_RequestVout( input_ressource_t *, vout_thread_t *, video_format_t *, bool b_recycle ); /** * This function return one of the current vout if any. From erappleman at gmail.com Fri Feb 6 08:10:44 2009 From: erappleman at gmail.com (Eric Appleman) Date: Fri, 06 Feb 2009 02:10:44 -0500 Subject: [vlc-devel] [PATCH] Added functionality and bugfixes for libass Message-ID: <498BE274.3010104@gmail.com> From the MPlayer mailing lists: Hello, libass is starting to get old. This patch fixes various problems and adds support for new stuff. In detail it adds stubs for most features introduced in vsfilter 2.39, implements \blur and \be > 1 (often used in more recent anime fansubs), corrects fix_outline_and_shadow() for transparency + anti-aliasing, fixes first-tag-wins for \pos and \move. There's more to come... Grigori -------------- next part -------------- A non-text attachment was scrubbed... Name: mplayer-libass-fixes.patch Type: text/x-diff Size: 10433 bytes Desc: not available Url : http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20090206/6677a4e7/attachment.patch From xxcv07 at gmail.com Fri Feb 6 08:23:31 2009 From: xxcv07 at gmail.com (xxcv) Date: Fri, 06 Feb 2009 18:23:31 +1100 Subject: [vlc-devel] [PATCH] Added functionality and bugfixes for libass In-Reply-To: <498BE274.3010104@gmail.com> References: <498BE274.3010104@gmail.com> Message-ID: <498BE573.9010500@gmail.com> Eric Appleman wrote: > From the MPlayer mailing lists: > > Hello, > > libass is starting to get old. This patch fixes various problems and > adds support for new stuff. > Unless the maintainer of libass isn't responding. I think the correct path of sending the patch to is at the following URL http://sourceforge.net/projects/libass and the person in question which you need to contact would be at the following URL http://sourceforge.net/users/azzy_/ From erappleman at gmail.com Fri Feb 6 08:35:17 2009 From: erappleman at gmail.com (Eric Appleman) Date: Fri, 06 Feb 2009 02:35:17 -0500 Subject: [vlc-devel] [PATCH] Added functionality and bugfixes for libass In-Reply-To: <498BE573.9010500@gmail.com> References: <498BE274.3010104@gmail.com> <498BE573.9010500@gmail.com> Message-ID: <498BE835.5050401@gmail.com> xxcv wrote: > Eric Appleman wrote: > >> From the MPlayer mailing lists: >> >> Hello, >> >> libass is starting to get old. This patch fixes various problems and >> adds support for new stuff. >> >> > Unless the maintainer of libass isn't responding. > I think the correct path of sending the patch to is at the following URL > http://sourceforge.net/projects/libass > and the person in question which you need to contact would be at the > following URL > http://sourceforge.net/users/azzy_/ > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > > The sourceforge page is obsolete. VLC already uses libass code newer than what the site offers. Also, Evgeniy, the maintainer for libass on mplayer, said he doesn't have have the spare time to do coding. He said he'd be happy to review patches though. -------------- next part -------------- An HTML attachment was scrubbed... URL: From erappleman at gmail.com Fri Feb 6 08:44:23 2009 From: erappleman at gmail.com (Eric Appleman) Date: Fri, 06 Feb 2009 02:44:23 -0500 Subject: [vlc-devel] [PATCH] Added functionality and bugfixes for libass In-Reply-To: <498BE274.3010104@gmail.com> References: <498BE274.3010104@gmail.com> Message-ID: <498BEA57.5030907@gmail.com> Further details of the fixes: http://greg.geekmind.org/mplayer/ From git at videolan.org Fri Feb 6 11:02:37 2009 From: git at videolan.org (git version control) Date: Fri, 6 Feb 2009 11:02:37 +0100 (CET) Subject: [vlc-devel] commit: Qt: new icon for new profile. (Jean-Baptiste Kempf ) Message-ID: <20090206100237.07BF12ECA1@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 6 11:02:20 2009 +0100| [a18c16686cab31048204ca5946cff2bebd2e4a06] | committer: Jean-Baptiste Kempf Qt: new icon for new profile. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a18c16686cab31048204ca5946cff2bebd2e4a06 --- .../gui/qt4/components/sout/profile_selector.cpp | 2 +- modules/gui/qt4/pixmaps/profile_new.png | Bin 0 -> 527 bytes modules/gui/qt4/vlc.qrc | 1 + 3 files changed, 2 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/sout/profile_selector.cpp b/modules/gui/qt4/components/sout/profile_selector.cpp index 9dd0f7b..b52d17f 100644 --- a/modules/gui/qt4/components/sout/profile_selector.cpp +++ b/modules/gui/qt4/components/sout/profile_selector.cpp @@ -29,7 +29,7 @@ VLCProfileSelector::VLCProfileSelector( QWidget *_parent ): QWidget( _parent ) layout->addWidget( deleteButton ); QToolButton *newButton = new QToolButton( this ); -// newButton->setIcon( QIcon( ":/clear" ) ); + newButton->setIcon( QIcon( ":/new" ) ); newButton->setToolTip( qtr( "Create a new profile" ) ); layout->addWidget(newButton); diff --git a/modules/gui/qt4/pixmaps/profile_new.png b/modules/gui/qt4/pixmaps/profile_new.png new file mode 100644 index 0000000..cddf7a2 Binary files /dev/null and b/modules/gui/qt4/pixmaps/profile_new.png differ diff --git a/modules/gui/qt4/vlc.qrc b/modules/gui/qt4/vlc.qrc index 39389db..9a3c2e3 100644 --- a/modules/gui/qt4/vlc.qrc +++ b/modules/gui/qt4/vlc.qrc @@ -89,5 +89,6 @@ pixmaps/noart.png pixmaps/space.png pixmaps/go-next.png + pixmaps/profile_new.png From git at videolan.org Fri Feb 6 20:20:09 2009 From: git at videolan.org (git version control) Date: Fri, 6 Feb 2009 20:20:09 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_contribs=3A_updated_yasm_to_0=2E7?= =?utf-8?q?=2E_2_and_enabled_its_compilation_explictly_on_Darwin=2E_=28_Fe?= =?utf-8?b?bGl4IEvDvGhuZSAp?= Message-ID: <20090206192009.6D4FB2ECCC@skanda.videolan.org> vlc | branch: master | Felix K?hne | Fri Feb 6 20:20:05 2009 +0100| [571e981e37a29e3bc9f3bafdcff2a6090f088a3f] | committer: Felix K?hne contribs: updated yasm to 0.7.2 and enabled its compilation explictly on Darwin. Additionally, disabled ASM optimisations on Darwin 10 for libtheora and switched the default SDK to 10.5 to turn potential 64bit builds more compatible > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=571e981e37a29e3bc9f3bafdcff2a6090f088a3f --- extras/contrib/bootstrap | 2 +- extras/contrib/src/Distributions/darwin.mak | 4 ++-- extras/contrib/src/Makefile | 4 ++++ extras/contrib/src/packages.mak | 6 +++--- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/extras/contrib/bootstrap b/extras/contrib/bootstrap index e5266a4..4264b90 100755 --- a/extras/contrib/bootstrap +++ b/extras/contrib/bootstrap @@ -219,7 +219,7 @@ case $HOST in fi ;; *-apple-darwin10) - SDK_TARGET=10.6 + SDK_TARGET=10.5 echo "SDK_TARGET = ${SDK_TARGET}" >> config.mak echo "HAVE_DARWIN_OS_ON_INTEL = 1" >> config.mak echo "HAVE_DARWIN_9 = 1" >> config.mak diff --git a/extras/contrib/src/Distributions/darwin.mak b/extras/contrib/src/Distributions/darwin.mak index 09d280c..ac34767 100644 --- a/extras/contrib/src/Distributions/darwin.mak +++ b/extras/contrib/src/Distributions/darwin.mak @@ -1,12 +1,12 @@ # Darwin rules -all: .autoconf .gnumake .automake .libtool .intl .pkgcfg .freetype \ +all: .autoconf .gnumake .automake .libtool .intl .pkgcfg .yasm .freetype \ .fribidi .a52 .mpeg2 .id3tag .mad .ogg .vorbis .vorbisenc .theora \ .flac .speex .shout .faad .faac .lame .twolame .ebml .matroska .ffmpeg \ .dvdcss .libdvdread .dvdnav .dvbpsi .live .caca .mod .fontconfig \ .png .gpg-error .gcrypt .gnutls .cddb .cdio .vcdimager \ .SDL_image .glib .gecko .mpcdec .dirac_encoder .dirac_decoder \ .dca .tag .x264 .goom2k4 .lua .zvbi .fontconfig .ncurses .liboil \ - .schroedinger .libass .aclocal .libupnp + .schroedinger .libass .libupnp .aclocal # .expat .clinkcc don't work with SDK yet # .glib .IDL .gecko are required to build the mozilla plugin # .mozilla-macosx will build an entire mozilla. it can be used if we need to create a new .gecko package diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 7cc7a0c..46a0662 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -794,6 +794,10 @@ ifdef HAVE_WIN32 THEORACONF += --disable-docs endif +ifdef HAVE_DARWIN_10 +THEORACONF += --disable-asm +endif + .theora: libtheora .ogg ifdef HAVE_BEOS (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) $(THEORACONF) --disable-asm && make && make install) diff --git a/extras/contrib/src/packages.mak b/extras/contrib/src/packages.mak index fa7d2fb..b564ca6 100644 --- a/extras/contrib/src/packages.mak +++ b/extras/contrib/src/packages.mak @@ -215,9 +215,9 @@ PCRE_VERSION=7.6 PCRE_URL=ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-$(PCRE_VERSION).tar.bz2 FLUID_VERSION=1.0.8 FLUID_URL=http://download.savannah.gnu.org/releases/fluid/fluidsynth-$(FLUID_VERSION).tar.gz -YASM_VERSION=0.7.0 -YASM_URL=$(VIDEOLAN)/testing/contrib/yasm-$(YASM_VERSION).tar.gz -#YASM_URL=http://www.tortall.net/projects/yasm/releases/yasm-$(YASM_VERSION).tar.gz +YASM_VERSION=0.7.2 +#YASM_URL=$(VIDEOLAN)/testing/contrib/yasm-$(YASM_VERSION).tar.gz +YASM_URL=http://www.tortall.net/projects/yasm/releases/yasm-$(YASM_VERSION).tar.gz KATE_VERSION=0.1.7 KATE_URL=http://libkate.googlecode.com/files/libkate-$(KATE_VERSION).tar.gz TIGER_VERSION=0.3.1 From fkuehne.videolan at googlemail.com Fri Feb 6 23:15:47 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_K=FChne?=) Date: Fri, 6 Feb 2009 23:15:47 +0100 Subject: [vlc-devel] VLC for Mac 64bit, the first step Message-ID: Hello guys, I just uploaded a contrib-package compiled for Darwin x86_64 to Ganesh. It is automatically used by "make bin" on Darwin 10 and can easily be used on Darwin 9, too, if you edit config.mak after bootstrapping (just change the ARCH variable from "i386" to "x86_64"). The package only lacks MMX support in goom and any support for SDL (their port to Cocoa will be part of their 1.3 release - however, it isn't complete yet). However, this is just the first step. VLC.app won't compile in 64bit mode for now. All Carbon code will need to be replaced with the cocoa equivalent, so the QTKit input, the AUHAL aout and the OS X interface (including the OS X - specific OpenGL vout) won't be available for now. Thus, this adaptation will mostly need to wait until we branch VLC 1.1. So, feel free to play around, if you are bored ;-) Best regards, Felix -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Fri Feb 6 23:59:27 2009 From: git at videolan.org (git version control) Date: Fri, 6 Feb 2009 23:59:27 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A__updated_used_Cocoa_met?= =?utf-8?q?hods_to_the_current_definitions_and_fixed_a_few_logic_errors_?= =?utf-8?q?=2C_which_only_occur_in_64_bit_mode_=28_Felix_Paul_K=C3=BChne__?= =?utf-8?q?=29?= Message-ID: <20090206225927.A4DD92E8A8@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Fri Feb 6 23:59:21 2009 +0100| [2fb774083c26f2d9ecac5e350b66c85d9feced25] | committer: Felix Paul K?hne macosx: updated used Cocoa methods to the current definitions and fixed a few logic errors, which only occur in 64 bit mode > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2fb774083c26f2d9ecac5e350b66c85d9feced25 --- modules/gui/macosx/AppleRemote.m | 6 +++++- modules/gui/macosx/bookmarks.m | 4 ++-- modules/gui/macosx/extended.m | 24 ++++++++++++------------ modules/gui/macosx/fspanel.m | 2 +- modules/gui/macosx/interaction.m | 4 ++-- modules/gui/macosx/intf.m | 2 +- modules/gui/macosx/misc.m | 4 ++-- modules/gui/macosx/playlist.m | 10 +++++----- modules/gui/macosx/playlistinfo.m | 4 ++-- modules/gui/macosx/prefs.m | 4 ++-- modules/gui/macosx/prefs_widgets.m | 18 +++++++++--------- modules/gui/macosx/simple_prefs.m | 10 +++++----- 12 files changed, 48 insertions(+), 44 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=2fb774083c26f2d9ecac5e350b66c85d9feced25 From brezhoneg1 at yahoo.fr Sat Feb 7 00:28:40 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Sat, 7 Feb 2009 00:28:40 +0100 Subject: [vlc-devel] RE : libvlc regression In-Reply-To: <200902021953.44368.rem@videolan.org> Message-ID: <000001c988b2$a6473310$3053fac1@CCCC> Just to let you know libvlc still isn't working properly with the newly written drawable.c In media_player.c, "drawable-xid" is attached to the input object. In drawable.c, "drawable-xid" is attached to the libvlc object. I guess "drawable-xid" attached to the input object was chosen to allow multiple media_players inside a single instance of libvlc. Erwan10 From git at videolan.org Sat Feb 7 00:51:12 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 00:51:12 +0100 (CET) Subject: [vlc-devel] commit: Qt Fix profile edition and saving. Close #2477 ( Jean-Baptiste Kempf ) Message-ID: <20090206235112.61B912E8A8@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 00:50:07 2009 +0100| [0ea61050862d41d60e430fa66d613b8650b40150] | committer: Jean-Baptiste Kempf Qt Fix profile edition and saving. Close #2477 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0ea61050862d41d60e430fa66d613b8650b40150 --- .../gui/qt4/components/sout/profile_selector.cpp | 3 ++- .../gui/qt4/components/sout/profile_selector.hpp | 2 +- modules/gui/qt4/util/qvlcframe.hpp | 12 +++++------- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/modules/gui/qt4/components/sout/profile_selector.cpp b/modules/gui/qt4/components/sout/profile_selector.cpp index b52d17f..4893c17 100644 --- a/modules/gui/qt4/components/sout/profile_selector.cpp +++ b/modules/gui/qt4/components/sout/profile_selector.cpp @@ -58,6 +58,7 @@ inline void VLCProfileSelector::fillProfilesCombo() for( int i = 0; i < i_size; i++ ) { settings.setArrayIndex( i ); + if( settings.value( "Profile-Name" ).toString().isEmpty() ) continue; profileBox->addItem( settings.value( "Profile-Name" ).toString(), settings.value( "Profile-Value" ) ); } @@ -204,7 +205,7 @@ VLCProfileEditor::VLCProfileEditor( QString qs_name, QString value, inline void VLCProfileEditor::registerCodecs() { - + #define ADD_VCODEC( name, fourcc ) ui.vCodecBox->addItem( name, QVariant( fourcc ) ); ADD_VCODEC( "MPEG-1", "mp1v" ) ADD_VCODEC( "MPEG-2", "mp2v" ) diff --git a/modules/gui/qt4/components/sout/profile_selector.hpp b/modules/gui/qt4/components/sout/profile_selector.hpp index 6a70db5..e8b4364 100644 --- a/modules/gui/qt4/components/sout/profile_selector.hpp +++ b/modules/gui/qt4/components/sout/profile_selector.hpp @@ -70,7 +70,7 @@ public: private: void registerCodecs(); void fillProfile( QString qs ); -protected: +protected slots: virtual void close(); private slots: void setVTranscodeOptions( bool ); diff --git a/modules/gui/qt4/util/qvlcframe.hpp b/modules/gui/qt4/util/qvlcframe.hpp index b48c3ca..059497f 100644 --- a/modules/gui/qt4/util/qvlcframe.hpp +++ b/modules/gui/qt4/util/qvlcframe.hpp @@ -155,13 +155,13 @@ protected: { if( keyEvent->key() == Qt::Key_Escape ) { - cancel(); + this->cancel(); } else if( keyEvent->key() == Qt::Key_Return || keyEvent->key() == Qt::Key_Enter ) { - close(); - } + this->close(); + } } }; @@ -193,14 +193,12 @@ protected: { if( keyEvent->key() == Qt::Key_Escape ) { - msg_Dbg( p_intf, "Escp Key pressed" ); - cancel(); + this->cancel(); } else if( keyEvent->key() == Qt::Key_Return || keyEvent->key() == Qt::Key_Enter ) { - msg_Dbg( p_intf, "Enter Key pressed" ); - close(); + this->close(); } } }; From webmail.hce at gmail.com Sat Feb 7 00:53:50 2009 From: webmail.hce at gmail.com (hce) Date: Sat, 7 Feb 2009 10:53:50 +1100 Subject: [vlc-devel] Play tga format movie In-Reply-To: <1233396024128.agent_007.8967.7tI5DsEoXXsq_ePTfxubtg@luukku.com> References: <1233396024128.agent_007.8967.7tI5DsEoXXsq_ePTfxubtg@luukku.com> Message-ID: <95455e980902061553y3d6a025arde7ab72dbaa02a7c@mail.gmail.com> On Sat, Jan 31, 2009 at 9:00 PM, Kaarlo R?ih? wrote: > So you have video file where every frame is compressed with TGA image compression? Yes, correct it is TGA image , but may or may not be compressed. Thank you. > hce kirjoitti 31.01.2009 kello 00:43: >> Hi, >> >> Can VLC play movie in tga format? If yes, what options I need to build >> the vlc playing tga movie from the source tree? >> >> Thank you. >> >> Kind Regards, >> >> Mayer >> _______________________________________________ >> vlc-devel mailing list >> To unsubscribe or modify your subscription options: >> http://mailman.videolan.org/listinfo/vlc-devel > > > ................................................................... > Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. > Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > From git at videolan.org Sat Feb 7 09:50:38 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 09:50:38 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_drawable=3A_handle_the_case_that_?= =?utf-8?q?drawable_is_per-input_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090207085038.2B2002ED0C@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 7 10:47:45 2009 +0200| [ca6444e86645cb5a89d3e629e4c6d28ecd1e055b] | committer: R?mi Denis-Courmont drawable: handle the case that drawable is per-input It only works -properly- if there is only one video output. This is no worse than earlier releases. Pointed-out-by: brezhoneg1 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ca6444e86645cb5a89d3e629e4c6d28ecd1e055b --- modules/video_output/drawable.c | 25 ++++++++++++++++++++----- 1 files changed, 20 insertions(+), 5 deletions(-) diff --git a/modules/video_output/drawable.c b/modules/video_output/drawable.c index 113ddb1..b904ff9 100644 --- a/modules/video_output/drawable.c +++ b/modules/video_output/drawable.c @@ -63,22 +63,37 @@ static int Open (vlc_object_t *obj, const char *varname, bool ptr) { static vlc_mutex_t serializer = VLC_STATIC_MUTEX; vout_window_t *wnd = (vout_window_t *)obj; - vlc_value_t val; + vlc_value_t val, globval; - if (var_Create (obj->p_libvlc, "drawable-busy", VLC_VAR_BOOL)) + if (var_Create (obj->p_libvlc, "drawable-busy", VLC_VAR_BOOL) + || var_Create (obj, varname, VLC_VAR_DOINHERIT + | (ptr ? VLC_VAR_ADDRESS : VLC_VAR_INTEGER))) return VLC_ENOMEM; + var_Get (obj, varname, &val); vlc_mutex_lock (&serializer); /* Note: We cannot simply clear the drawable variable. * It would break libvlc_video_get_parent(). */ - if (!var_GetBool (obj->p_libvlc, "drawable-busy")) + var_Get (obj->p_libvlc, varname, &globval); + if (ptr ? (val.p_address == globval.p_address) + : (val.i_int == globval.i_int)) { - var_Get (obj->p_libvlc, varname, &val); - if (ptr ? (val.p_address != NULL): (val.i_int == 0)) + if (var_GetBool (obj->p_libvlc, "drawable-busy")) + { /* LibVLC-wide drawable already in use */ + if (ptr) + val.p_address = NULL; + else + val.i_int = 0; + } + else var_SetBool (obj->p_libvlc, "drawable-busy", true); } + /* If we got a drawable _not_ from the root object (from the input?), + * We assume it is not busy. This is a bug. */ vlc_mutex_unlock (&serializer); + var_Destroy (obj, varname); + if (ptr ? (val.p_address == NULL) : (val.i_int == 0)) { var_Destroy (obj->p_libvlc, "drawable-busy"); From agent_007 at luukku.com Sat Feb 7 10:01:14 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Sat, 7 Feb 2009 11:01:14 +0200 (EET) Subject: [vlc-devel] Play tga format movie Message-ID: <1233997274863.agent_007.6676.gYhejUxBW6dnokmewv8cuA@luukku.com> hce kirjoitti 07.02.2009 kello 01:53: > On Sat, Jan 31, 2009 at 9:00 PM, Kaarlo R?ih? > wrote: > > So you have video file where every frame is compressed with TGA image > compression? > > Yes, correct it is TGA image , but may or may not be compressed. > > Thank you. > VLC 0.9.x supports uncompressed single TGA images. VLC 1.0.0 supports both uncompressed and compressed TGA files (and it also has better single image playback). > > > hce kirjoitti 31.01.2009 kello 00:43: > >> Hi, > >> > >> Can VLC play movie in tga format? If yes, what options I need to build > >> the vlc playing tga movie from the source tree? > >> > >> Thank you. > >> > >> Kind Regards, > >> > >> Mayer > >> _______________________________________________ > >> vlc-devel mailing list > >> To unsubscribe or modify your subscription options: > >> http://mailman.videolan.org/listinfo/vlc-devel > > > > > > ................................................................... > > Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. > > Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku > > _______________________________________________ > > vlc-devel mailing list > > To unsubscribe or modify your subscription options: > > http://mailman.videolan.org/listinfo/vlc-devel > > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku From git at videolan.org Sat Feb 7 16:33:40 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 16:33:40 +0100 (CET) Subject: [vlc-devel] commit: wmafixed: handle error cases (fixes #2474) (Jean-Paul Saman ) Message-ID: <20090207153340.3540A2ED0C@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Sat Feb 7 16:25:34 2009 +0100| [9bca33b943a8e79c19644a593da8a67440814811] | committer: Jean-Paul Saman wmafixed: handle error cases (fixes #2474) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9bca33b943a8e79c19644a593da8a67440814811 --- modules/codec/wmafixed/wma.c | 32 +++++++++++++++++++++++++++----- 1 files changed, 27 insertions(+), 5 deletions(-) diff --git a/modules/codec/wmafixed/wma.c b/modules/codec/wmafixed/wma.c index ba66158..9ceee09 100644 --- a/modules/codec/wmafixed/wma.c +++ b/modules/codec/wmafixed/wma.c @@ -198,13 +198,23 @@ static aout_buffer_t *DecodeFrame( decoder_t *p_dec, block_t **pp_block ) { decoder_sys_t *p_sys = p_dec->p_sys; block_t *p_block; - mtime_t start = mdate(); /* for statistics */ aout_buffer_t *p_aout_buffer = NULL; +#ifdef NDEBUG + mtime_t start = mdate(); /* for statistics */ +#endif if( !pp_block || !*pp_block ) return NULL; p_block = *pp_block; + if( p_block->i_flags&(BLOCK_FLAG_DISCONTINUITY|BLOCK_FLAG_CORRUPTED) ) + { + aout_DateSet( &p_sys->end_date, 0 ); + block_Release( p_block ); + *pp_block = NULL; + return NULL; + } + if( p_block->i_buffer <= 0 ) { /* we already decoded the samples, just feed a few to aout */ @@ -235,8 +245,14 @@ static aout_buffer_t *DecodeFrame( decoder_t *p_dec, block_t **pp_block ) return NULL; } - wma_decode_superframe_init( &p_sys->wmadec, p_block->p_buffer, - p_block->i_buffer ); + if( wma_decode_superframe_init( &p_sys->wmadec, p_block->p_buffer, + p_block->i_buffer ) == 0 ) + { + msg_Err( p_dec, "failed initializing wmafixed decoder" ); + block_Release( p_block ); + *pp_block = NULL; + return NULL; + } if( p_sys->wmadec.nb_frames <= 0 ) { @@ -248,6 +264,8 @@ static aout_buffer_t *DecodeFrame( decoder_t *p_dec, block_t **pp_block ) /* worst case */ size_t i_buffer = BLOCK_MAX_SIZE * MAX_CHANNELS * p_sys->wmadec.nb_frames; + if( p_sys->p_output ) + free( p_sys->p_output ); p_sys->p_output = malloc(i_buffer * sizeof(int32_t) ); p_sys->p_samples = (int8_t*)p_sys->p_output; @@ -269,10 +287,14 @@ static aout_buffer_t *DecodeFrame( decoder_t *p_dec, block_t **pp_block ) p_block->p_buffer, p_block->i_buffer ); if( i_samples < 0 ) + { msg_Warn( p_dec, "wma_decode_superframe_frame() failed for frame %d", i ); - else - p_sys->i_samples += i_samples; /* advance in the samples buffer */ + free( p_sys->p_output ); + p_sys->p_output = NULL; + return NULL; + } + p_sys->i_samples += i_samples; /* advance in the samples buffer */ } p_block->i_buffer = 0; /* this block has been decoded */ From git at videolan.org Sat Feb 7 16:33:40 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 16:33:40 +0100 (CET) Subject: [vlc-devel] commit: wmafixed: optimize (Jean-Paul Saman ) Message-ID: <20090207153340.474D92ED5B@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Sat Feb 7 16:29:41 2009 +0100| [67415a4c979fc38b6b604b6f87d5e7d4220ba33f] | committer: Jean-Paul Saman wmafixed: optimize > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=67415a4c979fc38b6b604b6f87d5e7d4220ba33f --- modules/codec/wmafixed/wmadeci.c | 4 ++-- modules/codec/wmafixed/wmafixed.c | 14 +++++++------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/modules/codec/wmafixed/wmadeci.c b/modules/codec/wmafixed/wmadeci.c index 29a4e48..41ff8fb 100644 --- a/modules/codec/wmafixed/wmadeci.c +++ b/modules/codec/wmafixed/wmadeci.c @@ -238,7 +238,7 @@ static void wma_window(WMADecodeContext *s, int32_t *in, int32_t *out) /*previous block was smaller or the same size, so use it's size to set the window length*/ block_len = 1 << s->prev_block_len_bits; /*find the middle of the two overlapped blocks, this will be the first overlapped sample*/ - n = (s->block_len - block_len) / 2; + n = (s->block_len - block_len) >> 1; bsize = s->frame_len_bits - s->prev_block_len_bits; vector_fmul_add_add(out+n, in+n, s->windows[bsize], block_len); @@ -261,7 +261,7 @@ static void wma_window(WMADecodeContext *s, int32_t *in, int32_t *out) } else { block_len = 1 << s->next_block_len_bits; - n = (s->block_len - block_len) / 2; + n = (s->block_len - block_len) >> 1; bsize = s->frame_len_bits - s->next_block_len_bits; memcpy(out, in, n*sizeof(int32_t)); diff --git a/modules/codec/wmafixed/wmafixed.c b/modules/codec/wmafixed/wmafixed.c index 0656c61..c178f44 100644 --- a/modules/codec/wmafixed/wmafixed.c +++ b/modules/codec/wmafixed/wmafixed.c @@ -122,7 +122,7 @@ int32_t fixsqrt32(int32_t x) #undef STEP - return (int32_t)(r << (PRECISION / 2)); + return (int32_t)(r << (PRECISION >> 1)); } /* Inverse gain of circular cordic rotation in s0.31 format. */ @@ -191,17 +191,17 @@ long fsincos(unsigned long phase, int32_t *cos) z = phase; /* The phase has to be somewhere between 0..pi for this to work right */ - if (z < 0xffffffff / 4) { + if (z < 0xffffffff >> 2) { /* z in first quadrant, z += pi/2 to correct */ x = -x; - z += 0xffffffff / 4; - } else if (z < 3 * (0xffffffff / 4)) { + z += 0xffffffff >> 2; + } else if (z < 3 * (0xffffffff >> 2)) { /* z in third quadrant, z -= pi/2 to correct */ - z -= 0xffffffff / 4; + z -= 0xffffffff >> 2; } else { /* z in fourth quadrant, z -= 3pi/2 to correct */ x = -x; - z -= 3 * (0xffffffff / 4); + z -= 3 * (0xffffffff >> 2); } /* Each iteration adds roughly 1-bit of extra precision */ @@ -211,7 +211,7 @@ long fsincos(unsigned long phase, int32_t *cos) z1 = atan_table[i]; /* Decided which direction to rotate vector. Pivot point is pi/2 */ - if (z >= 0xffffffff / 4) { + if (z >= 0xffffffff >> 2) { x -= y1; y += x1; z -= z1; From rem at videolan.org Sat Feb 7 17:29:13 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Sat, 7 Feb 2009 18:29:13 +0200 Subject: [vlc-devel] commit: wmafixed: optimize (Jean-Paul Saman ) In-Reply-To: <20090207153340.474D92ED5B@skanda.videolan.org> References: <20090207153340.474D92ED5B@skanda.videolan.org> Message-ID: <200902071829.13383.rem@videolan.org> Le samedi 7 f?vrier 2009 17:33:40 git version control, vous avez ?crit?: > vlc | branch: master | Jean-Paul Saman | Sat Feb > 7 16:29:41 2009 +0100| [67415a4c979fc38b6b604b6f87d5e7d4220ba33f] | > committer: Jean-Paul Saman > > wmafixed: optimize You're not going to beat the compiler at such trivial optimizations (or your compiler is really bloody stupid). -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From rem at videolan.org Sat Feb 7 17:55:27 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 7 Feb 2009 18:55:27 +0200 Subject: [vlc-devel] VLC for Mac 64bit, the first step In-Reply-To: References: Message-ID: <200902071855.27362.rem@videolan.org> Le samedi 7 f?vrier 2009 00:15:47 Felix K?hne, vous avez ?crit?: > However, this is just the first step. VLC.app won't compile in 64bit mode > for now. All Carbon code will need to be replaced with the cocoa > equivalent, so the QTKit input, the AUHAL aout and the OS X interface > (including the OS X - specific OpenGL vout) won't be available for now. > Thus, this adaptation will mostly need to wait until we branch VLC 1.1. Special credits to a brain-damaged API prototype, it is impossible to set a custom drawable if 'sizeof(int) < sizeof(drawable)'. This affects both LP64 OSX and LLP64 Win64 platforms (It does not affect X11). -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Sat Feb 7 18:32:20 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 18:32:20 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Add_libvlc=5Fmedia=5Fplayer=5Fset?= =?utf-8?q?=5Fhwnd_and_libvlc=5Fmedia=5Fplayer=5Fset=5Fxid_=28_R=C3=A9mi_D?= =?utf-8?q?enis-Courmont_=29?= Message-ID: <20090207173220.6D6FC2E8C0@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 7 19:21:01 2009 +0200| [dc37025c2dcd42c4153ac196405b9b15489d0397] | committer: R?mi Denis-Courmont Add libvlc_media_player_set_hwnd and libvlc_media_player_set_xid > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dc37025c2dcd42c4153ac196405b9b15489d0397 --- include/vlc/libvlc.h | 33 ++++++++++++++++++++++++++++++++- include/vlc/libvlc_structures.h | 2 +- src/control/libvlc_internal.h | 2 +- src/control/media_player.c | 33 ++++++++++++++++++++++++--------- src/libvlc.sym | 2 ++ 5 files changed, 60 insertions(+), 12 deletions(-) diff --git a/include/vlc/libvlc.h b/include/vlc/libvlc.h index baab65f..a720c76 100644 --- a/include/vlc/libvlc.h +++ b/include/vlc/libvlc.h @@ -445,7 +445,7 @@ VLC_PUBLIC_API void * /** \defgroup libvlc_media_player libvlc_media_player * \ingroup libvlc * LibVLC Media Player, object that let you play a media - * in a libvlc_drawable_t + * in a custom drawable * @{ */ @@ -550,6 +550,37 @@ VLC_PUBLIC_API void libvlc_media_player_pause ( libvlc_media_player_t *, libvlc_ VLC_PUBLIC_API void libvlc_media_player_stop ( libvlc_media_player_t *, libvlc_exception_t * ); /** + * Set an X Window System drawable where the media player should render its + * video output. If LibVLC was built without X11 output support, then this has + * no effects. + * + * The specified identifier must correspond to an existing Input/Output class + * X11 drawable. The caller shall ensure that the X11 server is the same as the + * one the VLC instance has been configured with. + * If XVideo is not supported or usable, it is assumed that the drawable + * has the following properties in common with the default X11 screen: + * depth, scan line pad, black pixel. This is a bug. + * Using a pixmap rather than a window might not work as VLC might try to + * get window properties and subscribe to window events. + * + * \param p_mi the Media Player + * \param drawable the ID of the X drawable + * \param p_e an initialized exception pointer + */ +VLC_PUBLIC_API void libvlc_media_player_set_xid ( libvlc_media_player_t *p_mi, uint32_t drawable, libvlc_exception_t *p_e ); + +/** + * Set a Win32/Win64 API window handle (HWND) where the media player should + * render its video output. If LibVLC was built without Win32/Win64 API output + * support, then this has no effects. + * + * \param p_mi the Media Player + * \param drawable windows handle of the drawable + * \param p_e an initialized exception pointer + */ +VLC_PUBLIC_API void libvlc_media_player_set_hwnd ( libvlc_media_player_t *p_mi, void *drawable, libvlc_exception_t *p_e ); + +/** * Set the drawable where the media player should render its video output. * * On Windows 32-bits, a window handle (HWND) is expected. diff --git a/include/vlc/libvlc_structures.h b/include/vlc/libvlc_structures.h index 49ddbbb..e5e1be3 100644 --- a/include/vlc/libvlc_structures.h +++ b/include/vlc/libvlc_structures.h @@ -214,7 +214,7 @@ typedef struct libvlc_playlist_item_t /** \defgroup libvlc_media_player libvlc_media_player * \ingroup libvlc * LibVLC Media Player, object that let you play a media - * in a libvlc_drawable_t + * in a drawable * @{ */ diff --git a/src/control/libvlc_internal.h b/src/control/libvlc_internal.h index fb26449..9509735 100644 --- a/src/control/libvlc_internal.h +++ b/src/control/libvlc_internal.h @@ -153,7 +153,7 @@ struct libvlc_media_player_t struct libvlc_instance_t * p_libvlc_instance; /* Parent instance */ libvlc_media_t * p_md; /* current media descriptor */ libvlc_event_manager_t * p_event_manager; - union + struct { void *hwnd; uint32_t xid; diff --git a/src/control/media_player.c b/src/control/media_player.c index 7be73ed..31589b3 100644 --- a/src/control/media_player.c +++ b/src/control/media_player.c @@ -258,11 +258,8 @@ libvlc_media_player_new( libvlc_instance_t * p_libvlc_instance, return NULL; } p_mi->p_md = NULL; -#ifndef WIN32 p_mi->drawable.xid = 0; -#else p_mi->drawable.hwnd = NULL; -#endif p_mi->p_libvlc_instance = p_libvlc_instance; p_mi->p_input_thread = NULL; /* refcount strategy: @@ -598,13 +595,15 @@ void libvlc_media_player_play( libvlc_media_player_t *p_mi, p_input_thread = p_mi->p_input_thread; var_Create( p_input_thread, "drawable-xid", VLC_VAR_INTEGER ); - var_Create( p_input_thread, "drawable-hwnd", VLC_VAR_ADDRESS ); + if( p_mi->drawable.xid ) + var_SetInteger( p_input_thread, "drawable-xid", p_mi->drawable.xid ); -#ifndef WIN32 - var_SetInteger( p_input_thread, "drawable-xid", p_mi->drawable.xid ); -#else - var_SetInteger( p_input_thread, "drawable-hwnd", p_mi->drawable.hwnd ); -#endif + var_Create( p_input_thread, "drawable-hwnd", VLC_VAR_ADDRESS ); + if( p_mi->drawable.hwnd != NULL ) + { + vlc_value_t val = { .p_address = p_mi->drawable.hwnd }; + var_Set( p_input_thread, "drawable-hwnd", val ); + } var_AddCallback( p_input_thread, "can-seek", input_seekable_changed, p_mi ); var_AddCallback( p_input_thread, "can-pause", input_pausable_changed, p_mi ); @@ -699,6 +698,22 @@ void libvlc_media_player_stop( libvlc_media_player_t *p_mi, } } +void libvlc_media_player_set_xid( libvlc_media_player_t *p_mi, + uint32_t drawable, + libvlc_exception_t *p_e ) +{ + (void) p_e; + p_mi->drawable.xid = drawable; +} + +void libvlc_media_player_set_hwnd( libvlc_media_player_t *p_mi, + void *drawable, + libvlc_exception_t *p_e ) +{ + (void) p_e; + p_mi->drawable.hwnd = drawable; +} + /************************************************************************** * Set Drawable **************************************************************************/ diff --git a/src/libvlc.sym b/src/libvlc.sym index 498da0c..3c46ec1 100644 --- a/src/libvlc.sym +++ b/src/libvlc.sym @@ -147,11 +147,13 @@ libvlc_media_player_release libvlc_media_player_retain libvlc_media_player_set_chapter libvlc_media_player_set_drawable +libvlc_media_player_set_hwnd libvlc_media_player_set_media libvlc_media_player_set_position libvlc_media_player_set_rate libvlc_media_player_set_time libvlc_media_player_set_title +libvlc_media_player_set_xid libvlc_media_player_stop libvlc_media_player_will_play libvlc_media_release From git at videolan.org Sat Feb 7 18:32:21 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 18:32:21 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Deprecate_libvlc=5Fvideo=5Frepare?= =?utf-8?q?nt_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090207173221.7767D2E8C0@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 7 19:30:58 2009 +0200| [52833ec70d8d2a6c268dbe4671c61fd20846d319] | committer: R?mi Denis-Courmont Deprecate libvlc_video_reparent This is consistent with libvlc_video_set_parent being deprecated. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=52833ec70d8d2a6c268dbe4671c61fd20846d319 --- include/vlc/deprecated.h | 10 ++++++++++ include/vlc/libvlc.h | 10 ---------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/include/vlc/deprecated.h b/include/vlc/deprecated.h index bb966d0..df0ba04 100644 --- a/include/vlc/deprecated.h +++ b/include/vlc/deprecated.h @@ -96,6 +96,16 @@ VLC_PUBLIC_API void libvlc_video_set_parent( libvlc_instance_t *, libvlc_drawabl */ VLC_PUBLIC_API libvlc_drawable_t libvlc_video_get_parent( libvlc_instance_t *, libvlc_exception_t * ); +/** + * Change the parent for the current the video output. + * + * \param p_instance libvlc instance + * \param drawable the new parent window (Drawable on X11, CGrafPort on MacOSX, HWND on Win32) + * \param p_e an initialized exception pointer + * \return the success status (boolean) + */ +VLC_PUBLIC_API int libvlc_video_reparent( libvlc_media_player_t *, libvlc_drawable_t, libvlc_exception_t * ); + /* * This function shall not be used at all. It may lead to crash and race condition. */ diff --git a/include/vlc/libvlc.h b/include/vlc/libvlc.h index 290da21..f6fc519 100644 --- a/include/vlc/libvlc.h +++ b/include/vlc/libvlc.h @@ -1021,16 +1021,6 @@ VLC_PUBLIC_API void libvlc_video_take_snapshot( libvlc_media_player_t *, char *, VLC_PUBLIC_API void libvlc_video_resize( libvlc_media_player_t *, int, int, libvlc_exception_t *); /** - * Change the parent for the current the video output. - * - * \param p_instance libvlc instance - * \param drawable the new parent window (Drawable on X11, CGrafPort on MacOSX, HWND on Win32) - * \param p_e an initialized exception pointer - * \return the success status (boolean) - */ -VLC_PUBLIC_API int libvlc_video_reparent( libvlc_media_player_t *, libvlc_drawable_t, libvlc_exception_t * ); - -/** * Tell windowless video output to redraw rectangular area (MacOS X only). * * \param p_instance libvlc instance From git at videolan.org Sat Feb 7 18:32:20 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 18:32:20 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Deprecate_libvlc=5Fmedia=5Fplayer?= =?utf-8?b?XyhnfHMpZXRfZHJhd2FibGUgKCBSw6ltaSBEZW5pcy1Db3VybW9udCAp?= Message-ID: <20090207173220.7FE152ED5F@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 7 19:27:44 2009 +0200| [14602bebf0d564660a739f40a8936b03fb5940eb] | committer: R?mi Denis-Courmont Deprecate libvlc_media_player_(g|s)et_drawable > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=14602bebf0d564660a739f40a8936b03fb5940eb --- include/vlc/deprecated.h | 37 +++++++++++++++++++++++++++++++++++++ include/vlc/libvlc.h | 32 -------------------------------- include/vlc/libvlc_structures.h | 8 -------- 3 files changed, 37 insertions(+), 40 deletions(-) diff --git a/include/vlc/deprecated.h b/include/vlc/deprecated.h index f7711ca..bb966d0 100644 --- a/include/vlc/deprecated.h +++ b/include/vlc/deprecated.h @@ -30,11 +30,48 @@ * This file defines libvlc depreceated API */ +/** + * This is the legacy representation of a platform-specific drawable. Because + * it cannot accomodate a pointer on most 64-bits platforms, it should not be + * used anymore. + */ +typedef int libvlc_drawable_t; + # ifdef __cplusplus extern "C" { # endif /** + * Set the drawable where the media player should render its video output. + * + * On Windows 32-bits, a window handle (HWND) is expected. + * On Windows 64-bits, this function will always fail. + * + * On OSX 32-bits, a CGrafPort is expected. + * On OSX 64-bits, this function will always fail. + * + * On other platforms, an existing X11 window ID is expected. See + * libvlc_media_player_set_xid() for details. + * + * \param p_mi the Media Player + * \param drawable the libvlc_drawable_t where the media player + * should render its video + * \param p_e an initialized exception pointer + */ +VLC_PUBLIC_API void libvlc_media_player_set_drawable ( libvlc_media_player_t *, libvlc_drawable_t, libvlc_exception_t * ); + +/** + * Get the drawable where the media player should render its video output + * + * \param p_mi the Media Player + * \param p_e an initialized exception pointer + * \return the libvlc_drawable_t where the media player + * should render its video + */ +VLC_PUBLIC_API libvlc_drawable_t + libvlc_media_player_get_drawable ( libvlc_media_player_t *, libvlc_exception_t * ); + +/** * Set the default video output's parent. * * This setting will be used as default for any video output. diff --git a/include/vlc/libvlc.h b/include/vlc/libvlc.h index a720c76..290da21 100644 --- a/include/vlc/libvlc.h +++ b/include/vlc/libvlc.h @@ -580,38 +580,6 @@ VLC_PUBLIC_API void libvlc_media_player_set_xid ( libvlc_media_player_t *p_mi, u */ VLC_PUBLIC_API void libvlc_media_player_set_hwnd ( libvlc_media_player_t *p_mi, void *drawable, libvlc_exception_t *p_e ); -/** - * Set the drawable where the media player should render its video output. - * - * On Windows 32-bits, a window handle (HWND) is expected. - * On Windows 64-bits, this function will always fail. - * - * On OSX, a CGrafPort is expected. - * - * Otherwise, this shall be the identifier of an existing X11 drawable (window - * or pixmap). It is assumed that the X11 server is the same as the one in - * x11-display if configured. If XVideo is not supported, it is assumed - * that the drawable has the same pixmap format as the default X11 screen - * (especially depth, scan line pad, black pixel); this is a bug. - * - * \param p_mi the Media Player - * \param drawable the libvlc_drawable_t where the media player - * should render its video - * \param p_e an initialized exception pointer - */ -VLC_PUBLIC_API void libvlc_media_player_set_drawable ( libvlc_media_player_t *, libvlc_drawable_t, libvlc_exception_t * ); - -/** - * Get the drawable where the media player should render its video output - * - * \param p_mi the Media Player - * \param p_e an initialized exception pointer - * \return the libvlc_drawable_t where the media player - * should render its video - */ -VLC_PUBLIC_API libvlc_drawable_t - libvlc_media_player_get_drawable ( libvlc_media_player_t *, libvlc_exception_t * ); - /** \bug This might go away ... to be replaced by a broader system */ /** diff --git a/include/vlc/libvlc_structures.h b/include/vlc/libvlc_structures.h index e5e1be3..bede67c 100644 --- a/include/vlc/libvlc_structures.h +++ b/include/vlc/libvlc_structures.h @@ -266,14 +266,6 @@ typedef struct libvlc_audio_output_t */ /** -* Downcast to this general type as placeholder for a platform specific one, such as: -* Drawable on X11, -* CGrafPort on MacOSX, -* HWND on win32 -*/ -typedef int libvlc_drawable_t; - -/** * Rectangle type for video geometry */ typedef struct libvlc_rectangle_t From rem at videolan.org Sat Feb 7 18:52:12 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 7 Feb 2009 19:52:12 +0200 Subject: [vlc-devel] Time to uncover and address bugs Message-ID: <200902071952.13214.rem@videolan.org> Hello, If you managed to miss the announcements, I'd like to remind everyone that we have reached core features freeze for VLC version 1.0. The complete feature freeze is nearing as well. That means it is high time for you to verify that it works properly, file bugs and more importantly submit patches. This time there will be no such a -lame- excuse as "summer holydays period", and the freeze will last longer than any common winter holydays. If you fail to test in due time _before_ the release, then don't be surprised that you get screwed. And if you don't submit patches, don't complain that your bugs aren't fixed. Bugs don't get fixed by filing and waiting. -- R?mi Denis-Courmont From rem at videolan.org Sat Feb 7 18:54:11 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Sat, 7 Feb 2009 19:54:11 +0200 Subject: [vlc-devel] Mac OS X 10.4 support for VLC 1.0 In-Reply-To: <46EA85D9-9D87-4B2F-BC91-43C54F6EA5D1@gmail.com> References: <46EA85D9-9D87-4B2F-BC91-43C54F6EA5D1@gmail.com> Message-ID: <200902071954.11813.rem@videolan.org> Le jeudi 5 f?vrier 2009 17:50:58 Felix Paul K?hne, vous avez ?crit?: > Hello guys, > > as some of you know, I've been experimenting with Apple's LLVM GCC 4.2 > compiler for quite some time. As this compiler requires the usage of > the 10.5 SDK, I discovered that OS X 10.5 supports proper cancelation > points, so VLC.app compiled from the latest master source runs and > more importantly quits correctly (and really fast in fact). > Because of this and a few other API limitations, I'm wondering whether > we could drop the support for 10.4 once we release VLC 1.0. IMO, VLC > 0.9.9 will be a solid release (whenever it will be published...) and > therefore a nice last version for 10.4. What's your opinion? My opinion is that 10.5-only working VLC is better than no VLC at all. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From jonathan.clairembault at gmail.com Sat Feb 7 19:36:39 2009 From: jonathan.clairembault at gmail.com (joss) Date: Sat, 7 Feb 2009 19:36:39 +0100 Subject: [vlc-devel] compiling vlc0.9.8a issue Message-ID: <280EC249-C971-44F4-A594-1093142404EA@local> Hi guys, I'm trying to build vlc-0.9.8a on my macbook. I've got the contribs and everything was just going fine until I configure for compiling vlc itself. Here is the command I did : ./configure --enable-debug --with-macosx-sdk=/Developer/SDKs/ MacOSX10.4u.sdk --prefix=/usr Here is the result : checking build system type... i686-apple-darwin8.11.1 checking host system type... i686-apple-darwin8.11.1 checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... no checking for mawk... no checking for nawk... no checking for awk... awk checking whether make sets $(MAKE)... yes checking how to create a ustar tar archive... gnutar checking whether to enable maintainer-specific portions of Makefiles... yes checking for style of include used by make... GNU checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking dependency style of gcc... gcc3 checking for gcc option to accept ISO C99... -std=gnu99 checking how to run the C preprocessor... gcc -std=gnu99 -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for AIX... no checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking whether gcc -std=gnu99 and cc understand -c and -o together... yes checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... gcc3 checking how to run the C preprocessor... gcc -std=gnu99 -E checking for gcc... gcc checking whether we are using the GNU Objective C compiler... yes checking whether gcc accepts -g... yes checking dependency style of gcc... gcc3 checking for egrep... (cached) /usr/bin/grep -E checking whether make sets $(MAKE)... (cached) yes checking for a BSD-compatible install... /usr/bin/install -c checking for ranlib... ranlib checking for strip... strip checking for ar... ar checking for ld... ld checking for dlltool... no checking for an ANSI C-conforming const... yes checking for inline... inline checking for C/C++ restrict keyword... restrict checking for libs in extras/contrib... no configure: WARNING: not using the libs in extras/contrib as it is not the same host Building with Mac OS X defaults: Assuming --with-macosx-version-min=10.4 Assuming --prefix=/Users/josstoto/vlc-0.9.8a/vlc_install_dir Assuming --enable-macosx Assuming --enable-faad Assuming --enable-flac Assuming --enable-theora Assuming --enable-shout Assuming --enable-cddax Assuming --enable-vcdx Assuming --enable-caca Assuming --enable-goom Assuming --enable-ncurses Assuming --enable-twolame Assuming --enable-realrtsp Assuming --enable-update-check Assuming --enable-libass Assuming --enable-asademux Assuming --disable-skins2 Assuming --disable-x11 Assuming --disable-glx Assuming --disable-xvideo ./configure: line 8718: syntax error near unexpected token `build_old_libs,' ./configure: line 8718: ` _LT_DECL(build_old_libs, enable_static, 0,' Could you help me up ? Jonathan From git at videolan.org Sat Feb 7 20:59:32 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 20:59:32 +0100 (CET) Subject: [vlc-devel] commit: Qt: new volume slider, optionnal. Totem like, for people who use Totem (Jean-Baptiste Kempf ) Message-ID: <20090207195932.088D02EA9F@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 19:23:47 2009 +0100| [41b266bff059cb9ff0fa1bb15f73daab773e9b14] | committer: Jean-Baptiste Kempf Qt: new volume slider, optionnal. Totem like, for people who use Totem This is a special request for Laurent ;) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=41b266bff059cb9ff0fa1bb15f73daab773e9b14 --- modules/gui/qt4/components/controller_widget.cpp | 73 +++++++++++++++++++--- modules/gui/qt4/components/controller_widget.hpp | 5 +- 2 files changed, 67 insertions(+), 11 deletions(-) diff --git a/modules/gui/qt4/components/controller_widget.cpp b/modules/gui/qt4/components/controller_widget.cpp index 0b81f33..48f71a5 100644 --- a/modules/gui/qt4/components/controller_widget.cpp +++ b/modules/gui/qt4/components/controller_widget.cpp @@ -35,21 +35,60 @@ #include #include #include +#include +#include SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, - bool b_shiny ) - : QWidget( _parent ), b_my_volume( false ) + bool b_shiny, bool b_special ) + : QWidget( _parent ), b_my_volume( false ), + p_intf( _p_intf) { - p_intf = _p_intf; + /* We need a layout for this widget */ QHBoxLayout *layout = new QHBoxLayout( this ); layout->setSpacing( 0 ); layout->setMargin( 0 ); - hVolLabel = new VolumeClickHandler( p_intf, this ); + /* We need a Label for the pix */ volMuteLabel = new QLabel; volMuteLabel->setPixmap( QPixmap( ":/volume-medium" ) ); - volMuteLabel->installEventFilter( hVolLabel ); + + /* We might need a subLayout too */ + QVBoxLayout *subLayout; + + /* Normal View, click on icon mutes */ + if( !b_special ) + { + hVolLabel = new VolumeClickHandler( p_intf, this ); + volMuteLabel->installEventFilter( hVolLabel ); + volumeMenu = NULL; + subLayout = NULL; + } + else + { + /* Special view, click on button shows the slider */ + b_shiny = false; + + setContextMenuPolicy ( Qt::CustomContextMenu ); + + QFrame *volumeControlWidget = new QFrame; + subLayout = new QVBoxLayout( volumeControlWidget ); + subLayout->setLayoutMargins( 4, 4, 4, 4, 4 ); + volumeMenu = new QMenu( this ); + + QWidgetAction *widgetAction = new QWidgetAction( volumeControlWidget ); + widgetAction->setDefaultWidget( volumeControlWidget ); + volumeMenu->addAction( widgetAction ); + + /* Speed Label behaviour: + - right click gives the vertical speed slider */ + CONNECT( this, customContextMenuRequested( QPoint ), + this, showVolumeMenu( QPoint ) ); + + } + + /* And add the label */ layout->addWidget( volMuteLabel ); + /* Slider creation: shiny or clean */ if( b_shiny ) { volumeSlider = new SoundSlider( this, @@ -59,15 +98,23 @@ SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, } else { - volumeSlider = new QSlider( this ); - volumeSlider->setOrientation( Qt::Horizontal ); + volumeSlider = new QSlider( NULL ); + volumeSlider->setOrientation( b_special ? Qt::Vertical + : Qt::Horizontal ); volumeSlider->setMaximum( config_GetInt( p_intf, "qt-volume-complete" ) ? 400 : 200 ); } - volumeSlider->setMaximumSize( QSize( 200, 40 ) ); - volumeSlider->setMinimumSize( QSize( 85, 30 ) ); + if( volumeSlider->orientation() == Qt::Horizontal ) + { + volumeSlider->setMaximumSize( QSize( 200, 40 ) ); + volumeSlider->setMinimumSize( QSize( 85, 30 ) ); + } + volumeSlider->setFocusPolicy( Qt::NoFocus ); - layout->addWidget( volumeSlider ); + if( b_special ) + subLayout->addWidget( volumeSlider ); + else + layout->addWidget( volumeSlider ); /* Set the volume from the config */ volumeSlider->setValue( ( config_GetInt( p_intf, "volume" ) ) * @@ -81,6 +128,12 @@ SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, CONNECT( THEMIM, volumeChanged( void ), this, updateVolume( void ) ); } +void SoundWidget::showVolumeMenu( QPoint pos ) +{ + volumeMenu->exec( QCursor::pos() - pos - QPoint( 0, volumeMenu->height()/2 ) + + QPoint( width(), height() /2) ); +} + void SoundWidget::updateVolume( int i_sliderVolume ) { if( !b_my_volume ) diff --git a/modules/gui/qt4/components/controller_widget.hpp b/modules/gui/qt4/components/controller_widget.hpp index 8ce7579..608b321 100644 --- a/modules/gui/qt4/components/controller_widget.hpp +++ b/modules/gui/qt4/components/controller_widget.hpp @@ -83,7 +83,8 @@ class SoundWidget : public QWidget friend class VolumeClickHandler; public: - SoundWidget( QWidget *parent, intf_thread_t *_p_i, bool ); + SoundWidget( QWidget *parent, intf_thread_t *_p_i, bool, + bool b_special = false ); private: intf_thread_t *p_intf; @@ -91,10 +92,12 @@ private: QAbstractSlider *volumeSlider; VolumeClickHandler *hVolLabel; bool b_my_volume; + QMenu *volumeMenu; protected slots: void updateVolume( int ); void updateVolume( void ); + void showVolumeMenu( QPoint pos ); }; class VolumeClickHandler : public QObject From git at videolan.org Sat Feb 7 20:59:32 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 20:59:32 +0100 (CET) Subject: [vlc-devel] commit: Qt: Remove VolumeClickHandler Class... I never understood why zorglub did that in a separate class. ( Jean-Baptiste Kempf ) Message-ID: <20090207195932.175102ED84@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 20:19:56 2009 +0100| [74d2582a3de1afc854245c2e4f8d79375d30cc90] | committer: Jean-Baptiste Kempf Qt: Remove VolumeClickHandler Class... I never understood why zorglub did that in a separate class. This removes some friends attribute. Can't be a bad thing. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=74d2582a3de1afc854245c2e4f8d79375d30cc90 --- modules/gui/qt4/components/controller_widget.cpp | 39 ++++++++++----------- modules/gui/qt4/components/controller_widget.hpp | 16 +-------- 2 files changed, 20 insertions(+), 35 deletions(-) diff --git a/modules/gui/qt4/components/controller_widget.cpp b/modules/gui/qt4/components/controller_widget.cpp index 48f71a5..5073fe1 100644 --- a/modules/gui/qt4/components/controller_widget.cpp +++ b/modules/gui/qt4/components/controller_widget.cpp @@ -57,8 +57,7 @@ SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, /* Normal View, click on icon mutes */ if( !b_special ) { - hVolLabel = new VolumeClickHandler( p_intf, this ); - volMuteLabel->installEventFilter( hVolLabel ); + volMuteLabel->installEventFilter( this ); volumeMenu = NULL; subLayout = NULL; } @@ -134,6 +133,24 @@ void SoundWidget::showVolumeMenu( QPoint pos ) + QPoint( width(), height() /2) ); } +bool SoundWidget::eventFilter( QObject *obj, QEvent *e ) +{ + VLC_UNUSED( obj ); + if (e->type() == QEvent::MouseButtonPress ) + { + aout_VolumeMute( p_intf, NULL ); + audio_volume_t i_volume; + aout_VolumeGet( p_intf, &i_volume ); + e->accept(); + return true; + } + else + { + e->ignore(); + return false; + } +} + void SoundWidget::updateVolume( int i_sliderVolume ) { if( !b_my_volume ) @@ -206,22 +223,4 @@ void AtoB_Button::setIcons( bool timeA, bool timeB ) } } -bool VolumeClickHandler::eventFilter( QObject *obj, QEvent *e ) -{ - VLC_UNUSED( obj ); - if (e->type() == QEvent::MouseButtonPress ) - { - aout_VolumeMute( p_intf, NULL ); - audio_volume_t i_volume; - aout_VolumeGet( p_intf, &i_volume ); -// m->updateVolume( i_volume * VOLUME_MAX / (AOUT_VOLUME_MAX/2) ); - e->accept(); - return true; - } - else - { - e->ignore(); - return false; - } -} diff --git a/modules/gui/qt4/components/controller_widget.hpp b/modules/gui/qt4/components/controller_widget.hpp index 608b321..8741b69 100644 --- a/modules/gui/qt4/components/controller_widget.hpp +++ b/modules/gui/qt4/components/controller_widget.hpp @@ -80,7 +80,6 @@ class VolumeClickHandler; class SoundWidget : public QWidget { Q_OBJECT - friend class VolumeClickHandler; public: SoundWidget( QWidget *parent, intf_thread_t *_p_i, bool, @@ -90,26 +89,13 @@ private: intf_thread_t *p_intf; QLabel *volMuteLabel; QAbstractSlider *volumeSlider; - VolumeClickHandler *hVolLabel; bool b_my_volume; QMenu *volumeMenu; - + virtual bool eventFilter( QObject *obj, QEvent *e ); protected slots: void updateVolume( int ); void updateVolume( void ); void showVolumeMenu( QPoint pos ); }; -class VolumeClickHandler : public QObject -{ -public: - VolumeClickHandler( intf_thread_t *_p_intf, SoundWidget *_m ) : QObject(_m) - {m = _m; p_intf = _p_intf; } - virtual ~VolumeClickHandler() {}; - virtual bool eventFilter( QObject *obj, QEvent *e ); -private: - SoundWidget *m; - intf_thread_t *p_intf; -}; - #endif From git at videolan.org Sat Feb 7 20:59:32 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 20:59:32 +0100 (CET) Subject: [vlc-devel] commit: Qt: simplification of the special volume slider. Any click will show it. (Jean-Baptiste Kempf ) Message-ID: <20090207195932.29C012ED94@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 20:56:15 2009 +0100| [11a75f694fdfb57bd8fbc1c73046153be1c6287d] | committer: Jean-Baptiste Kempf Qt: simplification of the special volume slider. Any click will show it. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=11a75f694fdfb57bd8fbc1c73046153be1c6287d --- modules/gui/qt4/components/controller_widget.cpp | 22 +++++++++++++--------- 1 files changed, 13 insertions(+), 9 deletions(-) diff --git a/modules/gui/qt4/components/controller_widget.cpp b/modules/gui/qt4/components/controller_widget.cpp index 5073fe1..7aa960c 100644 --- a/modules/gui/qt4/components/controller_widget.cpp +++ b/modules/gui/qt4/components/controller_widget.cpp @@ -37,6 +37,7 @@ #include #include #include +#include SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, bool b_shiny, bool b_special ) @@ -66,7 +67,7 @@ SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, /* Special view, click on button shows the slider */ b_shiny = false; - setContextMenuPolicy ( Qt::CustomContextMenu ); + volMuteLabel->installEventFilter( this ); QFrame *volumeControlWidget = new QFrame; subLayout = new QVBoxLayout( volumeControlWidget ); @@ -77,11 +78,6 @@ SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, widgetAction->setDefaultWidget( volumeControlWidget ); volumeMenu->addAction( widgetAction ); - /* Speed Label behaviour: - - right click gives the vertical speed slider */ - CONNECT( this, customContextMenuRequested( QPoint ), - this, showVolumeMenu( QPoint ) ); - } /* And add the label */ @@ -138,9 +134,17 @@ bool SoundWidget::eventFilter( QObject *obj, QEvent *e ) VLC_UNUSED( obj ); if (e->type() == QEvent::MouseButtonPress ) { - aout_VolumeMute( p_intf, NULL ); - audio_volume_t i_volume; - aout_VolumeGet( p_intf, &i_volume ); + if( volumeSlider->orientation() == Qt::Vertical ) + { + QMouseEvent *event = static_cast(e); + showVolumeMenu( event->pos() ); + } + else + { + aout_VolumeMute( p_intf, NULL ); + audio_volume_t i_volume; + aout_VolumeGet( p_intf, &i_volume ); + } e->accept(); return true; } From git at videolan.org Sat Feb 7 20:59:32 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 20:59:32 +0100 (CET) Subject: [vlc-devel] commit: Qt: remove code duplication. (Jean-Baptiste Kempf ) Message-ID: <20090207195932.4C8F42CFA4@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 20:57:30 2009 +0100| [3439c052ecb9de8319e6ff0d3036fadc37d81b72] | committer: Jean-Baptiste Kempf Qt: remove code duplication. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3439c052ecb9de8319e6ff0d3036fadc37d81b72 --- modules/gui/qt4/components/controller_widget.cpp | 9 +++------ 1 files changed, 3 insertions(+), 6 deletions(-) diff --git a/modules/gui/qt4/components/controller_widget.cpp b/modules/gui/qt4/components/controller_widget.cpp index 7aa960c..8cad93a 100644 --- a/modules/gui/qt4/components/controller_widget.cpp +++ b/modules/gui/qt4/components/controller_widget.cpp @@ -55,20 +55,18 @@ SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, /* We might need a subLayout too */ QVBoxLayout *subLayout; + volMuteLabel->installEventFilter( this ); + /* Normal View, click on icon mutes */ if( !b_special ) { - volMuteLabel->installEventFilter( this ); - volumeMenu = NULL; - subLayout = NULL; + volumeMenu = NULL; subLayout = NULL; } else { /* Special view, click on button shows the slider */ b_shiny = false; - volMuteLabel->installEventFilter( this ); - QFrame *volumeControlWidget = new QFrame; subLayout = new QVBoxLayout( volumeControlWidget ); subLayout->setLayoutMargins( 4, 4, 4, 4, 4 ); @@ -77,7 +75,6 @@ SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, QWidgetAction *widgetAction = new QWidgetAction( volumeControlWidget ); widgetAction->setDefaultWidget( volumeControlWidget ); volumeMenu->addAction( widgetAction ); - } /* And add the label */ From git at videolan.org Sat Feb 7 21:02:06 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 21:02:06 +0100 (CET) Subject: [vlc-devel] commit: Qt: always provide an option to preferences in skins. ( Jean-Baptiste Kempf ) Message-ID: <20090207200206.184DA2ED64@skanda.videolan.org> vlc | branch: 0.9-bugfix | Jean-Baptiste Kempf | Sat Feb 7 21:01:26 2009 +0100| [caafdff10c9120e68b3cf4a00fab9ccc58bc8295] | committer: Jean-Baptiste Kempf Qt: always provide an option to preferences in skins. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=caafdff10c9120e68b3cf4a00fab9ccc58bc8295 --- modules/gui/qt4/menus.cpp | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index cb1a988..5fc6f08 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -846,6 +846,8 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) } addDPStaticEntry( submenu, qtr( I_MENU_EXT ), "", ":/settings", SLOT( extendedDialog() ) ); + addDPStaticEntry( submenu, qtr( I_MENU_EXT ), "", + ":/settings", SLOT( extendedDialog() ) ); if( mi ) { action = submenu->addAction( QIcon( "" ), @@ -862,6 +864,8 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) else /* We are using the skins interface. If not, this entry will not show. */ { + addDPStaticEntry( submenu, qtr( "&Preferences..." ), + ":/preferences", SLOT( prefsDialog() ), "Ctrl+P" ); objects.clear(); varnames.clear(); vlc_object_t *p_object = ( vlc_object_t* ) From git at videolan.org Sat Feb 7 21:31:20 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 21:31:20 +0100 (CET) Subject: [vlc-devel] commit: Qt: move customize to view. (Jean-Baptiste Kempf ) Message-ID: <20090207203121.251362EC36@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 21:30:39 2009 +0100| [2448166498e22263444031a6ce6a1141cdffb2ea] | committer: Jean-Baptiste Kempf Qt: move customize to view. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2448166498e22263444031a6ce6a1141cdffb2ea --- modules/gui/qt4/menus.cpp | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 5630f16..f60b8d4 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -381,8 +381,6 @@ QMenu *QVLCMenu::ToolsMenu( intf_thread_t *p_intf ) "", SLOT( pluginDialog() ) ); menu->addSeparator(); - addDPStaticEntry( menu, qtr( "Customi&ze Interface..." ), - ":/preferences", SLOT( toolbarDialog() ) ); addDPStaticEntry( menu, qtr( "&Preferences" ), ":/preferences", SLOT( prefsDialog() ), "Ctrl+P" ); @@ -460,6 +458,9 @@ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, } menu->addSeparator(); + addDPStaticEntry( menu, qtr( "Customi&ze Interface..." ), + ":/preferences", SLOT( toolbarDialog() ) ); + menu->addSeparator(); return menu; } From git at videolan.org Sat Feb 7 21:31:21 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 21:31:21 +0100 (CET) Subject: [vlc-devel] commit: Qt: integrate the new volume to the customize dialog. ( Jean-Baptiste Kempf ) Message-ID: <20090207203121.87BBB2ED9E@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 21:30:53 2009 +0100| [98c06d9e33b9326daaa2e0d1919e5647fb0df4d9] | committer: Jean-Baptiste Kempf Qt: integrate the new volume to the customize dialog. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=98c06d9e33b9326daaa2e0d1919e5647fb0df4d9 --- modules/gui/qt4/components/controller.cpp | 5 ++++- modules/gui/qt4/components/controller.hpp | 7 ++++--- modules/gui/qt4/dialogs/toolbar.cpp | 9 +++++++++ 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp index 15d1500..1a4c5d4 100644 --- a/modules/gui/qt4/components/controller.cpp +++ b/modules/gui/qt4/components/controller.cpp @@ -184,6 +184,7 @@ QWidget *AbstractController::createWidget( buttonType_e button, int options ) bool b_flat = options & WIDGET_FLAT; bool b_big = options & WIDGET_BIG; bool b_shiny = options & WIDGET_SHINY; + bool b_special = false; QWidget *widget = NULL; switch( button ) @@ -344,9 +345,11 @@ QWidget *AbstractController::createWidget( buttonType_e button, int options ) widget = telexFrame(); widget->hide(); break; + case VOLUME_SPECIAL: + b_special = true; case VOLUME: { - SoundWidget *snd = new SoundWidget( this, p_intf, b_shiny ); + SoundWidget *snd = new SoundWidget( this, p_intf, b_shiny, b_special ); widget = snd; } break; diff --git a/modules/gui/qt4/components/controller.hpp b/modules/gui/qt4/components/controller.hpp index 65b8a37..43e8f7c 100644 --- a/modules/gui/qt4/components/controller.hpp +++ b/modules/gui/qt4/components/controller.hpp @@ -35,11 +35,11 @@ #define I_PLAY_TOOLTIP N_("Play\nIf the playlist is empty, open a media") -#define MAIN_TB1_DEFAULT "64;38;64;37-4;65" -#define MAIN_TB2_DEFAULT "0-2;64;3;1;4;64;7;10;9;64-4;36-4;65;35-4" +#define MAIN_TB1_DEFAULT "64;39;64;38;65" +#define MAIN_TB2_DEFAULT "0-2;64;3;1;4;64;7;10;9;64-4;37;65;35-4" #define ADV_TB_DEFAULT "12;11;13;14" #define INPT_TB_DEFAULT "5-1;33;6-1" -#define FSC_TB_DEFAULT "0-2;64;3;1;4;64;36;64;37;64;8;65;35-4;34" +#define FSC_TB_DEFAULT "0-2;64;3;1;4;64;37;64;38;64;8;65;35-4;34" class QPixmap; @@ -86,6 +86,7 @@ typedef enum buttonType_e INPUT_SLIDER, TIME_LABEL, VOLUME, + VOLUME_SPECIAL, MENU_BUTTONS, TELETEXT_BUTTONS, ADVANCED_CONTROLLER, diff --git a/modules/gui/qt4/dialogs/toolbar.cpp b/modules/gui/qt4/dialogs/toolbar.cpp index 7812de4..d22f40a 100644 --- a/modules/gui/qt4/dialogs/toolbar.cpp +++ b/modules/gui/qt4/dialogs/toolbar.cpp @@ -248,6 +248,15 @@ WidgetListing::WidgetListing( intf_thread_t *p_intf, QWidget *_parent ) } widgetItem->setText( qtr("Volume") ); break; + case VOLUME_SPECIAL: + { + QListWidgetItem *widgetItem = new QListWidgetItem( this ); + widgetItem->setText( "Small Volume" ); + widgetItem->setIcon( QIcon( ":/volume-medium" ) ); + widgetItem->setData( Qt::UserRole, QVariant( i ) ); + addItem( widgetItem ); + } + continue; case TIME_LABEL: { QLabel *timeLabel = new QLabel( "12:42/2:12:42", this ); From git at videolan.org Sat Feb 7 21:52:56 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 21:52:56 +0100 (CET) Subject: [vlc-devel] commit: Qt/Skins: give complete access to the Tools menu to the skins. Close #2275 (Jean-Baptiste Kempf ) Message-ID: <20090207205256.EE3992EDA8@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 21:51:26 2009 +0100| [3487d61ef0a3d29cd285cdd1ceccfd1310883725] | committer: Jean-Baptiste Kempf Qt/Skins: give complete access to the Tools menu to the skins. Close #2275 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3487d61ef0a3d29cd285cdd1ceccfd1310883725 --- modules/gui/qt4/menus.cpp | 29 +++++++++-------------------- modules/gui/qt4/menus.hpp | 2 +- 2 files changed, 10 insertions(+), 21 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index f60b8d4..df85a7b 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -293,7 +293,7 @@ void QVLCMenu::createMenuBar( MainInterface *mi, BAR_DADD( VideoMenu( p_intf, NULL ), qtr( "&Video" ), 2 ); BAR_DADD( NavigMenu( p_intf, NULL ), qtr( "P&layback" ), 3 ); - BAR_ADD( ToolsMenu( p_intf ), qtr( "&Tools" ) ); + BAR_ADD( ToolsMenu( NULL ), qtr( "&Tools" ) ); BAR_ADD( ViewMenu( p_intf, NULL, mi, visual_selector_enabled, true ), qtr( "V&iew" ) ); @@ -353,11 +353,13 @@ QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf ) } /* Playlist/MediaLibrary Control */ -QMenu *QVLCMenu::ToolsMenu( intf_thread_t *p_intf ) +QMenu *QVLCMenu::ToolsMenu( QMenu *parent ) { - VLC_UNUSED( p_intf ); //TODO remove - QMenu *menu = new QMenu(); - + QMenu *menu; + if( parent == NULL ) + menu = new QMenu(); + else + menu = parent; addDPStaticEntry( menu, qtr( I_MENU_EXT ), ":/settings", SLOT( extendedDialog() ), "Ctrl+E" ); @@ -715,12 +717,6 @@ void QVLCMenu::PopupMenuControlEntries( QMenu *menu, void QVLCMenu::PopupMenuStaticEntries( QMenu *menu ) { -#if 0 - QMenu *toolsmenu = ToolsMenu( p_intf, menu, false, true ); - toolsmenu->setTitle( qtr( "Tools" ) ); - menu->addMenu( toolsmenu ); -#endif - QMenu *openmenu = new QMenu( qtr( "Open Media" ), menu ); addDPStaticEntry( openmenu, qtr( "&Open File..." ), ":/file-asym", SLOT( openFileDialog() ) ); @@ -881,13 +877,6 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) { submenu->addAction( QIcon( ":/playlist" ), qtr( "Show Playlist" ), mi, SLOT( togglePlaylist() ) ); - } - addDPStaticEntry( submenu, qtr( I_MENU_EXT ), - ":/settings", SLOT( extendedDialog() ) ); - addDPStaticEntry( submenu, qtr( I_MENU_INFO ) , ":/info", - SLOT( mediaInfoDialog() ), "Ctrl+I" ); - if( mi ) - { action = submenu->addAction( QIcon( "" ), qtr( "Minimal View" ), mi, SLOT( toggleMinimalView() ) ); action->setCheckable( true ); @@ -902,8 +891,8 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) else /* We are using the skins interface. If not, this entry will not show. */ { - addDPStaticEntry( submenu, qtr( "&Preferences..." ), - ":/preferences", SLOT( prefsDialog() ), "Ctrl+P" ); + + QMenu *tools = ToolsMenu( submenu ); submenu->addSeparator(); objects.clear(); varnames.clear(); diff --git a/modules/gui/qt4/menus.hpp b/modules/gui/qt4/menus.hpp index e9d02b1..52ede2d 100644 --- a/modules/gui/qt4/menus.hpp +++ b/modules/gui/qt4/menus.hpp @@ -101,7 +101,7 @@ private: /* All main Menus */ static QMenu *FileMenu( intf_thread_t * ); static QMenu *SDMenu( intf_thread_t * ); - static QMenu *ToolsMenu( intf_thread_t * ); + static QMenu *ToolsMenu( QMenu * ); static QMenu *ViewMenu( intf_thread_t *, QMenu *, MainInterface *, bool, bool with = true ); static QMenu *NavigMenu( intf_thread_t *, QMenu * ); From git at videolan.org Sat Feb 7 21:54:51 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 21:54:51 +0100 (CET) Subject: [vlc-devel] commit: Remove misleading comment. (Jean-Baptiste Kempf ) Message-ID: <20090207205451.CD6CF2EDA2@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 21:54:37 2009 +0100| [2399e6307894e514bea6a5b3711a22a925c8f7fd] | committer: Jean-Baptiste Kempf Remove misleading comment. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2399e6307894e514bea6a5b3711a22a925c8f7fd --- modules/gui/qt4/menus.cpp | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index df85a7b..dbf7336 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -390,9 +390,7 @@ QMenu *QVLCMenu::ToolsMenu( QMenu *parent ) } /** - * Tools/View Menu - * This is kept in the same menu for now, but could change if it gets much - * longer. + * View Menu * This menu can be an interface menu but also a right click menu. **/ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, From git at videolan.org Sat Feb 7 21:58:06 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 21:58:06 +0100 (CET) Subject: [vlc-devel] commit: Qt: menus, document. (Jean-Baptiste Kempf ) Message-ID: <20090207205806.818752ED99@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 21:57:52 2009 +0100| [fd1baec61d9eb82c5036ae302d4a078466a9ece5] | committer: Jean-Baptiste Kempf Qt: menus, document. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fd1baec61d9eb82c5036ae302d4a078466a9ece5 --- modules/gui/qt4/menus.cpp | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index dbf7336..8a3bd6a 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -842,22 +842,26 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) menu->addSeparator(); + /* Input menu */ vlc_object_hold( p_input ); InputAutoMenuBuilder( p_input, objects, varnames ); vlc_object_release( p_input ); + /* Audio menu */ submenu = new QMenu( menu ); action = menu->addMenu( AudioMenu( p_intf, submenu ) ); action->setText( qtr( "&Audio" ) ); if( action->menu()->isEmpty() ) action->setEnabled( false ); + /* Video menu */ submenu = new QMenu( menu ); action = menu->addMenu( VideoMenu( p_intf, submenu ) ); action->setText( qtr( "&Video" ) ); if( action->menu()->isEmpty() ) action->setEnabled( false ); + /* Playback menu for chapters */ submenu = new QMenu( menu ); action = menu->addMenu( NavigMenu( p_intf, submenu ) ); action->setText( qtr( "&Playback" ) ); @@ -904,13 +908,12 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) vlc_object_release( p_object ); } else - { msg_Dbg( p_intf, "could not find parent interface" ); - } } menu->addMenu( submenu ); } + /* Static entries for ending, like open */ PopupMenuStaticEntries( menu ); p_intf->p_sys->p_popup_menu = menu; From git at videolan.org Sat Feb 7 22:05:01 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 22:05:01 +0100 (CET) Subject: [vlc-devel] commit: Qt: sprefs, add the auto-resize option to the interface panel. ( Jean-Baptiste Kempf ) Message-ID: <20090207210501.9CFA92EDC1@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 22:04:34 2009 +0100| [7ffb2aeec2563091b2803b7b20933b214c897cac] | committer: Jean-Baptiste Kempf Qt: sprefs, add the auto-resize option to the interface panel. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7ffb2aeec2563091b2803b7b20933b214c897cac --- modules/gui/qt4/components/simple_preferences.cpp | 1 + modules/gui/qt4/ui/sprefs_interface.ui | 25 +++++++++++++------- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/modules/gui/qt4/components/simple_preferences.cpp b/modules/gui/qt4/components/simple_preferences.cpp index 8a9e286..73198d0 100644 --- a/modules/gui/qt4/components/simple_preferences.cpp +++ b/modules/gui/qt4/components/simple_preferences.cpp @@ -483,6 +483,7 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, CONFIG_GENERIC( "qt-system-tray", Bool, NULL, systrayBox ); CONFIG_GENERIC_FILE( "skins2-last", File, ui.skinFileLabel, ui.fileSkin, ui.skinBrowse ); + CONFIG_GENERIC( "qt-video-autoresize", Bool, NULL, resizingBox ); CONFIG_GENERIC( "album-art", IntegerList, ui.artFetchLabel, artFetcher ); diff --git a/modules/gui/qt4/ui/sprefs_interface.ui b/modules/gui/qt4/ui/sprefs_interface.ui index 2b01f2b..b4c8c66 100644 --- a/modules/gui/qt4/ui/sprefs_interface.ui +++ b/modules/gui/qt4/ui/sprefs_interface.ui @@ -5,7 +5,7 @@ 0 0 - 693 + 701 604 @@ -119,14 +119,7 @@
- - - - _("Systray icon") - - - - + _("Show a controller in fullscreen") @@ -217,6 +210,20 @@ + + + + _("Systray icon") + + + + + + + _("Resize interface to video size") + + + From pdherbemont at free.fr Sat Feb 7 22:07:15 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Sat, 7 Feb 2009 22:07:15 +0100 Subject: [vlc-devel] Mac OS X 10.4 support for VLC 1.0 In-Reply-To: <46EA85D9-9D87-4B2F-BC91-43C54F6EA5D1@gmail.com> References: <46EA85D9-9D87-4B2F-BC91-43C54F6EA5D1@gmail.com> Message-ID: On Thu, Feb 5, 2009 at 4:50 PM, Felix Paul K?hne wrote: > Hello guys, > > as some of you know, I've been experimenting with Apple's LLVM GCC 4.2 > compiler for quite some time. As this compiler requires the usage of > the 10.5 SDK, I discovered that OS X 10.5 supports proper cancelation > points, so VLC.app compiled from the latest master source runs and > more importantly quits correctly (and really fast in fact). Interesting. (troublesome for me :) ) Unfortunately, I can't manage to build a working vlc-1.0, it is still stuck when exiting, and I can't even get a vout to show up (today's git). I'll investigate more. Were you using a 64 bits version? > Because of this and a few other API limitations, I'm wondering whether > we could drop the support for 10.4 once we release VLC 1.0. IMO, VLC > 0.9.9 will be a solid release (whenever it will be published...) and > therefore a nice last version for 10.4. What's your opinion? Building against one SDK or an other shouldn't make a lot of difference at runtime I guess. If we support 10.5 supporting 10.4 should be easy. We just have to build against 10.5 sdk without using 10.5-only API. Pierre. From agent_007 at luukku.com Sat Feb 7 22:09:55 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Sat, 7 Feb 2009 23:09:55 +0200 (EET) Subject: [vlc-devel] [PATCH]Directsound - add speaker setup override option Message-ID: <1234040995972.agent_007.39124.47fAE0LdfjmqaT4iAZvvjw@luukku.com> This patch adds speaker setup override option to Directsound audio output. Some people need this because there is only one speaker setup in Windows and all sound devices share that same setup. So if you have for example 5.1 speakers and bluetooth headset, you can now force output from VLC itself automatically and you don't have to reach VLC audio menu each time or mess the speaker config. Also some people requested option to keep audio always on mono. This patch makes that possible. (I know there are other ways to do it) ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-adds-speaker-setup-override-option.patch Type: application/octet-stream Size: 5853 bytes Desc: not available URL: From rem at videolan.org Sat Feb 7 22:26:58 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 7 Feb 2009 23:26:58 +0200 Subject: [vlc-devel] [PATCH]Directsound - add speaker setup override option In-Reply-To: <1234040995972.agent_007.39124.47fAE0LdfjmqaT4iAZvvjw@luukku.com> References: <1234040995972.agent_007.39124.47fAE0LdfjmqaT4iAZvvjw@luukku.com> Message-ID: <200902072326.59015.rem@videolan.org> Le samedi 7 f?vrier 2009 23:09:55 Kaarlo R?ih?, vous avez ?crit?: > This patch adds speaker setup override option to Directsound audio output. > > Some people need this because there is only one speaker setup in Windows > and all sound devices share that same setup. So if you have for example 5.1 > speakers and bluetooth headset, you can now force output from VLC itself > automatically and you don't have to reach VLC audio menu each time or mess > the speaker config. > > Also some people requested option to keep audio always on mono. This patch > makes that possible. (I know there are other ways to do it) Don't mention that change needs VLC to restart. Just set the restart flag properly. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From brezhoneg1 at yahoo.fr Sat Feb 7 22:38:27 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Sat, 7 Feb 2009 22:38:27 +0100 Subject: [vlc-devel] [PATCH] -- uniformize dealing with file:// Message-ID: <000001c9896c$6b76f080$1c56fac1@CCCC> ? When dealing with regular files, policy with regard to adding "file://" is not consistent throughout vlc. - When exporting a playlist, m3u.c doesn't add file:// whereas xspf.c adds it. - When importing a single file into qt4 playlist, no file:// is added whereas when importing a whole directory, file:// are added (because directory.c adds file://) - When drag and drop is used with qt4 playlist, no file:// is added. Since still image has been introduced in the form of [fake://]image.ext, this hardcoded "file://" leads to a buggy behavior in some circumstances (directory.c and xspf.c) My suggestion, if you accept it, would be to simply remove the hardcoded "file://" when not necessary. Advantages will be: - In qt4 playlist, regular files will always be processed the same way whatever the means to import them. (Through access/access_demux automatic detection based on priorities) - Saving a playlist as a m3u or a xspf file will behave in the same way. - In future, if another special access_demux is required for a regular file of a given type, it will be taken into account without any problem throughout vlc. Erwan10 -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Remove-file-in-directory.c-and-xspf.c.patch Type: application/octet-stream Size: 1539 bytes Desc: not available URL: From git at videolan.org Sat Feb 7 22:43:01 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 22:43:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_XCB=3A_do_not_look_for_static_col?= =?utf-8?q?or_visuals_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090207214301.949232EDDB@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 7 23:40:50 2009 +0200| [2b9b5c0c6b7a9de32d5a42755f648d5194afaf13] | committer: R?mi Denis-Courmont XCB: do not look for static color visuals We really don't support them anyway > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2b9b5c0c6b7a9de32d5a42755f648d5194afaf13 --- modules/video_output/xcb/xcb.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/video_output/xcb/xcb.c b/modules/video_output/xcb/xcb.c index e39257c..166622e 100644 --- a/modules/video_output/xcb/xcb.c +++ b/modules/video_output/xcb/xcb.c @@ -154,10 +154,12 @@ static int Open (vlc_object_t *obj) if ((vt = xcb_aux_find_visual_by_attrs (scr, XCB_VISUAL_CLASS_TRUE_COLOR, scr->root_depth)) != NULL) msg_Dbg (vout, "using TrueColor visual ID %d", (int)vt->visual_id); +#if 0 else if ((vt = xcb_aux_find_visual_by_attrs (scr, XCB_VISUAL_CLASS_STATIC_COLOR, scr->root_depth)) != NULL) msg_Dbg (vout, "using static color visual ID %d", (int)vt->visual_id); +#endif else if ((scr->root_depth == 8) && (vt = xcb_aux_find_visual_by_attrs (scr, XCB_VISUAL_CLASS_STATIC_GRAY, From git at videolan.org Sat Feb 7 22:43:01 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 22:43:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_XCB=3A_determine_output_format_in?= =?utf-8?q?_Open_since_it=27s_constant_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090207214301.A430D2EDE5@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 5 22:44:18 2009 +0200| [d6f88abd02311a550d24008f037b7cd5a2bd9a2f] | committer: R?mi Denis-Courmont XCB: determine output format in Open since it's constant > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d6f88abd02311a550d24008f037b7cd5a2bd9a2f --- modules/video_output/xcb/xcb.c | 75 +++++++++++++++++++--------------------- 1 files changed, 36 insertions(+), 39 deletions(-) diff --git a/modules/video_output/xcb/xcb.c b/modules/video_output/xcb/xcb.c index 166622e..02226c7 100644 --- a/modules/video_output/xcb/xcb.c +++ b/modules/video_output/xcb/xcb.c @@ -82,7 +82,6 @@ struct vout_sys_t xcb_window_t window; /* drawable X window */ xcb_gcontext_t gc; /* context to put images */ bool shm; /* whether to use MIT-SHM */ - bool gray; /* whether display is grayscale */ uint8_t bpp; /* bits per pixel */ }; @@ -141,16 +140,10 @@ static int Open (vlc_object_t *obj) assert (p_sys->screen); msg_Dbg (vout, "using screen %d (depth %"PRIu8")", snum, scr->root_depth); - if (strchr ("\x08\x0f\x10\x18\x20", scr->root_depth) == NULL) - { - msg_Err (vout, "unsupported %"PRIu8"-bits color depth", - scr->root_depth); - goto error; - } - /* Determine the visual (color depth and palette) */ xcb_visualtype_t *vt = NULL; - p_sys->gray = false; + bool gray = false; + if ((vt = xcb_aux_find_visual_by_attrs (scr, XCB_VISUAL_CLASS_TRUE_COLOR, scr->root_depth)) != NULL) msg_Dbg (vout, "using TrueColor visual ID %d", (int)vt->visual_id); @@ -166,7 +159,7 @@ static int Open (vlc_object_t *obj) scr->root_depth)) != NULL) { msg_Dbg (vout, "using static gray visual ID %d", (int)vt->visual_id); - p_sys->gray = true; + gray = true; } else { @@ -177,6 +170,39 @@ static int Open (vlc_object_t *obj) } p_sys->vid = vt->visual_id; + /* Determine our input format (normally, done in Init() but X11 + * never changes its format) */ + p_sys->bpp = scr->root_depth; + switch (scr->root_depth) + { + case 24: + p_sys->bpp = 32; + case 32: /* FIXME: untested */ + vout->output.i_chroma = VLC_FOURCC ('R', 'V', '3', '2'); + break; + + case 16: + vout->output.i_chroma = VLC_FOURCC ('R', 'V', '1', '6'); + break; + + case 15: + p_sys->bpp = 16; + vout->output.i_chroma = VLC_FOURCC ('R', 'V', '1', '5'); + break; + + case 8: /* FIXME: VLC cannot convert */ + vout->output.i_chroma = gray ? VLC_FOURCC ('G', 'R', 'E', 'Y') + : VLC_FOURCC ('R', 'G', 'B', '2'); + break; + + default: + msg_Err (vout, "unsupported %"PRIu8"-bits screen depth", + scr->root_depth); + goto error; + } + vout->fmt_out.i_chroma = vout->output.i_chroma; + + /* Check shared memory support */ p_sys->shm = var_CreateGetBool (vout, "x11-shm") > 0; if (p_sys->shm) { @@ -382,38 +408,9 @@ static int Init (vout_thread_t *vout) p_sys->parent = p_sys->embed->handle.xid; } - /* Determine our input format */ - p_sys->bpp = screen->root_depth; - switch (screen->root_depth) - { - case 24: - p_sys->bpp = 32; - case 32: /* FIXME: untested */ - vout->output.i_chroma = VLC_FOURCC ('R', 'V', '3', '2'); - break; - - case 16: - vout->output.i_chroma = VLC_FOURCC ('R', 'V', '1', '6'); - break; - - case 15: - p_sys->bpp = 16; - vout->output.i_chroma = VLC_FOURCC ('R', 'V', '1', '5'); - break; - - case 8: /* FIXME: VLC cannot convert */ - vout->output.i_chroma = - p_sys->gray ? VLC_FOURCC ('G', 'R', 'E', 'Y') - : VLC_FOURCC ('R', 'G', 'B', '2'); - break; - - default: - assert (0); - } vout_PlacePicture (vout, width, height, &x, &y, &width, &height); /* FIXME: I don't get the subtlety between output and fmt_out here */ - vout->fmt_out.i_chroma = vout->output.i_chroma; vout->fmt_out.i_visible_width = width; vout->fmt_out.i_visible_height = height; vout->fmt_out.i_sar_num = vout->fmt_out.i_sar_den = 1; From git at videolan.org Sat Feb 7 22:43:01 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 22:43:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_XCB=3A_use_the_selected_visual_ra?= =?utf-8?q?ther_than_the_root_visual_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090207214301.D61F02EDF4@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 7 21:56:54 2009 +0200| [4c06a308e892439a5e8955f0fc2f29b56a5797de] | committer: R?mi Denis-Courmont XCB: use the selected visual rather than the root visual > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4c06a308e892439a5e8955f0fc2f29b56a5797de --- modules/video_output/xcb/xcb.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/video_output/xcb/xcb.c b/modules/video_output/xcb/xcb.c index eae5820..33101e8 100644 --- a/modules/video_output/xcb/xcb.c +++ b/modules/video_output/xcb/xcb.c @@ -453,7 +453,7 @@ static int Init (vout_thread_t *vout) c = xcb_create_window_checked (p_sys->conn, screen->root_depth, window, p_sys->parent, x, y, width, height, 0, XCB_WINDOW_CLASS_INPUT_OUTPUT, - screen->root_visual, mask, values); + p_sys->vid, mask, values); if (CheckError (vout, "cannot create X11 window", c)) goto error; p_sys->window = window; From git at videolan.org Sat Feb 7 22:43:01 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 22:43:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_XCB=3A_use_dummy_color_map_so_sel?= =?utf-8?q?ecting_a_non-default_visual_works_=28_R=C3=A9mi_Denis-Courmont_?= =?utf-8?q?=29?= Message-ID: <20090207214301.C092B2EDDB@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 7 23:40:11 2009 +0200| [5e67e38eca0f1639214fa29682f5c1d2aef095aa] | committer: R?mi Denis-Courmont XCB: use dummy color map so selecting a non-default visual works > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5e67e38eca0f1639214fa29682f5c1d2aef095aa --- modules/video_output/xcb/xcb.c | 16 +++++++++++++--- 1 files changed, 13 insertions(+), 3 deletions(-) diff --git a/modules/video_output/xcb/xcb.c b/modules/video_output/xcb/xcb.c index 02226c7..eae5820 100644 --- a/modules/video_output/xcb/xcb.c +++ b/modules/video_output/xcb/xcb.c @@ -77,8 +77,9 @@ struct vout_sys_t xcb_screen_t *screen; vout_window_t *embed; /* VLC window (when windowed) */ - xcb_visualid_t vid; + xcb_visualid_t vid; /* selected visual */ xcb_window_t parent; /* parent X window */ + xcb_colormap_t cmap; /* colormap for selected visual */ xcb_window_t window; /* drawable X window */ xcb_gcontext_t gc; /* context to put images */ bool shm; /* whether to use MIT-SHM */ @@ -202,6 +203,11 @@ static int Open (vlc_object_t *obj) } vout->fmt_out.i_chroma = vout->output.i_chroma; + /* Create colormap (needed to select non-default visual) */ + p_sys->cmap = xcb_generate_id (p_sys->conn); + xcb_create_colormap (p_sys->conn, XCB_COLORMAP_ALLOC_NONE, + p_sys->cmap, scr->root, p_sys->vid); + /* Check shared memory support */ p_sys->shm = var_CreateGetBool (vout, "x11-shm") > 0; if (p_sys->shm) @@ -241,6 +247,7 @@ static void Close (vlc_object_t *obj) vout_sys_t *p_sys = vout->p_sys; assert (p_sys->embed == NULL); + /* colormap is garbage-ollected by X (?) */ if (p_sys->conn) xcb_disconnect (p_sys->conn); free (p_sys); @@ -429,13 +436,16 @@ static int Init (vout_thread_t *vout) width * VOUT_ASPECT_FACTOR / height; /* Create window */ - const uint32_t mask = XCB_CW_BACK_PIXEL | XCB_CW_EVENT_MASK; - uint32_t values[2] = { + const uint32_t mask = XCB_CW_BACK_PIXEL | XCB_CW_EVENT_MASK + | XCB_CW_COLORMAP; + uint32_t values[] = { /* XCB_CW_BACK_PIXEL */ screen->black_pixel, /* XCB_CW_EVENT_MASK */ XCB_EVENT_MASK_BUTTON_PRESS | XCB_EVENT_MASK_BUTTON_RELEASE | XCB_EVENT_MASK_POINTER_MOTION, + /* XCB_CW_COLORMAP */ + p_sys->cmap, }; xcb_void_cookie_t c; xcb_window_t window = xcb_generate_id (p_sys->conn); From rem at videolan.org Sat Feb 7 22:46:14 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 7 Feb 2009 23:46:14 +0200 Subject: [vlc-devel] [PATCH] -- uniformize dealing with file:// In-Reply-To: <000001c9896c$6b76f080$1c56fac1@CCCC> References: <000001c9896c$6b76f080$1c56fac1@CCCC> Message-ID: <200902072346.14752.rem@videolan.org> Le samedi 7 f?vrier 2009 23:38:27 brezhoneg1, vous avez ?crit?: > My suggestion, if you accept it, would be to simply remove the hardcoded > "file://" when not necessary. No. This brings ambiguities back where we removed them. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Sat Feb 7 22:50:26 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 22:50:26 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_XCB=3A_fill_in_RGB_mask_informati?= =?utf-8?q?on_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090207215026.492002EDFC@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 7 23:50:14 2009 +0200| [547026ca2c863f234acd7e142e4e0f744b3391c8] | committer: R?mi Denis-Courmont XCB: fill in RGB mask information > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=547026ca2c863f234acd7e142e4e0f744b3391c8 --- modules/video_output/xcb/xcb.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/modules/video_output/xcb/xcb.c b/modules/video_output/xcb/xcb.c index 33101e8..19a9bf0 100644 --- a/modules/video_output/xcb/xcb.c +++ b/modules/video_output/xcb/xcb.c @@ -202,6 +202,12 @@ static int Open (vlc_object_t *obj) goto error; } vout->fmt_out.i_chroma = vout->output.i_chroma; + if (!gray) + { + vout->output.i_rmask = vt->red_mask; + vout->output.i_gmask = vt->green_mask; + vout->output.i_bmask = vt->blue_mask; + } /* Create colormap (needed to select non-default visual) */ p_sys->cmap = xcb_generate_id (p_sys->conn); From git at videolan.org Sat Feb 7 23:28:36 2009 From: git at videolan.org (git version control) Date: Sat, 7 Feb 2009 23:28:36 +0100 (CET) Subject: [vlc-devel] commit: Qt: put visualisation before audio-tracks to mimic Mac menus. ( Jean-Baptiste Kempf ) Message-ID: <20090207222836.ADB1D2EDEF@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 7 23:14:30 2009 +0100| [e81539dd6593741a4657748a4c99acd7bb1b4500] | committer: Jean-Baptiste Kempf Qt: put visualisation before audio-tracks to mimic Mac menus. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e81539dd6593741a4657748a4c99acd7bb1b4500 --- modules/gui/qt4/menus.cpp | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 8a3bd6a..82e11eb 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -239,10 +239,10 @@ static int AudioAutoMenuBuilder( aout_instance_t *p_object, vector &objects, vector &varnames ) { + PUSH_VAR( "visual" ); PUSH_INPUTVAR( "audio-es" ); PUSH_VAR( "audio-device" ); PUSH_VAR( "audio-channels" ); - PUSH_VAR( "visual" ); return VLC_SUCCESS; } @@ -493,11 +493,11 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) if( current->isEmpty() ) { + ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); + current->addSeparator(); ACT_ADD( current, "audio-es", qtr( "Audio &Track" ) ); ACT_ADD( current, "audio-device", qtr( "Audio &Device" ) ); ACT_ADD( current, "audio-channels", qtr( "Audio &Channels" ) ); - current->addSeparator(); - ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); } p_input = THEMIM->getInput(); From git at videolan.org Sun Feb 8 01:03:05 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 01:03:05 +0100 (CET) Subject: [vlc-devel] commit: macosx: Don't update the messages more than needed. (Pierre d' Herbemont ) Message-ID: <20090208000305.27AD12EB42@skanda.videolan.org> vlc | branch: 0.9-bugfix | Pierre d'Herbemont | Sun Nov 9 12:32:39 2008 +0100| [627eb87bdc7d71a656bbf339831644641d307249] | committer: Pierre d'Herbemont macosx: Don't update the messages more than needed. This saves some CPU time. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=627eb87bdc7d71a656bbf339831644641d307249 --- modules/gui/macosx/intf.m | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/gui/macosx/intf.m b/modules/gui/macosx/intf.m index b9fea37..040b17b 100644 --- a/modules/gui/macosx/intf.m +++ b/modules/gui/macosx/intf.m @@ -2339,6 +2339,8 @@ end: { int i_start, i_stop; + if(![o_msgs_panel isVisible]) return; + vlc_mutex_lock( p_intf->p_sys->p_sub->p_lock ); i_stop = *p_intf->p_sys->p_sub->pi_stop; vlc_mutex_unlock( p_intf->p_sys->p_sub->p_lock ); From git at videolan.org Sun Feb 8 01:03:05 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 01:03:05 +0100 (CET) Subject: [vlc-devel] commit: mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. (Pierre d'Herbemont ) Message-ID: <20090208000305.395A42EDC6@skanda.videolan.org> vlc | branch: 0.9-bugfix | Pierre d'Herbemont | Sun Feb 8 00:31:33 2009 +0100| [5ead92ffd58088828ed802173d963b2571f0cd69] | committer: Pierre d'Herbemont mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. mach_absolute_time() is a monotic clock, whereas gettimeofday() is not. For that reason setting your computer time while playing a movie won't halt playback anymore. Seems to fix the dropped frame issue on Mac OS X. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5ead92ffd58088828ed802173d963b2571f0cd69 --- include/vlc_threads.h | 14 ++++++++++++++ src/misc/mtime.c | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 0 deletions(-) diff --git a/include/vlc_threads.h b/include/vlc_threads.h index e2810e9..8a21f84 100644 --- a/include/vlc_threads.h +++ b/include/vlc_threads.h @@ -359,12 +359,26 @@ static inline void __vlc_cond_wait( const char * psz_file, int i_line, #define vlc_cond_timedwait( P_COND, P_MUTEX, DEADLINE ) \ __vlc_cond_timedwait( __FILE__, __LINE__, P_COND, P_MUTEX, DEADLINE ) +#ifdef __APPLE__ +# include /* gettimeofday in vlc_cond_timedwait */ +#endif + static inline int __vlc_cond_timedwait( const char * psz_file, int i_line, vlc_cond_t *p_condvar, vlc_mutex_t *p_mutex, mtime_t deadline ) { #if defined(LIBVLC_USE_PTHREAD) +#ifdef __APPLE__ + /* mdate() is mac_absolute_time on osx, which we must convert to do + * the same base than gettimeofday() on which pthread_cond_timedwait + * counts on. */ + mtime_t oldbase = mdate(); + struct timeval tv; + gettimeofday(&tv, NULL); + mtime_t newbase = (mtime_t)tv.tv_sec * 1000000 + (mtime_t) tv.tv_usec; + deadline = deadline - oldbase + newbase; +#endif lldiv_t d = lldiv( deadline, 1000000 ); struct timespec ts = { d.quot, d.rem * 1000 }; diff --git a/src/misc/mtime.c b/src/misc/mtime.c index 6c13eac..ed65f03 100644 --- a/src/misc/mtime.c +++ b/src/misc/mtime.c @@ -60,6 +60,11 @@ # include #endif +#ifdef __APPLE__ +# include +# include +#endif + #if !defined(HAVE_STRUCT_TIMESPEC) struct timespec { @@ -172,6 +177,15 @@ static inline unsigned mprec( void ) #endif } +#ifdef __APPLE__ +static mach_timebase_info_data_t mtime_timebase_info; +static pthread_once_t mtime_timebase_info_once = PTHREAD_ONCE_INIT; +static void mtime_init_timebase(void) +{ + mach_timebase_info(&mtime_timebase_info); +} +#endif + /** * Return high precision date * @@ -197,6 +211,16 @@ mtime_t mdate( void ) #elif defined( HAVE_KERNEL_OS_H ) res = real_time_clock_usecs(); +#elif defined( __APPLE__ ) + pthread_once(&mtime_timebase_info_once, mtime_init_timebase); + uint64_t date = mach_absolute_time(); + + /* Convert to nanoseconds */ + date *= mtime_timebase_info.numer; + date /= mtime_timebase_info.denom; + + /* Convert to microseconds */ + res = date / 1000; #elif defined( WIN32 ) || defined( UNDER_CE ) /* We don't need the real date, just the value of a high precision timer */ static mtime_t freq = INT64_C(-1); @@ -340,6 +364,11 @@ void mwait( mtime_t date ) ts.tv_sec = d.quot; ts.tv_nsec = d.rem * 1000; while( clock_nanosleep( CLOCK_REALTIME, 0, &ts, NULL ) == EINTR ); } +#elif defined( __APPLE__ ) /* The version that should be used, if it was cancelable */ + pthread_once(&mtime_timebase_info_once, mtime_init_timebase); + uint64_t mach_time = date * 1000 * mtime_timebase_info.denom / mtime_timebase_info.numer; + mach_wait_until(mach_time); + #else mtime_t delay = date - mdate(); @@ -385,6 +414,11 @@ void msleep( mtime_t delay ) while( nanosleep( &ts_delay, &ts_delay ) && ( errno == EINTR ) ); +#elif defined( __APPLE__ ) /* The version that should be used, if it was cancelable */ + pthread_once(&mtime_timebase_info_once, mtime_init_timebase); + uint64_t mach_time = delay * 1000 * mtime_timebase_info.denom / mtime_timebase_info.numer; + mach_wait_until(mach_time + mach_absolute_time()); + #else struct timeval tv_delay; From git at videolan.org Sun Feb 8 01:11:57 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 01:11:57 +0100 (CET) Subject: [vlc-devel] commit: Qt: menus, add VolumeMute/VolumeUp/ VolumeDown in the audio menu to match OSX Audio menu. (Jean-Baptiste Kempf ) Message-ID: <20090208001157.E8F532EDB3@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 8 01:11:11 2009 +0100| [5a4afbeb5bcdf6515871efdd0bd9fe4d435a2be9] | committer: Jean-Baptiste Kempf Qt: menus, add VolumeMute/VolumeUp/VolumeDown in the audio menu to match OSX Audio menu. We still have one more separator than OSX has. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5a4afbeb5bcdf6515871efdd0bd9fe4d435a2be9 --- modules/gui/qt4/actions_manager.cpp | 15 +++++++++++++++ modules/gui/qt4/actions_manager.hpp | 8 +++++--- modules/gui/qt4/components/controller_widget.cpp | 2 -- modules/gui/qt4/menus.cpp | 12 ++++++++++++ 4 files changed, 32 insertions(+), 5 deletions(-) diff --git a/modules/gui/qt4/actions_manager.cpp b/modules/gui/qt4/actions_manager.cpp index 9e5cd8c..ee5bcb6 100644 --- a/modules/gui/qt4/actions_manager.cpp +++ b/modules/gui/qt4/actions_manager.cpp @@ -27,6 +27,7 @@ #endif #include +#include #include #include "actions_manager.hpp" @@ -167,4 +168,18 @@ void ActionsManager::frame() var_SetVoid( p_input, "frame-next" ); } +void ActionsManager::toggleMuteAudio() +{ + aout_VolumeMute( p_intf, NULL ); +} + +void ActionsManager::AudioUp() +{ + aout_VolumeUp( p_intf, 1, NULL ); +} + +void ActionsManager::AudioDown() +{ + aout_VolumeDown( p_intf, 2, NULL ); +} diff --git a/modules/gui/qt4/actions_manager.hpp b/modules/gui/qt4/actions_manager.hpp index 6ab2089..9fa3e88 100644 --- a/modules/gui/qt4/actions_manager.hpp +++ b/modules/gui/qt4/actions_manager.hpp @@ -75,9 +75,10 @@ private: ActionsManager( intf_thread_t *_p_i, QObject *_parent ); intf_thread_t *p_intf; -protected slots: - virtual void doAction( int ); - +public slots: + void toggleMuteAudio(); + void AudioUp(); + void AudioDown(); protected slots: void play(); void fullscreen(); @@ -86,6 +87,7 @@ protected slots: void record(); void frame(); + virtual void doAction( int ); }; #endif diff --git a/modules/gui/qt4/components/controller_widget.cpp b/modules/gui/qt4/components/controller_widget.cpp index 8cad93a..31f0063 100644 --- a/modules/gui/qt4/components/controller_widget.cpp +++ b/modules/gui/qt4/components/controller_widget.cpp @@ -139,8 +139,6 @@ bool SoundWidget::eventFilter( QObject *obj, QEvent *e ) else { aout_VolumeMute( p_intf, NULL ); - audio_volume_t i_volume; - aout_VolumeGet( p_intf, &i_volume ); } e->accept(); return true; diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 82e11eb..9d55d26 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -40,6 +40,7 @@ #include "dialogs_provider.hpp" /* Dialogs display */ #include "input_manager.hpp" /* Input Management */ #include "recents.hpp" /* Recent Items */ +#include "actions_manager.hpp" #include #include @@ -493,6 +494,17 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) if( current->isEmpty() ) { + QAction *action = current->addAction( qtr( "Mute Audio" ), + ActionsManager::getInstance( p_intf ), SLOT( toggleMuteAudio() ) ); + action->setData( true ); + action = current->addAction( qtr( "Increase Volume" ), + ActionsManager::getInstance( p_intf ), SLOT( AudioUp() ) ); + action->setData( true ); + action = current->addAction( qtr( "Decrease Volume" ), + ActionsManager::getInstance( p_intf ), SLOT( AudioDown() ) ); + action->setData( true ); + + current->addSeparator(); ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); current->addSeparator(); ACT_ADD( current, "audio-es", qtr( "Audio &Track" ) ); From pdherbemont at free.fr Sun Feb 8 01:35:55 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Sun, 8 Feb 2009 01:35:55 +0100 Subject: [vlc-devel] commit: mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. (Pierre d'Herbemont ) In-Reply-To: <20090208000305.395A42EDC6@skanda.videolan.org> References: <20090208000305.395A42EDC6@skanda.videolan.org> Message-ID: Feel free to forward port. I can't get a usable vlc-1.0 here to test on. On Sun, Feb 8, 2009 at 1:03 AM, git version control wrote: > vlc | branch: 0.9-bugfix | Pierre d'Herbemont | Sun Feb 8 00:31:33 2009 +0100| [5ead92ffd58088828ed802173d963b2571f0cd69] | committer: Pierre d'Herbemont > > mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. > > mach_absolute_time() is a monotic clock, whereas gettimeofday() is not. For that reason setting your computer time while playing a movie won't halt playback anymore. > > Seems to fix the dropped frame issue on Mac OS X. > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5ead92ffd58088828ed802173d963b2571f0cd69 > --- > > include/vlc_threads.h | 14 ++++++++++++++ > src/misc/mtime.c | 34 ++++++++++++++++++++++++++++++++++ > 2 files changed, 48 insertions(+), 0 deletions(-) > > diff --git a/include/vlc_threads.h b/include/vlc_threads.h > index e2810e9..8a21f84 100644 > --- a/include/vlc_threads.h > +++ b/include/vlc_threads.h > @@ -359,12 +359,26 @@ static inline void __vlc_cond_wait( const char * psz_file, int i_line, > #define vlc_cond_timedwait( P_COND, P_MUTEX, DEADLINE ) \ > __vlc_cond_timedwait( __FILE__, __LINE__, P_COND, P_MUTEX, DEADLINE ) > > +#ifdef __APPLE__ > +# include /* gettimeofday in vlc_cond_timedwait */ > +#endif > + > static inline int __vlc_cond_timedwait( const char * psz_file, int i_line, > vlc_cond_t *p_condvar, > vlc_mutex_t *p_mutex, > mtime_t deadline ) > { > #if defined(LIBVLC_USE_PTHREAD) > +#ifdef __APPLE__ > + /* mdate() is mac_absolute_time on osx, which we must convert to do > + * the same base than gettimeofday() on which pthread_cond_timedwait > + * counts on. */ > + mtime_t oldbase = mdate(); > + struct timeval tv; > + gettimeofday(&tv, NULL); > + mtime_t newbase = (mtime_t)tv.tv_sec * 1000000 + (mtime_t) tv.tv_usec; > + deadline = deadline - oldbase + newbase; > +#endif > lldiv_t d = lldiv( deadline, 1000000 ); > struct timespec ts = { d.quot, d.rem * 1000 }; > > diff --git a/src/misc/mtime.c b/src/misc/mtime.c > index 6c13eac..ed65f03 100644 > --- a/src/misc/mtime.c > +++ b/src/misc/mtime.c > @@ -60,6 +60,11 @@ > # include > #endif > > +#ifdef __APPLE__ > +# include > +# include > +#endif > + > #if !defined(HAVE_STRUCT_TIMESPEC) > struct timespec > { > @@ -172,6 +177,15 @@ static inline unsigned mprec( void ) > #endif > } > > +#ifdef __APPLE__ > +static mach_timebase_info_data_t mtime_timebase_info; > +static pthread_once_t mtime_timebase_info_once = PTHREAD_ONCE_INIT; > +static void mtime_init_timebase(void) > +{ > + mach_timebase_info(&mtime_timebase_info); > +} > +#endif > + > /** > * Return high precision date > * > @@ -197,6 +211,16 @@ mtime_t mdate( void ) > #elif defined( HAVE_KERNEL_OS_H ) > res = real_time_clock_usecs(); > > +#elif defined( __APPLE__ ) > + pthread_once(&mtime_timebase_info_once, mtime_init_timebase); > + uint64_t date = mach_absolute_time(); > + > + /* Convert to nanoseconds */ > + date *= mtime_timebase_info.numer; > + date /= mtime_timebase_info.denom; > + > + /* Convert to microseconds */ > + res = date / 1000; > #elif defined( WIN32 ) || defined( UNDER_CE ) > /* We don't need the real date, just the value of a high precision timer */ > static mtime_t freq = INT64_C(-1); > @@ -340,6 +364,11 @@ void mwait( mtime_t date ) > ts.tv_sec = d.quot; ts.tv_nsec = d.rem * 1000; > while( clock_nanosleep( CLOCK_REALTIME, 0, &ts, NULL ) == EINTR ); > } > +#elif defined( __APPLE__ ) /* The version that should be used, if it was cancelable */ > + pthread_once(&mtime_timebase_info_once, mtime_init_timebase); > + uint64_t mach_time = date * 1000 * mtime_timebase_info.denom / mtime_timebase_info.numer; > + mach_wait_until(mach_time); > + > #else > > mtime_t delay = date - mdate(); > @@ -385,6 +414,11 @@ void msleep( mtime_t delay ) > > while( nanosleep( &ts_delay, &ts_delay ) && ( errno == EINTR ) ); > > +#elif defined( __APPLE__ ) /* The version that should be used, if it was cancelable */ > + pthread_once(&mtime_timebase_info_once, mtime_init_timebase); > + uint64_t mach_time = delay * 1000 * mtime_timebase_info.denom / mtime_timebase_info.numer; > + mach_wait_until(mach_time + mach_absolute_time()); > + > #else > struct timeval tv_delay; > > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > From git at videolan.org Sun Feb 8 03:08:19 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 03:08:19 +0100 (CET) Subject: [vlc-devel] commit: Qt: remove useless includes. (Jean-Baptiste Kempf ) Message-ID: <20090208020819.A56952ED6D@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 8 01:55:49 2009 +0100| [58902dc12853df49b078cf374452871dd36400ef] | committer: Jean-Baptiste Kempf Qt: remove useless includes. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=58902dc12853df49b078cf374452871dd36400ef --- .../gui/qt4/components/complete_preferences.cpp | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/components/complete_preferences.cpp b/modules/gui/qt4/components/complete_preferences.cpp index 1b520be..76bf1d0 100644 --- a/modules/gui/qt4/components/complete_preferences.cpp +++ b/modules/gui/qt4/components/complete_preferences.cpp @@ -34,11 +34,8 @@ #include #include #include -#include #include #include -#include -#include #include "components/complete_preferences.hpp" #include "components/preferences_widgets.hpp" From git at videolan.org Sun Feb 8 03:08:19 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 03:08:19 +0100 (CET) Subject: [vlc-devel] commit: Qt: messages cleanup and work around #2432 to solve the speed issues. ( Jean-Baptiste Kempf ) Message-ID: <20090208020819.B42D02ED7A@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 8 03:07:37 2009 +0100| [b505449c011b2b190007b9dac8b37379e08e2f3e] | committer: Jean-Baptiste Kempf Qt: messages cleanup and work around #2432 to solve the speed issues. Patches partly by random. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b505449c011b2b190007b9dac8b37379e08e2f3e --- modules/gui/qt4/dialogs/messages.cpp | 103 +++++++++++++++------------------- modules/gui/qt4/dialogs/messages.hpp | 2 +- 2 files changed, 47 insertions(+), 58 deletions(-) diff --git a/modules/gui/qt4/dialogs/messages.cpp b/modules/gui/qt4/dialogs/messages.cpp index 2cd54e7..264e51c 100644 --- a/modules/gui/qt4/dialogs/messages.cpp +++ b/modules/gui/qt4/dialogs/messages.cpp @@ -88,6 +88,7 @@ MessagesDialog::MessagesDialog( intf_thread_t *_p_intf) messages->setReadOnly( true ); messages->setGeometry( 0, 0, 440, 600 ); messages->setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff ); + messages->setTextInteractionFlags( Qt::TextSelectableByMouse ); msgLayout->addWidget( messages, 0, 0, 1, 0 ); mainTab->addTab( msgWidget, qtr( "Messages" ) ); @@ -171,19 +172,21 @@ void MessagesDialog::updateTab( int index ) } } -void MessagesDialog::sinkMessage (msg_item_t *item, unsigned) +void MessagesDialog::sinkMessage( msg_item_t *item ) { if ((item->i_type == VLC_MSG_WARN && verbosityBox->value() < 1) || (item->i_type == VLC_MSG_DBG && verbosityBox->value() < 2 )) return; - // Saving cursor selection - int startPos = messages->textCursor().selectionStart(); - int endPos = messages->textCursor().selectionEnd(); + /* Copy selected text to the clipboard */ + if( messages->textCursor().hasSelection() ) + messages->copy(); + + /* Fix selected text bug */ + if( !messages->textCursor().atEnd() || + messages->textCursor().anchor() != messages->textCursor().position() ) + messages->moveCursor( QTextCursor::End ); - messages->moveCursor( QTextCursor::End ); - if( startPos == endPos && messages->textCursor().selectionEnd() == endPos ) - endPos = 0; messages->setFontItalic( true ); messages->setTextColor( "darkBlue" ); messages->insertPlainText( qfu( item->psz_module ) ); @@ -214,54 +217,14 @@ void MessagesDialog::sinkMessage (msg_item_t *item, unsigned) messages->setTextColor( "black" ); messages->insertPlainText( qfu(item->psz_msg) ); messages->insertPlainText( "\n" ); - messages->ensureCursorVisible(); - - // Restoring saved cursor selection - // If the cursor was at this end, put it at the end, - // so we don't need to scroll down. - if( endPos == 0 ) - messages->moveCursor( QTextCursor::End ); - else - { - QTextCursor cur = messages->textCursor(); - cur.movePosition( QTextCursor::Start ); - cur.movePosition( QTextCursor::NextCharacter, QTextCursor::MoveAnchor, startPos ); - cur.movePosition( QTextCursor::NextCharacter, QTextCursor::KeepAnchor, endPos - startPos ); - messages->setTextCursor( cur ); - } } + void MessagesDialog::customEvent( QEvent *event ) { - MsgEvent *msg = dynamic_cast(event); + MsgEvent *msge = static_cast(event); - assert( msg ); - sinkMessage( msg->msg, 0 ); -} - -void MessagesDialog::buildTree( QTreeWidgetItem *parentItem, - vlc_object_t *p_obj ) -{ - QTreeWidgetItem *item; - - if( parentItem ) - item = new QTreeWidgetItem( parentItem ); - else - item = new QTreeWidgetItem( modulesTree ); - - if( p_obj->psz_object_name ) - item->setText( 0, qfu( p_obj->psz_object_type ) + " \"" + - qfu( p_obj->psz_object_name ) + "\" (" + - QString::number((uintptr_t)p_obj) + ")" ); - else - item->setText( 0, qfu( p_obj->psz_object_type ) + " (" + - QString::number((uintptr_t)p_obj) + ")" ); - - item->setExpanded( true ); - - vlc_list_t *l = vlc_list_children( p_obj ); - for( int i=0; i < l->i_count; i++ ) - buildTree( item, l->p_values[i].p_object ); - vlc_list_release( l ); + assert( msge ); + sinkMessage( msge->msg ); } void MessagesDialog::clearOrUpdate() @@ -272,12 +235,6 @@ void MessagesDialog::clearOrUpdate() clear(); } -void MessagesDialog::updateTree() -{ - modulesTree->clear(); - buildTree( NULL, VLC_OBJECT( p_intf->p_libvlc ) ); -} - void MessagesDialog::clear() { messages->clear(); @@ -309,6 +266,38 @@ bool MessagesDialog::save() return false; } +void MessagesDialog::buildTree( QTreeWidgetItem *parentItem, + vlc_object_t *p_obj ) +{ + QTreeWidgetItem *item; + + if( parentItem ) + item = new QTreeWidgetItem( parentItem ); + else + item = new QTreeWidgetItem( modulesTree ); + + if( p_obj->psz_object_name ) + item->setText( 0, qfu( p_obj->psz_object_type ) + " \"" + + qfu( p_obj->psz_object_name ) + "\" (" + + QString::number((uintptr_t)p_obj) + ")" ); + else + item->setText( 0, qfu( p_obj->psz_object_type ) + " (" + + QString::number((uintptr_t)p_obj) + ")" ); + + item->setExpanded( true ); + + vlc_list_t *l = vlc_list_children( p_obj ); + for( int i=0; i < l->i_count; i++ ) + buildTree( item, l->p_values[i].p_object ); + vlc_list_release( l ); +} + +void MessagesDialog::updateTree() +{ + modulesTree->clear(); + buildTree( NULL, VLC_OBJECT( p_intf->p_libvlc ) ); +} + static void MsgCallback( msg_cb_data_t *data, msg_item_t *item, unsigned ) { int canc = vlc_savecancel(); diff --git a/modules/gui/qt4/dialogs/messages.hpp b/modules/gui/qt4/dialogs/messages.hpp index a4881cb..e723505 100644 --- a/modules/gui/qt4/dialogs/messages.hpp +++ b/modules/gui/qt4/dialogs/messages.hpp @@ -67,7 +67,7 @@ private: msg_cb_data_t *cbData; static void sinkMessage( msg_cb_data_t *, msg_item_t *, unsigned ); void customEvent( QEvent * ); - void sinkMessage( msg_item_t *item, unsigned ); + void sinkMessage( msg_item_t *item ); private slots: void updateTab( int ); From git at videolan.org Sun Feb 8 03:40:10 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 03:40:10 +0100 (CET) Subject: [vlc-devel] commit: Qt: fix Menu->View->Fullscreen interface state. ( Jean-Baptiste Kempf ) Message-ID: <20090208024010.E9FC42EE12@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 8 03:33:29 2009 +0100| [7ab733f2c39d5f2c56d3f52724d5b2274cede1ec] | committer: Jean-Baptiste Kempf Qt: fix Menu->View->Fullscreen interface state. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7ab733f2c39d5f2c56d3f52724d5b2274cede1ec --- modules/gui/qt4/main_interface.cpp | 5 +++++ modules/gui/qt4/menus.cpp | 2 ++ modules/gui/qt4/menus.hpp | 1 + 3 files changed, 8 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index ad14e4d..34cc1de 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -1159,9 +1159,14 @@ void MainInterface::toggleFullScreen( void ) { showNormal(); emit askUpdate(); // Needed if video was launched after the F11 + QVLCMenu::fullscreenViewAction->setChecked( false ); } else + { showFullScreen(); + QVLCMenu::fullscreenViewAction->setChecked( true ); + } + } /***************************************************************************** diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 9d55d26..42ef79d 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -76,6 +76,7 @@ static QActionGroup *currentGroup; /* HACK for minimalView to go around a Qt bug/feature * that doesn't update the QAction checked state when QMenu is hidden */ QAction *QVLCMenu::minimalViewAction = NULL; +QAction *QVLCMenu::fullscreenViewAction = NULL; QMenu *QVLCMenu::recentsMenu = NULL; @@ -440,6 +441,7 @@ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, /* FullScreen View */ action = menu->addAction( qtr( "&Fullscreen Interface" ), mi, SLOT( toggleFullScreen() ), QString( "F11" ) ); + fullscreenViewAction = action; action->setCheckable( true ); action->setData( true ); diff --git a/modules/gui/qt4/menus.hpp b/modules/gui/qt4/menus.hpp index 52ede2d..93b4dbe 100644 --- a/modules/gui/qt4/menus.hpp +++ b/modules/gui/qt4/menus.hpp @@ -96,6 +96,7 @@ public: /* HACK for minimalView */ static QAction *minimalViewAction; + static QAction *fullscreenViewAction; private: /* All main Menus */ From git at videolan.org Sun Feb 8 03:40:11 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 03:40:11 +0100 (CET) Subject: [vlc-devel] commit: Qt: Fix minimalView state in menus. (Jean-Baptiste Kempf ) Message-ID: <20090208024011.059782EE18@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 8 03:38:59 2009 +0100| [c3bea09ca804fd33fdfdd5f3f0b039b3a4f95b77] | committer: Jean-Baptiste Kempf Qt: Fix minimalView state in menus. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c3bea09ca804fd33fdfdd5f3f0b039b3a4f95b77 --- modules/gui/qt4/main_interface.cpp | 5 ++--- modules/gui/qt4/menus.cpp | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index 34cc1de..5f8de7e 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -781,9 +781,6 @@ void MainInterface::dockPlaylist( pl_dock_e i_pos ) void MainInterface::toggleMinimalView() { - /* HACK for minimalView, see menus.cpp */ - if( !menuBar()->isVisible() ) QVLCMenu::minimalViewAction->toggle(); - if( i_visualmode != QT_ALWAYS_VIDEO_MODE && i_visualmode != QT_MINIMAL_MODE ) { /* NORMAL MODE then */ @@ -800,6 +797,8 @@ void MainInterface::toggleMinimalView() TOGGLEV( statusBar() ); TOGGLEV( inputC ); doComponentsUpdate(); + + QVLCMenu::minimalViewAction->setChecked( bgWasVisible ); } /* Video widget cannot do this synchronously as it runs in another thread */ diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 42ef79d..adf625b 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -899,7 +899,7 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) action->setChecked( !( mi->getControlsVisibilityStatus() & CONTROLS_VISIBLE ) ); action = submenu->addAction( QIcon( "" ), - qtr( "Toggle Fullscreen Interface" ), + qtr( "Fullscreen Interface" ), mi, SLOT( toggleFullScreen() ) ); action->setCheckable( true ); action->setChecked( mi->isFullScreen() ); From xxcv07 at gmail.com Sun Feb 8 05:01:40 2009 From: xxcv07 at gmail.com (xxcv) Date: Sun, 08 Feb 2009 15:01:40 +1100 Subject: [vlc-devel] commit: Qt: messages cleanup and work around #2432 to solve the speed issues. ( Jean-Baptiste Kempf ) In-Reply-To: <20090208020819.B42D02ED7A@skanda.videolan.org> References: <20090208020819.B42D02ED7A@skanda.videolan.org> Message-ID: <498E5924.1050407@gmail.com> > @@ -214,54 +217,14 @@ void MessagesDialog::sinkMessage (msg_item_t *item, unsigned) > messages->setTextColor( "black" ); > messages->insertPlainText( qfu(item->psz_msg) ); > messages->insertPlainText( "\n" ); > - messages->ensureCursorVisible(); > ^^^^^^^^^^^ Just one minor problem, this line ensure messages texts are scrolled to the bottom automatically. From git at videolan.org Sun Feb 8 09:59:01 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 09:59:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_cosmetic_=28_R=C3=A9mi_Denis-Cour?= =?utf-8?q?mont_=29?= Message-ID: <20090208085901.7DFE92EDB3@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 8 10:58:27 2009 +0200| [663a2015ed1c7eb899b6c8cc3a44e6a22a8bccde] | committer: R?mi Denis-Courmont cosmetic > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=663a2015ed1c7eb899b6c8cc3a44e6a22a8bccde --- modules/video_output/xcb/xcb.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/video_output/xcb/xcb.c b/modules/video_output/xcb/xcb.c index 19a9bf0..828f530 100644 --- a/modules/video_output/xcb/xcb.c +++ b/modules/video_output/xcb/xcb.c @@ -148,13 +148,13 @@ static int Open (vlc_object_t *obj) if ((vt = xcb_aux_find_visual_by_attrs (scr, XCB_VISUAL_CLASS_TRUE_COLOR, scr->root_depth)) != NULL) msg_Dbg (vout, "using TrueColor visual ID %d", (int)vt->visual_id); -#if 0 else +#if 0 if ((vt = xcb_aux_find_visual_by_attrs (scr, XCB_VISUAL_CLASS_STATIC_COLOR, scr->root_depth)) != NULL) msg_Dbg (vout, "using static color visual ID %d", (int)vt->visual_id); -#endif else +#endif if ((scr->root_depth == 8) && (vt = xcb_aux_find_visual_by_attrs (scr, XCB_VISUAL_CLASS_STATIC_GRAY, scr->root_depth)) != NULL) From git at videolan.org Sun Feb 8 09:59:01 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 09:59:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_crash_=28_R=C3=A9mi_Denis-Cou?= =?utf-8?q?rmont_=29?= Message-ID: <20090208085901.8CC642EDD7@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 8 10:58:37 2009 +0200| [45d4420f5ba9d3aa86229059d2e2a3eedf6450cc] | committer: R?mi Denis-Courmont Fix crash > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=45d4420f5ba9d3aa86229059d2e2a3eedf6450cc --- modules/video_output/xcb/xcb.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/video_output/xcb/xcb.c b/modules/video_output/xcb/xcb.c index 828f530..53e463f 100644 --- a/modules/video_output/xcb/xcb.c +++ b/modules/video_output/xcb/xcb.c @@ -364,7 +364,7 @@ static int PictureInit (vout_thread_t *vout, picture_t *pic) error: if (shm != SHM_ERR) shmdt (shm); - free (p_sys); + free (priv); return VLC_EGENERIC; } From git at videolan.org Sun Feb 8 10:12:05 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 10:12:05 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Revert_=22directory=3A__Add_XSPF_?= =?utf-8?q?node-extension_support_to_our_directory_module=2E=22_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090208091205.47E992ED8B@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 8 11:11:30 2009 +0200| [bc7bf1b597db73adf4018dfdbc8b58a2d7ed74e9] | committer: R?mi Denis-Courmont Revert "directory: Add XSPF node-extension support to our directory module." This reverts commit 8f7056b536e341fe8f07cfec4067e53e93c59708. This broke the XML parser (fixes #2500). Conflicts: modules/access/directory.c > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bc7bf1b597db73adf4018dfdbc8b58a2d7ed74e9 --- modules/access/directory.c | 66 +++++-------------------------------------- 1 files changed, 8 insertions(+), 58 deletions(-) diff --git a/modules/access/directory.c b/modules/access/directory.c index 379c1a1..ff4309c 100644 --- a/modules/access/directory.c +++ b/modules/access/directory.c @@ -125,8 +125,6 @@ struct access_sys_t DIR *handle; char *ignored_exts; int mode; - int i_item_count; - char *psz_xspf_extension; }; static block_t *Block( access_t * ); @@ -173,8 +171,6 @@ static int Open( vlc_object_t *p_this ) p_sys->current = NULL; p_sys->handle = handle; p_sys->ignored_exts = var_CreateGetString (p_access, "ignore-filetypes"); - p_sys->i_item_count = 0; - p_sys->psz_xspf_extension = strdup( "" ); /* Handle mode */ char *psz = var_CreateGetString( p_access, "recursive" ); @@ -215,7 +211,6 @@ static void Close( vlc_object_t * p_this ) } if (p_sys->handle != NULL) closedir (p_sys->handle); /* corner case,:Block() not called ever */ - free (p_sys->psz_xspf_extension); free (p_sys->ignored_exts); free (p_sys); } @@ -269,7 +264,7 @@ static block_t *Block (access_t *p_access) { /* Startup: send the XSPF header */ static const char header[] = "\n" - "\n" + "\n" " \n"; block_t *block = block_Alloc (sizeof (header) - 1); if (!block) @@ -310,36 +305,17 @@ static block_t *Block (access_t *p_access) if (p_sys->current == NULL) { /* End of XSPF playlist */ - char *footer; - int len = asprintf( &footer, " \n" \ - " \n" \ - "%s" \ - " \n" \ - "\n", p_sys->psz_xspf_extension ); - if( len < 0 ) - goto fatal; + static const char footer[] = + " \n" + "\n"; - block_t *block = block_Alloc ( len ); + block_t *block = block_Alloc (sizeof (footer) - 1); if (!block) goto fatal; - memcpy (block->p_buffer, footer, len); - free( footer ); + memcpy (block->p_buffer, footer, sizeof (footer) - 1); p_access->info.b_eof = true; return block; } - else - { - /* This was the end of a "subnode" */ - /* Write the ID to the extension */ - char *old_xspf_extension = p_sys->psz_xspf_extension; - if (old_xspf_extension == NULL) - goto fatal; - - int len2 = asprintf( &p_sys->psz_xspf_extension, "%s \n", old_xspf_extension ); - if (len2 == -1) - goto fatal; - free( old_xspf_extension ); - } return NULL; } @@ -377,17 +353,6 @@ static block_t *Block (access_t *p_access) return NULL; } p_sys->current = sub; - - /* Add node to xspf extension */ - char *old_xspf_extension = p_sys->psz_xspf_extension; - if (old_xspf_extension == NULL) - goto fatal; - - int len2 = asprintf( &p_sys->psz_xspf_extension, "%s \n", old_xspf_extension, entry ); - if (len2 == -1) - goto fatal; - free( old_xspf_extension ); - return NULL; } else @@ -423,27 +388,12 @@ static block_t *Block (access_t *p_access) if (encoded == NULL) goto fatal; int len = asprintf (&entry, - " file://%s/%s\n" \ - " \n" \ - " %d\n" \ - " \n" \ - " \n", - current->uri, encoded, p_sys->i_item_count++); + " file://%s/%s\n", + current->uri, encoded); free (encoded); if (len == -1) goto fatal; - /* Write the ID to the extension */ - char *old_xspf_extension = p_sys->psz_xspf_extension; - if (old_xspf_extension == NULL) - goto fatal; - - int len2 = asprintf( &p_sys->psz_xspf_extension, "%s \n", - old_xspf_extension, p_sys->i_item_count-1 ); - if (len2 == -1) - goto fatal; - free( old_xspf_extension ); - /* TODO: new block allocator for malloc()ated data */ block_t *block = block_Alloc (len); if (!block) From agent_007 at luukku.com Sun Feb 8 10:16:15 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Sun, 8 Feb 2009 11:16:15 +0200 (EET) Subject: [vlc-devel] [PATCH]Directsound - add speaker setup override option Message-ID: <1234084575074.agent_007.7467.vd6sgYRj5bCDvqX7eLQGtA@luukku.com> R?mi Denis-Courmont kirjoitti 07.02.2009 kello 23:26: > Le samedi 7 f?vrier 2009 23:09:55 Kaarlo R?ih?, vous avez ?crit : > > This patch adds speaker setup override option to Directsound audio output. > > > > Some people need this because there is only one speaker setup in Windows > > and all sound devices share that same setup. So if you have for example > 5.1 > > speakers and bluetooth headset, you can now force output from VLC itself > > automatically and you don't have to reach VLC audio menu each time or mess > > the speaker config. > > > > Also some people requested option to keep audio always on mono. This patch > > makes that possible. (I know there are other ways to do it) > > Don't mention that change needs VLC to restart. Just set the restart > flag > properly. > > -- > R?mi Denis-Courmont > http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel Is adding change_need_restart() enough for setting the restart flag? ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-Remove-restart-text-and-add-change_need_restart.patch Type: application/octet-stream Size: 1398 bytes Desc: not available URL: From rem at videolan.org Sun Feb 8 11:08:40 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sun, 8 Feb 2009 12:08:40 +0200 Subject: [vlc-devel] =?utf-8?q?commit=3A_Revert_=22directory=3A__Add_XSPF_?= =?utf-8?q?node-extension_support_to_our_directory_module=2E=22_=28?= =?utf-8?q?_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <20090208091205.47E992ED8B@skanda.videolan.org> References: <20090208091205.47E992ED8B@skanda.videolan.org> Message-ID: <200902081208.40751.rem@videolan.org> Le dimanche 8 f?vrier 2009 11:12:05 git version control, vous avez ?crit?: > vlc | branch: master | R?mi Denis-Courmont | Sun > Feb 8 11:11:30 2009 +0200| [bc7bf1b597db73adf4018dfdbc8b58a2d7ed74e9] | > committer: R?mi Denis-Courmont > > Revert "directory: Add XSPF node-extension support to our directory > module." > > This reverts commit 8f7056b536e341fe8f07cfec4067e53e93c59708. > This broke the XML parser (fixes #2500). This implies we still do not have hierarchal playlist for directories. The parser was failing to parse the hierarchy data. That being noted, I find XSPF is a completely _moronic_ choice for this. Why the heck use a *flat* playlist format (XSPF) to store a *hierarchical* playlist (VLC) in a *hierarchical* meta-format (XML). This makes no sense to me. If we're to use XML, then why reinvent the wheel for hierarchy? I also did not know that VideoLAN had copied Microsoft's embrance and extend standards policy... -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From jb at videolan.org Sun Feb 8 11:16:20 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 8 Feb 2009 11:16:20 +0100 Subject: [vlc-devel] commit: Qt: messages cleanup and work around #2432 to solve the speed issues. ( Jean-Baptiste Kempf ) In-Reply-To: <498E5924.1050407@gmail.com> References: <20090208020819.B42D02ED7A@skanda.videolan.org> <498E5924.1050407@gmail.com> Message-ID: <20090208101620.GA30337@videolan.org> On Sun, Feb 08, 2009 at 03:01:40PM +1100, xxcv wrote : > > > @@ -214,54 +217,14 @@ void MessagesDialog::sinkMessage (msg_item_t *item, unsigned) > > messages->setTextColor( "black" ); > > messages->insertPlainText( qfu(item->psz_msg) ); > > messages->insertPlainText( "\n" ); > > - messages->ensureCursorVisible(); > > > ^^^^^^^^^^^ > Just one minor problem, this line ensure messages texts are scrolled to > the bottom automatically. Yes, I know, and I am not sure we need it. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From xxcv07 at gmail.com Sun Feb 8 11:24:44 2009 From: xxcv07 at gmail.com (xxcv) Date: Sun, 08 Feb 2009 21:24:44 +1100 Subject: [vlc-devel] commit: Qt: messages cleanup and work around #2432 to solve the speed issues. ( Jean-Baptiste Kempf ) In-Reply-To: <20090208101620.GA30337@videolan.org> References: <20090208020819.B42D02ED7A@skanda.videolan.org> <498E5924.1050407@gmail.com> <20090208101620.GA30337@videolan.org> Message-ID: <498EB2EC.5090206@gmail.com> Jean-Baptiste Kempf wrote: > On Sun, Feb 08, 2009 at 03:01:40PM +1100, xxcv wrote : > >>> @@ -214,54 +217,14 @@ void MessagesDialog::sinkMessage (msg_item_t *item, unsigned) >>> messages->setTextColor( "black" ); >>> messages->insertPlainText( qfu(item->psz_msg) ); >>> messages->insertPlainText( "\n" ); >>> - messages->ensureCursorVisible(); >>> >>> >> ^^^^^^^^^^^ >> Just one minor problem, this line ensure messages texts are scrolled to >> the bottom automatically. >> > Yes, I know, and I am not sure we need it. > We need this line of cause otherwise messages dialog would be retarded, making sure that the cursor is visible is by original design of the messages dialog, BTW, why wouldn't we need it??? Not much point seeing the (1st line) same messages always is there? What we want is for it to automatically scroll down to the latest message, so please add this statement back. Regards, -------------- next part -------------- An HTML attachment was scrubbed... URL: From fkuehne.videolan at googlemail.com Sun Feb 8 11:29:13 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Sun, 8 Feb 2009 11:29:13 +0100 Subject: [vlc-devel] commit: mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. (Pierre d'Herbemont ) In-Reply-To: References: <20090208000305.395A42EDC6@skanda.videolan.org> Message-ID: <554B0D81-9249-4489-9A67-94A8D18D4BAF@gmail.com> Am 08.02.2009 um 01:35 schrieb Pierre d'Herbemont: > Feel free to forward port. I can't get a usable vlc-1.0 here to test > on. well, I'm unable to forward-port this as I understood too little about this part of VLC. Therefore, I've created #2501, so we don't forget to do this once the vout on OS X fixed. Best regards, Felix From xxcv07 at gmail.com Sun Feb 8 11:49:33 2009 From: xxcv07 at gmail.com (xxcv) Date: Sun, 08 Feb 2009 21:49:33 +1100 Subject: [vlc-devel] commit: Qt: messages cleanup and work around #2432 to solve the speed issues. ( Jean-Baptiste Kempf ) In-Reply-To: <20090208020819.B42D02ED7A@skanda.videolan.org> References: <20090208020819.B42D02ED7A@skanda.videolan.org> Message-ID: <498EB8BD.1090803@gmail.com> git version control wrote: > vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 8 03:07:37 2009 +0100| [b505449c011b2b190007b9dac8b37379e08e2f3e] | committer: Jean-Baptiste Kempf > > Qt: messages cleanup and work around #2432 to solve the speed issues. > > Patches partly by random. > Also can you commit my patch separately ?? And not mixing my patch with your work, that would make things more clear. That's a real bad habit for doing that! From jb at videolan.org Sun Feb 8 11:53:05 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 8 Feb 2009 11:53:05 +0100 Subject: [vlc-devel] commit: Qt: messages cleanup and work around #2432 to solve the speed issues. ( Jean-Baptiste Kempf ) In-Reply-To: <498EB8BD.1090803@gmail.com> References: <20090208020819.B42D02ED7A@skanda.videolan.org> <498EB8BD.1090803@gmail.com> Message-ID: <20090208105305.GA4633@videolan.org> On Sun, Feb 08, 2009 at 09:49:33PM +1100, xxcv wrote : > git version control wrote: > > vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 8 03:07:37 2009 +0100| [b505449c011b2b190007b9dac8b37379e08e2f3e] | committer: Jean-Baptiste Kempf > > > > Qt: messages cleanup and work around #2432 to solve the speed issues. > > > > Patches partly by random. > > > Also can you commit my patch separately ?? > And not mixing my patch with your work, that would make things more clear. > That's a real bad habit for doing that! I usually don't do that (read most of my application of patches), but the patches weren't send in a git compatible format (did my git screw up or trac?). So, this it why it happened that way. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Sun Feb 8 11:54:34 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 11:54:34 +0100 (CET) Subject: [vlc-devel] commit: Qt: put the ensureCursorVisible(); back. (Jean-Baptiste Kempf ) Message-ID: <20090208105434.D11672EE22@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 8 11:54:14 2009 +0100| [95819b345a63f9cda9a2290fc2ec25f9f03d3dcd] | committer: Jean-Baptiste Kempf Qt: put the ensureCursorVisible(); back. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=95819b345a63f9cda9a2290fc2ec25f9f03d3dcd --- modules/gui/qt4/dialogs/messages.cpp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/dialogs/messages.cpp b/modules/gui/qt4/dialogs/messages.cpp index 264e51c..11a9fef 100644 --- a/modules/gui/qt4/dialogs/messages.cpp +++ b/modules/gui/qt4/dialogs/messages.cpp @@ -217,6 +217,7 @@ void MessagesDialog::sinkMessage( msg_item_t *item ) messages->setTextColor( "black" ); messages->insertPlainText( qfu(item->psz_msg) ); messages->insertPlainText( "\n" ); + messages->ensureCursorVisible(); } void MessagesDialog::customEvent( QEvent *event ) From jb at videolan.org Sun Feb 8 11:55:42 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 8 Feb 2009 11:55:42 +0100 Subject: [vlc-devel] commit: Qt: messages cleanup and work around #2432 to solve the speed issues. ( Jean-Baptiste Kempf ) In-Reply-To: <498EB2EC.5090206@gmail.com> References: <20090208020819.B42D02ED7A@skanda.videolan.org> <498E5924.1050407@gmail.com> <20090208101620.GA30337@videolan.org> <498EB2EC.5090206@gmail.com> Message-ID: <20090208105542.GA4954@videolan.org> On Sun, Feb 08, 2009 at 09:24:44PM +1100, xxcv wrote : > We need this line of cause otherwise messages dialog would be retarded, > making sure > that the cursor is visible is by original design of the messages dialog, > BTW, why wouldn't we need it??? > Not much point seeing the (1st line) same messages always is there? > What we want is for it to automatically scroll down to the latest > message, so please > add this statement back. Well, when I read some past messages, and I scroll manually, I like that the dialog doesn't send my to the end of the messages. But well, you got the old way back, just committed. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From rem at videolan.org Sun Feb 8 12:01:30 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Sun, 8 Feb 2009 13:01:30 +0200 Subject: [vlc-devel] commit: Qt: messages cleanup and work around #2432 to solve the speed issues. ( Jean-Baptiste Kempf ) In-Reply-To: <20090208105542.GA4954@videolan.org> References: <20090208020819.B42D02ED7A@skanda.videolan.org> <498EB2EC.5090206@gmail.com> <20090208105542.GA4954@videolan.org> Message-ID: <200902081301.31202.rem@videolan.org> Le dimanche 8 f?vrier 2009 12:55:42 Jean-Baptiste Kempf, vous avez ?crit?: > On Sun, Feb 08, 2009 at 09:24:44PM +1100, xxcv wrote : > > We need this line of cause otherwise messages dialog would be retarded, > > making sure > > that the cursor is visible is by original design of the messages dialog, > > BTW, why wouldn't we need it??? > > Not much point seeing the (1st line) same messages always is there? > > What we want is for it to automatically scroll down to the latest > > message, so please > > add this statement back. > > Well, when I read some past messages, and I scroll manually, I like that > the dialog doesn't send my to the end of the messages. It should probably scroll automatically if and only if it is at the end. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Sun Feb 8 12:06:55 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 12:06:55 +0100 (CET) Subject: [vlc-devel] commit: mozilla: fix MacOS X plugin packaging (Jean-Paul Saman ) Message-ID: <20090208110655.CA8342EE30@skanda.videolan.org> vlc | branch: 0.9-bugfix | Jean-Paul Saman | Mon Feb 2 21:37:52 2009 +0100| [18dfe4f2eacd82c2bda67f279d17c157123c0a59] | committer: Felix Paul K?hne mozilla: fix MacOS X plugin packaging Signed-off-by: Felix Paul K?hne > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=18dfe4f2eacd82c2bda67f279d17c157123c0a59 --- projects/mozilla/Makefile.am | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index 9c3dfd5..3c9720f 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -106,6 +106,8 @@ VLC\ Plugin.plugin: npvlc.rsrc $(lib_LTLIBRARIES) rm -Rf "$@" $(INSTALL) -d "$@/Contents/MacOS/lib" $(INSTALL) -d "$@/Contents/Resources" + $(INSTALL) .libs/npvlc.dylib "$@/Contents/MacOS/VLC Plugin" + dylib="$@/Contents/MacOS/VLC Plugin"; $(FIXEXECPATH); $(INSTALL) npvlc.rsrc "$@/Contents/Resources/VLC Plugin.rsrc" cp -r "$(top_srcdir)/extras/package/macosx/plugin/English.lproj" "$@/Contents/Resources/" cp -r "$(top_builddir)/extras/package/macosx/plugin/English.lproj" "$@/Contents/Resources/" From git at videolan.org Sun Feb 8 12:06:55 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 12:06:55 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_really_fixed_packaging_?= =?utf-8?q?of_the_Mozilla/Safari_plugin_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090208110655.DC3E32EE5A@skanda.videolan.org> vlc | branch: 0.9-bugfix | Felix Paul K?hne | Wed Feb 4 23:41:02 2009 +0100| [56efc664a31381995a320de342a2bafc85afcfe3] | committer: Felix Paul K?hne macosx: really fixed packaging of the Mozilla/Safari plugin Note that it will try to use the X11 vout right now, so you won't get any visible video output Signed-off-by: Felix Paul K?hne > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=56efc664a31381995a320de342a2bafc85afcfe3 --- projects/macosx/framework/Pre-Compile.sh | 39 ++++++++++++++++++++--------- projects/mozilla/Makefile.am | 19 +++++++------- projects/mozilla/vlcplugin.cpp | 8 ++---- 3 files changed, 40 insertions(+), 26 deletions(-) diff --git a/projects/macosx/framework/Pre-Compile.sh b/projects/macosx/framework/Pre-Compile.sh index 27dd6c8..48e4a6e 100644 --- a/projects/macosx/framework/Pre-Compile.sh +++ b/projects/macosx/framework/Pre-Compile.sh @@ -10,8 +10,14 @@ if test "${ACTION}" = ""; then # Debug -- # Hack to use that script with the current VLC-release.app elif test "${ACTION}" = "release-makefile"; then - TARGET_BUILD_DIR="${build_dir}" + echo "running Pre-Compile.sh in release-makefile mode" + FULL_PRODUCT_NAME="${PRODUCT}" + if [ "$FULL_PRODUCT_NAME" = "VLC-Plugin.plugin" ] ; then + TARGET_BUILD_DIR="${src_dir}" + else + TARGET_BUILD_DIR="${build_dir}" + fi CONTENTS_FOLDER_PATH="${FULL_PRODUCT_NAME}/Contents/MacOS" VLC_BUILD_DIR="${build_dir}" VLC_SRC_DIR="${src_dir}" @@ -97,10 +103,10 @@ if test "${ACTION}" = "build"; then install_library "${VLC_BUILD_DIR}/bin/${prefix}vlc" "${target}" "bin" "@loader_path/lib" mv ${target}/vlc ${target}/VLC chmod +x ${target}/VLC - elif [ "$FULL_PRODUCT_NAME" = "VLC-release.app" ] ; then - install_library "${VLC_BUILD_DIR}/src/${prefix}npvlc.${suffix}" "${target}" "bin" "@loader_path/lib" - mv ${target}/npvlc.${suffix} "${target}/VLC Plugin.plugin" - chmod +x "${target}/VLC Plugin.plugin" +# elif [ "$FULL_PRODUCT_NAME" = "VLC-Plugin.plugin" ] ; then +# install_library "${VLC_BUILD_DIR}/projects/mozilla/.libs/${prefix}npvlc.${suffix}" "${target}" "bin" "@loader_path/lib" +# mv ${target}/npvlc.${suffix} "${target}/VLC\ Plugin" +# chmod +x "${target}/VLC\ Plugin" fi ########################## @@ -150,15 +156,24 @@ if test "${ACTION}" = "build"; then ########################## # Build the share folder - echo "Building share folder..." - pbxcp="/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -resolve-src-symlinks" - mkdir -p ${target_share} - $pbxcp ${VLC_SRC_DIR}/share/lua ${target_share} + if [ "$FULL_PRODUCT_NAME" = "VLC-release.app" ] ; then + echo "Building share folder..." + pbxcp="/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -resolve-src-symlinks" + mkdir -p ${target_share} + $pbxcp ${VLC_SRC_DIR}/share/lua ${target_share} + else + echo "Share folder not needed for this product" + fi + ########################## # Exporting headers - echo "Exporting headers..." - mkdir -p ${target_include}/vlc - $pbxcp ${VLC_SRC_DIR}/include/vlc/*.h ${target_include}/vlc + if [ "$FULL_PRODUCT_NAME" = "VLC-release.app" ] ; then + echo "Exporting headers..." + mkdir -p ${target_include}/vlc + $pbxcp ${VLC_SRC_DIR}/include/vlc/*.h ${target_include}/vlc + else + echo "Headers not needed for this product" + fi fi diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index 3c9720f..6f1bab8 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -104,15 +104,16 @@ endef VLC\ Plugin.plugin: npvlc.rsrc $(lib_LTLIBRARIES) rm -Rf "$@" - $(INSTALL) -d "$@/Contents/MacOS/lib" - $(INSTALL) -d "$@/Contents/Resources" - $(INSTALL) .libs/npvlc.dylib "$@/Contents/MacOS/VLC Plugin" - dylib="$@/Contents/MacOS/VLC Plugin"; $(FIXEXECPATH); - $(INSTALL) npvlc.rsrc "$@/Contents/Resources/VLC Plugin.rsrc" - cp -r "$(top_srcdir)/extras/package/macosx/plugin/English.lproj" "$@/Contents/Resources/" - cp -r "$(top_builddir)/extras/package/macosx/plugin/English.lproj" "$@/Contents/Resources/" - $(INSTALL) "$(top_builddir)/extras/package/macosx/plugin/Info.plist" "$@/Contents/Info.plist" - ACTION="release-makefile" PRODUCT="VLC Plugin.plugin" src_dir=$(srcdir) build_dir=$(top_builddir) sh $(srcdir)/projects/macosx/framework/Pre-Compile.sh + $(INSTALL) -d "VLC-Plugin.plugin/Contents/MacOS/lib" + $(INSTALL) -d "VLC-Plugin.plugin/Contents/Resources" + ACTION="release-makefile" PRODUCT="VLC-Plugin.plugin" src_dir=$(srcdir) build_dir=$(top_builddir) sh ../macosx/framework/Pre-Compile.sh + $(INSTALL) .libs/npvlc.dylib "VLC-Plugin.plugin/Contents/MacOS/VLC Plugin" + dylib="VLC-Plugin.plugin/Contents/MacOS/VLC Plugin"; $(FIXEXECPATH); + $(INSTALL) npvlc.rsrc "VLC-Plugin.plugin/Contents/Resources/VLC Plugin.rsrc" + cp -r "$(top_srcdir)/extras/package/macosx/plugin/English.lproj" "VLC-Plugin.plugin/Contents/Resources/" + cp -r "$(top_builddir)/extras/package/macosx/plugin/English.lproj" "VLC-Plugin.plugin/Contents/Resources/" + $(INSTALL) "$(top_builddir)/extras/package/macosx/plugin/Info.plist" "VLC-Plugin.plugin/Contents/Info.plist" + mv "VLC-Plugin.plugin" "VLC Plugin.plugin" # uncomment if dependencies on XPCOM libs is sought # if test -d "$(MOZILLA_SDK_PATH)/lib"; then \ diff --git a/projects/mozilla/vlcplugin.cpp b/projects/mozilla/vlcplugin.cpp index ec52f29..239684d 100644 --- a/projects/mozilla/vlcplugin.cpp +++ b/projects/mozilla/vlcplugin.cpp @@ -87,9 +87,8 @@ NPError VlcPlugin::init(int argc, char* const argn[], char* const argv[]) /* locate VLC module path */ #ifdef XP_MACOSX - ppsz_argv[ppsz_argc++] = "--plugin-path"; - ppsz_argv[ppsz_argc++] = "/Library/Internet Plug-Ins/VLC Plugin.plugin/" - "Contents/MacOS/modules"; + ppsz_argv[ppsz_argc++] = "--plugin-path=/Library/Internet\\ Plug-Ins/VLC\\ Plugin.plugin/Contents/MacOS/modules"; + ppsz_argv[ppsz_argc++] = "--vout=macosx"; #elif defined(XP_WIN) HKEY h_key; DWORD i_type, i_data = MAX_PATH + 1; @@ -118,8 +117,7 @@ NPError VlcPlugin::init(int argc, char* const argn[], char* const argv[]) ppsz_argv[ppsz_argc++] = "--no-stats"; ppsz_argv[ppsz_argc++] = "--no-media-library"; ppsz_argv[ppsz_argc++] = "--ignore-config"; - ppsz_argv[ppsz_argc++] = "--intf"; - ppsz_argv[ppsz_argc++] = "dummy"; + ppsz_argv[ppsz_argc++] = "--intf=dummy"; const char *progid = NULL; From git at videolan.org Sun Feb 8 12:06:55 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 12:06:55 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_mozilla=3A_update_the_copyright_s?= =?utf-8?q?tring_correctly_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090208110655.F3CF72EE30@skanda.videolan.org> vlc | branch: 0.9-bugfix | Felix Paul K?hne | Sun Feb 8 12:06:45 2009 +0100| [4f2178a7aac1ebd54f4e5956160b59700e632b1a] | committer: Felix Paul K?hne mozilla: update the copyright string correctly > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4f2178a7aac1ebd54f4e5956160b59700e632b1a --- configure.ac | 1 + projects/mozilla/vlc.r | 2 +- 2 files changed, 2 insertions(+), 1 deletions(-) diff --git a/configure.ac b/configure.ac index 09abf89..f6c69fd 100644 --- a/configure.ac +++ b/configure.ac @@ -5843,6 +5843,7 @@ AC_CONFIG_FILES([ po/Makefile.in projects/activex/axvlc_rc.rc projects/mozilla/npvlc_rc.rc + projects/mozilla/vlc.r share/Makefile share/vlc_win32_rc.rc share/libvlc_win32_rc.rc diff --git a/projects/mozilla/vlc.r b/projects/mozilla/vlc.r index 12e07ec..b979742 100644 --- a/projects/mozilla/vlc.r +++ b/projects/mozilla/vlc.r @@ -13,7 +13,7 @@ data 'carb' (0) resource 'STR#' (126) { { - "Version 0.9.0, copyright 1996-2007 The VideoLAN Team" + "@COPYRIGHT_MESSAGE@" "
http://www.videolan.org", "VLC Multimedia Plug-in" }; From git at videolan.org Sun Feb 8 12:06:56 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 12:06:56 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_updated_news_=28_Felix_Paul_K?= =?utf-8?b?w7xobmUgKQ==?= Message-ID: <20090208110656.18FD92EE46@skanda.videolan.org> vlc | branch: 0.9-bugfix | Felix Paul K?hne | Sun Feb 8 12:06:52 2009 +0100| [1efac2e62769f0cb6e759c47b2c8978cc1c75372] | committer: Felix Paul K?hne updated news > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1efac2e62769f0cb6e759c47b2c8978cc1c75372 --- NEWS | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/NEWS b/NEWS index a76044b..02794d0 100644 --- a/NEWS +++ b/NEWS @@ -8,9 +8,13 @@ Demuxers: * Various fixes related to real demuxer Mac OS X Interface: - * Fixed circumstances, which lead to an empty Information panel + * Fixed circumstances, which could lead to an empty Information panel * Fixed multiple UTF8 issues in the Streaming / Exporting Wizard +Mac OS X Port: + * Improved video playback performance + * The Safari/Mozilla web browser plugin is distributed again. + New Localizations: * Indonesian * Bengali @@ -19,8 +23,8 @@ New Localizations: Various bugfixes: * Support for receiving RTP packets on odd port numbers. * Lots of small bugfixes. - * Correct Fullscreen behaviour on Multi-Screens on Windows - * Telnet fixing on Windows + * Correct Fullscreen behaviour on Multi-Screen setups on Windows + * Telnet fixes on Windows Changes between 0.9.6 and 0.9.8a: From git at videolan.org Sun Feb 8 12:15:40 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 12:15:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_minor_compilation_fix_=28_Felix_P?= =?utf-8?b?YXVsIEvDvGhuZSAp?= Message-ID: <20090208111540.B5B562EE5B@skanda.videolan.org> vlc | branch: 0.9-bugfix | Felix Paul K?hne | Sun Feb 8 12:11:00 2009 +0100| [dcd87754640e156c5c6289223f964cdb7bb23ca3] | committer: Felix Paul K?hne minor compilation fix > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dcd87754640e156c5c6289223f964cdb7bb23ca3 --- projects/mozilla/{vlc.r => vlc.r.in} | 0 1 files changed, 0 insertions(+), 0 deletions(-) diff --git a/projects/mozilla/vlc.r b/projects/mozilla/vlc.r.in similarity index 100% rename from projects/mozilla/vlc.r rename to projects/mozilla/vlc.r.in From ogg.k.ogg.k at googlemail.com Sun Feb 8 13:10:23 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 8 Feb 2009 12:10:23 +0000 Subject: [vlc-devel] Spawning a vout when none is available Message-ID: Hi, since accessing vout is a sensitive issue :) I'll ask before I start hacking. I'd like to spawn a vout when none is available on streams containing audio and images. Specifically, these would be Ogg streams with a Speex audio stream and a Kate stream containing PNG slides, timed with the speech. At the moment, since no video is detected, no vout exists, and one has to enable visualization (to spawn a vout and enable the video menu), then select the subtitles track in the video menu. What I'd like to do is, if the subtitles track is selected (for instance via the command line), spawn a vout if none does exist yet, without visualization graphics, and display images in there. This may imply changing the resolution of the vout to match whatever resolution the slides are, if those change. So my question is: what is the approved way of doing this ? I'd first need to know that there is no vout (and that there will still be no vout soon either), and, if so, create one with appropriate size parameters. And I'll probably need to do that without vlc_object_find :) Thanks From rem at videolan.org Sun Feb 8 13:18:10 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Sun, 8 Feb 2009 14:18:10 +0200 Subject: [vlc-devel] Spawning a vout when none is available In-Reply-To: References: Message-ID: <200902081418.11066.rem@videolan.org> Le dimanche 8 f?vrier 2009 14:10:23 ogg.k.ogg.k at googlemail.com, vous avez ?crit?: > I'd like to spawn a vout when none is available on streams > containing audio and images. > Specifically, these would be Ogg streams with a Speex audio > stream and a Kate stream containing PNG slides, timed with > the speech. > > At the moment, since no video is detected, no vout exists, > and one has to enable visualization (to spawn a vout and > enable the video menu), then select the subtitles track in > the video menu. > > What I'd like to do is, if the subtitles track is selected (for > instance via the command line), spawn a vout if none does > exist yet, without visualization graphics, and display images > in there. This may imply changing the resolution of the vout > to match whatever resolution the slides are, if those change. > > So my question is: what is the approved way of doing this ? Either you request a vout yourself, or you create a dummy elementary video stream to "decode" slides. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From ogg.k.ogg.k at googlemail.com Sun Feb 8 13:26:32 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 8 Feb 2009 12:26:32 +0000 Subject: [vlc-devel] Spawning a vout when none is available In-Reply-To: <200902081418.11066.rem@videolan.org> References: <200902081418.11066.rem@videolan.org> Message-ID: > Either you request a vout yourself, or you create a dummy elementary video > stream to "decode" slides. The problem with requesting a vout is that I do not know if there is one already (or is there a creation to happen soon), as a muxed video would independently create one too. AFAIK, I'd need to create one myself only if none is available (and the only way I know now is to use vlc_object_find in the whole tree, which is not good). From gauritatke10 at gmail.com Sun Feb 8 14:13:52 2009 From: gauritatke10 at gmail.com (Gauri Tatke) Date: Sun, 8 Feb 2009 18:43:52 +0530 Subject: [vlc-devel] VLC - traversing through the VLC code Message-ID: <5396daff0902080513s28d69d73jbf4d6ff488d683e9@mail.gmail.com> Hello I want to traverse the source code of vlc 0.8.6g to know what procedure or function is exactly called when I run some command like vlc -p.... The source code that I downloaded gives error like MAD, libavcodec are not available when I configure it..... Should I disable them? will VLC be properly installed? -------------- next part -------------- An HTML attachment was scrubbed... URL: From ogg.k.ogg.k at googlemail.com Sun Feb 8 15:59:58 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 8 Feb 2009 14:59:58 +0000 Subject: [vlc-devel] [PATCH] Retrieve metadata from Kate streams (which has Vorbis comments), and not from CMML (which does not) Message-ID: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Retrieve-meta-from-Kate-streams-which-has-Vorbis-co.patch Type: application/octet-stream Size: 2745 bytes Desc: not available URL: From ogg.k.ogg.k at googlemail.com Sun Feb 8 16:00:41 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 8 Feb 2009 15:00:41 +0000 Subject: [vlc-devel] [PATCH] Fix addition of multiple meta pairs Message-ID: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-fix-addition-of-multiple-meta-pairs-adding-the-first.patch Type: application/octet-stream Size: 1196 bytes Desc: not available URL: From ogg.k.ogg.k at googlemail.com Sun Feb 8 16:01:48 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 8 Feb 2009 15:01:48 +0000 Subject: [vlc-devel] Spawning a vout when none is available In-Reply-To: References: <200902081418.11066.rem@videolan.org> Message-ID: > The problem with requesting a vout is that I do not know > if there is one already (or is there a creation to happen > soon), as a muxed video would independently create > one too. AFAIK, I'd need to create one myself only if > none is available (and the only way I know now is to use > vlc_object_find in the whole tree, which is not good). And I forgot the question after this: Is there another way to know when a vout is/will be there, so to only spawn one when there is none ? Thanks From git at videolan.org Sun Feb 8 16:09:36 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 16:09:36 +0100 (CET) Subject: [vlc-devel] commit: Retrieve meta from Kate streams, which has Vorbis comment packet ( Vincent Penquerc'h ) Message-ID: <20090208150936.64E972EA3F@skanda.videolan.org> vlc | branch: master | Vincent Penquerc'h | Sun Feb 8 14:21:16 2009 +0000| [6c95dba474d1f9847e069d2d6cd1af9ecb307ebe] | committer: R??mi Denis-Courmont Retrieve meta from Kate streams, which has Vorbis comment packet Do not retrieve from CMML, which has none Signed-off-by: R??mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6c95dba474d1f9847e069d2d6cd1af9ecb307ebe --- modules/demux/ogg.c | 28 ++++++++++++++++++++++------ 1 files changed, 22 insertions(+), 6 deletions(-) diff --git a/modules/demux/ogg.c b/modules/demux/ogg.c index 568278f..acc8856 100644 --- a/modules/demux/ogg.c +++ b/modules/demux/ogg.c @@ -1491,10 +1491,20 @@ static bool Ogg_LogicalStreamResetEsFormat( demux_t *p_demux, logical_stream_t * return !b_compatible; } -static void Ogg_ExtractXiphMeta( demux_t *p_demux, const uint8_t *p_headers, int i_headers, int i_skip ) +static void Ogg_ExtractXiphMeta( demux_t *p_demux, const uint8_t *p_headers, int i_headers, int i_skip, bool b_has_num_headers ) { demux_sys_t *p_ogg = p_demux->p_sys; + if (b_has_num_headers) + { + if (i_headers <= 0) + return; + /* number of headers on a byte, we're interested in the second header, so should be at least 2 to go on */ + if (*p_headers++ < 2) + return; + --i_headers; + } + if( i_headers <= 2 ) return; @@ -1528,22 +1538,28 @@ static void Ogg_ExtractMeta( demux_t *p_demux, vlc_fourcc_t i_codec, const uint8 { /* 3 headers with the 2? one being the comments */ case VLC_FOURCC( 'v','o','r','b' ): - Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 1+6 ); + Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 1+6, false ); break; case VLC_FOURCC( 't','h','e','o' ): - Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 1+6 ); + Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 1+6, false ); break; case VLC_FOURCC( 's','p','x',' ' ): - Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 0 ); + Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 0, false ); break; - /* TODO */ + /* N headers with the 2? one being the comments */ case VLC_FOURCC( 'k','a','t','e' ): + /* 1 byte for header type, 7 bit for magic, 1 reserved zero byte */ + Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 1+7+1, true ); + break; + + /* TODO */ case VLC_FOURCC( 'f','l','a','c' ): - case VLC_FOURCC( 'c','m','m','l' ): msg_Warn( p_demux, "Ogg_ExtractMeta does not support %4.4s", (const char*)&i_codec ); break; + /* No meta data */ + case VLC_FOURCC( 'c','m','m','l' ): /* CMML is XML text, doesn't have Vorbis comments */ case VLC_FOURCC( 'd','r','a','c' ): default: break; From git at videolan.org Sun Feb 8 16:09:36 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 16:09:36 +0100 (CET) Subject: [vlc-devel] commit: fix addition of multiple meta pairs adding the first one repeatedly ( Vincent Penquerc'h ) Message-ID: <20090208150936.738FE2ED26@skanda.videolan.org> vlc | branch: master | Vincent Penquerc'h | Sun Feb 8 14:22:28 2009 +0000| [95862a5aaf79b49731b671d4224f09ebb327259f] | committer: R?mi Denis-Courmont fix addition of multiple meta pairs adding the first one repeatedly Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=95862a5aaf79b49731b671d4224f09ebb327259f --- modules/gui/qt4/components/info_panels.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/info_panels.cpp b/modules/gui/qt4/components/info_panels.cpp index 73daea9..755b197 100644 --- a/modules/gui/qt4/components/info_panels.cpp +++ b/modules/gui/qt4/components/info_panels.cpp @@ -362,7 +362,6 @@ void ExtraMetaPanel::update( input_item_t *p_item ) return; } - QStringList tempItem; QList items; extraMetaTree->clear(); @@ -382,6 +381,7 @@ void ExtraMetaPanel::update( input_item_t *p_item ) { const char * psz_value = (const char *)vlc_dictionary_value_for_key( p_dict, ppsz_allkey[i] ); + QStringList tempItem; tempItem.append( qfu( ppsz_allkey[i] ) + " : "); tempItem.append( qfu( psz_value ) ); items.append( new QTreeWidgetItem ( extraMetaTree, tempItem ) ); From git at videolan.org Sun Feb 8 18:16:14 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 18:16:14 +0100 (CET) Subject: [vlc-devel] commit: fix h264 encoding in windows (Hannes Domani ) Message-ID: <20090208171614.4DDFD2ED49@skanda.videolan.org> vlc | branch: master | Hannes Domani | Wed Jan 28 22:07:14 2009 +0100| [31ff21f390ac1b59fab6a376b162cb02286164b7] | committer: Christophe Mutricy fix h264 encoding in windows Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=31ff21f390ac1b59fab6a376b162cb02286164b7 --- configure.ac | 6 ++++++ extras/contrib/src/Makefile | 1 + extras/contrib/src/Patches/pthreads-detach.patch | 12 ++++++++++++ 3 files changed, 19 insertions(+), 0 deletions(-) diff --git a/configure.ac b/configure.ac index b33b2ac..319677f 100644 --- a/configure.ac +++ b/configure.ac @@ -3716,6 +3716,9 @@ if test "${enable_x264}" != "no"; then VLC_ADD_PLUGIN([x264]) VLC_ADD_LDFLAGS([x264],[${X264_LIBS}]) VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}]) + if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then + VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB]) + fi ],[ AC_MSG_ERROR([the specified tree hasn't been compiled]) ]) @@ -3729,6 +3732,9 @@ if test "${enable_x264}" != "no"; then VLC_ADD_PLUGIN([x264]) VLC_ADD_LDFLAGS([x264],[${X264_LIBS}]) VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}]) + if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then + VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB]) + fi ],[ if test "${enable_x264}" = "yes"; then AC_MSG_ERROR([Could not find libx264 on your system: you may get it from http://www.videolan.org/x264.html]) diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 46a0662..5e08a93 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -2394,6 +2394,7 @@ pthreads-w32-$(PTHREADS_VERSION)-release.tar.gz: pthreads: pthreads-w32-$(PTHREADS_VERSION)-release.tar.gz $(EXTRACT_GZ) + (cd $@; patch -p0 < ../Patches/pthreads-detach.patch) .pthreads: pthreads (cd $<; $(HOSTCC) make $(PTHREADSCONF) GC GC-static && mkdir -p $(PREFIX)/include && cp -v pthread.h sched.h semaphore.h $(PREFIX)/include/ && mkdir -p $(PREFIX)/lib && cp -v *.{a,dll} $(PREFIX)/lib/) diff --git a/extras/contrib/src/Patches/pthreads-detach.patch b/extras/contrib/src/Patches/pthreads-detach.patch new file mode 100644 index 0000000..73e9f36 --- /dev/null +++ b/extras/contrib/src/Patches/pthreads-detach.patch @@ -0,0 +1,12 @@ +--- ptw32_processTerminate.c Mon Jan 26 18:00:34 2009 ++++ ptw32_processTerminate.c Mon Jan 26 18:00:42 2009 +@@ -96,6 +96,9 @@ + tp = tpNext; + } + ++ ptw32_threadReuseTop = PTW32_THREAD_REUSE_EMPTY; ++ ptw32_threadReuseBottom = PTW32_THREAD_REUSE_EMPTY; ++ + LeaveCriticalSection (&ptw32_thread_reuse_lock); + + /* From git at videolan.org Sun Feb 8 18:16:14 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 18:16:14 +0100 (CET) Subject: [vlc-devel] commit: Always build x264 with pthread on win (Christophe Mutricy ) Message-ID: <20090208171614.5D98A2ED8F@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Sun Feb 8 14:41:13 2009 +0000| [7acb1e06b158357762b2feb598c763b2c7a159b1] | committer: Christophe Mutricy Always build x264 with pthread on win > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7acb1e06b158357762b2feb598c763b2c7a159b1 --- extras/contrib/src/Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 5e08a93..348e1c0 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -1420,7 +1420,7 @@ ifdef HAVE_WIN32 ifdef HAVE_CYGWIN (cd $<; $(HOSTCC) RANLIB="ranlib" AR="ar" STRIP="strip" ./configure $(X264CONF) --prefix="$(PREFIX)" --extra-cflags="-I$(PREFIX)/include" --extra-ldflags="-L$(PREFIX)/lib" && make && make install) else - (cd $<; $(HOSTCC) ./configure $(X264CONF) --prefix="$(PREFIX)" --disable-pthread && make && make install) + (cd $<; $(HOSTCC) ./configure $(X264CONF) --prefix="$(PREFIX)" --enable-pthread && make && make install) endif else ifdef HAVE_DARWIN_OS_ON_INTEL From git at videolan.org Sun Feb 8 18:16:14 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 18:16:14 +0100 (CET) Subject: [vlc-devel] commit: Translate the channels layout (Christophe Mutricy ) Message-ID: <20090208171614.767432EAEC@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Sun Feb 8 15:56:59 2009 +0000| [9e7d8f9109b1368237874221f5c28e836e96838d] | committer: Christophe Mutricy Translate the channels layout And not just make it to be translated. So that it's coherent with the other audio variable fed by the core to the GUI. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9e7d8f9109b1368237874221f5c28e836e96838d --- modules/audio_output/alsa.c | 8 ++++---- modules/audio_output/directx.c | 14 +++++++------- modules/audio_output/oss.c | 10 +++++----- modules/audio_output/portaudio.c | 8 ++++---- modules/audio_output/sdl.c | 8 ++++---- modules/audio_output/waveout.c | 10 +++++----- 6 files changed, 29 insertions(+), 29 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=9e7d8f9109b1368237874221f5c28e836e96838d From git at videolan.org Sun Feb 8 18:16:14 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 18:16:14 +0100 (CET) Subject: [vlc-devel] commit: i18n: Translate the channels layout in media info ( Christophe Mutricy ) Message-ID: <20090208171614.B08CE2E86E@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Sun Feb 8 16:05:28 2009 +0000| [e1ee31d381985d1b6b6b5fcf3e11603f6922f232] | committer: Christophe Mutricy i18n: Translate the channels layout in media info > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e1ee31d381985d1b6b6b5fcf3e11603f6922f232 --- src/input/es_out.c | 2 +- src/input/stream.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/input/decoder b/src/input/decoder new file mode 100644 index 0000000..e69de29 diff --git a/src/input/es_out.c b/src/input/es_out.c index afb2d4b..133f294 100644 --- a/src/input/es_out.c +++ b/src/input/es_out.c @@ -2628,7 +2628,7 @@ static void EsOutUpdateInfo( es_out_t *out, es_out_id_t *es, const es_format_t * if( fmt->audio.i_physical_channels & AOUT_CHAN_PHYSMASK ) input_Control( p_input, INPUT_ADD_INFO, psz_cat, _("Channels"), - "%s", aout_FormatPrintChannels( &fmt->audio ) ); + "%s", _( aout_FormatPrintChannels( &fmt->audio ) ) ); else if( fmt->audio.i_channels > 0 ) input_Control( p_input, INPUT_ADD_INFO, psz_cat, _("Channels"), "%u", fmt->audio.i_channels ); diff --git a/src/input/stream.c b/src/input/stream.c index 1fafc00..ec25705 100644 --- a/src/input/stream.c +++ b/src/input/stream.c @@ -40,7 +40,7 @@ #include "input_internal.h" -#undef STREAM_DEBUG +// #define STREAM_DEBUG 1 /* TODO: * - tune the 2 methods (block/stream) From agent_007 at luukku.com Sun Feb 8 18:21:11 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Sun, 8 Feb 2009 19:21:11 +0200 (EET) Subject: [vlc-devel] VLC - traversing through the VLC code Message-ID: <1234113671746.agent_007.40534.qRZucMJnUScCGCQL3uJMxQ@luukku.com> Gauri Tatke kirjoitti 08.02.2009 kello 15:13: > Hello > > I want to traverse the source code of vlc 0.8.6g to know what > procedure or > function is exactly called when I run some command like vlc -p.... > The source code that I downloaded gives error like MAD, libavcodec > are not > available when I configure it..... > Should I disable them? will VLC be properly installed? You can compile VLC without MAD and libavcodec, but it won't play that many media files if you do so. ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku From agent_007 at luukku.com Sun Feb 8 18:24:54 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Sun, 8 Feb 2009 19:24:54 +0200 (EET) Subject: [vlc-devel] [PATCH]Fix typo in MSN now playing Message-ID: <1234113894097.agent_007.40858.aDQVixn_IL9VTh2Da-Sfng@luukku.com> Should work better on cases where there isn't album name. ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku -------------- next part -------------- A non-text attachment was scrubbed... Name: 0003-fix-typo.patch Type: application/octet-stream Size: 900 bytes Desc: not available URL: From jb at videolan.org Sun Feb 8 18:27:07 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 8 Feb 2009 18:27:07 +0100 Subject: [vlc-devel] [PATCH]Fix typo in MSN now playing In-Reply-To: <1234113894097.agent_007.40858.aDQVixn_IL9VTh2Da-Sfng@luukku.com> References: <1234113894097.agent_007.40858.aDQVixn_IL9VTh2Da-Sfng@luukku.com> Message-ID: <20090208172707.GA15909@videolan.org> On Sun, Feb 08, 2009 at 07:24:54PM +0200, Kaarlo R?ih? wrote : > Should work better on cases where there isn't album name. Applied. Thanks. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Sun Feb 8 18:27:12 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 18:27:12 +0100 (CET) Subject: [vlc-devel] commit: fix typo (Kaarlo Raiha ) Message-ID: <20090208172712.CD8602E86E@skanda.videolan.org> vlc | branch: master | Kaarlo Raiha | Sun Feb 8 19:20:01 2009 +0200| [9e17b696a46b8498c66bc0261e3d90804ee5dea0] | committer: Jean-Baptiste Kempf fix typo Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9e17b696a46b8498c66bc0261e3d90804ee5dea0 --- modules/misc/notify/msn.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/misc/notify/msn.c b/modules/misc/notify/msn.c index 2275221..78db563 100644 --- a/modules/misc/notify/msn.c +++ b/modules/misc/notify/msn.c @@ -160,7 +160,7 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, psz_album = input_item_GetAlbum( input_GetItem( p_input ) ); psz_title = input_item_GetTitle( input_GetItem( p_input ) ); if( !psz_artist ) psz_artist = strdup( "" ); - if( !psz_album ) psz_artist = strdup( "" ); + if( !psz_album ) psz_album = strdup( "" ); if( !psz_title ) psz_title = input_item_GetName( input_GetItem( p_input ) ); From git at videolan.org Sun Feb 8 18:29:32 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 18:29:32 +0100 (CET) Subject: [vlc-devel] commit: Overload toggleVisible() to update list with media from other interfaces. (Mark Bidewell ) Message-ID: <20090208172932.543482EA48@skanda.videolan.org> vlc | branch: master | Mark Bidewell | Wed Feb 4 18:42:57 2009 -0500| [452a4b9f7257c4080e2bc0268f79c57214e1f427] | committer: Jean-Baptiste Kempf Overload toggleVisible() to update list with media from other interfaces. Overload toggleVisible() to update list with media from other interfaces. Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=452a4b9f7257c4080e2bc0268f79c57214e1f427 --- modules/gui/qt4/dialogs/vlm.cpp | 15 +++++++++++++++ modules/gui/qt4/dialogs/vlm.hpp | 1 + 2 files changed, 16 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/dialogs/vlm.cpp b/modules/gui/qt4/dialogs/vlm.cpp index adaf2d2..b8232d3 100644 --- a/modules/gui/qt4/dialogs/vlm.cpp +++ b/modules/gui/qt4/dialogs/vlm.cpp @@ -835,5 +835,20 @@ void VLMWrapper::EditSchedule( const QString name, const QString input, } } +void VLMDialog::toggleVisible() +{ + QList::iterator it; + for( it = vlmItems.begin(); it != vlmItems.end(); it++ ) + { + VLMAWidget *item = *it; + delete item; + item = NULL; + } + vlmItems.clear(); + ui.vlmListItem->clear(); + mediasPopulator(); + QVLCDialog::toggleVisible(); +} + #endif diff --git a/modules/gui/qt4/dialogs/vlm.hpp b/modules/gui/qt4/dialogs/vlm.hpp index 5187ac6..9837064 100644 --- a/modules/gui/qt4/dialogs/vlm.hpp +++ b/modules/gui/qt4/dialogs/vlm.hpp @@ -78,6 +78,7 @@ public: return instance; }; virtual ~VLMDialog(); + void toggleVisible(); VLMWrapper *vlmWrapper; vlm_t *p_vlm; From jb at videolan.org Sun Feb 8 18:30:01 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 8 Feb 2009 18:30:01 +0100 Subject: [vlc-devel] [PATCH] Overload toggleVisible() to update list with media from other interfaces. In-Reply-To: References: <1233791292-13453-3-git-send-email-mark.bidewell@alumni.clemson.edu> Message-ID: <20090208173001.GA17304@videolan.org> On Thu, Feb 05, 2009 at 03:35:44PM -0500, Mark Bidewell wrote : > Subject: [PATCH] Overload toggleVisible() to update list with media from other interfaces. Applied. Sorry for the delay. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Sun Feb 8 18:36:17 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 18:36:17 +0100 (CET) Subject: [vlc-devel] commit: adds speaker setup override option (Kaarlo Raiha ) Message-ID: <20090208173617.0423C2E86E@skanda.videolan.org> vlc | branch: master | Kaarlo Raiha | Sat Feb 7 22:55:48 2009 +0200| [4a5af94e8ae364bde1f8140e4c620aafe72d47c4] | committer: Jean-Baptiste Kempf adds speaker setup override option Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4a5af94e8ae364bde1f8140e4c620aafe72d47c4 --- modules/audio_output/directx.c | 77 ++++++++++++++++++++++++++++++++++++++-- 1 files changed, 74 insertions(+), 3 deletions(-) diff --git a/modules/audio_output/directx.c b/modules/audio_output/directx.c index 0c97f3d..b0e79f1 100644 --- a/modules/audio_output/directx.c +++ b/modules/audio_output/directx.c @@ -25,7 +25,6 @@ * Preamble *****************************************************************************/ - #ifdef HAVE_CONFIG_H # include "config.h" #endif @@ -174,6 +173,8 @@ struct aout_sys_t int i_frame_size; /* Size in bytes of one frame */ + int i_speaker_setup; /* Speaker setup override */ + bool b_chan_reorder; /* do we need channel reordering */ int pi_chan_table[AOUT_CHAN_MAX]; uint32_t i_channel_mask; @@ -214,6 +215,10 @@ static void DestroyDSBuffer ( aout_instance_t * ); static void* DirectSoundThread( vlc_object_t * ); static int FillBuffer ( aout_instance_t *, int, aout_buffer_t * ); +/* Speaker setup override options list */ +static const char *const speaker_list[] = { "Windows default", "Mono", "Stereo", + "Quad", "5.1", "7.1" }; + /***************************************************************************** * Module descriptor *****************************************************************************/ @@ -225,6 +230,9 @@ static int FillBuffer ( aout_instance_t *, int, aout_buffer_t * ); #define FLOAT_LONGTEXT N_( \ "The option allows you to enable or disable the high-quality float32 " \ "audio output mode (which is not well supported by some soundcards)." ) +#define SPEAKER_TEXT N_("Select speaker configuration") +#define SPEAKER_LONGTEXT N_("Select speaker configuration you want to use. " \ + "This option doesn't upmix! So NO e.g. Stereo -> 5.1 conversion." ) vlc_module_begin () set_description( N_("DirectX audio output") ) @@ -237,6 +245,10 @@ vlc_module_begin () DEVICE_LONGTEXT, true ) add_bool( "directx-audio-float32", 0, 0, FLOAT_TEXT, FLOAT_LONGTEXT, true ) + add_string( "directx-audio-speaker", "Windows default", NULL, + SPEAKER_TEXT, SPEAKER_LONGTEXT, true ) + change_string_list( speaker_list, 0, 0 ) + change_need_restart () set_callbacks( OpenAudio, CloseAudio ) vlc_module_end () @@ -249,6 +261,10 @@ static int OpenAudio( vlc_object_t *p_this ) { aout_instance_t * p_aout = (aout_instance_t *)p_this; vlc_value_t val; + char * psz_speaker; + int i = 0; + + const char * const * ppsz_compare = speaker_list; msg_Dbg( p_aout, "OpenAudio" ); @@ -269,6 +285,30 @@ static int OpenAudio( vlc_object_t *p_this ) /* Retrieve config values */ var_Create( p_aout, "directx-audio-float32", VLC_VAR_BOOL | VLC_VAR_DOINHERIT ); + + var_Create( p_aout, "directx-audio-speaker", + VLC_VAR_STRING | VLC_VAR_DOINHERIT ); + var_Get( p_this, "directx-audio-speaker", &val ); + psz_speaker = val.psz_string; + + while ( *ppsz_compare != NULL ) + { + if ( !strncmp( *ppsz_compare, psz_speaker, strlen(*ppsz_compare) ) ) + { + break; + } + ppsz_compare++; i++; + } + + if ( *ppsz_compare == NULL ) + { + msg_Err( p_aout, "(%s) isn't valid speaker setup option", + psz_speaker ); + msg_Err( p_aout, "Defaulting to Windows default speaker config"); + i = 0; + } + p_aout->output.p_sys->i_speaker_setup = i; + var_Create( p_aout, "directx-audio-device", VLC_VAR_INTEGER|VLC_VAR_DOINHERIT ); var_Get( p_aout, "directx-audio-device", &val ); @@ -524,7 +564,7 @@ static void Probe( aout_instance_t * p_aout ) is_default_output_set = true; msg_Dbg( p_aout, "device supports 2 channels (DEFAULT!)" ); } - msg_Dbg( p_aout, "device supports 2 channels" ); + else msg_Dbg( p_aout, "device supports 2 channels" ); } /* Test for mono support */ @@ -576,6 +616,37 @@ static void Probe( aout_instance_t * p_aout ) val.i_int = AOUT_VAR_STEREO; break; } + + /* Check if we want to override speaker config */ + switch( p_aout->output.p_sys->i_speaker_setup ) + { + case 0: /* Default value aka Windows default speaker setup */ + break; + case 1: /* Mono */ + msg_Dbg( p_aout, "SpeakerConfig is forced to Mono" ); + val.i_int = AOUT_VAR_MONO; + break; + case 2: /* Stereo */ + msg_Dbg( p_aout, "SpeakerConfig is forced to Stereo" ); + val.i_int = AOUT_VAR_STEREO; + break; + case 3: /* Quad */ + msg_Dbg( p_aout, "SpeakerConfig is forced to Quad" ); + val.i_int = AOUT_VAR_2F2R; + break; + case 4: /* 5.1 */ + msg_Dbg( p_aout, "SpeakerConfig is forced to 5.1" ); + val.i_int = AOUT_VAR_5_1; + break; + case 5: /* 7.1 */ + msg_Dbg( p_aout, "SpeakerConfig is forced to 7.1" ); + val.i_int = AOUT_VAR_7_1; + break; + default: + msg_Dbg( p_aout, "SpeakerConfig is forced to non-existing value" ); + break; + } + var_Set( p_aout, "audio-device", val ); /* Test for SPDIF support */ @@ -670,7 +741,7 @@ static void CloseAudio( vlc_object_t *p_this ) /* finally release the DirectSound object */ if( p_sys->p_dsobject ) IDirectSound_Release( p_sys->p_dsobject ); - + /* free DSOUND.DLL */ if( p_sys->hdsound_dll ) FreeLibrary( p_sys->hdsound_dll ); From git at videolan.org Sun Feb 8 19:14:32 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 19:14:32 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Add_module=5Ffind=5Fby=5Fshort=28?= =?utf-8?q?=29_=28internal_only=29_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090208181432.31B632E92D@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 8 20:06:24 2009 +0200| [a3e70b4e36d7300276ad4263407cd9f5bad2a16d] | committer: R?mi Denis-Courmont Add module_find_by_short() (internal only) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a3e70b4e36d7300276ad4263407cd9f5bad2a16d --- src/libvlc.h | 1 + src/modules/modules.c | 37 +++++++++++++++++++++++++++++++++++-- 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/src/libvlc.h b/src/libvlc.h index 8d945b6..650a93c 100644 --- a/src/libvlc.h +++ b/src/libvlc.h @@ -146,6 +146,7 @@ extern char *psz_vlcpath; * Free after uses both the string and the table. */ VLC_EXPORT(char **, module_GetModulesNamesForCapability, ( const char * psz_capability, char ***psz_longname ) ); +module_t *module_find_by_shortcut (const char *psz_shortcut); /** * Private LibVLC data for each object. diff --git a/src/modules/modules.c b/src/modules/modules.c index 07ae7db..56cf5e7 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -689,7 +689,6 @@ void __module_unneed( vlc_object_t * p_this, module_t * p_module ) /** * Get a pointer to a module_t given it's name. * - * \param p_this vlc object structure * \param psz_name the name of the module * \return a pointer to the module or NULL in case of a failure */ @@ -718,7 +717,6 @@ module_t *module_find( const char * psz_name ) /** * Tell if a module exists and release it in thic case * - * \param p_this vlc object structure * \param psz_name th name of the module * \return TRUE if the module exists */ @@ -731,6 +729,41 @@ bool module_exists (const char * psz_name) } /** + * Get a pointer to a module_t that matches a shortcut. + * This is a temporary hack for SD. Do not re-use (generally multiple modules + * can have the same shortcut, so this is *broken* - use module_need()!). + * + * \param psz_shortcut shortcut of the module + * \param psz_cap capability of the module + * \return a pointer to the module or NULL in case of a failure + */ +module_t *module_find_by_shortcut (const char *psz_shortcut) +{ + module_t **list, *module; + + list = module_list_get (NULL); + if (!list) + return NULL; + + for (size_t i = 0; (module = list[i]) != NULL; i++) + { + for (size_t j = 0; + (module->pp_shortcuts[j] != NULL) && (j < MODULE_SHORTCUT_MAX); + j++) + { + if (!strcmp (module->pp_shortcuts[j], psz_shortcut)) + { + module_hold (module); + goto out; + } + } + } +out: + module_list_free (list); + return module; +} + +/** * GetModuleNamesForCapability * * Return a NULL terminated array with the names of the modules From git at videolan.org Sun Feb 8 19:14:32 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 19:14:32 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_dummy_VLC=5FEXPORT_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090208181432.4164E2EA4D@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 8 20:07:22 2009 +0200| [d44daefbf8d120c9af12c7499ac6bddf45765313] | committer: R?mi Denis-Courmont Remove dummy VLC_EXPORT > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d44daefbf8d120c9af12c7499ac6bddf45765313 --- src/libvlc.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libvlc.h b/src/libvlc.h index 650a93c..20eea3a 100644 --- a/src/libvlc.h +++ b/src/libvlc.h @@ -144,8 +144,8 @@ extern char *psz_vlcpath; /* Return a NULL terminated array with the names of the modules that have a * certain capability. * Free after uses both the string and the table. */ -VLC_EXPORT(char **, module_GetModulesNamesForCapability, - ( const char * psz_capability, char ***psz_longname ) ); +char **module_GetModulesNamesForCapability (const char * psz_capability, + char ***psz_longname); module_t *module_find_by_shortcut (const char *psz_shortcut); /** From git at videolan.org Sun Feb 8 19:14:32 2009 From: git at videolan.org (git version control) Date: Sun, 8 Feb 2009 19:14:32 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_service_discovery_submodules_?= =?utf-8?q?=28i=2Ee=2E_shoutcast_TV_and_the_likes=29__=28_R=C3=A9mi_Denis-?= =?utf-8?q?Courmont_=29?= Message-ID: <20090208181432.531232E80E@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 8 20:08:20 2009 +0200| [a6d61f140c71151ac831b97b7eb0d95f96eb98f1] | committer: R?mi Denis-Courmont Fix service discovery submodules (i.e. shoutcast TV and the likes) Pointed-out-by: R?mi Duraffort > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a6d61f140c71151ac831b97b7eb0d95f96eb98f1 --- src/playlist/services_discovery.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/playlist/services_discovery.c b/src/playlist/services_discovery.c index cdbbeb2..36a297e 100644 --- a/src/playlist/services_discovery.c +++ b/src/playlist/services_discovery.c @@ -238,7 +238,7 @@ int playlist_ServicesDiscoveryAdd( playlist_t *p_playlist, const char *psz_modul if( !p_sd ) return VLC_ENOMEM; - module_t *m = module_find( psz_module ); + module_t *m = module_find_by_shortcut( psz_module ); if( !m ) { msg_Err( p_playlist, "No such module: %s", psz_module ); From agent_007 at luukku.com Sun Feb 8 19:27:47 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Sun, 8 Feb 2009 20:27:47 +0200 (EET) Subject: [vlc-devel] How often should playlist item-change woke things up? Message-ID: <1234117667897.agent_007.46914.Jj40OMNmRb5yySyj5P_M7Q@luukku.com> I just started checking some stuff from MSN now playing plugin and I noticed that playlist item-change wakes up about 5 times per second. Because of this, static int ItemChange in msn.c gets called multiple times during one song. I assume it is same for all plugins that use item-change callbacks. I was just wondering if this is right item-change behavior? Attached patches show the issue (and pinpoint it to item-change) when messages are shown with Verbose 2. ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku -------------- next part -------------- A non-text attachment was scrubbed... Name: 0004-Debug-that-shows-the-ItemChange-issue.patch Type: application/octet-stream Size: 773 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0005-more-itemchange-debug.patch Type: application/octet-stream Size: 1237 bytes Desc: not available URL: From git at videolan.org Mon Feb 9 09:45:24 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 09:45:24 +0100 (CET) Subject: [vlc-devel] commit: mozilla: define wrapper prototypes in support/npunix.c ( Jean-Paul Saman ) Message-ID: <20090209084524.C5CBA2ED88@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Sun Feb 8 13:10:26 2009 +0100| [386c6b9d0dca0d2fecb16fe745730a9975d2def3] | committer: Jean-Paul Saman mozilla: define wrapper prototypes in support/npunix.c > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=386c6b9d0dca0d2fecb16fe745730a9975d2def3 --- projects/mozilla/support/npunix.c | 22 ++++++++++++++++++---- 1 files changed, 18 insertions(+), 4 deletions(-) diff --git a/projects/mozilla/support/npunix.c b/projects/mozilla/support/npunix.c index 26c6736..afeed1a 100644 --- a/projects/mozilla/support/npunix.c +++ b/projects/mozilla/support/npunix.c @@ -421,6 +421,24 @@ void NPN_SetException(NPObject *npobj, const NPUTF8 *message) * setting up globals for 68K plugins. * ***********************************************************************/ +NPError Private_New(NPMIMEType pluginType, NPP instance, uint16 mode, + int16 argc, char* argn[], char* argv[], NPSavedData* saved); +NPError Private_Destroy(NPP instance, NPSavedData** save); +NPError Private_SetWindow(NPP instance, NPWindow* window); +NPError Private_NewStream(NPP instance, NPMIMEType type, NPStream* stream, + NPBool seekable, uint16* stype); +int32 Private_WriteReady(NPP instance, NPStream* stream); +int32 Private_Write(NPP instance, NPStream* stream, int32 offset, int32 len, + void* buffer); +void Private_StreamAsFile(NPP instance, NPStream* stream, const char* fname); +NPError Private_DestroyStream(NPP instance, NPStream* stream, NPError reason); +void Private_URLNotify(NPP instance, const char* url, NPReason reason, void* notifyData); +void Private_Print(NPP instance, NPPrint* platformPrint); +NPError Private_GetValue(NPP instance, NPPVariable variable, void *r_value); +NPError Private_SetValue(NPP instance, NPPVariable variable, void *r_value); +JRIGlobalRef Private_GetJavaClass(void); + +/* */ NPError Private_New(NPMIMEType pluginType, NPP instance, uint16 mode, @@ -484,7 +502,6 @@ Private_StreamAsFile(NPP instance, NPStream* stream, const char* fname) NPP_StreamAsFile(instance, stream, fname); } - NPError Private_DestroyStream(NPP instance, NPStream* stream, NPError reason) { @@ -497,14 +514,11 @@ Private_DestroyStream(NPP instance, NPStream* stream, NPError reason) void Private_URLNotify(NPP instance, const char* url, NPReason reason, void* notifyData) - { PLUGINDEBUGSTR("URLNotify"); NPP_URLNotify(instance, url, reason, notifyData); } - - void Private_Print(NPP instance, NPPrint* platformPrint) { From git at videolan.org Mon Feb 9 09:45:24 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 09:45:24 +0100 (CET) Subject: [vlc-devel] commit: mozilla: call libvlc_playlist_items_count() with playlist lock held . (Jean-Paul Saman ) Message-ID: <20090209084524.D66F42EE78@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Mon Feb 9 09:42:07 2009 +0100| [b9dfd94693317fec3df66bd418b90777db8b8a93] | committer: Jean-Paul Saman mozilla: call libvlc_playlist_items_count() with playlist lock held. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b9dfd94693317fec3df66bd418b90777db8b8a93 --- projects/mozilla/control/npolibvlc.cpp | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/projects/mozilla/control/npolibvlc.cpp b/projects/mozilla/control/npolibvlc.cpp index 516bb8b..2b43d67 100644 --- a/projects/mozilla/control/npolibvlc.cpp +++ b/projects/mozilla/control/npolibvlc.cpp @@ -1207,7 +1207,9 @@ RuntimeNPObject::InvokeResult LibvlcPlaylistItemsNPObject::getProperty(int index { case ID_playlistitems_count: { + libvlc_playlist_lock(p_plugin->getVLC()); int val = libvlc_playlist_items_count(p_plugin->getVLC(), &ex); + libvlc_playlist_unlock(p_plugin->getVLC()); if( libvlc_exception_raised(&ex) ) { NPN_SetException(this, libvlc_exception_get_message(&ex)); @@ -1332,7 +1334,9 @@ RuntimeNPObject::InvokeResult LibvlcPlaylistNPObject::getProperty(int index, NPV { case ID_playlist_itemcount: /* deprecated */ { + libvlc_playlist_lock(p_plugin->getVLC()); int val = libvlc_playlist_items_count(p_plugin->getVLC(), &ex); + libvlc_playlist_unlock(p_plugin->getVLC()); if( libvlc_exception_raised(&ex) ) { NPN_SetException(this, libvlc_exception_get_message(&ex)); From jb at videolan.org Mon Feb 9 09:51:07 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Mon, 9 Feb 2009 09:51:07 +0100 Subject: [vlc-devel] commit: mozilla: call libvlc_playlist_items_count() with playlist lock held . (Jean-Paul Saman ) In-Reply-To: <20090209084524.D66F42EE78@skanda.videolan.org> References: <20090209084524.D66F42EE78@skanda.videolan.org> Message-ID: <20090209085107.GA28307@videolan.org> On Mon, Feb 09, 2009 at 09:45:24AM +0100, git version control wrote : > vlc | branch: master | Jean-Paul Saman | Mon Feb 9 09:42:07 2009 +0100| [b9dfd94693317fec3df66bd418b90777db8b8a93] | committer: Jean-Paul Saman > > mozilla: call libvlc_playlist_items_count() with playlist lock held. Should this be backported ? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Mon Feb 9 14:41:27 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 14:41:27 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_taglib=3A_Fix_=232466_and_fix_als?= =?utf-8?q?o_for_writting_tag_on_win=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090209134127.115C02EE78@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 8 16:53:02 2009 +0100| [5e567ccf38689401d366e0479cd8373aa44e6fa6] | committer: R?mi Duraffort taglib: Fix #2466 and fix also for writting tag on win. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5e567ccf38689401d366e0479cd8373aa44e6fa6 --- modules/meta_engine/taglib.cpp | 38 ++++++++++++++++++++++++++++++++++++-- 1 files changed, 36 insertions(+), 2 deletions(-) diff --git a/modules/meta_engine/taglib.cpp b/modules/meta_engine/taglib.cpp index 6d42247..9a73d7b 100644 --- a/modules/meta_engine/taglib.cpp +++ b/modules/meta_engine/taglib.cpp @@ -326,14 +326,29 @@ static int ReadMeta( vlc_object_t* p_this) demux_t* p_demux = (demux_t*)p_this; demux_meta_t* p_demux_meta = (demux_meta_t*)p_demux->p_private; vlc_meta_t* p_meta; - TagLib::FileRef f; + FileRef f; p_demux_meta->p_meta = NULL; + + +#if defined(WIN32) || defined (UNDER_CE) + if(GetVersion() < 0x80000000) + { + wchar_t wpath[MAX_PATH + 1]; + if( !MultiByteToWideChar( CP_UTF8, 0, p_demux->psz_path, -1, wpath, MAX_PATH) ) + return VLC_EGENERIC; + wpath[MAX_PATH] = L'\0'; + f = FileRef( wpath ); + } + else + return VLC_EGENERIC; +#else const char* local_name = ToLocale( p_demux->psz_path ); if( !local_name ) return VLC_EGENERIC; f = FileRef( local_name ); LocaleFree( local_name ); +#endif if( f.isNull() ) return VLC_EGENERIC; @@ -510,6 +525,7 @@ static int WriteMeta( vlc_object_t *p_this ) playlist_t *p_playlist = (playlist_t *)p_this; meta_export_t *p_export = (meta_export_t *)p_playlist->p_private; input_item_t *p_item = p_export->p_item; + FileRef f; if( !p_item ) { @@ -517,7 +533,25 @@ static int WriteMeta( vlc_object_t *p_this ) return VLC_EGENERIC; } - FileRef f( p_export->psz_file ); +#if defined(WIN32) || defined (UNDER_CE) + if(GetVersion() < 0x80000000) + { + wchar_t wpath[MAX_PATH + 1]; + if( !MultiByteToWideChar( CP_UTF8, 0, p_export->psz_file, -1, wpath, MAX_PATH) ) + return VLC_EGENERIC; + wpath[MAX_PATH] = L'\0'; + f = FileRef( wpath ); + } + else + return VLC_EGENERIC; +#else + const char* local_name = ToLocale( p_export->psz_file ); + if( !local_name ) + return VLC_EGENERIC; + f = FileRef( local_name ); + LocaleFree( local_name ); +#endif + if( f.isNull() || !f.tag() || f.file()->readOnly() ) { msg_Err( p_this, "File %s can't be opened for tag writing\n", From ivoire at via.ecp.fr Mon Feb 9 14:44:23 2009 From: ivoire at via.ecp.fr (=?iso-8859-1?Q?R=E9mi?= Duraffort) Date: Mon, 9 Feb 2009 14:44:23 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_taglib=3A_Fix_=232466_and_fi?= =?iso-8859-1?q?x_also_for_writting_tag_on_win=2E_=28_R=E9mi_Duraff?= =?iso-8859-1?q?ort_=29?= In-Reply-To: <20090209134127.115C02EE78@skanda.videolan.org> References: <20090209134127.115C02EE78@skanda.videolan.org> Message-ID: <20090209134422.GA7993@via.ecp.fr> Le lundi 09 f?vrier 2009 ? 02:41:27, git version control a ?crit : > vlc | branch: master | R?mi Duraffort | Sun Feb 8 16:53:02 2009 +0100| [5e567ccf38689401d366e0479cd8373aa44e6fa6] | committer: R?mi Duraffort > > taglib: Fix #2466 and fix also for writting tag on win. Untested on win32 (as I use only linux) but we can now normally write the meta on win32. -- ivoire | R?mi Duraffort From git at videolan.org Mon Feb 9 14:47:50 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 14:47:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_taglib=3A_remove_a_dummy_sub-modu?= =?utf-8?q?le_=28taglib_can=27t_act_as_an_=22_art_downloader=22=29=2E_=28_?= =?utf-8?q?R=C3=A9mi_Duraffort_=29?= Message-ID: <20090209134750.3D36E2EEEF@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Mon Feb 9 14:46:20 2009 +0100| [846bb6fe9944a8ddb1f75e4cc42d3ff1d0343d94] | committer: R?mi Duraffort taglib: remove a dummy sub-module (taglib can't act as an "art downloader"). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=846bb6fe9944a8ddb1f75e4cc42d3ff1d0343d94 --- modules/meta_engine/taglib.cpp | 16 +--------------- 1 files changed, 1 insertions(+), 15 deletions(-) diff --git a/modules/meta_engine/taglib.cpp b/modules/meta_engine/taglib.cpp index 9a73d7b..504835a 100644 --- a/modules/meta_engine/taglib.cpp +++ b/modules/meta_engine/taglib.cpp @@ -1,7 +1,7 @@ /***************************************************************************** * taglib.cpp: Taglib tag parser/writer ***************************************************************************** - * Copyright (C) 2003-2008 the VideoLAN team + * Copyright (C) 2003-2009 the VideoLAN team * $Id$ * * Authors: Cl?ment Stenac @@ -68,16 +68,12 @@ // Local functions static int ReadMeta ( vlc_object_t * ); -static int DownloadArt ( vlc_object_t * ); static int WriteMeta ( vlc_object_t * ); vlc_module_begin () set_capability( "meta reader", 1000 ) set_callbacks( ReadMeta, NULL ) add_submodule () - set_capability( "art downloader", 50 ) - set_callbacks( DownloadArt, NULL ) - add_submodule () set_capability( "meta writer", 50 ) set_callbacks( WriteMeta, NULL ) vlc_module_end () @@ -653,13 +649,3 @@ static int WriteMeta( vlc_object_t *p_this ) return VLC_SUCCESS; } - - -static int DownloadArt( vlc_object_t *p_this ) -{ - /* We need to be passed the file name - * Fetch the thing from the file, save it to the cache folder - */ - return VLC_EGENERIC; -} - From ogg.k.ogg.k at googlemail.com Mon Feb 9 15:36:45 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 9 Feb 2009 14:36:45 +0000 Subject: [vlc-devel] Spawning a vout when none is available In-Reply-To: References: <200902081418.11066.rem@videolan.org> Message-ID: > Is there another way to know when a vout is/will be there, > so to only spawn one when there is none ? Thinking about it, I think it is better to always spawn a separate vout, so slides, if enabled, can be viewed separately from any video. Is the attached patch (not finished, but working) a clean way to do this ? Thanks -------------- next part -------------- A non-text attachment was scrubbed... Name: slides-on-separate-vout.diff Type: application/octet-stream Size: 4124 bytes Desc: not available URL: From git at videolan.org Mon Feb 9 15:49:21 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 15:49:21 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_playlist=5Fsearch=3A_enable_all_i?= =?utf-8?q?tems_if_the_search_string_is_empty_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090209144921.27F212EEC9@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Mon Feb 9 15:41:00 2009 +0100| [03029fe3ea95ef818a7ed2b48641cfbda8c2b434] | committer: R?mi Duraffort playlist_search: enable all items if the search string is empty (and remove an unused argument). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=03029fe3ea95ef818a7ed2b48641cfbda8c2b434 --- src/playlist/search.c | 37 +++++++++++++++++++++++++++++++------ 1 files changed, 31 insertions(+), 6 deletions(-) diff --git a/src/playlist/search.c b/src/playlist/search.c index 96e0c37..c3f661f 100644 --- a/src/playlist/search.c +++ b/src/playlist/search.c @@ -1,7 +1,7 @@ /***************************************************************************** * search.c : Search functions ***************************************************************************** - * Copyright (C) 1999-2004 the VideoLAN team + * Copyright (C) 1999-2009 the VideoLAN team * $Id$ * * Authors: Cl?ment Stenac @@ -127,9 +127,30 @@ playlist_item_t * playlist_ItemGetByInputId( playlist_t *p_playlist, * Live search handling ***************************************************************************/ -static bool playlist_LiveSearchUpdateInternal( playlist_t *p_playlist, - playlist_item_t *p_root, - const char *psz_string ) +/** + * Enable all items in the playlist + * @param p_root: the current root item + */ +static void playlist_LiveSearchClean( playlist_item_t *p_root ) +{ + for( int i = 0; i < p_root->i_children; i++ ) + { + playlist_item_t *p_item = p_root->pp_children[i]; + if( p_item->i_children >= 0 ) + playlist_LiveSearchClean( p_item ); + p_item->i_flags &= ~PLAYLIST_DBL_FLAG; + } +} + + +/** + * Enable/Disable items in the playlist according to the search argument + * @param p_root: the current root item + * @param psz_string: the string to search + * @return true if an item match + */ +static bool playlist_LiveSearchUpdateInternal( playlist_item_t *p_root, + const char *psz_string ) { int i; bool b_match = false; @@ -138,7 +159,7 @@ static bool playlist_LiveSearchUpdateInternal( playlist_t *p_playlist, playlist_item_t *p_item = p_root->pp_children[i]; if( p_item->i_children > -1 ) { - if( playlist_LiveSearchUpdateInternal( p_playlist, p_item, psz_string ) || + if( playlist_LiveSearchUpdateInternal( p_item, psz_string ) || strcasestr( p_item->p_input->psz_name, psz_string ) ) { p_item->i_flags &= ~PLAYLIST_DBL_FLAG; @@ -172,7 +193,11 @@ int playlist_LiveSearchUpdate( playlist_t *p_playlist, playlist_item_t *p_root, { PL_ASSERT_LOCKED; pl_priv(p_playlist)->b_reset_currently_playing = true; - playlist_LiveSearchUpdateInternal( p_playlist, p_root, psz_string ); + if( *psz_string ) + playlist_LiveSearchUpdateInternal( p_root, psz_string ); + else + playlist_LiveSearchClean( p_root ); vlc_cond_signal( &pl_priv(p_playlist)->signal ); return VLC_SUCCESS; } + From rdenis at simphalempin.com Mon Feb 9 16:26:04 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Mon, 09 Feb 2009 16:26:04 +0100 Subject: [vlc-devel] Spawning a vout when none is available In-Reply-To: References: <200902081418.11066.rem@videolan.org> Message-ID: On Mon, 9 Feb 2009 14:36:45 +0000, "ogg.k.ogg.k at googlemail.com" wrote: >> Is there another way to know when a vout is/will be there, >> so to only spawn one when there is none ? > > Thinking about it, I think it is better to always spawn a separate > vout, so slides, if enabled, can be viewed separately from any > video. Is the attached patch (not finished, but working) a clean > way to do this ? I don't understand your problem anyway. The demux should know if it has created a VIDEO_ES, in which case it is safe to assume there is a video output, and reciprocally - unless stream output is involved or video was disabled. -- R?mi Denis-Courmont From jpsaman at videolan.org Mon Feb 9 16:47:45 2009 From: jpsaman at videolan.org (Jean-Paul Saman) Date: Mon, 09 Feb 2009 16:47:45 +0100 Subject: [vlc-devel] commit: mozilla: call libvlc_playlist_items_count() with playlist lock held . (Jean-Paul Saman ) In-Reply-To: <20090209085107.GA28307@videolan.org> References: <20090209084524.D66F42EE78@skanda.videolan.org> <20090209085107.GA28307@videolan.org> Message-ID: <49905021.5060006@videolan.org> Jean-Baptiste Kempf wrote: > On Mon, Feb 09, 2009 at 09:45:24AM +0100, git version control wrote : >> vlc | branch: master | Jean-Paul Saman | Mon Feb 9 09:42:07 2009 +0100| [b9dfd94693317fec3df66bd418b90777db8b8a93] | committer: Jean-Paul Saman >> >> mozilla: call libvlc_playlist_items_count() with playlist lock held. > > Should this be backported ? It protects playlist_CurrentSize() with a lock. 1.0-git enforces it 0.9-bugfix doesn't. I think it is safe to backport this, but do test when you do. Gtz Jean-Paul Saman. From ogg.k.ogg.k at googlemail.com Mon Feb 9 16:53:56 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 9 Feb 2009 15:53:56 +0000 Subject: [vlc-devel] Spawning a vout when none is available In-Reply-To: References: <200902081418.11066.rem@videolan.org> Message-ID: > I don't understand your problem anyway. The demux should know if it has > created a VIDEO_ES, in which case it is safe to assume there is a video > output, and reciprocally - unless stream output is involved or video was > disabled. I'm not hacking on the demux though, so I'd need to pass this information from the demux (eg, ogg or mkv) to the codec. But thinking about it, it makes more sense to have the slides separate from any possible video, so they can be turned on/off separately, since enabling them would obscure the video, unlike traditional subtitles, so I'll go with the separate vout in the patch, if it's considered clean. Thanks From rem at videolan.org Mon Feb 9 17:00:02 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Mon, 9 Feb 2009 18:00:02 +0200 Subject: [vlc-devel] commit: mozilla: call libvlc_playlist_items_count() with playlist lock held . (Jean-Paul Saman ) In-Reply-To: <49905021.5060006@videolan.org> References: <20090209084524.D66F42EE78@skanda.videolan.org> <20090209085107.GA28307@videolan.org> <49905021.5060006@videolan.org> Message-ID: <200902091800.02624.rem@videolan.org> Le lundi 9 f?vrier 2009 17:47:45 Jean-Paul Saman, vous avez ?crit?: > Jean-Baptiste Kempf wrote: > > On Mon, Feb 09, 2009 at 09:45:24AM +0100, git version control wrote : > >> vlc | branch: master | Jean-Paul Saman | Mon > >> Feb 9 09:42:07 2009 +0100| [b9dfd94693317fec3df66bd418b90777db8b8a93] | > >> committer: Jean-Paul Saman > >> > >> mozilla: call libvlc_playlist_items_count() with playlist lock held. > > > > Should this be backported ? > > It protects playlist_CurrentSize() with a lock. 1.0-git enforces it > 0.9-bugfix doesn't. I think it is safe to backport this, but do test > when you do. What's the point of taking the lock if you do nothing but read the value before you release? It's not going to be much "safer". I don't see the point of backporting. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From rem at videolan.org Mon Feb 9 17:01:21 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Mon, 9 Feb 2009 18:01:21 +0200 Subject: [vlc-devel] Spawning a vout when none is available In-Reply-To: References: Message-ID: <200902091801.22193.rem@videolan.org> Le lundi 9 f?vrier 2009 17:53:56 ogg.k.ogg.k at googlemail.com, vous avez ?crit?: > > I don't understand your problem anyway. The demux should know if it has > > created a VIDEO_ES, in which case it is safe to assume there is a video > > output, and reciprocally - unless stream output is involved or video was > > disabled. > > I'm not hacking on the demux though, so I'd need to pass this information > from the demux (eg, ogg or mkv) to the codec. No you don't. If you didn't want to display an ES, then why would you create it to start with? Especially video ESs - VLC displays all of them not just one, contrary to audio ESs. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From fenrir at via.ecp.fr Mon Feb 9 17:07:52 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 9 Feb 2009 17:07:52 +0100 Subject: [vlc-devel] commit: mozilla: call libvlc_playlist_items_count() with playlist lock held . (Jean-Paul Saman ) In-Reply-To: <200902091800.02624.rem@videolan.org> References: <20090209084524.D66F42EE78@skanda.videolan.org> <20090209085107.GA28307@videolan.org> <49905021.5060006@videolan.org> <200902091800.02624.rem@videolan.org> Message-ID: <20090209160752.GA7407@via.ecp.fr> On Mon, Feb 09, 2009, R?mi Denis-Courmont wrote: > Le lundi 9 f?vrier 2009 17:47:45 Jean-Paul Saman, vous avez ?crit?: > > Jean-Baptiste Kempf wrote: > > > On Mon, Feb 09, 2009 at 09:45:24AM +0100, git version control wrote : > > >> vlc | branch: master | Jean-Paul Saman | Mon > > >> Feb 9 09:42:07 2009 +0100| [b9dfd94693317fec3df66bd418b90777db8b8a93] | > > >> committer: Jean-Paul Saman > > >> > > >> mozilla: call libvlc_playlist_items_count() with playlist lock held. > > > > > > Should this be backported ? > > > > It protects playlist_CurrentSize() with a lock. 1.0-git enforces it > > 0.9-bugfix doesn't. I think it is safe to backport this, but do test > > when you do. > > What's the point of taking the lock if you do nothing but read the value > before you release? It's not going to be much "safer". I don't see the point > of backporting. playlist_CurrentSize checks (now) that the lock is taken as it should be as the variable is written and read from multiple threads. -- fenrir From sebastien-devel at celeos.eu Mon Feb 9 17:25:26 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Mon, 09 Feb 2009 17:25:26 +0100 Subject: [vlc-devel] [PATCH] Race condition in rtsp server Message-ID: <1234196726.499058f663327@imp.celeos.eu> Hi in rtsp.c RtspClientDel can be called twice and crash vlc : 1- with a mediadel 2- with a rtsp client TEARDOWN If we move the deletion of the callback (see the included patch), I think this bug can't happen. Best regards. -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Fix-a-race-condition-between-rtsp-and-httpd.patch Type: text/x-diff Size: 1209 bytes Desc: not available URL: From jb at videolan.org Mon Feb 9 17:20:58 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Mon, 9 Feb 2009 17:20:58 +0100 Subject: [vlc-devel] [RFC] asx/filter-ad option Message-ID: <20090209162058.GA20734@videolan.org> Hello, By default, VLC uses the filter-ad in the asx playlist demuxer. What it means, is that, each time a playlist has , it skips the item. This is the case even though the stream is not an ad. Cf: http://forum.videolan.org/viewtopic.php?f=2&t=55576 Maybe we should deactivate this by default? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From rem at videolan.org Mon Feb 9 17:22:44 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Mon, 9 Feb 2009 18:22:44 +0200 Subject: [vlc-devel] [PATCH] Race condition in rtsp server In-Reply-To: <1234196726.499058f663327@imp.celeos.eu> References: <1234196726.499058f663327@imp.celeos.eu> Message-ID: <200902091822.44496.rem@videolan.org> Le lundi 9 f?vrier 2009 18:25:26 S?bastien Escudier, vous avez ?crit?: > Hi > > in rtsp.c RtspClientDel can be called twice and crash vlc : > 1- with a mediadel > 2- with a rtsp client TEARDOWN > > If we move the deletion of the callback (see the included patch), I think > this bug can't happen. Merged. That being said, it's the least of concerns considering how buggy the so-called RTSP VoD is. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Mon Feb 9 17:23:01 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 17:23:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_a_race_condition_between_rtsp?= =?utf-8?q?_and_httpd_=28_S=C3=A9bastien_Escudier_=29?= Message-ID: <20090209162301.8D3A22EF32@skanda.videolan.org> vlc | branch: master | S?bastien Escudier | Thu Feb 5 14:08:22 2009 +0100| [c7eb703de55f9a0a0a03de0e025ad342bd1ab11a] | committer: R?mi Denis-Courmont Fix a race condition between rtsp and httpd This can happen when a rtsp client teardown : RtspCallback is called. But at the same time, if the media is deleted, (MediaDel), RtspClientDel can be called twice on the same p_media/p_rtsp Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c7eb703de55f9a0a0a03de0e025ad342bd1ab11a --- modules/misc/rtsp.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/modules/misc/rtsp.c b/modules/misc/rtsp.c index 18213d4..0dd3e93 100644 --- a/modules/misc/rtsp.c +++ b/modules/misc/rtsp.c @@ -472,11 +472,12 @@ static void MediaDel( vod_t *p_vod, vod_media_t *p_media ) TAB_REMOVE( p_sys->i_media, p_sys->media, p_media ); vlc_mutex_unlock( &p_sys->lock_media ); + httpd_UrlDelete( p_media->p_rtsp_url ); + while( p_media->i_rtsp > 0 ) RtspClientDel( p_media, p_media->rtsp[0] ); TAB_CLEAN( p_media->i_rtsp, p_media->rtsp ); - httpd_UrlDelete( p_media->p_rtsp_url ); free( p_media->psz_rtsp_path ); free( p_media->psz_rtsp_control_v6 ); free( p_media->psz_rtsp_control_v4 ); From ogg.k.ogg.k at googlemail.com Mon Feb 9 17:23:12 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 9 Feb 2009 16:23:12 +0000 Subject: [vlc-devel] Spawning a vout when none is available In-Reply-To: <200902091801.22193.rem@videolan.org> References: <200902091801.22193.rem@videolan.org> Message-ID: > No you don't. If you didn't want to display an ES, then why would you create > it to start with? Especially video ESs - VLC displays all of them not just > one, contrary to audio ESs. Right, I'm sorry for being slow, but you've lost me :/ I (originally, when wanting use merge slides onto a possible video, which I don't anymore) would not have created a vout that I didn't want to display. I would have either: - displayed slides overlaid on an existing video vout, if there was a video (hence my asking whether it's possible to know/get such a vout without having to resort to the vlc_find_object function) - or, if there was no such video, created a new vout to display the slides onto. So I'm not sure where I'd have created a vout that I didn't want to use. Any preexisting vout would have been used by the video it was created for (and with my preliminary patch here, that's what it is used for too). Note that from my point of view (the plugin's code), I do not know what other streams might be muxed with the slides; there might or might not be a video, and the plugin doesn't know in advance. From git at videolan.org Mon Feb 9 17:29:32 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 17:29:32 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_X11_pixmaps_will_not_work_as_draw?= =?utf-8?q?able_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090209162932.457702EE73@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 9 18:28:20 2009 +0200| [345c6daa2c71efbcd4186be7c686643114009881] | committer: R?mi Denis-Courmont X11 pixmaps will not work as drawable Our outputs want to create a window as a child of the drawable. This is never going to work with a pixmap. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=345c6daa2c71efbcd4186be7c686643114009881 --- include/vlc/libvlc.h | 17 ++++++++--------- src/control/media_player.c | 6 +++--- src/libvlc.sym | 2 +- 3 files changed, 12 insertions(+), 13 deletions(-) diff --git a/include/vlc/libvlc.h b/include/vlc/libvlc.h index f6fc519..57c88b2 100644 --- a/include/vlc/libvlc.h +++ b/include/vlc/libvlc.h @@ -555,19 +555,18 @@ VLC_PUBLIC_API void libvlc_media_player_stop ( libvlc_media_player_t *, libvlc_e * no effects. * * The specified identifier must correspond to an existing Input/Output class - * X11 drawable. The caller shall ensure that the X11 server is the same as the - * one the VLC instance has been configured with. - * If XVideo is not supported or usable, it is assumed that the drawable - * has the following properties in common with the default X11 screen: - * depth, scan line pad, black pixel. This is a bug. - * Using a pixmap rather than a window might not work as VLC might try to - * get window properties and subscribe to window events. + * X11 window. Pixmaps are not supported. The caller shall ensure that + * the X11 server is the same as the one the VLC instance has been configured + * with. + * If XVideo is not used, it is assumed that the drawable has the + * following properties in common with the default X11 screen: depth, scan line + * pad, black pixel. This is a bug. * * \param p_mi the Media Player - * \param drawable the ID of the X drawable + * \param drawable the ID of the X window * \param p_e an initialized exception pointer */ -VLC_PUBLIC_API void libvlc_media_player_set_xid ( libvlc_media_player_t *p_mi, uint32_t drawable, libvlc_exception_t *p_e ); +VLC_PUBLIC_API void libvlc_media_player_set_xwindow ( libvlc_media_player_t *p_mi, uint32_t drawable, libvlc_exception_t *p_e ); /** * Set a Win32/Win64 API window handle (HWND) where the media player should diff --git a/src/control/media_player.c b/src/control/media_player.c index 31589b3..ec74c9b 100644 --- a/src/control/media_player.c +++ b/src/control/media_player.c @@ -698,9 +698,9 @@ void libvlc_media_player_stop( libvlc_media_player_t *p_mi, } } -void libvlc_media_player_set_xid( libvlc_media_player_t *p_mi, - uint32_t drawable, - libvlc_exception_t *p_e ) +void libvlc_media_player_set_xwindow( libvlc_media_player_t *p_mi, + uint32_t drawable, + libvlc_exception_t *p_e ) { (void) p_e; p_mi->drawable.xid = drawable; diff --git a/src/libvlc.sym b/src/libvlc.sym index 3c46ec1..45587b8 100644 --- a/src/libvlc.sym +++ b/src/libvlc.sym @@ -153,7 +153,7 @@ libvlc_media_player_set_position libvlc_media_player_set_rate libvlc_media_player_set_time libvlc_media_player_set_title -libvlc_media_player_set_xid +libvlc_media_player_set_xwindow libvlc_media_player_stop libvlc_media_player_will_play libvlc_media_release From fabian.merki at merkisoft.ch Mon Feb 9 19:13:04 2009 From: fabian.merki at merkisoft.ch (Fabian Merki) Date: Mon, 9 Feb 2009 19:13:04 +0100 Subject: [vlc-devel] crash: This object event manager doesn't know about ... Message-ID: <2CC1AC32E5364A989260E28BEF66237C@FabianPC> Hi I'm using jvlc (v0.9.0-test3, vlc 0.9.8a) and I get the following error when I run the attached java program (copied from JVLCExample.java). (I know that this is not a jvlc forum but I hope that both - java and c++ people - might help me) The program runs videos 1 sec and then starts the next. After running 3 or 4 videos it crashes with the following exception: *** LibVLC Exception not handled: This object event manager doesn't know about 'libvlc_MediaPlayerPlaying,0616B708,00000000' event observer When I comment out the following line it does not crash (it does no longer need to register for the events): mediaPlayer.addListener(new MyMediaPlayerListener()); May be I'm doing something wrong, using the wrong versions, may be there is a (multi threading) bug in JVLC or in the native library... any help is welcome. Thanks Fabian -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: VideoPlayer.java Type: application/octet-stream Size: 2220 bytes Desc: not available URL: From git at videolan.org Mon Feb 9 20:05:08 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 20:05:08 +0100 (CET) Subject: [vlc-devel] commit: fix h264 encoding in windows (Hannes Domani ) Message-ID: <20090209190508.C545A2EF6F@skanda.videolan.org> vlc | branch: 0.9-bugfix | Hannes Domani | Wed Jan 28 22:07:14 2009 +0100| [a586f63e8ccd211b34e632ee9ef123d8b3e62cc4] | committer: Jean-Baptiste Kempf fix h264 encoding in windows Signed-off-by: Christophe Mutricy (cherry picked from commit 31ff21f390ac1b59fab6a376b162cb02286164b7) Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a586f63e8ccd211b34e632ee9ef123d8b3e62cc4 --- configure.ac | 6 ++++++ extras/contrib/src/Makefile | 1 + extras/contrib/src/Patches/pthreads-detach.patch | 12 ++++++++++++ 3 files changed, 19 insertions(+), 0 deletions(-) diff --git a/configure.ac b/configure.ac index f6c69fd..28afb9f 100644 --- a/configure.ac +++ b/configure.ac @@ -3732,6 +3732,9 @@ if test "${enable_x264}" != "no"; then VLC_ADD_PLUGIN([x264]) VLC_ADD_LDFLAGS([x264],[${X264_LIBS}]) VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}]) + if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then + VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB]) + fi ],[ AC_MSG_ERROR([the specified tree hasn't been compiled]) ]) @@ -3745,6 +3748,9 @@ if test "${enable_x264}" != "no"; then VLC_ADD_PLUGIN([x264]) VLC_ADD_LDFLAGS([x264],[${X264_LIBS}]) VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}]) + if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then + VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB]) + fi ],[ if test "${enable_x264}" = "yes"; then AC_MSG_ERROR([Could not find libx264 on your system: you may get it from http://www.videolan.org/x264.html]) diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 69ddd25..7be5ef3 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -2349,6 +2349,7 @@ pthreads-w32-$(PTHREADS_VERSION)-release.tar.gz: pthreads: pthreads-w32-$(PTHREADS_VERSION)-release.tar.gz $(EXTRACT_GZ) + (cd $@; patch -p0 < ../Patches/pthreads-detach.patch) .pthreads: pthreads (cd $<; $(HOSTCC) make $(PTHREADSCONF) GC GC-static && mkdir -p $(PREFIX)/include && cp -v pthread.h sched.h semaphore.h $(PREFIX)/include/ && mkdir -p $(PREFIX)/lib && cp -v *.{a,dll} $(PREFIX)/lib/) diff --git a/extras/contrib/src/Patches/pthreads-detach.patch b/extras/contrib/src/Patches/pthreads-detach.patch new file mode 100644 index 0000000..73e9f36 --- /dev/null +++ b/extras/contrib/src/Patches/pthreads-detach.patch @@ -0,0 +1,12 @@ +--- ptw32_processTerminate.c Mon Jan 26 18:00:34 2009 ++++ ptw32_processTerminate.c Mon Jan 26 18:00:42 2009 +@@ -96,6 +96,9 @@ + tp = tpNext; + } + ++ ptw32_threadReuseTop = PTW32_THREAD_REUSE_EMPTY; ++ ptw32_threadReuseBottom = PTW32_THREAD_REUSE_EMPTY; ++ + LeaveCriticalSection (&ptw32_thread_reuse_lock); + + /* From git at videolan.org Mon Feb 9 20:05:08 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 20:05:08 +0100 (CET) Subject: [vlc-devel] commit: Release Candidate for 0.9.9 (Jean-Baptiste Kempf ) Message-ID: <20090209190508.DAABC2EF93@skanda.videolan.org> vlc | branch: 0.9-bugfix | Jean-Baptiste Kempf | Mon Feb 9 20:04:50 2009 +0100| [57f47d06491a71249ba5b50c0cb78c0456eb05c1] | committer: Jean-Baptiste Kempf Release Candidate for 0.9.9 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=57f47d06491a71249ba5b50c0cb78c0456eb05c1 --- configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/configure.ac b/configure.ac index 28afb9f..8d15df6 100644 --- a/configure.ac +++ b/configure.ac @@ -4,7 +4,7 @@ AC_INIT(vlc, 0.9.9) VERSION_MAJOR="0" VERSION_MINOR="9" VERSION_REVISION="9" -VERSION_EXTRA="-git" +VERSION_EXTRA="-rc" CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" CODENAME="Grishenko" From git at videolan.org Mon Feb 9 20:07:09 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 20:07:09 +0100 (CET) Subject: [vlc-devel] Tag 0.9.9-rc : Jean-Baptiste Kempf : VLC 0.9.9-rc, release candidate for the VLC 0.9.9 Message-ID: <20090209190709.6BB4E2EFCE@skanda.videolan.org> [vlc] [branch: refs/tags/0.9.9-rc] Tag: 63ac647fb189bb549dfd610d4095ca067587e6f5 > http://git.videolan.org/gitweb.cgi/vlc.git?a=tag;h=63ac647fb189bb549dfd610d4095ca067587e6f5 Tagger: Jean-Baptiste Kempf Date: Mon Feb 9 20:05:50 2009 +0100 VLC 0.9.9-rc, release candidate for the VLC 0.9.9 From jonathan.clairembault at gmail.com Mon Feb 9 20:15:19 2009 From: jonathan.clairembault at gmail.com (joss) Date: Mon, 9 Feb 2009 20:15:19 +0100 Subject: [vlc-devel] (no subject) Message-ID: Hi all! I've desperately tried to compile vlc (that I've got from git) for 2 days on macosX 10.4 . I'd like to know whether the compilation is still compatible on this OS. Especially, the part in module/gui/macosx/. So far, I commented the compilation part of some libs in module/gui/ macosx to get an executable. But when I launch it I get : [0x18012d4] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface. dyld: lazy symbol binding failed: Symbol not found: _vlc_object_wait Referenced from: ./modules/gui/minimal_macosx/.libs/ libminimal_macosx_plugin.dylib Expected in: dynamic lookup dyld: Symbol not found: _vlc_object_wait Referenced from: ./modules/gui/minimal_macosx/.libs/ libminimal_macosx_plugin.dylib Expected in: dynamic lookup Trace/BPT trap What can I do? From git at videolan.org Mon Feb 9 20:46:30 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 20:46:30 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Wrap_and_improve_a_bit_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont__=29?= Message-ID: <20090209194630.CF3172EF80@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 9 21:46:12 2009 +0200| [b44089de23f661c49f7e3c97af1c9c7ea17cf2b1] | committer: R?mi Denis-Courmont Wrap and improve a bit > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b44089de23f661c49f7e3c97af1c9c7ea17cf2b1 --- INSTALL.maemo | 101 ++++++++++++++++++++++++++++++++------------------------- 1 files changed, 57 insertions(+), 44 deletions(-) diff --git a/INSTALL.maemo b/INSTALL.maemo index 8d92fdf..3367d33 100644 --- a/INSTALL.maemo +++ b/INSTALL.maemo @@ -1,74 +1,85 @@ INSTALL file for the Maemo version of the VLC media player -Building VLC from the source code -================================= +Building VLC from source code +============================= -If you want to build the maemo version of VLC from the source, you have to install the -Maemo Software Development Kit as indicated in the Maemo Diablo Reference Manual for -Maemo 4.1 that you can find on this page : http://maemo.org/development/documentation/tutorials/ +If you want to build the Maemo version of VLC from the source, you have to +install the Maemo Software Development Kit as indicated in the Maemo Diablo +Reference Manual for Maemo 4.1. You can find it from this page: +http://maemo.org/development/documentation/tutorials/ -You have to use the ARMEL target (arm) of the Maemo SDK. The X86 target isn't tested. +You have to use the ARMEL target (arm) of the Maemo SDK. The x86 target was +not tested. -Installing the correct tools in the scratchbox -============================================== +Installing autotools +==================== -When you have a working scratchbox with the Maemo SDK installed, before compiling VLC, you -must install additional tools and libraries. +Once you have a working scratchbox with the Maemo SDK installed and before +compiling VLC, you must install some additional tools and libraries. -To compile, VLC needs the lastest version of automake avaible in the SDK : automake-1.9. To -use it, you must set the environment variable SBOX_DEFAULT_AUTOMAKE to 1.9 : - export SBOX_DEFAULT_AUTOMAKE=1.9 -You can put it in the .bashrc file inside the scratchbox. +VLC requires automake 1.9 and autoconf 2.61 (or more recent). As of the Diablo +release, they are not easy to install within the Maemo SDK for Scratchbox. +The easiest solution is to use those from your Linux distribution _outside_ +Scratchbox (in your native desktop environment). You will also need the +gettext and libgcrypt development files. -You also need autoconf-2.61 which is *not* avaible in the Maemo SDK. You have to build it and -install it yourself. +Go to the VLC source code directory, e.g.: + cd /scratchbox/users/$(whoami)/home/$(whoami)/vlc +and run: + ./bootstrap + + +Installing correct headers +========================== + +For VLC to compile under the Maemo SDK, you must copy the linux/videodev2.h +from your Linux distribution into the Scratchbox. + +To build the OMAP Frame Buffer video output module, you also need an up-to-date +asm/arch-omap/omapfb.h (you can find it on google by searching for "omapfb.h"). -Additional libraries -==================== -You have to install libgcrypt under the scratchbox to build VLC. +Installing additional libraries +=============================== -You can also install fribidi, libvorbixidev, libmad and other VLC dependancies that you can find -in the extra repositories of Maemo : +Login to Scratchbox. You can also install fribidi, libvorbixidev, libmad and +other VLC dependencies which you can find in the Maemo extra repositories. +Add these lines to /etc/apt/sources.list (if not alerady done): deb http://repository.maemo.org/extras/ diablo free deb-src http://repository.maemo.org/extras/ diablo free -Installing correct headers -========================== +Then run: + apt-get update -For VLC to compile under the Maemo SDK, you must copy the linux/videodev2.h from your Linux -distribution into the scratchbox. - -To build the omap frame buffer video output module, you also need an up-to-date -asm/arch-omap/omapfb.h (you can find it on google by searching omapfb.h). FFmpeg (not necessary) -====== - -You can also build ffmpeg. For this, you can use Debian source package. +====================== -You have to get the ffmpeg-free_0.svn20080206.orig.tar.gz and the Debian diff file -ffmpeg-free_0.svn20080206-8.diff.gz for example. Decompress them and apply the patch. +You should also build FFMPEG. To that end, you can use Debian source package +as is. Get the ffmpeg-free_0.svn20080206.orig.tar.gz and the Debian diff file +ffmpeg-free_0.svn20080206-8.diff.gz for example. Decompress them and apply the +patch. -You have to modify the debian/rules and debian/control files to remove the dependancies -which aren't available in the maemo or maemo extra repositories. +You will need to alter the debian/rules and debian/control files to remove a +few dependencies not available in Maemo. You might have to change the line 3550 of ffmpeg/libavcodec/dsputil.c from DECLARE_ALIGNED_8 (uint64_t, aligned_bak[stride]); to uint64_t *aligned_bak[stride]; -to build ffmpeg into the scratchbox. +to build FFMPEG within Scratchbox. + Configuring =========== -You can do : -./bootstrap && ./configure --disable-qt4 --disable-skins2 --disable-glx --disable-a52 \ - --enable-tremor --enable-maemo --enable-omapfb --enable-flac \ - --enable-debug -for example. +You can run, for example: + ./configure --disable-qt4 --disable-skins2 --disable-glx --disable-a52 \ + --enable-tremor --enable-maemo --enable-omapfb --enable-flac \ + --enable-debug + Building VLC ============ @@ -76,7 +87,9 @@ Building VLC Just do : make -Run VLC -======= -VLC doesn't run inside the scratchbox, you must test it directly on a N800/N810 devices. \ No newline at end of file +Running VLC +=========== + +VLC will not properly run inside the Scratchbox, you must test it directly on +the target device. From git at videolan.org Mon Feb 9 21:09:08 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:08 +0100 (CET) Subject: [vlc-devel] commit: Added a module shortcut to wmafixed. (Laurent Aimar ) Message-ID: <20090209200908.98C6C2EF62@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 5 23:45:39 2009 +0100| [613d73121cfc6ddf23360a1aee27e2389e25195e] | committer: Laurent Aimar Added a module shortcut to wmafixed. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=613d73121cfc6ddf23360a1aee27e2389e25195e --- modules/codec/wmafixed/wma.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/codec/wmafixed/wma.c b/modules/codec/wmafixed/wma.c index 9ceee09..e57b9ce 100644 --- a/modules/codec/wmafixed/wma.c +++ b/modules/codec/wmafixed/wma.c @@ -82,6 +82,7 @@ vlc_module_begin(); set_subcategory( SUBCAT_INPUT_ACODEC ); set_description( _("WMA v1/v2 fixed point audio decoder") ); set_capability( "decoder", 50 ); + add_shortcut( "wmafixed" ) set_callbacks( OpenDecoder, CloseDecoder ); vlc_module_end(); From git at videolan.org Mon Feb 9 21:09:08 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:08 +0100 (CET) Subject: [vlc-devel] commit: Fixed (common) broken dts in wav (close #2494) (Laurent Aimar ) Message-ID: <20090209200908.B1AAD2EF74@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 8 16:33:15 2009 +0100| [9e09dba85d718dce3cb5e48e28f1d7b19a4d05d3] | committer: Laurent Aimar Fixed (common) broken dts in wav (close #2494) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9e09dba85d718dce3cb5e48e28f1d7b19a4d05d3 --- modules/demux/mpeg/es.c | 21 ++++++++++++++++----- 1 files changed, 16 insertions(+), 5 deletions(-) diff --git a/modules/demux/mpeg/es.c b/modules/demux/mpeg/es.c index 7c12cc8..2fdbcd1 100644 --- a/modules/demux/mpeg/es.c +++ b/modules/demux/mpeg/es.c @@ -671,17 +671,28 @@ static int GenericProbe( demux_t *p_demux, int64_t *pi_offset, if( !b_forced_demux ) return VLC_EGENERIC; } + const bool b_wav = i_skip > 0; - /* peek the begining */ - if( stream_Peek( p_demux->s, &p_peek, i_skip + i_check_size ) < i_skip + i_check_size ) + /* peek the begining + * It is common that wav files have some sort of garbage at the begining */ + const int i_probe = i_skip + i_check_size + ( b_wav ? 16000 : 0); + const int i_peek = stream_Peek( p_demux->s, &p_peek, i_probe ); + if( i_peek < i_skip + i_check_size ) { msg_Err( p_demux, "cannot peek" ); return VLC_EGENERIC; } - if( !pf_check( &p_peek[i_skip] ) ) + for( ;; ) { - if( !b_forced_demux ) - return VLC_EGENERIC; + if( i_skip + i_check_size > i_peek ) + { + if( !b_forced_demux ) + return VLC_EGENERIC; + break; + } + if( pf_check( &p_peek[i_skip] ) ) + break; + i_skip++; } *pi_offset = i_offset + i_skip; From git at videolan.org Mon Feb 9 21:09:08 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:08 +0100 (CET) Subject: [vlc-devel] commit: Fixed timestamp validity check in decoder (probably close #2502) ( Laurent Aimar ) Message-ID: <20090209200908.CDA972EF76@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 8 16:35:50 2009 +0100| [0e420affc7ce603fb900ea14124a9b00277312a6] | committer: Laurent Aimar Fixed timestamp validity check in decoder (probably close #2502) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0e420affc7ce603fb900ea14124a9b00277312a6 --- src/input/decoder.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/src/input/decoder.c b/src/input/decoder.c index 3f7ff47..76dba45 100644 --- a/src/input/decoder.c +++ b/src/input/decoder.c @@ -1060,7 +1060,8 @@ static void DecoderFixTs( decoder_t *p_dec, mtime_t *pi_ts0, mtime_t *pi_ts1, *pi_ts0 += i_es_delay; if( pi_ts1 && *pi_ts1 > 0 ) *pi_ts1 += i_es_delay; - input_clock_ConvertTS( p_clock, &i_rate, pi_ts0, pi_ts1, i_ts_bound ); + if( input_clock_ConvertTS( p_clock, &i_rate, pi_ts0, pi_ts1, i_ts_bound ) ) + *pi_ts0 = 0; } else { From git at videolan.org Mon Feb 9 21:09:08 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:08 +0100 (CET) Subject: [vlc-devel] commit: Correctly flush video/audio decoder in all cases. (Laurent Aimar ) Message-ID: <20090209200908.E974E2EF75@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 8 16:39:49 2009 +0100| [9e6e2eeb638d4bc7cac3178ac838f53e716f35f2] | committer: Laurent Aimar Correctly flush video/audio decoder in all cases. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9e6e2eeb638d4bc7cac3178ac838f53e716f35f2 --- src/input/decoder.c | 39 +++++++++++++++++++++++++++++++-------- 1 files changed, 31 insertions(+), 8 deletions(-) diff --git a/src/input/decoder.c b/src/input/decoder.c index 76dba45..9c2e271 100644 --- a/src/input/decoder.c +++ b/src/input/decoder.c @@ -888,10 +888,23 @@ static void *DecoderThread( vlc_object_t *p_this ) return NULL; } +static block_t *DecoderBlockFlushNew() +{ + block_t *p_null = block_Alloc( 128 ); + if( !p_null ) + return NULL; + + p_null->i_flags |= BLOCK_FLAG_DISCONTINUITY | + BLOCK_FLAG_CORRUPTED | + BLOCK_FLAG_CORE_FLUSH; + memset( p_null->p_buffer, 0, p_null->i_buffer ); + + return p_null; +} + static void DecoderFlush( decoder_t *p_dec ) { decoder_owner_sys_t *p_owner = p_dec->p_owner; - block_t *p_null; vlc_assert_locked( &p_owner->lock ); @@ -903,15 +916,9 @@ static void DecoderFlush( decoder_t *p_dec ) vlc_cond_signal( &p_owner->wait ); /* Send a special block */ - p_null = block_New( p_dec, 128 ); + block_t *p_null = DecoderBlockFlushNew(); if( !p_null ) return; - p_null->i_flags |= BLOCK_FLAG_DISCONTINUITY; - p_null->i_flags |= BLOCK_FLAG_CORE_FLUSH; - if( !p_dec->fmt_in.b_packetized ) - p_null->i_flags |= BLOCK_FLAG_CORRUPTED; - memset( p_null->p_buffer, 0, p_null->i_buffer ); - input_DecoderDecode( p_dec, p_null ); /* */ @@ -1796,6 +1803,14 @@ static void DecoderProcessVideo( decoder_t *p_dec, block_t *p_block, bool b_flus p_packetized_block = p_next; } } + /* The packetizer does not output a block that tell the decoder to flush + * do it ourself */ + if( b_flush ) + { + block_t *p_null = DecoderBlockFlushNew(); + if( p_null ) + DecoderDecodeVideo( p_dec, p_null ); + } } else if( p_block ) { @@ -1836,6 +1851,14 @@ static void DecoderProcessAudio( decoder_t *p_dec, block_t *p_block, bool b_flus p_packetized_block = p_next; } } + /* The packetizer does not output a block that tell the decoder to flush + * do it ourself */ + if( b_flush ) + { + block_t *p_null = DecoderBlockFlushNew(); + if( p_null ) + DecoderDecodeAudio( p_dec, p_null ); + } } else if( p_block ) { From git at videolan.org Mon Feb 9 21:09:09 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:09 +0100 (CET) Subject: [vlc-devel] commit: Fixed various decoder/packetizer flush. (Laurent Aimar ) Message-ID: <20090209200909.319422EA4D@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 8 16:51:58 2009 +0100| [3801da9dcde2f56498d49709250abc59502eea59] | committer: Laurent Aimar Fixed various decoder/packetizer flush. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3801da9dcde2f56498d49709250abc59502eea59 --- modules/codec/a52.c | 2 +- modules/codec/dts.c | 2 +- modules/codec/flac.c | 2 +- modules/codec/mpeg_audio.c | 2 +- modules/packetizer/h264.c | 5 ++++- modules/packetizer/mlp.c | 2 +- modules/packetizer/mpeg4audio.c | 4 ++-- modules/packetizer/mpeg4video.c | 16 ++++++++-------- modules/packetizer/mpegvideo.c | 8 +++++--- modules/packetizer/vc1.c | 4 ++-- 10 files changed, 26 insertions(+), 21 deletions(-) diff --git a/modules/codec/a52.c b/modules/codec/a52.c index 797f8d0..df56752 100644 --- a/modules/codec/a52.c +++ b/modules/codec/a52.c @@ -189,7 +189,7 @@ static void *DecodeBlock( decoder_t *p_dec, block_t **pp_block ) if( (*pp_block)->i_flags&BLOCK_FLAG_CORRUPTED ) { p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); } aout_DateSet( &p_sys->end_date, 0 ); block_Release( *pp_block ); diff --git a/modules/codec/dts.c b/modules/codec/dts.c index ac486ef..62a771d 100644 --- a/modules/codec/dts.c +++ b/modules/codec/dts.c @@ -189,7 +189,7 @@ static void *DecodeBlock( decoder_t *p_dec, block_t **pp_block ) if( (*pp_block)->i_flags&BLOCK_FLAG_CORRUPTED ) { p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); } aout_DateSet( &p_sys->end_date, 0 ); block_Release( *pp_block ); diff --git a/modules/codec/flac.c b/modules/codec/flac.c index d7130dc..6206360 100644 --- a/modules/codec/flac.c +++ b/modules/codec/flac.c @@ -386,7 +386,7 @@ static block_t *PacketizeBlock( decoder_t *p_dec, block_t **pp_block ) if( (*pp_block)->i_flags&BLOCK_FLAG_CORRUPTED ) { p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); } aout_DateSet( &p_sys->end_date, 0 ); block_Release( *pp_block ); diff --git a/modules/codec/mpeg_audio.c b/modules/codec/mpeg_audio.c index 34d43a2..306bf07 100644 --- a/modules/codec/mpeg_audio.c +++ b/modules/codec/mpeg_audio.c @@ -208,7 +208,7 @@ static void *DecodeBlock( decoder_t *p_dec, block_t **pp_block ) if( (*pp_block)->i_flags&BLOCK_FLAG_CORRUPTED ) { p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); } aout_DateSet( &p_sys->end_date, 0 ); block_Release( *pp_block ); diff --git a/modules/packetizer/h264.c b/modules/packetizer/h264.c index 03120b6..b8ffeaf 100644 --- a/modules/packetizer/h264.c +++ b/modules/packetizer/h264.c @@ -421,7 +421,7 @@ static block_t *Packetize( decoder_t *p_dec, block_t **pp_block ) if( (*pp_block)->i_flags&BLOCK_FLAG_CORRUPTED ) { p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); if( p_sys->p_frame ) block_ChainRelease( p_sys->p_frame ); @@ -429,6 +429,9 @@ static block_t *Packetize( decoder_t *p_dec, block_t **pp_block ) p_sys->slice.i_frame_type = 0; p_sys->b_slice = false; } + p_sys->i_frame_pts = -1; + p_sys->i_frame_dts = -1; + block_Release( *pp_block ); return NULL; } diff --git a/modules/packetizer/mlp.c b/modules/packetizer/mlp.c index cd4ce12..5722c0c 100644 --- a/modules/packetizer/mlp.c +++ b/modules/packetizer/mlp.c @@ -165,7 +165,7 @@ static block_t *Packetize( decoder_t *p_dec, block_t **pp_block ) { p_sys->b_mlp = false; p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); } aout_DateSet( &p_sys->end_date, 0 ); block_Release( *pp_block ); diff --git a/modules/packetizer/mpeg4audio.c b/modules/packetizer/mpeg4audio.c index 2bf711b..e087980 100644 --- a/modules/packetizer/mpeg4audio.c +++ b/modules/packetizer/mpeg4audio.c @@ -972,9 +972,9 @@ static block_t *PacketizeStreamBlock( decoder_t *p_dec, block_t **pp_block ) if( (*pp_block)->i_flags&BLOCK_FLAG_CORRUPTED ) { p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); } - //aout_DateSet( &p_sys->end_date, 0 ); + aout_DateSet( &p_sys->end_date, 0 ); block_Release( *pp_block ); return NULL; } diff --git a/modules/packetizer/mpeg4video.c b/modules/packetizer/mpeg4video.c index 7f953c3..06e5f4e 100644 --- a/modules/packetizer/mpeg4video.c +++ b/modules/packetizer/mpeg4video.c @@ -229,20 +229,20 @@ static block_t *Packetize( decoder_t *p_dec, block_t **pp_block ) if( (*pp_block)->i_flags&BLOCK_FLAG_CORRUPTED ) { p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); if( p_sys->p_frame ) block_ChainRelease( p_sys->p_frame ); p_sys->p_frame = NULL; p_sys->pp_last = &p_sys->p_frame; } -// p_sys->i_interpolated_pts = -// p_sys->i_interpolated_dts = -// p_sys->i_last_ref_pts = -// p_sys->i_last_time_ref = -// p_sys->i_time_ref = -// p_sys->i_last_time = -// p_sys->i_last_timeincr = 0; + p_sys->i_interpolated_pts = + p_sys->i_interpolated_dts = + p_sys->i_last_ref_pts = + p_sys->i_last_time_ref = + p_sys->i_time_ref = + p_sys->i_last_time = + p_sys->i_last_timeincr = 0; block_Release( *pp_block ); return NULL; diff --git a/modules/packetizer/mpegvideo.c b/modules/packetizer/mpegvideo.c index 23c2eef..e841928 100644 --- a/modules/packetizer/mpegvideo.c +++ b/modules/packetizer/mpegvideo.c @@ -263,7 +263,7 @@ static block_t *Packetize( decoder_t *p_dec, block_t **pp_block ) if( (*pp_block)->i_flags&BLOCK_FLAG_CORRUPTED ) { p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); p_sys->b_discontinuity = true; if( p_sys->p_frame ) @@ -272,8 +272,10 @@ static block_t *Packetize( decoder_t *p_dec, block_t **pp_block ) p_sys->pp_last = &p_sys->p_frame; p_sys->b_frame_slice = false; } -// p_sys->i_interpolated_dts = -// p_sys->i_last_ref_pts = 0; + p_sys->i_dts = 0; + p_sys->i_pts = 0; + p_sys->i_interpolated_dts = 0; + p_sys->i_last_ref_pts = 0; block_Release( *pp_block ); return NULL; diff --git a/modules/packetizer/vc1.c b/modules/packetizer/vc1.c index cfbda1c..8a4b506 100644 --- a/modules/packetizer/vc1.c +++ b/modules/packetizer/vc1.c @@ -203,7 +203,7 @@ static block_t *Packetize( decoder_t *p_dec, block_t **pp_block ) if( (*pp_block)->i_flags&BLOCK_FLAG_CORRUPTED ) { p_sys->i_state = STATE_NOSYNC; - block_BytestreamFlush( &p_sys->bytestream ); + block_BytestreamEmpty( &p_sys->bytestream ); if( p_sys->p_frame ) block_ChainRelease( p_sys->p_frame ); @@ -211,7 +211,7 @@ static block_t *Packetize( decoder_t *p_dec, block_t **pp_block ) p_sys->pp_last = &p_sys->p_frame; p_sys->b_frame = false; } -// p_sys->i_interpolated_dts = 0; + p_sys->i_interpolated_dts = 0; block_Release( *pp_block ); return NULL; } From git at videolan.org Mon Feb 9 21:09:09 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:09 +0100 (CET) Subject: [vlc-devel] commit: Support output bits per sample changes in ffmpeg (close #2493). ( Laurent Aimar ) Message-ID: <20090209200909.411722EF82@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 8 19:35:29 2009 +0100| [4e033b07455b2d90408c76922bc763887c992e5e] | committer: Laurent Aimar Support output bits per sample changes in ffmpeg (close #2493). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4e033b07455b2d90408c76922bc763887c992e5e --- modules/codec/avcodec/audio.c | 78 +++++++++++++++++++++++----------------- 1 files changed, 45 insertions(+), 33 deletions(-) diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c index 05a90bb..97424a1 100644 --- a/modules/codec/avcodec/audio.c +++ b/modules/codec/avcodec/audio.c @@ -89,6 +89,8 @@ struct decoder_sys_t int i_reject_count; }; +static void SetupOutputCodec( decoder_t *p_dec ); + /***************************************************************************** * InitAudioDec: initialize audio decoder ***************************************************************************** @@ -100,8 +102,7 @@ int InitAudioDec( decoder_t *p_dec, AVCodecContext *p_context, decoder_sys_t *p_sys; /* Allocate the memory needed to store the decoder's structure */ - if( ( p_dec->p_sys = p_sys = - (decoder_sys_t *)malloc(sizeof(decoder_sys_t)) ) == NULL ) + if( ( p_dec->p_sys = p_sys = malloc(sizeof(*p_sys)) ) == NULL ) { return VLC_ENOMEM; } @@ -189,7 +190,7 @@ int InitAudioDec( decoder_t *p_dec, AVCodecContext *p_context, /* ***** Open the codec ***** */ vlc_mutex_lock( &avcodec_lock ); - if (avcodec_open( p_sys->p_context, p_sys->p_codec ) < 0) + if( avcodec_open( p_sys->p_context, p_sys->p_codec ) < 0 ) { vlc_mutex_unlock( &avcodec_lock ); msg_Err( p_dec, "cannot open codec (%s)", p_sys->psz_namecodec ); @@ -213,36 +214,7 @@ int InitAudioDec( decoder_t *p_dec, AVCodecContext *p_context, /* Set output properties */ p_dec->fmt_out.i_cat = AUDIO_ES; -#if defined(AV_VERSION_INT) && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 51, 65, 0 ) - switch( p_sys->p_context->sample_fmt ) - { - case SAMPLE_FMT_U8: - p_dec->fmt_out.i_codec = VLC_FOURCC('u','8',' ',' '); - p_dec->fmt_out.audio.i_bitspersample = 8; - break; - case SAMPLE_FMT_S32: - p_dec->fmt_out.i_codec = AOUT_FMT_S32_NE; - p_dec->fmt_out.audio.i_bitspersample = 32; - break; - case SAMPLE_FMT_FLT: - p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','3','2'); - p_dec->fmt_out.audio.i_bitspersample = 32; - break; - case SAMPLE_FMT_DBL: - p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','6','4'); - p_dec->fmt_out.audio.i_bitspersample = 64; - break; - - case SAMPLE_FMT_S16: - default: - p_dec->fmt_out.i_codec = AOUT_FMT_S16_NE; - p_dec->fmt_out.audio.i_bitspersample = 16; - break; - } -#else - p_dec->fmt_out.i_codec = AOUT_FMT_S16_NE; - p_dec->fmt_out.audio.i_bitspersample = 16; -#endif + SetupOutputCodec( p_dec ); return VLC_SUCCESS; } @@ -375,6 +347,7 @@ aout_buffer_t * DecodeAudio ( decoder_t *p_dec, block_t **pp_block ) } /* **** Set audio output parameters **** */ + SetupOutputCodec( p_dec ); p_dec->fmt_out.audio.i_rate = p_sys->p_context->sample_rate; p_dec->fmt_out.audio.i_channels = p_sys->p_context->channels; p_dec->fmt_out.audio.i_original_channels = @@ -413,3 +386,42 @@ void EndAudioDec( decoder_t *p_dec ) free( p_sys->p_output ); } + +/***************************************************************************** + * + *****************************************************************************/ +static void SetupOutputCodec( decoder_t *p_dec ) +{ + decoder_sys_t *p_sys = p_dec->p_sys; + +#if defined(AV_VERSION_INT) && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 51, 65, 0 ) + switch( p_sys->p_context->sample_fmt ) + { + case SAMPLE_FMT_U8: + p_dec->fmt_out.i_codec = VLC_FOURCC('u','8',' ',' '); + p_dec->fmt_out.audio.i_bitspersample = 8; + break; + case SAMPLE_FMT_S32: + p_dec->fmt_out.i_codec = AOUT_FMT_S32_NE; + p_dec->fmt_out.audio.i_bitspersample = 32; + break; + case SAMPLE_FMT_FLT: + p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','3','2'); + p_dec->fmt_out.audio.i_bitspersample = 32; + break; + case SAMPLE_FMT_DBL: + p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','6','4'); + p_dec->fmt_out.audio.i_bitspersample = 64; + break; + + case SAMPLE_FMT_S16: + default: + p_dec->fmt_out.i_codec = AOUT_FMT_S16_NE; + p_dec->fmt_out.audio.i_bitspersample = 16; + break; + } +#else + p_dec->fmt_out.i_codec = AOUT_FMT_S16_NE; + p_dec->fmt_out.audio.i_bitspersample = 16; +#endif +} From git at videolan.org Mon Feb 9 21:09:09 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:09 +0100 (CET) Subject: [vlc-devel] commit: Fixed cc.h multiple includes protection define. (Laurent Aimar ) Message-ID: <20090209200909.74E162EF8A@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 9 20:02:56 2009 +0100| [051a4eb3c8775871d2aea013ba0495435f767aab] | committer: Laurent Aimar Fixed cc.h multiple includes protection define. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=051a4eb3c8775871d2aea013ba0495435f767aab --- modules/codec/cc.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/codec/cc.h b/modules/codec/cc.h index 145f3c9..11fe529 100644 --- a/modules/codec/cc.h +++ b/modules/codec/cc.h @@ -22,7 +22,7 @@ *****************************************************************************/ #ifndef _CC_H -#define _C_H 1 +#define _CC_H 1 /* CC have a maximum rate of 9600 bit/s (per field?) */ #define CC_MAX_DATA_SIZE (2 * 3*600) From git at videolan.org Mon Feb 9 21:09:09 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:09 +0100 (CET) Subject: [vlc-devel] commit: Imroved cc.h fprintf debug (commented out by default). ( Laurent Aimar ) Message-ID: <20090209200909.A5FEC2ED49@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 9 20:04:00 2009 +0100| [cf6d7ded81b8ba976d19f3a8e6a64be8050c3ace] | committer: Laurent Aimar Imroved cc.h fprintf debug (commented out by default). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cf6d7ded81b8ba976d19f3a8e6a64be8050c3ace --- modules/codec/cc.h | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/modules/codec/cc.h b/modules/codec/cc.h index 11fe529..f0bd991 100644 --- a/modules/codec/cc.h +++ b/modules/codec/cc.h @@ -206,9 +206,12 @@ static inline void cc_Extract( cc_data_t *c, const uint8_t *p_src, int i_src ) { #if 0 #define V(x) ( ( x < 0x20 || x >= 0x7f ) ? '?' : x ) - fprintf( stderr, "-------------- unknown user data %2.2x %2.2x %2.2x %2.2x %c%c%c%c\n", - p_src[0], p_src[1], p_src[2], p_src[3], - V(p_src[0]), V(p_src[1]), V(p_src[2]), V(p_src[3]) ); + fprintf( stderr, "-------------- unknown user data " ); + for( int i = 0; i < i_src; i++ ) + fprintf( stderr, "%2.2x ", p_src[i] ); + for( int i = 0; i < i_src; i++ ) + fprintf( stderr, "%c ", V(p_src[i]) ); + fprintf( stderr, "\n" ); #undef V #endif /* TODO DVD CC, ... */ From git at videolan.org Mon Feb 9 21:09:09 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:09 +0100 (CET) Subject: [vlc-devel] commit: Added SCTE-20 CC support (close #2503). (Laurent Aimar ) Message-ID: <20090209200909.DAE582EF82@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 9 20:04:47 2009 +0100| [2b0a175818b469003e026424dc95d26c1154afe3] | committer: Laurent Aimar Added SCTE-20 CC support (close #2503). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2b0a175818b469003e026424dc95d26c1154afe3 --- modules/codec/cc.h | 39 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 39 insertions(+), 0 deletions(-) diff --git a/modules/codec/cc.h b/modules/codec/cc.h index f0bd991..3359e54 100644 --- a/modules/codec/cc.h +++ b/modules/codec/cc.h @@ -24,6 +24,8 @@ #ifndef _CC_H #define _CC_H 1 +#include + /* CC have a maximum rate of 9600 bit/s (per field?) */ #define CC_MAX_DATA_SIZE (2 * 3*600) typedef struct @@ -81,6 +83,7 @@ static inline void cc_Extract( cc_data_t *c, const uint8_t *p_src, int i_src ) static const uint8_t p_cc_replaytv4b[2] = { 0xcc, 0x02 }; static const uint8_t p_cc_replaytv5a[2] = { 0x99, 0x02 }; static const uint8_t p_cc_replaytv5b[2] = { 0xaa, 0x02 }; + static const uint8_t p_cc_scte20[2] = { 0x03, 0x81 }; //static const uint8_t p_afd_start[4] = { 0x44, 0x54, 0x47, 0x31 }; if( i_src < 4 ) @@ -202,6 +205,42 @@ static inline void cc_Extract( cc_data_t *c, const uint8_t *p_src, int i_src ) } c->b_reorder = false; } + else if( !memcmp( p_cc_scte20, p_src, 2 ) && i_src > 2 ) + { + /* SCTE-20 CC */ + bs_t s; + bs_init( &s, &p_src[2], i_src - 2 ); + const int i_cc_count = bs_read( &s, 5 ); + for( int i = 0; i < i_cc_count; i++ ) + { + bs_skip( &s, 2 ); + const int i_field_idx = bs_read( &s, 2 ); + bs_skip( &s, 5 ); + uint8_t cc[2]; + for( int j = 0; j < 2; j++ ) + { + cc[j] = 0; + for( int k = 0; k < 8; k++ ) + cc[j] |= bs_read( &s, 1 ) << k; + } + bs_skip( &s, 1 ); + + if( i_field_idx != 1 && i_field_idx != 2 ) + continue; + if( c->i_data + 2*3 > CC_MAX_DATA_SIZE ) + continue; + + const int i_field = i_field_idx - 1; + const int i_channel = cc_Channel( i_field, cc ); + if( i_channel >= 0 && i_channel < 4 ) + c->pb_present[i_channel] = true; + + c->p_data[c->i_data++] = i_field; + c->p_data[c->i_data++] = cc[0]; + c->p_data[c->i_data++] = cc[1]; + } + c->b_reorder = true; + } else { #if 0 From git at videolan.org Mon Feb 9 21:09:09 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:09:09 +0100 (CET) Subject: [vlc-devel] commit: Added a missing block_BytestreamEmpty helper. (Laurent Aimar ) Message-ID: <20090209200909.173C82EF76@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 8 16:52:27 2009 +0100| [d042c1292f5f52bbfe4103e11b1706471cf6e8c8] | committer: Laurent Aimar Added a missing block_BytestreamEmpty helper. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d042c1292f5f52bbfe4103e11b1706471cf6e8c8 --- include/vlc_block_helper.h | 13 +++++++++++++ 1 files changed, 13 insertions(+), 0 deletions(-) diff --git a/include/vlc_block_helper.h b/include/vlc_block_helper.h index 376c2b4..654d26b 100644 --- a/include/vlc_block_helper.h +++ b/include/vlc_block_helper.h @@ -60,6 +60,19 @@ static inline void block_BytestreamRelease( block_bytestream_t *p_bytestream ) p_bytestream->p_chain = p_bytestream->p_block = NULL; } +/** + * It flush all data (read and unread) from a block_bytestream_t. + */ +static inline void block_BytestreamEmpty( block_bytestream_t *p_bytestream ) +{ + block_BytestreamRelease( p_bytestream ); + + *p_bytestream = block_BytestreamInit(); +} + +/** + * It flushes all already read data from a block_bytestream_t. + */ static inline void block_BytestreamFlush( block_bytestream_t *p_bytestream ) { while( p_bytestream->p_chain != p_bytestream->p_block ) From git at videolan.org Mon Feb 9 21:14:52 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:14:52 +0100 (CET) Subject: [vlc-devel] commit: Qt: change audio menus with mute at the bottom until we decide something with felix . (Jean-Baptiste Kempf ) Message-ID: <20090209201452.484E12EF7E@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 9 21:14:00 2009 +0100| [bce60302b167d5ed37b0e1f707a5c6f1cfb2e2ea] | committer: Jean-Baptiste Kempf Qt: change audio menus with mute at the bottom until we decide something with felix. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bce60302b167d5ed37b0e1f707a5c6f1cfb2e2ea --- modules/gui/qt4/menus.cpp | 15 ++++++++------- 1 files changed, 8 insertions(+), 7 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index adf625b..4ffafe0 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -496,6 +496,14 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) if( current->isEmpty() ) { + ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); + current->addSeparator(); + ACT_ADD( current, "audio-es", qtr( "Audio &Track" ) ); + ACT_ADD( current, "audio-device", qtr( "Audio &Device" ) ); + ACT_ADD( current, "audio-channels", qtr( "Audio &Channels" ) ); + + current->addSeparator(); + QAction *action = current->addAction( qtr( "Mute Audio" ), ActionsManager::getInstance( p_intf ), SLOT( toggleMuteAudio() ) ); action->setData( true ); @@ -505,13 +513,6 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) action = current->addAction( qtr( "Decrease Volume" ), ActionsManager::getInstance( p_intf ), SLOT( AudioDown() ) ); action->setData( true ); - - current->addSeparator(); - ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); - current->addSeparator(); - ACT_ADD( current, "audio-es", qtr( "Audio &Track" ) ); - ACT_ADD( current, "audio-device", qtr( "Audio &Device" ) ); - ACT_ADD( current, "audio-channels", qtr( "Audio &Channels" ) ); } p_input = THEMIM->getInput(); From git at videolan.org Mon Feb 9 21:14:52 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:14:52 +0100 (CET) Subject: [vlc-devel] commit: NEWS about CC SCTE-20 (Jean-Baptiste Kempf ) Message-ID: <20090209201452.590512EF8D@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 9 21:14:27 2009 +0100| [b2ee5a9629e30a5106c501a45d81dbcc74aad50b] | committer: Jean-Baptiste Kempf NEWS about CC SCTE-20 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b2ee5a9629e30a5106c501a45d81dbcc74aad50b --- NEWS | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/NEWS b/NEWS index 1f45a79..aac52e5 100644 --- a/NEWS +++ b/NEWS @@ -16,6 +16,7 @@ New Decoders: * QCELP (Qualcomm PureVoice) * Real Video 3.0 & 4.0 * WMA v1/2 fixed point integer + * Close Caption under SCTE-20 standard Demuxers: * Support for Dirac and RealVideo in Matroska files From git at videolan.org Mon Feb 9 21:16:51 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 21:16:51 +0100 (CET) Subject: [vlc-devel] commit: l10n: Russian update (Roustam Ghizdatov ) Message-ID: <20090209201651.950E42EF74@skanda.videolan.org> vlc | branch: 0.9-bugfix | Roustam Ghizdatov | Sun Feb 8 17:49:41 2009 +0000| [6e92466d2fe086d9bbdeaf11aa626abd08062156] | committer: Christophe Mutricy l10n: Russian update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6e92466d2fe086d9bbdeaf11aa626abd08062156 --- po/ru.po | 18 +++++++++--------- 1 files changed, 9 insertions(+), 9 deletions(-) diff --git a/po/ru.po b/po/ru.po index abb7e4a..7be9263 100644 --- a/po/ru.po +++ b/po/ru.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: vlc\n" "Report-Msgid-Bugs-To: vlc-devel at videolan.org\n" -"POT-Creation-Date: 2009-01-26 22:05+0000\n" +"POT-Creation-Date: 2009-02-08 17:43+0000\n" "PO-Revision-Date: 2009-01-18 12:37+0300\n" "Last-Translator: Andrey Wolk \n" "Language-Team: Russian\n" @@ -13970,7 +13970,7 @@ msgstr "??????? ??????????..." msgid "Open Recent" msgstr "??????? ????????" -#: modules/gui/macosx/intf.m:528 modules/gui/macosx/intf.m:2542 +#: modules/gui/macosx/intf.m:528 modules/gui/macosx/intf.m:2544 msgid "Clear Menu" msgstr "???????? ????" @@ -17593,7 +17593,7 @@ msgstr "&?????????????? / ?????????..." msgid "&Streaming..." msgstr "&????????? ???????" -#: modules/gui/qt4/menus.cpp:315 modules/gui/qt4/menus.cpp:933 +#: modules/gui/qt4/menus.cpp:315 modules/gui/qt4/menus.cpp:937 msgid "&Quit" msgstr "&?????" @@ -17631,7 +17631,7 @@ msgstr "?????????????? ???????? ??????????" msgid "Visualizations selector" msgstr "????? ?????????????" -#: modules/gui/qt4/menus.cpp:421 +#: modules/gui/qt4/menus.cpp:421 modules/gui/qt4/menus.cpp:867 msgid "&Preferences..." msgstr "&?????????..." @@ -17745,24 +17745,24 @@ msgstr "???&????????????" msgid "Show Playlist" msgstr "???????? ????????" -#: modules/gui/qt4/menus.cpp:852 +#: modules/gui/qt4/menus.cpp:854 msgid "Minimal View..." msgstr "??????????? ?????????..." -#: modules/gui/qt4/menus.cpp:857 +#: modules/gui/qt4/menus.cpp:859 #, fuzzy msgid "Toggle Fullscreen Interface" msgstr "??????? ???? ?????? ??? ???????????????" -#: modules/gui/qt4/menus.cpp:917 +#: modules/gui/qt4/menus.cpp:921 msgid "Hide VLC media player in taskbar" msgstr "?????? VLC ????? ????? ? ?????? ?????" -#: modules/gui/qt4/menus.cpp:923 +#: modules/gui/qt4/menus.cpp:927 msgid "Show VLC media player" msgstr "???????? VLC ????? ?????" -#: modules/gui/qt4/menus.cpp:931 +#: modules/gui/qt4/menus.cpp:935 msgid "&Open Media" msgstr "&??????? ?????" From jpsaman at videolan.org Mon Feb 9 21:32:40 2009 From: jpsaman at videolan.org (Jean-Paul Saman) Date: Mon, 09 Feb 2009 21:32:40 +0100 Subject: [vlc-devel] commit: Release Candidate for 0.9.9 (Jean-Baptiste Kempf ) In-Reply-To: <20090209190508.DAABC2EF93@skanda.videolan.org> References: <20090209190508.DAABC2EF93@skanda.videolan.org> Message-ID: <499092E8.7060203@videolan.org> git version control wrote: > vlc | branch: 0.9-bugfix | Jean-Baptiste Kempf | Mon Feb 9 20:04:50 2009 +0100| [57f47d06491a71249ba5b50c0cb78c0456eb05c1] | committer: Jean-Baptiste Kempf > > Release Candidate for 0.9.9 > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=57f47d06491a71249ba5b50c0cb78c0456eb05c1 > --- > > configure.ac | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/configure.ac b/configure.ac > index 28afb9f..8d15df6 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -4,7 +4,7 @@ AC_INIT(vlc, 0.9.9) > VERSION_MAJOR="0" > VERSION_MINOR="9" > VERSION_REVISION="9" > -VERSION_EXTRA="-git" > +VERSION_EXTRA="-rc" > > CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" > CODENAME="Grishenko" Make sure to announce release candidates and releases on Freshmeat too. Dag Wieers told me during FOSDEM, that he missed a lot of vlc announcements while he could have helped by putting -rc in his testing repository. Gtz Jean-Paul Saman. From jb at videolan.org Mon Feb 9 21:49:13 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Mon, 9 Feb 2009 21:49:13 +0100 Subject: [vlc-devel] commit: Release Candidate for 0.9.9 (Jean-Baptiste Kempf ) In-Reply-To: <499092E8.7060203@videolan.org> References: <20090209190508.DAABC2EF93@skanda.videolan.org> <499092E8.7060203@videolan.org> Message-ID: <20090209204913.GB3562@videolan.org> On Mon, Feb 09, 2009 at 09:32:40PM +0100, Jean-Paul Saman wrote : > Make sure to announce release candidates and releases on Freshmeat too. OK, but what is the policy? All rc? pre? Adding to testing? Adding to stable? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jpsaman at videolan.org Mon Feb 9 22:15:29 2009 From: jpsaman at videolan.org (Jean-Paul Saman) Date: Mon, 09 Feb 2009 22:15:29 +0100 Subject: [vlc-devel] commit: Release Candidate for 0.9.9 (Jean-Baptiste Kempf ) In-Reply-To: <20090209204913.GB3562@videolan.org> References: <20090209190508.DAABC2EF93@skanda.videolan.org> <499092E8.7060203@videolan.org> <20090209204913.GB3562@videolan.org> Message-ID: <49909CF1.5010102@videolan.org> Jean-Baptiste Kempf wrote: > On Mon, Feb 09, 2009 at 09:32:40PM +0100, Jean-Paul Saman wrote : >> Make sure to announce release candidates and releases on Freshmeat too. > > OK, but what is the policy? > > All rc? pre? > > Adding to testing? Adding to stable? > > Best Regards, > Sam, maybe you remember how this was done previously? Gtz Jean-Paul Saman. From xtophe at chewa.net Mon Feb 9 22:23:10 2009 From: xtophe at chewa.net (Christophe Mutricy) Date: Mon, 9 Feb 2009 22:23:10 +0100 Subject: [vlc-devel] [RFC] asx/filter-ad option In-Reply-To: <20090209162058.GA20734@videolan.org> References: <20090209162058.GA20734@videolan.org> Message-ID: <20090209212310.GJ9996@chewa.net> On Mon, Feb 09, 09 at 17:20 +0100, Jean-Baptiste Kempf wrote: > Hello, > > By default, VLC uses the filter-ad in the asx playlist demuxer. > What it means, is that, each time a playlist has > , it skips the item. I think that we should at the very least have an explicit message in the log (if it's not already the case) It would be good if we could detect that there is only one stream in the asx. or keep the stream if it's quite long -- Xtophe From git at videolan.org Mon Feb 9 22:24:33 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 22:24:33 +0100 (CET) Subject: [vlc-devel] commit: Fixed closed captions in h264 packetizer. (Laurent Aimar ) Message-ID: <20090209212433.CAD6F2EF80@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 9 22:18:16 2009 +0100| [9ff86452d36944a0a6d373119487cbf43ff9eed1] | committer: Laurent Aimar Fixed closed captions in h264 packetizer. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9ff86452d36944a0a6d373119487cbf43ff9eed1 --- modules/packetizer/h264.c | 26 +++++++++++++++----------- 1 files changed, 15 insertions(+), 11 deletions(-) diff --git a/modules/packetizer/h264.c b/modules/packetizer/h264.c index b8ffeaf..e1cf4dd 100644 --- a/modules/packetizer/h264.c +++ b/modules/packetizer/h264.c @@ -125,11 +125,12 @@ struct decoder_sys_t mtime_t i_frame_dts; /* */ - bool b_cc_reset; uint32_t i_cc_flags; mtime_t i_cc_pts; mtime_t i_cc_dts; cc_data_t cc; + + cc_data_t cc_next; }; enum @@ -349,11 +350,11 @@ static int Open( vlc_object_t *p_this ) p_dec->pf_get_cc = GetCc; /* */ - p_sys->b_cc_reset = false; p_sys->i_cc_pts = 0; p_sys->i_cc_dts = 0; p_sys->i_cc_flags = 0; cc_Init( &p_sys->cc ); + cc_Init( &p_sys->cc_next ); /* */ if( p_dec->fmt_in.i_extra > 0 ) @@ -398,7 +399,10 @@ static void Close( vlc_object_t *p_this ) } block_BytestreamRelease( &p_sys->bytestream ); if( p_dec->pf_get_cc ) + { + cc_Exit( &p_sys->cc_next ); cc_Exit( &p_sys->cc ); + } free( p_sys ); } @@ -702,7 +706,7 @@ static block_t *ParseNALBlock( decoder_t *p_dec, bool *pb_used_ts, block_t *p_fr p_sys->slice.i_frame_type = 0; p_sys->p_frame = NULL; p_sys->b_slice = false; - p_sys->b_cc_reset = true; + cc_Flush( &p_sys->cc_next ); } if( ( !p_sys->b_sps || !p_sys->b_pps ) && @@ -757,12 +761,6 @@ static block_t *ParseNALBlock( decoder_t *p_dec, bool *pb_used_ts, block_t *p_fr ParseSei( p_dec, p_frag ); } - if( !p_pic && p_sys->b_cc_reset ) - { - p_sys->b_cc_reset = false; - cc_Flush( &p_sys->cc ); - } - /* Append the block */ if( p_frag ) block_ChainAppend( &p_sys->p_frame, p_frag ); @@ -822,11 +820,17 @@ static block_t *OutputPicture( decoder_t *p_dec ) p_sys->b_slice = false; /* CC */ - p_sys->b_cc_reset = true; p_sys->i_cc_pts = p_pic->i_pts; p_sys->i_cc_dts = p_pic->i_dts; p_sys->i_cc_flags = p_pic->i_flags; + /* Swap cc buffer */ + cc_data_t cc_tmp = p_sys->cc; + p_sys->cc = p_sys->cc_next; + p_sys->cc_next = cc_tmp; + + cc_Flush( &p_sys->cc_next ); + return p_pic; } @@ -1213,7 +1217,7 @@ static void ParseSei( decoder_t *p_dec, block_t *p_frag ) if( i_t35 >= 5 && !memcmp( p_t35, p_dvb1_data_start_code, sizeof(p_dvb1_data_start_code) ) ) { - cc_Extract( &p_sys->cc, &p_t35[3], i_t35 - 3 ); + cc_Extract( &p_sys->cc_next, &p_t35[3], i_t35 - 3 ); } } i_used += i_size; From git at videolan.org Mon Feb 9 22:51:11 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 22:51:11 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_libkate_contrib=3A_skip_documenta?= =?utf-8?q?tion_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090209215111.396ED2EF8A@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 9 23:47:59 2009 +0200| [a525d207d5ffe87f22d90788af7729c1567e0401] | committer: R?mi Denis-Courmont libkate contrib: skip documentation > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a525d207d5ffe87f22d90788af7729c1567e0401 --- extras/contrib/src/Makefile | 1 + extras/contrib/src/Patches/libkate-nodocs.patch | 24 +++++++++++++++++++++++ 2 files changed, 25 insertions(+), 0 deletions(-) diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 348e1c0..2943a27 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -2321,6 +2321,7 @@ libkate: libkate-$(KATE_VERSION).tar.gz $(EXTRACT_GZ) .kate: libkate .ogg + (cd $<; patch -p1) < Patches/libkate-nodocs.patch (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-valgrind && make && make install) $(INSTALL_NAME) touch $@ diff --git a/extras/contrib/src/Patches/libkate-nodocs.patch b/extras/contrib/src/Patches/libkate-nodocs.patch new file mode 100644 index 0000000..93ebc60 --- /dev/null +++ b/extras/contrib/src/Patches/libkate-nodocs.patch @@ -0,0 +1,24 @@ +diff -ru libkate-0.1.7/doc/Makefile libkate/doc/Makefile +diff -ru libkate-0.1.7/doc/Makefile.am libkate/doc/Makefile.am +--- libkate-0.1.7/doc/Makefile.am 2008-08-11 01:59:03.000000000 +0300 ++++ libkate/doc/Makefile.am 2009-02-09 23:41:53.000000000 +0200 +@@ -31,7 +31,6 @@ + else + .doc-dummy-target: + echo "doxygen not found, cannot build docs" +- /bin/false + endif + + dist-hook: .doc-dummy-target +Seulement dans libkate/doc: Makefile.am~ +diff -ru libkate-0.1.7/doc/Makefile.in libkate/doc/Makefile.in +--- libkate-0.1.7/doc/Makefile.in 2008-08-11 01:59:03.000000000 +0300 ++++ libkate/doc/Makefile.in 2009-02-09 23:42:13.000000000 +0200 +@@ -389,7 +389,6 @@ + @HAVE_DOXYGEN_TRUE@ doxygen kate.doxygen + @HAVE_DOXYGEN_FALSE at .doc-dummy-target: + @HAVE_DOXYGEN_FALSE@ echo "doxygen not found, cannot build docs" +- at HAVE_DOXYGEN_FALSE@ /bin/false + + dist-hook: .doc-dummy-target + cp -fR * $(distdir) From ogg.k.ogg.k at googlemail.com Mon Feb 9 22:52:44 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 9 Feb 2009 21:52:44 +0000 Subject: [vlc-devel] [PATCH] Display slides in a separate vout Message-ID: This is useful both when there is no video but just audio (so selecting the stream will spawn a vout) and when there is an accompanying video (so the slides will display in a separate window, typically larger). Cheers -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Display-slides-on-a-separate-vout.patch Type: application/octet-stream Size: 5180 bytes Desc: not available URL: From ogg.k.ogg.k at googlemail.com Mon Feb 9 22:54:30 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 9 Feb 2009 21:54:30 +0000 Subject: [vlc-devel] =?utf-8?q?commit=3A_libkate_contrib=3A_skip_documenta?= =?utf-8?q?tion_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <20090209215111.396ED2EF8A@skanda.videolan.org> References: <20090209215111.396ED2EF8A@skanda.videolan.org> Message-ID: There is a --disable-doc for configure, is this not enough ? From ogg.k.ogg.k at googlemail.com Mon Feb 9 23:17:49 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Mon, 9 Feb 2009 22:17:49 +0000 Subject: [vlc-devel] [PATCH] Display slides in a separate vout In-Reply-To: References: Message-ID: Apologies, I've done the previous patch with a last change uncommitted, so it didn't make it into the patch. Updated patch attached. Thanks -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Display-slides-on-a-separate-vout.patch Type: application/octet-stream Size: 5207 bytes Desc: not available URL: From git at videolan.org Mon Feb 9 23:23:04 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 23:23:04 +0100 (CET) Subject: [vlc-devel] commit: mozilla: toolbar is not implemented on MacOS X and Win32 for Firefox/Mozilla/ Safari webbrowsers. (Jean-Paul Saman ) Message-ID: <20090209222304.B3DA92EFCE@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Mon Feb 9 21:47:26 2009 +0100| [40e09aa0cb97dffe188f36b30e6d9df7fcf6e6f7] | committer: Jean-Paul Saman mozilla: toolbar is not implemented on MacOS X and Win32 for Firefox/Mozilla/Safari webbrowsers. Remove this define once the functionality is implemented on MacOS X and Win32. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=40e09aa0cb97dffe188f36b30e6d9df7fcf6e6f7 --- projects/mozilla/vlcplugin.cpp | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/projects/mozilla/vlcplugin.cpp b/projects/mozilla/vlcplugin.cpp index 239684d..54072f1 100644 --- a/projects/mozilla/vlcplugin.cpp +++ b/projects/mozilla/vlcplugin.cpp @@ -176,7 +176,11 @@ NPError VlcPlugin::init(int argc, char* const argn[], char* const argv[]) } else if( !strcmp( argn[i], "toolbar" ) ) { +/* FIXME: Remove this when toolbar functionality has been implemented on\ + * MacOS X and Win32 for Firefox/Mozilla/Safari. */ +#ifdef XP_UNIX b_toolbar = boolValue(argv[i]); +#endif } } From git at videolan.org Mon Feb 9 23:23:04 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 23:23:04 +0100 (CET) Subject: [vlc-devel] commit: libvlc_log_clear: looks totally broken. (Jean-Paul Saman ) Message-ID: <20090209222304.C28E82EFE6@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Mon Feb 9 22:11:50 2009 +0100| [2fd49e5a3d7057e9ca4543f7221041125ee57459] | committer: Jean-Paul Saman libvlc_log_clear: looks totally broken. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2fd49e5a3d7057e9ca4543f7221041125ee57459 --- src/control/log.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/control/log.c b/src/control/log.c index 6616dfe..96ef452 100644 --- a/src/control/log.c +++ b/src/control/log.c @@ -144,10 +144,10 @@ void libvlc_log_clear( libvlc_log_t *p_log, libvlc_exception_t *p_e ) { if( p_log ) { - vlc_spin_lock (&p_log->data.lock); + /*vlc_spin_lock (&p_log->data.lock);*/ p_log->data.count = 0; /* FIXME: release items */ - vlc_spin_unlock (&p_log->data.lock); + /*vlc_spin_unlock (&p_log->data.lock);*/ } else RAISEVOID("Invalid log object!"); From git at videolan.org Mon Feb 9 23:23:04 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 23:23:04 +0100 (CET) Subject: [vlc-devel] commit: mozilla: package the plugin also for use in Firefox 3 ( Jean-Paul Saman ) Message-ID: <20090209222304.D52B82EF21@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Mon Feb 9 22:36:36 2009 +0100| [c12f73b1a2b78077037c39ffe50c1939b788c506] | committer: Jean-Paul Saman mozilla: package the plugin also for use in Firefox 3 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c12f73b1a2b78077037c39ffe50c1939b788c506 --- projects/mozilla/Makefile.am | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index 6f1bab8..f68950c 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -109,6 +109,8 @@ VLC\ Plugin.plugin: npvlc.rsrc $(lib_LTLIBRARIES) ACTION="release-makefile" PRODUCT="VLC-Plugin.plugin" src_dir=$(srcdir) build_dir=$(top_builddir) sh ../macosx/framework/Pre-Compile.sh $(INSTALL) .libs/npvlc.dylib "VLC-Plugin.plugin/Contents/MacOS/VLC Plugin" dylib="VLC-Plugin.plugin/Contents/MacOS/VLC Plugin"; $(FIXEXECPATH); + $(INSTALL) .libs/npvlc.dylib "VLC-Plugin.plugin/Contents/MacOS/lib" + dylib="VLC-Plugin.plugin/Contents/MacOS/lib/npvlc.dylib"; $(FIXEXECPATH); $(INSTALL) npvlc.rsrc "VLC-Plugin.plugin/Contents/Resources/VLC Plugin.rsrc" cp -r "$(top_srcdir)/extras/package/macosx/plugin/English.lproj" "VLC-Plugin.plugin/Contents/Resources/" cp -r "$(top_builddir)/extras/package/macosx/plugin/English.lproj" "VLC-Plugin.plugin/Contents/Resources/" From git at videolan.org Mon Feb 9 23:23:04 2009 From: git at videolan.org (git version control) Date: Mon, 9 Feb 2009 23:23:04 +0100 (CET) Subject: [vlc-devel] commit: mozilla: clear exception also in this path. (Jean-Paul Saman ) Message-ID: <20090209222304.F08832EFE6@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Mon Feb 9 23:12:32 2009 +0100| [5f78e89869b09affa682f6a6dc11ca0226137f1f] | committer: Jean-Paul Saman mozilla: clear exception also in this path. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5f78e89869b09affa682f6a6dc11ca0226137f1f --- projects/mozilla/control/npolibvlc.cpp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/projects/mozilla/control/npolibvlc.cpp b/projects/mozilla/control/npolibvlc.cpp index 2b43d67..c8ab15d 100644 --- a/projects/mozilla/control/npolibvlc.cpp +++ b/projects/mozilla/control/npolibvlc.cpp @@ -458,6 +458,7 @@ RuntimeNPObject::InvokeResult LibvlcInputNPObject::getProperty(int index, NPVari { /* for input state, return CLOSED rather than an exception */ INT32_TO_NPVARIANT(0, result); + libvlc_exception_clear(&ex); return INVOKERESULT_NO_ERROR; } } From xtophe at chewa.net Mon Feb 9 23:58:04 2009 From: xtophe at chewa.net (Christophe Mutricy) Date: Mon, 9 Feb 2009 23:58:04 +0100 Subject: [vlc-devel] [PATCH] fix h264 encoding in windows In-Reply-To: <20090204233802.GY9996@chewa.net> References: <20090127235906.GQ3571@chewa.net> <692863.7101.qm@web23302.mail.ird.yahoo.com> <20090204233802.GY9996@chewa.net> Message-ID: <20090209225804.GN9996@chewa.net> On Thu, Feb 05, 09 at 00:38 +0100, Christophe Mutricy wrote: > On Thu, Jan 29, 09 at 11:32 +0000, Hannes Domani wrote: > > Check it out, try, comment it. > > +++ b/configure.ac > > @@ -3657,6 +3657,14 @@ if test "${enable_x264}" != "no"; then > > VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}]) > > + if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then > > + LIBS_save="${LIBS}" > > + LIBS="-lwsock32" > > + AC_CHECK_LIB(pthreadGC2, pthread_win32_process_attach_np, [ > That's (hopefully) always true. So I think the grep on X264_LIBS on the > basis that only win has pthread*GC2* and that win contribs are only > static > Merged with taht bit removed as discussed on IRC. Thnaks -- Xtophe From rdenis at simphalempin.com Tue Feb 10 09:41:05 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Tue, 10 Feb 2009 09:41:05 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_libvlc=5Flog=5Fclear=3A_looks_tot?= =?utf-8?q?ally_broken=2E_=28Jean-Paul_Saman_=29?= In-Reply-To: <20090209222304.C28E82EFE6@skanda.videolan.org> References: <20090209222304.C28E82EFE6@skanda.videolan.org> Message-ID: <13277f98bfc976f826f5363796a980e0@chewa.net> On Mon, 9 Feb 2009 23:23:04 +0100 (CET), git at videolan.org (git version control) wrote: > vlc | branch: master | Jean-Paul Saman | Mon Feb 9 > 22:11:50 2009 +0100| [2fd49e5a3d7057e9ca4543f7221041125ee57459] | > committer: Jean-Paul Saman > > libvlc_log_clear: looks totally broken. Pardon my ignorance but how is this supposed to fix it? -- R?mi Denis-Courmont From fenrir at via.ecp.fr Tue Feb 10 09:42:17 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Tue, 10 Feb 2009 09:42:17 +0100 Subject: [vlc-devel] [PATCH] Display slides in a separate vout In-Reply-To: References: Message-ID: <20090210084217.GA15350@via.ecp.fr> Hi, On Mon, Feb 09, 2009, ogg.k.ogg.k at googlemail.com wrote: > Apologies, I've done the previous patch with a last change > uncommitted, so it didn't make it into the patch. Updated > patch attached. > > Thanks I will have a look at by this WE at worst. -- fenrir From fenrir at via.ecp.fr Tue Feb 10 09:48:09 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Tue, 10 Feb 2009 09:48:09 +0100 Subject: [vlc-devel] [PATCH] 4 patches to commit: [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules In-Reply-To: <9d98edc70902021004i2e4ab388j8e182f9bbcf26561@mail.gmail.com> References: <9d98edc70902020352h1155cabbsd138f3008f313a11@mail.gmail.com> <9d98edc70902021000k4ff3271dne2bb15359f612346@mail.gmail.com> <9d98edc70902021004i2e4ab388j8e182f9bbcf26561@mail.gmail.com> Message-ID: <20090210084809.GA15563@via.ecp.fr> Hi, On Mon, Feb 02, 2009, basos g wrote: > Damn i can not sent this monster. I provide it inline below as a last resort I will not apply this patch for the 1.0 release. While I agree it is wanted (and welcomed), I prefer to avoid regression as it modifies heavily the existing code/code path and was submitted a (tiny) bit too late. I will apply/look at it once the freeze period is over. Please bug me if I don't. Thanks for your work. Regards, -- fenrir From fenrir at via.ecp.fr Tue Feb 10 09:49:33 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Tue, 10 Feb 2009 09:49:33 +0100 Subject: [vlc-devel] [VLC] #2468: VLC 0.9.8a crahes when opening a mpeg2-file with .mod-extension. In-Reply-To: References: <042.3db1317faa08480069d341ebd37bd8c9@videolan.org> <051.f0851dcf013ba1985ebf759bf1b970a6@videolan.org> <14fa90c10901311507q13d18654tcdd96881d77c890@mail.gmail.com> <20090201185528.GB6498@via.ecp.fr> <9b6eda366c42c8dc5d9cf37ff02bfca4@chewa.net> <20090202083513.GA4224@via.ecp.fr> <0e29635a4fb0e67a172b06a23ee55d04@chewa.net> <20090202102422.GA26814@via.ecp.fr> Message-ID: <20090210084933.GB15563@via.ecp.fr> On Mon, Feb 02, 2009, R?mi Denis-Courmont wrote: > > On Mon, 2 Feb 2009 11:24:23 +0100, Laurent Aimar wrote: > > Fixing libmodplug library is of course better for robustness but a > better > > detection on VLC side would not be bad either. > > Can't we use avformat instead? if mplayer reads them... avformat does not read them. Now, the VLC detection is more robust to should avoid such cases. -- fenrir From git at videolan.org Tue Feb 10 10:35:10 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 10:35:10 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_playlist=5Fsearch=3A_enable_all_i?= =?utf-8?q?tems_if_the_search_string_is_empty_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090210093510.5BDA02EFE1@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Duraffort | Mon Feb 9 15:41:00 2009 +0100| [294078a9893b1ae2dc340208410d731b9bfad698] | committer: R?mi Duraffort playlist_search: enable all items if the search string is empty (and remove an unused argument). Signed-off-by: R?mi Duraffort > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=294078a9893b1ae2dc340208410d731b9bfad698 --- src/playlist/search.c | 37 +++++++++++++++++++++++++++++++------ 1 files changed, 31 insertions(+), 6 deletions(-) diff --git a/src/playlist/search.c b/src/playlist/search.c index fd3fef4..720f481 100644 --- a/src/playlist/search.c +++ b/src/playlist/search.c @@ -1,7 +1,7 @@ /***************************************************************************** * search.c : Search functions ***************************************************************************** - * Copyright (C) 1999-2004 the VideoLAN team + * Copyright (C) 1999-2009 the VideoLAN team * $Id$ * * Authors: Cl?ment Stenac @@ -126,9 +126,30 @@ playlist_item_t * playlist_ItemGetByInputId( playlist_t *p_playlist, * Live search handling ***************************************************************************/ -static bool playlist_LiveSearchUpdateInternal( playlist_t *p_playlist, - playlist_item_t *p_root, - const char *psz_string ) +/** + * Enable all items in the playlist + * @param p_root: the current root item + */ +static void playlist_LiveSearchClean( playlist_item_t *p_root ) +{ + for( int i = 0; i < p_root->i_children; i++ ) + { + playlist_item_t *p_item = p_root->pp_children[i]; + if( p_item->i_children >= 0 ) + playlist_LiveSearchClean( p_item ); + p_item->i_flags &= ~PLAYLIST_DBL_FLAG; + } +} + + +/** + * Enable/Disable items in the playlist according to the search argument + * @param p_root: the current root item + * @param psz_string: the string to search + * @return true if an item match + */ +static bool playlist_LiveSearchUpdateInternal( playlist_item_t *p_root, + const char *psz_string ) { int i; bool b_match = false; @@ -137,7 +158,7 @@ static bool playlist_LiveSearchUpdateInternal( playlist_t *p_playlist, playlist_item_t *p_item = p_root->pp_children[i]; if( p_item->i_children > -1 ) { - if( playlist_LiveSearchUpdateInternal( p_playlist, p_item, psz_string ) || + if( playlist_LiveSearchUpdateInternal( p_item, psz_string ) || strcasestr( p_item->p_input->psz_name, psz_string ) ) { p_item->i_flags &= ~PLAYLIST_DBL_FLAG; @@ -171,7 +192,11 @@ int playlist_LiveSearchUpdate( playlist_t *p_playlist, playlist_item_t *p_root, { PL_ASSERT_LOCKED; p_playlist->b_reset_currently_playing = true; - playlist_LiveSearchUpdateInternal( p_playlist, p_root, psz_string ); + if( *psz_string ) + playlist_LiveSearchUpdateInternal( p_root, psz_string ); + else + playlist_LiveSearchClean( p_root ); vlc_object_signal_unlocked( p_playlist ); return VLC_SUCCESS; } + From jpd at m2x.nl Tue Feb 10 11:20:56 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Tue, 10 Feb 2009 11:20:56 +0100 (CET) Subject: [vlc-devel] [patch] Crudely add locking around libvlc_playlist_items_count() calls. Message-ID: <1f6cb6aac12af7a3954ba27588d13166.squirrel@m2x.nl> This patch, at least the mozilla part of it, stops epiphany from crashing on an unlocked libvlc_playlist_items_count() call. Firefox 3 so far didn't crash but didn't do anything else either, might be a safety feature. The activex part has not been tested yet, but is very similar in concept. -------------- next part -------------- A non-text attachment was scrubbed... Name: lockpatch Type: application/octet-stream Size: 3051 bytes Desc: not available URL: From git at videolan.org Tue Feb 10 12:22:32 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 12:22:32 +0100 (CET) Subject: [vlc-devel] commit: Manual backport of: "[MKV] Detect Dirac in MKV" ( Jean-Baptiste Kempf ) Message-ID: <20090210112232.278F92EB2B@skanda.videolan.org> vlc | branch: 0.9-bugfix | Jean-Baptiste Kempf | Tue Feb 10 12:21:00 2009 +0100| [88254fd7f475199cbe369b66b175c201152b122b] | committer: Jean-Baptiste Kempf Manual backport of: "[MKV] Detect Dirac in MKV" Backport of [9ed799b9907b4e959426c8326749174a8293a9f6] Fixes http://mso.fedorapeople.org/codecs-test/codec_test.schro.mkv > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=88254fd7f475199cbe369b66b175c201152b122b --- modules/demux/mkv.cpp | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/modules/demux/mkv.cpp b/modules/demux/mkv.cpp index 97fa3e0..95b60fb 100644 --- a/modules/demux/mkv.cpp +++ b/modules/demux/mkv.cpp @@ -2337,6 +2337,10 @@ bool matroska_segment_c::Select( mtime_t i_start_time ) else if( !strcmp( tracks[i_track]->psz_codec, "V_REAL/RV40" ) ) tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'R', 'V', '4', '0' ); } + else if( !strncmp( tracks[i_track]->psz_codec, "V_DIRAC", 7 ) ) + { + tracks[i_track]->fmt.i_codec = VLC_FOURCC('d', 'r', 'a', 'c' ); + } else if( !strncmp( tracks[i_track]->psz_codec, "V_MPEG4", 7 ) ) { if( !strcmp( tracks[i_track]->psz_codec, "V_MPEG4/MS/V3" ) ) From git at videolan.org Tue Feb 10 13:07:51 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 13:07:51 +0100 (CET) Subject: [vlc-devel] commit: Qt, menu: remove open playlist (Jean-Baptiste Kempf ) Message-ID: <20090210120751.F22292EB2B@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Tue Feb 10 13:06:29 2009 +0100| [cff8ba99620db6a82a23d28e6aa3f93c3b5139d5] | committer: Jean-Baptiste Kempf Qt, menu: remove open playlist > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cff8ba99620db6a82a23d28e6aa3f93c3b5139d5 --- modules/gui/qt4/menus.cpp | 11 ++++------- 1 files changed, 4 insertions(+), 7 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 4ffafe0..3400027 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -330,18 +330,15 @@ QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf ) addDPStaticEntry( menu, qtr( "Paste &MRL" ), NULL, SLOT( openUrlDialog() ), "Ctrl+V" ); - addDPStaticEntry( menu, qtr( I_PL_LOAD ), "", SLOT( openAPlaylist() ), - "Ctrl+X" ); - addDPStaticEntry( menu, qtr( I_PL_SAVE ), "", SLOT( saveAPlaylist() ), - "Ctrl+Y" ); - - menu->addSeparator(); - recentsMenu = new QMenu( qtr( "Recently &Played" ), menu ); updateRecents( p_intf ); menu->addMenu( recentsMenu ); menu->addSeparator(); + addDPStaticEntry( menu, qtr( I_PL_SAVE ), "", SLOT( saveAPlaylist() ), + "Ctrl+Y" ); + menu->addSeparator(); + addDPStaticEntry( menu, qtr( "Conve&rt / Save..." ), "", SLOT( openAndTranscodingDialogs() ), "Ctrl+R" ); addDPStaticEntry( menu, qtr( "&Streaming..." ), From gozer at progrock.com Tue Feb 10 14:54:48 2009 From: gozer at progrock.com (Dupont Lajoie) Date: Tue, 10 Feb 2009 05:54:48 -0800 Subject: [vlc-devel] [PATCH] Updated French Translation Message-ID: <20090210055448.1FED0E39@resin09.mta.everyone.net> From 476124f616a099dc97e12afc4d7bc595df1ce8f7 Mon Sep 17 00:00:00 2001 From: Eric Lassauge Date: Tue, 10 Feb 2009 14:43:21 +0100 Subject: [PATCH] Updated French Translation --- po/fr.po |18529 +++++++++++++++++++++++--------------------------------------- 1 files changed, 6883 insertions(+), 11646 deletions(-) diff --git a/po/fr.po b/po/fr.po index 30f5c5a..9fbf919 100644 --- a/po/fr.po +++ b/po/fr.po @@ -1,7 +1,9 @@ # French translation for VLC. -# Copyright (C) 2001-2004 the VideoLAN team +# Copyright (C) 2001-2009 the VideoLAN team # $Id$ # +# Translation updated by +# ?ric lassauge # Jean-Pierre Kuypers @@ -11,15 +13,15 @@ msgid "" msgstr "" "Project-Id-Version: fr\n" "Report-Msgid-Bugs-To: vlc-devel at videolan.org\n" -"POT-Creation-Date: 2008-08-24 22:56+0300\n" -"PO-Revision-Date: 2008-08-25 12:48-0800\n" -"Last-Translator: Jean-Baptiste Kempf \n" +"POT-Creation-Date: 2009-02-10 11:11+0100\n" +"PO-Revision-Date: 2009-02-10 13:30+0200\n" +"Last-Translator: Eric Lassauge \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: include/vlc_common.h:893 +#: include/vlc_common.h:883 msgid "" "This program comes with NO WARRANTY, to the extent permitted by law.\n" "You may redistribute it under the terms of the GNU General Public License;\n" @@ -38,225 +40,217 @@ msgstr "Pr?f?rences de VLC" #: include/vlc_config_cat.h:34 msgid "Select \"Advanced Options\" to see all options." -msgstr "Cliquez sur ? Options avanc?es ? pour voir toutes les options." +msgstr "Cliquez sur ??Options avanc?es?? pour voir toutes les options." -#: include/vlc_config_cat.h:36 include/vlc_config_cat.h:127 -#: modules/gui/macosx/playlistinfo.m:76 modules/gui/wince/playlist.cpp:671 -#: modules/visualization/visual/visual.c:116 -msgid "General" -msgstr "G?n?ral" - -#: include/vlc_config_cat.h:39 modules/gui/macosx/simple_prefs.m:173 -#: modules/gui/qt4/components/simple_preferences.cpp:76 -#: modules/gui/qt4/menus.cpp:835 modules/misc/dummy/dummy.c:68 +#: include/vlc_config_cat.h:37 modules/gui/macosx/simple_prefs.m:173 +#: modules/gui/qt4/components/simple_preferences.cpp:77 +#: modules/gui/qt4/menus.cpp:892 modules/misc/dummy/dummy.c:68 msgid "Interface" msgstr "Interface" -#: include/vlc_config_cat.h:40 +#: include/vlc_config_cat.h:38 msgid "Settings for VLC's interfaces" msgstr "Param?tres des interfaces" -#: include/vlc_config_cat.h:42 -msgid "General interface settings" +#: include/vlc_config_cat.h:40 +msgid "Main interfaces settings" msgstr "Param?tres g?n?raux de l?interface" -#: include/vlc_config_cat.h:44 +#: include/vlc_config_cat.h:42 msgid "Main interfaces" msgstr "Interfaces principales" -#: include/vlc_config_cat.h:45 +#: include/vlc_config_cat.h:43 msgid "Settings for the main interface" msgstr "Param?tres de l?interface principale" -#: include/vlc_config_cat.h:47 src/libvlc-module.c:160 +#: include/vlc_config_cat.h:45 src/libvlc-module.c:160 msgid "Control interfaces" msgstr "Interfaces de contr?le" -#: include/vlc_config_cat.h:48 +#: include/vlc_config_cat.h:46 msgid "Settings for VLC's control interfaces" msgstr "Param?tres des interfaces de contr?le" -#: include/vlc_config_cat.h:50 include/vlc_config_cat.h:51 +#: include/vlc_config_cat.h:48 include/vlc_config_cat.h:49 #: modules/gui/macosx/simple_prefs.m:193 msgid "Hotkeys settings" msgstr "Param?tres des raccourcis" -#: include/vlc_config_cat.h:54 src/input/es_out.c:2060 -#: src/libvlc-module.c:1431 modules/gui/beos/InterfaceWindow.cpp:283 -#: modules/gui/macosx/intf.m:550 modules/gui/macosx/output.m:170 +#: include/vlc_config_cat.h:52 src/input/es_out.c:2593 src/input/es_out.c:2627 +#: src/libvlc-module.c:1488 modules/gui/beos/InterfaceWindow.cpp:283 +#: modules/gui/macosx/intf.m:560 modules/gui/macosx/output.m:170 #: modules/gui/macosx/playlistinfo.m:110 modules/gui/macosx/simple_prefs.m:177 -#: modules/gui/macosx/wizard.m:378 -#: modules/gui/qt4/components/info_panels.cpp:522 -#: modules/gui/qt4/components/simple_preferences.cpp:78 -#: modules/gui/qt4/ui/sout.ui:748 modules/stream_out/transcode.c:199 +#: modules/gui/macosx/wizard.m:380 +#: modules/gui/qt4/components/info_panels.cpp:517 +#: modules/gui/qt4/components/simple_preferences.cpp:79 +#: modules/stream_out/es.c:93 modules/stream_out/transcode.c:200 msgid "Audio" msgstr "Audio" -#: include/vlc_config_cat.h:55 +#: include/vlc_config_cat.h:53 msgid "Audio settings" msgstr "Param?tres audio" -#: include/vlc_config_cat.h:57 include/vlc_config_cat.h:58 +#: include/vlc_config_cat.h:55 msgid "General audio settings" msgstr "Param?tres audio g?n?raux" -#: include/vlc_config_cat.h:60 include/vlc_config_cat.h:85 -#: src/video_output/video_output.c:416 +#: include/vlc_config_cat.h:57 include/vlc_config_cat.h:79 +#: src/video_output/video_output.c:515 msgid "Filters" msgstr "Filtres" -#: include/vlc_config_cat.h:62 -msgid "Audio filters are used to postprocess the audio stream." +#: include/vlc_config_cat.h:58 +msgid "Audio filters are used to process the audio stream." msgstr "Les filtres audio sont utilis?s pour traiter le flux audio" -#: include/vlc_config_cat.h:64 src/audio_output/input.c:96 -#: modules/gui/macosx/intf.m:560 modules/gui/macosx/intf.m:561 +#: include/vlc_config_cat.h:60 src/audio_output/input.c:112 +#: modules/gui/macosx/intf.m:570 modules/gui/macosx/intf.m:571 msgid "Visualizations" msgstr "Visualisations" -#: include/vlc_config_cat.h:66 src/audio_output/input.c:170 +#: include/vlc_config_cat.h:61 src/audio_output/input.c:186 msgid "Audio visualizations" msgstr "Visualisations audio" -#: include/vlc_config_cat.h:68 include/vlc_config_cat.h:81 +#: include/vlc_config_cat.h:63 include/vlc_config_cat.h:75 msgid "Output modules" msgstr "Modules de sortie" -#: include/vlc_config_cat.h:69 -msgid "These are general settings for audio output modules." +#: include/vlc_config_cat.h:64 +msgid "General settings for audio output modules." msgstr "Voici les param?tres pour les modules de sortie audio." -#: include/vlc_config_cat.h:71 src/libvlc-module.c:1834 -#: modules/gui/qt4/ui/sout.ui:883 modules/stream_out/transcode.c:231 +#: include/vlc_config_cat.h:66 src/libvlc-module.c:1911 +#: modules/gui/qt4/ui/sout.ui:440 modules/stream_out/transcode.c:232 msgid "Miscellaneous" msgstr "Divers" -#: include/vlc_config_cat.h:72 +#: include/vlc_config_cat.h:67 msgid "Miscellaneous audio settings and modules." msgstr "Param?tres et modules audio divers." -#: include/vlc_config_cat.h:75 src/input/es_out.c:2088 -#: src/libvlc-module.c:1481 modules/gui/macosx/intf.m:563 +#: include/vlc_config_cat.h:70 src/input/es_out.c:2596 src/input/es_out.c:2676 +#: src/libvlc-module.c:1541 modules/gui/macosx/intf.m:573 #: modules/gui/macosx/output.m:160 modules/gui/macosx/playlistinfo.m:99 -#: modules/gui/macosx/simple_prefs.m:181 modules/gui/macosx/wizard.m:379 -#: modules/gui/qt4/components/info_panels.cpp:523 -#: modules/gui/qt4/components/simple_preferences.cpp:79 -#: modules/gui/qt4/ui/sout.ui:651 modules/misc/dummy/dummy.c:98 -#: modules/stream_out/transcode.c:168 +#: modules/gui/macosx/simple_prefs.m:181 modules/gui/macosx/wizard.m:381 +#: modules/gui/qt4/components/info_panels.cpp:518 +#: modules/gui/qt4/components/simple_preferences.cpp:80 +#: modules/gui/qt4/ui/sprefs_video.ui:150 modules/misc/dummy/dummy.c:104 +#: modules/stream_out/es.c:101 modules/stream_out/transcode.c:169 msgid "Video" msgstr "Vid?o" -#: include/vlc_config_cat.h:76 +#: include/vlc_config_cat.h:71 msgid "Video settings" msgstr "Param?tres vid?o" -#: include/vlc_config_cat.h:78 include/vlc_config_cat.h:79 +#: include/vlc_config_cat.h:73 msgid "General video settings" msgstr "Param?tres vid?o g?n?raux" -#: include/vlc_config_cat.h:83 +#: include/vlc_config_cat.h:77 msgid "Choose your preferred video output and configure it here." msgstr "Choisissez votre module de sortie vid?o pr?f?r? et configurez-le ici." -#: include/vlc_config_cat.h:87 -msgid "Video filters are used to postprocess the video stream." +#: include/vlc_config_cat.h:81 +msgid "Video filters are used to process the video stream." msgstr "Les filtres vid?o permettrent de traiter le flux vid?o" -#: include/vlc_config_cat.h:89 +#: include/vlc_config_cat.h:83 msgid "Subtitles/OSD" msgstr "Sous-titres/OSD" -#: include/vlc_config_cat.h:90 +#: include/vlc_config_cat.h:84 msgid "" -"Miscellaneous settings related to On-Screen-Display, subtitles and \"overlay " -"subpictures\"." +"Settings related to On-Screen-Display, subtitles and \"overlay subpictures\"" msgstr "" "Param?tres divers pour l?affichage ? l??cran (OSD), les sous-titres et les " "incrustations." -#: include/vlc_config_cat.h:99 +#: include/vlc_config_cat.h:93 msgid "Input / Codecs" msgstr "Lecture / Codecs" -#: include/vlc_config_cat.h:100 -msgid "" -"These are the settings for the input, demultiplexing and decoding parts of " -"VLC. Encoder settings can also be found here." -msgstr "" -"Ces param?tres permettent de r?gler la lecture, le d?multiplexage et le " -"d?codage dans VLC. Les param?tres d?encodage sont ?galement ici." +#: include/vlc_config_cat.h:94 +msgid "Settings for input, demultiplexing, decoding and encoding" +msgstr "R?glages pour les entr?es, multiplexeurs, d?codeurs et encodeurs vid?o." -#: include/vlc_config_cat.h:103 +#: include/vlc_config_cat.h:97 msgid "Access modules" -msgstr "Module d?acc?s" +msgstr "Modules d?acc?s" -#: include/vlc_config_cat.h:105 +#: include/vlc_config_cat.h:99 msgid "" -"Settings related to the various access methods used by VLC. Common settings " -"you may want to alter are HTTP proxy or caching settings." +"Settings related to the various access methods. Common settings you may want " +"to alter are HTTP proxy or caching settings." msgstr "" "R?glages relatifs aux diff?rentes m?thodes d?acc?s utilis?es par VLC.\n" "Des param?tres couramment modifi?s sont l?adresse du proxy HTTP ou la taille " "des tampons." -#: include/vlc_config_cat.h:109 -msgid "Access filters" -msgstr "Filtres d?acc?s" +#: include/vlc_config_cat.h:103 +msgid "Stream filters" +msgstr "Filtres de flux" -#: include/vlc_config_cat.h:111 +#: include/vlc_config_cat.h:105 msgid "" -"Access filters are special modules that allow advanced operations on the " -"input side of VLC. You should not touch anything here unless you know what " -"you are doing." +"Stream filters are special modules that allow advanced operations on the " +"input side of VLC. Use with care..." msgstr "" -"Les filtres d?acc?s permettent d?effectuer des op?rations avanc?es au niveau " +"Les filtres de flux permettent d?effectuer des op?rations avanc?es au niveau " "de l?entr?e de VLC. Vous ne devriez modifier ces r?glages que si vous savez " "ce que vous faites." -#: include/vlc_config_cat.h:115 +#: include/vlc_config_cat.h:108 msgid "Demuxers" msgstr "D?multiplexeurs" -#: include/vlc_config_cat.h:116 +#: include/vlc_config_cat.h:109 msgid "Demuxers are used to separate audio and video streams." msgstr "Les d?multiplexeurs permettent de s?parer les flux audio et vid?o." -#: include/vlc_config_cat.h:118 +#: include/vlc_config_cat.h:111 msgid "Video codecs" msgstr "Codecs vid?o" -#: include/vlc_config_cat.h:119 +#: include/vlc_config_cat.h:112 msgid "Settings for the video-only decoders and encoders." msgstr "R?glages pour les d?codeurs et encodeurs vid?o." -#: include/vlc_config_cat.h:121 +#: include/vlc_config_cat.h:114 msgid "Audio codecs" msgstr "Codecs audio" -#: include/vlc_config_cat.h:122 +#: include/vlc_config_cat.h:115 msgid "Settings for the audio-only decoders and encoders." msgstr "R?glages pour les d?codeurs et encodeurs audio." -#: include/vlc_config_cat.h:124 +#: include/vlc_config_cat.h:117 msgid "Other codecs" msgstr "Autres codecs" -#: include/vlc_config_cat.h:125 +#: include/vlc_config_cat.h:118 msgid "Settings for audio+video and miscellaneous decoders and encoders." msgstr "R?glages pour les d?codeurs/encodeurs audio+vid?o et divers." -#: include/vlc_config_cat.h:128 -msgid "General input settings. Use with care." -msgstr "R?glages de lecture. A utiliser avec pr?caution." +#: include/vlc_config_cat.h:120 +msgid "General Input" +msgstr "Entr?e" + +#: include/vlc_config_cat.h:121 +msgid "General input settings. Use with care..." +msgstr "R?glages g?n?raux de lecture. ? utiliser avec pr?caution." -#: include/vlc_config_cat.h:131 src/libvlc-module.c:1760 +#: include/vlc_config_cat.h:124 src/libvlc-module.c:1838 msgid "Stream output" msgstr "Flux de sortie" -#: include/vlc_config_cat.h:133 +#: include/vlc_config_cat.h:126 msgid "" -"Stream output is what allows VLC to act as a streaming server or to save " -"incoming streams.\n" +"Stream output settings are used when acting as a streaming server or when " +"saving incoming streams.\n" "Streams are first muxed and then sent through an \"access output\" module " "that can either save the stream to a file, or stream it (UDP, HTTP, RTP/" "RTSP).\n" @@ -265,21 +259,21 @@ msgid "" msgstr "" "Le m?canisme de flux de sortie permet ? VLC d?agir comme serveur de " "diffusion ou de sauvegarder des flux entrants.\n" -"Les flux sont multiplex?s et envoy?s dans un ? module de sortie ?, permettant " +"Les flux sont multiplex?s et envoy?s dans un ??module de sortie??, permettant " "soit de sauvegarder le flux dans un fichier, soit de le diffuser (par UDP, " "HTTP, RTP/RTSP?).\n" "Les modules du flux de sortie permettent de r?aliser du traitement sur le " "flux (transcodage, duplication?)." -#: include/vlc_config_cat.h:141 +#: include/vlc_config_cat.h:134 msgid "General stream output settings" msgstr "Param?tres g?n?raux du flux de sortie" -#: include/vlc_config_cat.h:143 +#: include/vlc_config_cat.h:136 msgid "Muxers" msgstr "Multiplexeurs" -#: include/vlc_config_cat.h:145 +#: include/vlc_config_cat.h:138 msgid "" "Muxers create the encapsulation formats that are used to put all the " "elementary streams (video, audio, ...) together. This setting allows you to " @@ -293,11 +287,11 @@ msgstr "" "Vous pouvez ?galement r?gler les param?tres par d?faut de chaque " "multiplexeur." -#: include/vlc_config_cat.h:151 +#: include/vlc_config_cat.h:144 msgid "Access output" msgstr "Modules de sortie" -#: include/vlc_config_cat.h:153 +#: include/vlc_config_cat.h:146 msgid "" "Access output modules control the ways the muxed streams are sent. This " "setting allows you to always force a specific access output method. You " @@ -310,43 +304,42 @@ msgstr "" "Vous pouvez ?galement r?gler les param?tres par d?faut de chaque module de " "sortie." -#: include/vlc_config_cat.h:158 +#: include/vlc_config_cat.h:151 msgid "Packetizers" msgstr "Empaqueteurs" -#: include/vlc_config_cat.h:160 +#: include/vlc_config_cat.h:153 msgid "" "Packetizers are used to \"preprocess\" the elementary streams before muxing. " "This setting allows you to always force a packetizer. You should probably " "not do that.\n" "You can also set default parameters for each packetizer." msgstr "" -"Les empaqueteurs permettent de ? pr?-traiter ? un flux ?l?mentaire avant son " +"Les empaqueteurs permettent de ??pr?-traiter?? un flux ?l?mentaire avant son " "multiplexage. Ce r?glage vous permet de toujours forcer un empaqueteur. Ce " "n?est probablement pas souhaitable.\n" "Vous pouvez ?galement r?gler les param?tres par d?faut de chaque empaqueteur." -#: include/vlc_config_cat.h:166 +#: include/vlc_config_cat.h:159 msgid "Sout stream" msgstr "Flux de sortie" -#: include/vlc_config_cat.h:167 +#: include/vlc_config_cat.h:160 msgid "" "Sout stream modules allow to build a sout processing chain. Please refer to " "the Streaming Howto for more information. You can configure default options " "for each sout stream module here." msgstr "" "Les modules de flux de sortie vous permettent de b?tir une cha?ne de " -"traitement pour le flux de sortie. Merci de bien vouloir lire le ? Streaming " -"Howto ? pour plus de d?tails. Vous pouvez configurer les options par d?faut " +"traitement pour le flux de sortie. Merci de bien vouloir lire le ??Streaming " +"Howto?? pour plus de d?tails. Vous pouvez configurer les options par d?faut " "pour chaque module de flux de sortie ici." -#: include/vlc_config_cat.h:172 modules/services_discovery/sap.c:127 -#: modules/services_discovery/sap.c:323 +#: include/vlc_config_cat.h:165 modules/services_discovery/sap.c:124 msgid "SAP" msgstr "SAP" -#: include/vlc_config_cat.h:174 +#: include/vlc_config_cat.h:167 msgid "" "SAP is a way to publically announce streams that are being sent using " "multicast UDP or RTP." @@ -354,26 +347,27 @@ msgstr "" "SAP est une m?thode permettant d?annoncer publiquement des flux envoy?s par " "UDP ou RTP multicast." -#: include/vlc_config_cat.h:177 +#: include/vlc_config_cat.h:170 msgid "VOD" msgstr "VOD" -#: include/vlc_config_cat.h:178 +#: include/vlc_config_cat.h:171 msgid "VLC's implementation of Video On Demand" msgstr "Vid?o ? la demande" -#: include/vlc_config_cat.h:182 src/libvlc-module.c:1902 -#: src/playlist/engine.c:113 modules/demux/playlist/playlist.c:66 +#: include/vlc_config_cat.h:175 src/libvlc-module.c:1972 +#: src/playlist/engine.c:118 modules/demux/playlist/playlist.c:66 #: modules/demux/playlist/playlist.c:67 #: modules/gui/beos/InterfaceWindow.cpp:232 -#: modules/gui/beos/InterfaceWindow.cpp:326 modules/gui/macosx/intf.m:494 +#: modules/gui/beos/InterfaceWindow.cpp:326 modules/gui/macosx/intf.m:504 #: modules/gui/pda/pda_interface.c:1262 -#: modules/gui/qt4/dialogs/playlist.cpp:48 -#: modules/gui/qt4/main_interface.cpp:120 +#: modules/gui/qt4/components/playlist/playlist.cpp:121 +#: modules/gui/qt4/dialogs/playlist.cpp:43 +#: modules/gui/qt4/main_interface.cpp:135 msgid "Playlist" msgstr "Liste de lecture" -#: include/vlc_config_cat.h:183 +#: include/vlc_config_cat.h:176 msgid "" "Settings related to playlist behaviour (e.g. playback mode) and to modules " "that automatically add items to the playlist (\"service discovery\" modules)." @@ -382,16 +376,16 @@ msgstr "" "exemple) et aux modules de d?couverte de services (modules qui ajoutent " "automatiquement des ?l?ments ? la liste de lecture)." -#: include/vlc_config_cat.h:187 +#: include/vlc_config_cat.h:180 msgid "General playlist behaviour" msgstr "Comportement g?n?ral de la liste de lecture" -#: include/vlc_config_cat.h:188 modules/gui/macosx/playlist.m:447 -#: modules/gui/macosx/playlist.m:448 +#: include/vlc_config_cat.h:181 modules/gui/macosx/playlist.m:455 +#: modules/gui/macosx/playlist.m:456 msgid "Services discovery" msgstr "D?couverte de services" -#: include/vlc_config_cat.h:189 +#: include/vlc_config_cat.h:182 msgid "" "Services discovery modules are facilities that automatically add items to " "playlist." @@ -399,80 +393,75 @@ msgstr "" "Les modules de d?couverte de services ajoutent automatiquement des ?l?ments " "? la liste de lecture." -#: include/vlc_config_cat.h:193 src/libvlc-module.c:1719 +#: include/vlc_config_cat.h:186 src/libvlc-module.c:1788 msgid "Advanced" msgstr "Avanc?" -#: include/vlc_config_cat.h:194 -msgid "Advanced settings. Use with care." -msgstr "R?glages avanc?s. A utiliser avec pr?caution." +#: include/vlc_config_cat.h:187 +msgid "Advanced settings. Use with care..." +msgstr "R?glages avanc?s. ? utiliser avec pr?caution." -#: include/vlc_config_cat.h:196 +#: include/vlc_config_cat.h:189 msgid "CPU features" msgstr "Capacit?s CPU" -#: include/vlc_config_cat.h:197 +#: include/vlc_config_cat.h:190 msgid "" -"You can choose to disable some CPU accelerations here. You should probably " -"not change these settings." +"You can choose to disable some CPU accelerations here. Use with extreme care!" msgstr "" "Vous pouvez choisir de d?sactiver des acc?l?rations CPU. Vous ne devriez " "probablement pas modifier ceci." -#: include/vlc_config_cat.h:200 +#: include/vlc_config_cat.h:193 msgid "Advanced settings" msgstr "Options avanc?es" -#: include/vlc_config_cat.h:201 -msgid "Other advanced settings" -msgstr "Autres options avanc?es" - -#: include/vlc_config_cat.h:203 modules/gui/macosx/open.m:172 -#: modules/gui/macosx/open.m:428 modules/gui/macosx/simple_prefs.m:255 +#: include/vlc_config_cat.h:198 modules/gui/macosx/open.m:171 +#: modules/gui/macosx/open.m:444 modules/gui/macosx/simple_prefs.m:252 #: modules/gui/pda/pda_interface.c:546 modules/gui/qt4/ui/sprefs_input.ui:49 msgid "Network" msgstr "R?seau" -#: include/vlc_config_cat.h:204 +#: include/vlc_config_cat.h:199 msgid "These modules provide network functions to all other parts of VLC." msgstr "" "Ces modules fournissent les fonctions d?acc?s au r?seau ? tous les autres " "modules de VLC." -#: include/vlc_config_cat.h:209 +#: include/vlc_config_cat.h:202 msgid "Chroma modules settings" msgstr "Param?tres des modules de chroma" -#: include/vlc_config_cat.h:210 +#: include/vlc_config_cat.h:203 msgid "These settings affect chroma transformation modules." msgstr "" "Ces param?tres concernent les modules de conversion de palettes de couleurs." -#: include/vlc_config_cat.h:212 +#: include/vlc_config_cat.h:205 msgid "Packetizer modules settings" msgstr "Param?tres des modules d?empaquetage" -#: include/vlc_config_cat.h:216 +#: include/vlc_config_cat.h:209 msgid "Encoders settings" msgstr "Param?tres des encodeurs" -#: include/vlc_config_cat.h:218 +#: include/vlc_config_cat.h:211 msgid "These are general settings for video/audio/subtitles encoding modules." msgstr "Voici les param?tres pour les modules d?encodage." -#: include/vlc_config_cat.h:221 +#: include/vlc_config_cat.h:214 msgid "Dialog providers settings" msgstr "Param?tres des fournisseurs de dialogues" -#: include/vlc_config_cat.h:223 +#: include/vlc_config_cat.h:216 msgid "Dialog providers can be configured here." msgstr "Les fournisseurs de dialogue peuvent ?tre configur?s ici" -#: include/vlc_config_cat.h:225 +#: include/vlc_config_cat.h:218 msgid "Subtitle demuxer settings" msgstr "Param?tres de sous-titres" -#: include/vlc_config_cat.h:227 +#: include/vlc_config_cat.h:220 msgid "" "In this section you can force the behavior of the subtitle demuxer, for " "example by setting the subtitles type or file name." @@ -480,15 +469,15 @@ msgstr "" "Dans cette section, vous pouvez forcer le comportement du lecteur de sous-" "titres, par exemple en r?glant le type ou le nom du fichier des sous-titres." -#: include/vlc_config_cat.h:234 +#: include/vlc_config_cat.h:227 msgid "No help available" msgstr "Aucune aide disponible" -#: include/vlc_config_cat.h:235 +#: include/vlc_config_cat.h:228 msgid "There is no help available for these modules." msgstr "Aucune aide n?est disponible pour ces modules." -#: include/vlc_interface.h:136 +#: include/vlc_interface.h:129 msgid "" "\n" "Warning: if you can't access the GUI anymore, open a command-line window, go " @@ -496,8 +485,8 @@ msgid "" msgstr "" "\n" "Attention : si vous n?avez plus acc?s ? l?interface graphique, ouvrez une " -"invite de commande, allez dans le r?pertoire o? vous avez install? VLC, et " -"lancez ? vlc -I qt ?.\n" +"invite de commande, allez dans le dossier o? vous avez install? VLC, et " +"lancez ??vlc -I qt??.\n" #: include/vlc_intf_strings.h:34 msgid "Quick &Open File..." @@ -505,58 +494,58 @@ msgstr "&Ouvrir un fichier?" #: include/vlc_intf_strings.h:35 msgid "&Advanced Open..." -msgstr "O&uvrir?" +msgstr "O&uvrir mode avanc??" #: include/vlc_intf_strings.h:36 msgid "Open &Directory..." -msgstr "Ouvrir un r?p&ertoire?\tCtrl-E" +msgstr "Ouvrir un r?p&ertoire?" #: include/vlc_intf_strings.h:38 msgid "Select one or more files to open" msgstr "S?lectionnez un ou plusieurs fichiers ? ouvrir" #: include/vlc_intf_strings.h:42 -msgid "Media &Information..." -msgstr "&Informations sur le m?dia?" +msgid "Media &Information" +msgstr "M?ta-&donn?es" #: include/vlc_intf_strings.h:43 -msgid "&Codec Information..." -msgstr "Informations sur les &codecs?" +msgid "&Codec Information" +msgstr "Informations sur les &codecs" #: include/vlc_intf_strings.h:44 -msgid "&Messages..." -msgstr "&Messages?" +msgid "&Messages" +msgstr "&Messages" #: include/vlc_intf_strings.h:45 -msgid "&Extended Settings..." -msgstr "Param?tres ?t&endus?" +msgid "&Extended Settings" +msgstr "Param?tr&es ?t&endus" #: include/vlc_intf_strings.h:46 -msgid "Go to Specific &Time..." -msgstr "Aller directement ? un &temps sp?cifi?..." +msgid "Go to Specific &Time" +msgstr "Aller directement ? un &temps sp?cifi?" -#: include/vlc_intf_strings.h:47 -msgid "&Bookmarks..." -msgstr "Signets..." +#: include/vlc_intf_strings.h:47 modules/gui/qt4/menus.cpp:603 +msgid "&Bookmarks" +msgstr "&Signets" #: include/vlc_intf_strings.h:48 -msgid "&VLM Configuration..." -msgstr "Configuration de &VLM..." +msgid "&VLM Configuration" +msgstr "Configuration de &VLM" #: include/vlc_intf_strings.h:50 -msgid "&About..." -msgstr "? &propos..." +msgid "&About" +msgstr "? &propos" #: include/vlc_intf_strings.h:53 modules/control/rc.c:75 -#: modules/gui/macosx/embeddedwindow.m:67 -#: modules/gui/macosx/embeddedwindow.m:157 modules/gui/macosx/intf.m:487 -#: modules/gui/macosx/intf.m:531 modules/gui/macosx/intf.m:610 -#: modules/gui/macosx/intf.m:617 modules/gui/macosx/intf.m:1799 -#: modules/gui/macosx/intf.m:1800 modules/gui/macosx/intf.m:1801 -#: modules/gui/macosx/intf.m:1802 modules/gui/macosx/playlist.m:439 +#: modules/gui/macosx/embeddedwindow.m:51 +#: modules/gui/macosx/embeddedwindow.m:141 modules/gui/macosx/intf.m:497 +#: modules/gui/macosx/intf.m:541 modules/gui/macosx/intf.m:627 +#: modules/gui/macosx/intf.m:634 modules/gui/macosx/intf.m:1846 +#: modules/gui/macosx/intf.m:1847 modules/gui/macosx/intf.m:1848 +#: modules/gui/macosx/intf.m:1849 modules/gui/macosx/playlist.m:443 #: modules/gui/pda/pda_interface.c:260 modules/gui/pda/pda_interface.c:261 -#: modules/gui/qt4/menus.cpp:650 modules/gui/qt4/menus.cpp:654 -#: modules/gui/qt4/menus.cpp:657 +#: modules/gui/qt4/menus.cpp:713 modules/gui/qt4/menus.cpp:717 +#: modules/gui/qt4/menus.cpp:720 msgid "Play" msgstr "Lire" @@ -564,7 +553,7 @@ msgstr "Lire" msgid "Fetch Information" msgstr "R?cup?rer des informations" -#: include/vlc_intf_strings.h:55 modules/gui/macosx/playlist.m:440 +#: include/vlc_intf_strings.h:55 modules/gui/macosx/playlist.m:444 #: modules/gui/pda/pda_interface.c:1252 #: modules/gui/qt4/dialogs/bookmarks.cpp:46 #: modules/gui/qt4/ui/podcast_configuration.ui:59 @@ -572,7 +561,7 @@ msgstr "R?cup?rer des informations" msgid "Delete" msgstr "Supprimer" -#: include/vlc_intf_strings.h:56 modules/gui/macosx/playlist.m:443 +#: include/vlc_intf_strings.h:56 msgid "Information..." msgstr "Information?" @@ -594,9 +583,9 @@ msgstr "Enregistrer?" #: include/vlc_intf_strings.h:61 msgid "Open Folder..." -msgstr "Ouvrir un r?pertoire?" +msgstr "Ouvrir un dossier?" -#: include/vlc_intf_strings.h:65 src/libvlc-module.c:1121 +#: include/vlc_intf_strings.h:65 src/libvlc-module.c:1169 msgid "Repeat all" msgstr "Tout r?p?ter" @@ -608,14 +597,14 @@ msgstr "R?p?ter un morceau" msgid "No repeat" msgstr "Ne pas r?p?ter" -#: include/vlc_intf_strings.h:69 src/libvlc-module.c:1322 -#: modules/gui/macosx/controls.m:896 modules/gui/macosx/intf.m:537 +#: include/vlc_intf_strings.h:69 src/libvlc-module.c:1379 +#: modules/gui/macosx/controls.m:958 modules/gui/macosx/intf.m:547 msgid "Random" msgstr "Al?atoire" #: include/vlc_intf_strings.h:70 msgid "Random off" -msgstr "Non Al?atoire" +msgstr "Non al?atoire" #: include/vlc_intf_strings.h:72 msgid "Add to playlist" @@ -627,23 +616,23 @@ msgstr "Ajouter ? la Biblioth?que" #: include/vlc_intf_strings.h:75 msgid "Add file..." -msgstr "Ajouter un fichier..." +msgstr "Ajouter un fichier?" #: include/vlc_intf_strings.h:76 msgid "Advanced open..." -msgstr "Ouvrir?" +msgstr "Ouvrir avanc??" #: include/vlc_intf_strings.h:77 msgid "Add directory..." -msgstr "Ajouter &R?pertoire?" +msgstr "Ajouter un dossier?" #: include/vlc_intf_strings.h:79 msgid "Save Playlist to &File..." -msgstr "Enregistrer la liste de lecture?" +msgstr "&Enregistrer la liste de lecture?" #: include/vlc_intf_strings.h:80 -msgid "&Load Playlist File..." -msgstr "Charger une &liste de lecture?" +msgid "Open Play&list..." +msgstr "&Liste de lecture?" #: include/vlc_intf_strings.h:82 msgid "Search" @@ -654,14 +643,14 @@ msgid "Search Filter" msgstr "Filtre de recherche" #: include/vlc_intf_strings.h:85 -msgid "Additional &Sources" -msgstr "&Sources suppl?mentaires" +msgid "&Services Discovery" +msgstr "D?couverte de &services" #: include/vlc_intf_strings.h:89 msgid "" "Some options are available but hidden. Check \"Advanced options\" to see " "them." -msgstr "Des options sont cach?s. Cochez ? Options avanc?es ? pour les voir." +msgstr "Des options sont cach?es. Cochez ??Options avanc?es?? pour les voir." #: include/vlc_intf_strings.h:94 modules/gui/macosx/extended.m:77 msgid "Image clone" @@ -683,17 +672,17 @@ msgstr "" "Grossit une partie de la vid?o. Vous pouvez choisir la partie de l?image ? " "grossir." -#: include/vlc_intf_strings.h:101 modules/gui/qt4/ui/video_effects.ui:545 +#: include/vlc_intf_strings.h:101 modules/gui/qt4/ui/video_effects.ui:551 msgid "Waves" msgstr "Ondes" #: include/vlc_intf_strings.h:102 msgid "\"Waves\" video distortion effect" -msgstr "Ajoute des effets de distorsion ? Ondulatoires ?" +msgstr "Ajoute des effets de distorsion ??Ondulatoires??" #: include/vlc_intf_strings.h:104 msgid "\"Water surface\" video distortion effect" -msgstr "Ajoute des effets de distorsion ? Aquatiques ?" +msgstr "Ajoute des effets de distorsion ??Aquatiques??" #: include/vlc_intf_strings.h:106 msgid "Image colors inversion" @@ -708,7 +697,7 @@ msgid "" "Create a \"puzzle game\" with the video.\n" "The video gets split in parts that you must sort." msgstr "" -"Cr?e un \"jeu de puzzle\" avec la vid?o.\n" +"Cr?e un ??jeu de puzzle?? avec la vid?o.\n" "La vid?o est separ?e en morceaux que vous devez trier." #: include/vlc_intf_strings.h:113 @@ -716,7 +705,7 @@ msgid "" "\"Edge detection\" video distortion effect.\n" "Try changing the various settings for different effects" msgstr "" -"Effet de d?formation vid?o \"D?tection des bords\".\n" +"Effet de d?formation vid?o ??D?tection des bords??.\n" "Essayez de changez les r?glages pour en voir les effets" #: include/vlc_intf_strings.h:116 @@ -725,7 +714,7 @@ msgid "" "white, except the parts that are of the color that you select in the " "settings." msgstr "" -"Effet de \"D?tection des couleurs\". L?image est enti?rement en noir et " +"Effet de ??D?tection des couleurs??. L?image est enti?rement en noir et " "blanc, sauf les parties qui sont de la couleur que vous avez choisi dans les " "r?glages." @@ -757,7 +746,36 @@ msgid "" "design skins, to translate the documentation, to test and to code. You can " "also give funds and material to help us. And of course, you can promote VLC media player.

" -msgstr "s" +msgstr "" +"

Bienvenue sur l'aide du lecteur " +"multim?dia VLC

Documentation

Vous pouvez trouver la " +"documentation de VLC sur le wiki du " +"site de VideoLAN.

Si vous ?tes un nouveau venu au lecteur multim?dia " +"VLC, lisez le document
Introduction au lecteur multim?dia VLC.

Vous y trouverez des informations sur l'utilisation du lecteur dans le " +"document
\"Comment lire des fichiers avec le lecteur multim?dia VLC\".

Pour les diff?rentes t?ches de sauvegarde, de conversion, de " +"transcodage, d'encodage, de multiplexage et de diffusion, vous pouvez " +"trouver des informations utiles dans la Documentation sur la diffusion.

Si " +"vous n'?tes pas s?r ? propos d'un terme, consultez le savoir de base.

Pour comprendre les " +"raccourcis clavier principaux, lisez la page sur les raccourcis.

Aide

Avant de poser une " +"question, r?f?rez vous d'abord ? la FAQ.

Vouxs pouvez ensuite demander " +"(et apporter) de l'aide sur les Forums, les listes " +"de diffusion ou notre cannal irc ( #videolan sur irc.freenode.net ).

Contribuer " +"au projet

Vous pouvez aider le projet VideoLAN en donnant de votre " +"temps pour aider la communaut?, pour concevoir des interfaces, pour traduire " +"la documentation, pour tester et pour coder. Vous pouvez aussi donner de " +"l'argent ou du mat?riel pour nous aider. Et bien s?r, vous pouvez " +"promouvoir le lecteur multim?dia VLC.

" #: src/audio_output/filters.c:159 src/audio_output/filters.c:206 #: src/audio_output/filters.c:229 @@ -770,75 +788,75 @@ msgstr "Le filtrage audio a ?chou?" msgid "The maximum number of filters (%d) was reached." msgstr "Le nombre maximum de filtres (%d) a ?t? atteint." -#: src/audio_output/input.c:98 src/audio_output/input.c:144 -#: src/input/es_out.c:459 src/libvlc-module.c:562 -#: src/video_output/video_output.c:393 modules/video_filter/postproc.c:222 +#: src/audio_output/input.c:114 src/audio_output/input.c:160 +#: src/input/es_out.c:889 src/libvlc-module.c:598 +#: src/video_output/video_output.c:492 modules/video_filter/postproc.c:224 msgid "Disable" msgstr "D?sactiver" -#: src/audio_output/input.c:100 modules/visualization/visual/visual.c:132 +#: src/audio_output/input.c:116 modules/visualization/visual/visual.c:131 msgid "Spectrometer" msgstr "Analyseur de spectre 2" -#: src/audio_output/input.c:102 +#: src/audio_output/input.c:118 msgid "Scope" msgstr "Oscilloscope" -#: src/audio_output/input.c:104 +#: src/audio_output/input.c:120 msgid "Spectrum" msgstr "Analyseur de spectre" -#: src/audio_output/input.c:106 +#: src/audio_output/input.c:122 msgid "Vu meter" -msgstr "Vu meter" +msgstr "Vu m?tre" -#: src/audio_output/input.c:141 modules/audio_filter/equalizer.c:74 -#: modules/gui/macosx/equalizer.m:156 modules/gui/macosx/equalizer.m:170 +#: src/audio_output/input.c:157 modules/audio_filter/equalizer.c:74 +#: modules/gui/macosx/equalizer.m:153 modules/gui/macosx/equalizer.m:167 msgid "Equalizer" msgstr "?galiseur" -#: src/audio_output/input.c:163 src/libvlc-module.c:288 +#: src/audio_output/input.c:179 src/libvlc-module.c:298 msgid "Audio filters" msgstr "Filtres audio" -#: src/audio_output/input.c:185 +#: src/audio_output/input.c:201 msgid "Replay gain" msgstr "Replay gain" #: src/audio_output/output.c:102 src/audio_output/output.c:129 -#: modules/access/vcdx/info.c:121 modules/gui/macosx/intf.m:556 -#: modules/gui/macosx/intf.m:557 +#: modules/access/vcdx/info.c:121 modules/gui/macosx/intf.m:566 +#: modules/gui/macosx/intf.m:567 msgid "Audio Channels" msgstr "Canaux audio" #: src/audio_output/output.c:105 src/audio_output/output.c:140 -#: modules/access/v4l2/v4l2.c:208 modules/access/v4l2/v4l2.c:259 -#: modules/access/v4l.c:129 modules/audio_output/alsa.c:195 -#: modules/audio_output/alsa.c:226 modules/audio_output/directx.c:518 -#: modules/audio_output/oss.c:207 modules/audio_output/portaudio.c:407 -#: modules/audio_output/sdl.c:184 modules/audio_output/sdl.c:201 -#: modules/audio_output/waveout.c:517 modules/codec/twolame.c:71 +#: modules/access/alsa.c:70 modules/access/oss.c:60 modules/access/v4l2.c:229 +#: modules/audio_output/alsa.c:196 modules/audio_output/alsa.c:227 +#: modules/audio_output/directx.c:559 modules/audio_output/oss.c:208 +#: modules/audio_output/portaudio.c:403 modules/audio_output/sdl.c:184 +#: modules/audio_output/sdl.c:201 modules/audio_output/waveout.c:519 +#: modules/codec/twolame.c:71 msgid "Stereo" msgstr "St?r?o" #: src/audio_output/output.c:107 src/audio_output/output.c:143 -#: src/libvlc-module.c:375 src/libvlc-module.c:424 +#: src/libvlc-module.c:392 src/libvlc-module.c:441 #: modules/audio_filter/channel_mixer/mono.c:101 modules/codec/dvbsub.c:75 -#: modules/codec/subtitles/subsdec.c:102 modules/codec/zvbi.c:78 -#: modules/control/gestures.c:92 modules/gui/fbosd.c:164 +#: modules/codec/subtitles/subsdec.c:102 modules/codec/zvbi.c:79 +#: modules/control/gestures.c:92 modules/gui/fbosd.c:162 #: modules/gui/qt4/ui/video_effects.ui:352 -#: modules/gui/qt4/ui/video_effects.ui:861 -#: modules/gui/qt4/ui/video_effects.ui:929 modules/video_filter/logo.c:100 +#: modules/gui/qt4/ui/video_effects.ui:867 +#: modules/gui/qt4/ui/video_effects.ui:935 modules/video_filter/logo.c:100 #: modules/video_filter/marq.c:136 modules/video_filter/mosaic.c:172 #: modules/video_filter/osdmenu.c:85 modules/video_filter/rss.c:171 msgid "Left" msgstr "Gauche" #: src/audio_output/output.c:109 src/audio_output/output.c:145 -#: src/libvlc-module.c:375 src/libvlc-module.c:424 +#: src/libvlc-module.c:392 src/libvlc-module.c:441 #: modules/audio_filter/channel_mixer/mono.c:101 modules/codec/dvbsub.c:75 -#: modules/codec/subtitles/subsdec.c:102 modules/codec/zvbi.c:78 -#: modules/control/gestures.c:92 modules/gui/fbosd.c:164 +#: modules/codec/subtitles/subsdec.c:102 modules/codec/zvbi.c:79 +#: modules/control/gestures.c:92 modules/gui/fbosd.c:162 #: modules/gui/qt4/ui/video_effects.ui:369 modules/video_filter/logo.c:100 #: modules/video_filter/marq.c:136 modules/video_filter/mosaic.c:172 #: modules/video_filter/osdmenu.c:85 modules/video_filter/rss.c:171 @@ -851,413 +869,420 @@ msgstr "Dolby Surround" #: src/audio_output/output.c:147 msgid "Reverse stereo" -msgstr "St?r?o invers?" +msgstr "St?r?o invers?e" -#: src/config/file.c:584 +#: src/config/file.c:579 msgid "key" msgstr "Touche" -#: src/config/file.c:593 +#: src/config/file.c:588 msgid "boolean" msgstr "Bool?en" -#: src/config/file.c:593 src/libvlc.c:1578 +#: src/config/file.c:588 src/libvlc.c:1649 msgid "integer" msgstr "Entier" -#: src/config/file.c:602 src/libvlc.c:1607 +#: src/config/file.c:597 src/libvlc.c:1678 msgid "float" msgstr "Flottant" -#: src/config/file.c:625 src/libvlc.c:1557 +#: src/config/file.c:620 src/libvlc.c:1628 msgid "string" msgstr "Cha?ne" -#: src/control/media_list.c:226 src/playlist/engine.c:129 -#: src/playlist/loadsave.c:144 +#: src/control/media_list.c:226 src/playlist/engine.c:134 +#: src/playlist/loadsave.c:165 msgid "Media Library" msgstr "Biblioth?que" -#: src/extras/getopt.c:633 +#: src/extras/getopt.c:634 #, c-format msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: l?option ? %s ? est ambigu?\n" +msgstr "%s?: l?option ??%s?? est ambigu?\n" -#: src/extras/getopt.c:658 +#: src/extras/getopt.c:659 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: l?option ? --%s ? n?accepte pas d?arguments\n" +msgstr "%s?: l?option ??--%s?? n?accepte pas d?arguments\n" -#: src/extras/getopt.c:663 +#: src/extras/getopt.c:664 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: l?option ? %c%s ? n?accepte pas d?arguments\n" +msgstr "%s?: l?option ??%c%s?? n?accepte pas d?arguments\n" -#: src/extras/getopt.c:681 src/extras/getopt.c:857 +#: src/extras/getopt.c:682 src/extras/getopt.c:858 #, c-format msgid "%s: option `%s' requires an argument\n" -msgstr "%s: l?option ? %s ? requiert un argument\n" +msgstr "%s?: l?option ??%s?? requiert un argument\n" -#: src/extras/getopt.c:710 src/extras/getopt.c:716 +#: src/extras/getopt.c:711 src/extras/getopt.c:717 #, c-format msgid "%s: unrecognized option `%s%s'\n" -msgstr "%s: option non reconnue ? %s%s ?\n" +msgstr "%s?: option non reconnue ??%s%s??\n" -#: src/extras/getopt.c:743 +#: src/extras/getopt.c:744 #, c-format msgid "%s: illegal option -- %c\n" -msgstr "%s: option incorrecte -- %c\n" +msgstr "%s?: option incorrecte -- %c\n" -#: src/extras/getopt.c:746 +#: src/extras/getopt.c:747 #, c-format msgid "%s: invalid option -- %c\n" -msgstr "%s: option invalide -- %c\n" +msgstr "%s?: option invalide -- %c\n" -#: src/extras/getopt.c:776 src/extras/getopt.c:906 +#: src/extras/getopt.c:777 src/extras/getopt.c:907 #, c-format msgid "%s: option requires an argument -- %c\n" -msgstr "%s: l?option requiert un argument -- %c\n" +msgstr "%s?: l?option requiert un argument -- %c\n" -#: src/extras/getopt.c:823 +#: src/extras/getopt.c:824 #, c-format msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: l?option ? -W %s ? est ambigu?\n" +msgstr "%s?: l?option ??-W %s?? est ambigu?\n" -#: src/extras/getopt.c:841 +#: src/extras/getopt.c:842 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: l?option ? -W %s ? n?accepte pas d?argument\n" +msgstr "%s?: l?option ??-W %s?? n?accepte pas d?argument\n" -#: src/input/control.c:323 +#: src/input/control.c:200 #, c-format msgid "Bookmark %i" msgstr "Signet %i" -#: src/input/decoder.c:111 -msgid "No suitable decoder module" -msgstr "Pas de d?codeur appropri? pour le format" - -#: src/input/decoder.c:112 -#, c-format -msgid "" -"VLC does not support the audio or video format \"%4.4s\". Unfortunately " -"there is no way for you to fix this." -msgstr "" -"VLC ne supporte probablement pas le format audio ou vid?o \"%4.4s\"." -"Malheureusement il n?y a rien ? faire." - -#: src/input/decoder.c:167 src/input/decoder.c:180 src/input/decoder.c:382 -#: modules/codec/avcodec/encoder.c:228 modules/codec/avcodec/encoder.c:236 -#: modules/codec/avcodec/encoder.c:248 modules/codec/avcodec/encoder.c:663 -#: modules/codec/avcodec/encoder.c:672 modules/stream_out/es.c:373 +#: src/input/decoder.c:279 src/input/decoder.c:292 src/input/decoder.c:444 +#: modules/codec/avcodec/encoder.c:226 modules/codec/avcodec/encoder.c:234 +#: modules/codec/avcodec/encoder.c:250 modules/codec/avcodec/encoder.c:680 +#: modules/codec/avcodec/encoder.c:689 modules/stream_out/es.c:373 #: modules/stream_out/es.c:388 msgid "Streaming / Transcoding failed" msgstr "La diffusion / le transcodage a ?chou?" -#: src/input/decoder.c:168 +#: src/input/decoder.c:280 msgid "VLC could not open the packetizer module." msgstr "VLC n'a pas pu ouvrir le module d'empaquetage" -#: src/input/decoder.c:181 src/input/decoder.c:383 +#: src/input/decoder.c:293 src/input/decoder.c:445 msgid "VLC could not open the decoder module." msgstr "VLC n?a pas pu ouvrir le module de d?codage" -#: src/input/es_out.c:480 src/input/es_out.c:485 src/libvlc-module.c:319 -#: modules/access/cdda/info.c:392 modules/access/vcdx/access.c:477 +#: src/input/decoder.c:678 +msgid "No suitable decoder module" +msgstr "Pas de d?codeur appropri? pour le format" + +#: src/input/decoder.c:679 +#, c-format +msgid "" +"VLC does not support the audio or video format \"%4.4s\". Unfortunately " +"there is no way for you to fix this." +msgstr "" +"VLC ne supporte probablement pas le format audio ou vid?o ??%4.4s??." +"Malheureusement il n?y a rien ? faire." + +#: src/input/es_out.c:910 src/input/es_out.c:915 src/libvlc-module.c:336 +#: modules/access/cdda/info.c:393 modules/access/vcdx/access.c:477 #: modules/access/vcdx/info.c:290 modules/access/vcdx/info.c:291 -#: modules/gui/qt4/components/open_panels.cpp:341 +#: modules/gui/qt4/components/open_panels.cpp:348 msgid "Track" msgstr "Piste" -#: src/input/es_out.c:673 +#: src/input/es_out.c:1098 #, c-format msgid "%s [%s %d]" msgstr "%s.[%s.%d]" -#: src/input/es_out.c:673 src/input/es_out.c:678 src/input/var.c:161 -#: src/libvlc-module.c:595 modules/gui/macosx/intf.m:543 -#: modules/gui/macosx/intf.m:544 +#: src/input/es_out.c:1098 src/input/es_out.c:1103 src/input/var.c:173 +#: src/libvlc-module.c:631 modules/gui/macosx/intf.m:553 +#: modules/gui/macosx/intf.m:554 msgid "Program" msgstr "Programme" -#: src/input/es_out.c:1466 modules/demux/ty.c:771 -msgid "Closed captions 1" -msgstr "" - -#: src/input/es_out.c:1467 modules/demux/ty.c:772 -msgid "Closed captions 2" -msgstr "" - -#: src/input/es_out.c:1468 modules/demux/ty.c:773 -msgid "Closed captions 3" -msgstr "" - -#: src/input/es_out.c:1469 modules/demux/ty.c:774 -msgid "Closed captions 4" -msgstr "" +#: src/input/es_out.c:1892 +#, c-format +msgid "Closed captions %u" +msgstr "Sous-titrage %u" -#: src/input/es_out.c:2046 modules/codec/faad.c:386 +#: src/input/es_out.c:2582 #, c-format msgid "Stream %d" msgstr "Flux %d" -#: src/input/es_out.c:2049 modules/gui/macosx/wizard.m:383 -#: modules/gui/qt4/ui/sout.ui:671 modules/gui/qt4/ui/sout.ui:758 +#: src/input/es_out.c:2599 src/input/es_out.c:2707 +msgid "Subtitle" +msgstr "Sous-titres " + +#: src/input/es_out.c:2607 src/input/es_out.c:2627 src/input/es_out.c:2676 +#: src/input/es_out.c:2707 modules/gui/macosx/output.m:153 +#: modules/gui/qt4/ui/sprefs_audio.ui:186 +msgid "Type" +msgstr "Type " + +#: src/input/es_out.c:2610 +msgid "Original ID" +msgstr "ID original " + +#: src/input/es_out.c:2613 modules/gui/macosx/wizard.m:385 msgid "Codec" -msgstr "Codec" +msgstr "Codec " -#: src/input/es_out.c:2052 src/input/meta.c:63 src/libvlc-module.c:177 +#: src/input/es_out.c:2617 src/input/meta.c:50 src/libvlc-module.c:187 #: modules/gui/beos/InterfaceWindow.cpp:279 -#: modules/gui/macosx/simple_prefs.m:266 +#: modules/gui/macosx/simple_prefs.m:261 #: modules/gui/qt4/ui/sprefs_interface.ui:25 msgid "Language" -msgstr "Langue" +msgstr "Langue " -#: src/input/es_out.c:2060 src/input/es_out.c:2088 src/input/es_out.c:2115 -#: modules/gui/macosx/output.m:153 modules/gui/qt4/ui/sprefs_audio.ui:186 -msgid "Type" -msgstr "Type" +#: src/input/es_out.c:2620 src/input/meta.c:45 +#: modules/gui/macosx/bookmarks.m:94 modules/gui/qt4/dialogs/bookmarks.cpp:66 +msgid "Description" +msgstr "Description " -#: src/input/es_out.c:2063 modules/codec/faad.c:391 -#: modules/gui/macosx/output.m:176 modules/gui/qt4/ui/sout.ui:807 +#: src/input/es_out.c:2630 src/input/es_out.c:2633 +#: modules/gui/macosx/output.m:176 msgid "Channels" -msgstr "Canaux" +msgstr "Canaux " -#: src/input/es_out.c:2068 modules/codec/faad.c:393 +#: src/input/es_out.c:2638 msgid "Sample rate" -msgstr "Fr?quence d??chantillonage" +msgstr "Fr?quence d??chantillonnage " -#: src/input/es_out.c:2069 +#: src/input/es_out.c:2639 #, c-format msgid "%u Hz" msgstr "%u Hz" -#: src/input/es_out.c:2075 +#: src/input/es_out.c:2649 msgid "Bits per sample" -msgstr "Bits par ?chantillon" +msgstr "Bits par ?chantillon " -#: src/input/es_out.c:2080 modules/access_output/shout.c:91 -#: modules/access/pvr.c:97 modules/gui/qt4/components/open_panels.cpp:855 +#: src/input/es_out.c:2654 modules/access/pvr.c:97 +#: modules/access_output/shout.c:91 +#: modules/gui/qt4/components/open_panels.cpp:912 msgid "Bitrate" -msgstr "D?bit" +msgstr "D?bit " -#: src/input/es_out.c:2081 +#: src/input/es_out.c:2655 #, c-format msgid "%u kb/s" msgstr "%u kb/s" -#: src/input/es_out.c:2092 +#: src/input/es_out.c:2666 +msgid "Track replay gain" +msgstr "Valeur du ReplayGain pour le morceau" + +#: src/input/es_out.c:2668 +msgid "Album replay gain" +msgstr "Valeur du ReplayGain pour l'album" + +#: src/input/es_out.c:2670 +#, c-format +msgid "%.2f dB" +msgstr "%.2f dB" + +#: src/input/es_out.c:2680 msgid "Resolution" -msgstr "R?solution" +msgstr "R?solution " -#: src/input/es_out.c:2098 +#: src/input/es_out.c:2686 msgid "Display resolution" -msgstr "R?solution d?affichage" +msgstr "R?solution d?affichage " -#: src/input/es_out.c:2108 modules/access/screen/screen.c:43 +#: src/input/es_out.c:2697 src/input/es_out.c:2701 +#: modules/access/screen/screen.c:44 msgid "Frame rate" -msgstr "D?bit d?images" - -#: src/input/es_out.c:2115 -msgid "Subtitle" -msgstr "Sous-titres" +msgstr "D?bit d?images " -#: src/input/input.c:2217 +#: src/input/input.c:2418 msgid "Your input can't be opened" -msgstr "Votre media d'entr?e ne peut ?tre ouvert" +msgstr "Votre m?dia d'entr?e ne peut ?tre ouvert" -#: src/input/input.c:2218 +#: src/input/input.c:2419 #, c-format msgid "VLC is unable to open the MRL '%s'. Check the log for details." msgstr "" -"VLC ne peut pas ouvrir '%s?. V?rifiez les messages pour plus de d?tails." +"VLC ne peut pas ouvrir ??%s??. V?rifiez les messages pour plus de d?tails." -#: src/input/input.c:2317 +#: src/input/input.c:2550 msgid "VLC can't recognize the input's format" msgstr "Impossible de reconnaitre le format du m?dia d'entr?e" -#: src/input/input.c:2318 -#, fuzzy, c-format -msgid "The format of '%s' cannot be detected. Have a look the log for details." +#: src/input/input.c:2551 +#, c-format +msgid "" +"The format of '%s' cannot be detected. Have a look at the log for details." msgstr "" -"Le format de '%s? n?a pu ?tre d?tect?. V?rifiez les messages pour plus de " +"Le format de ??%s?? n?a pu ?tre d?tect?. V?rifiez les messages pour plus de " "d?tails." -#: src/input/meta.c:52 src/input/var.c:171 -#: modules/gui/beos/MediaControlView.cpp:1237 modules/gui/macosx/intf.m:545 -#: modules/gui/macosx/intf.m:546 modules/gui/macosx/open.m:179 +#: src/input/meta.c:39 src/input/var.c:183 +#: modules/gui/beos/MediaControlView.cpp:1236 modules/gui/macosx/intf.m:555 +#: modules/gui/macosx/intf.m:556 modules/gui/macosx/open.m:178 #: modules/gui/macosx/playlistinfo.m:72 modules/gui/macosx/wizard.m:348 -#: modules/gui/qt4/components/open_panels.cpp:315 -#: modules/gui/qt4/ui/open_disk.ui:200 modules/mux/asf.c:52 +#: modules/gui/qt4/components/open_panels.cpp:322 +#: modules/gui/qt4/ui/open_disk.ui:193 modules/mux/asf.c:52 msgid "Title" msgstr "Titre" -#: src/input/meta.c:53 modules/gui/macosx/playlistinfo.m:73 -#: modules/gui/macosx/playlist.m:1121 +#: src/input/meta.c:40 modules/gui/macosx/playlist.m:1208 +#: modules/gui/macosx/playlistinfo.m:73 msgid "Artist" msgstr "Artiste" -#: src/input/meta.c:54 +#: src/input/meta.c:41 msgid "Genre" msgstr "Genre" -#: src/input/meta.c:55 modules/mux/asf.c:56 +#: src/input/meta.c:42 modules/mux/asf.c:56 msgid "Copyright" msgstr "Copyright" -#: src/input/meta.c:56 src/libvlc-module.c:319 modules/access/vcdx/info.c:94 +#: src/input/meta.c:43 src/libvlc-module.c:336 modules/access/vcdx/info.c:94 msgid "Album" msgstr "Album" -#: src/input/meta.c:57 +#: src/input/meta.c:44 msgid "Track number" -msgstr "Num?ro de Piste" +msgstr "Num?ro de piste" -#: src/input/meta.c:58 modules/gui/macosx/bookmarks.m:94 -#: modules/gui/qt4/dialogs/bookmarks.cpp:66 -msgid "Description" -msgstr "Description" - -#: src/input/meta.c:59 modules/mux/asf.c:60 +#: src/input/meta.c:46 modules/mux/asf.c:60 msgid "Rating" msgstr "Note" -#: src/input/meta.c:60 +#: src/input/meta.c:47 msgid "Date" msgstr "Date" -#: src/input/meta.c:61 +#: src/input/meta.c:48 msgid "Setting" msgstr "Param?tre" -#: src/input/meta.c:62 modules/gui/macosx/open.m:192 +#: src/input/meta.c:49 modules/gui/macosx/open.m:191 #: modules/gui/qt4/ui/podcast_configuration.ui:39 msgid "URL" msgstr "URL" -#: src/input/meta.c:64 modules/misc/notify/notify.c:287 +#: src/input/meta.c:51 modules/misc/notify/notify.c:285 msgid "Now Playing" msgstr "Actuellement" -#: src/input/meta.c:65 modules/access/vcdx/info.c:101 +#: src/input/meta.c:52 modules/access/vcdx/info.c:101 msgid "Publisher" -msgstr "Publicateur" +msgstr "?diteur" -#: src/input/meta.c:66 +#: src/input/meta.c:53 msgid "Encoded by" msgstr "Encod? par" -#: src/input/meta.c:67 +#: src/input/meta.c:54 msgid "Artwork URL" -msgstr "URL de la couverture" +msgstr "URL de la jaquette" -#: src/input/meta.c:68 +#: src/input/meta.c:55 msgid "Track ID" msgstr "ID Piste" -#: src/input/var.c:152 +#: src/input/var.c:164 msgid "Bookmark" msgstr "Signet" -#: src/input/var.c:166 src/libvlc-module.c:601 +#: src/input/var.c:178 src/libvlc-module.c:637 msgid "Programs" msgstr "Programmes" -#: src/input/var.c:176 modules/gui/beos/MediaControlView.cpp:1238 -#: modules/gui/macosx/intf.m:547 modules/gui/macosx/intf.m:548 -#: modules/gui/macosx/open.m:180 modules/gui/qt4/ui/open_disk.ui:171 +#: src/input/var.c:188 modules/gui/beos/MediaControlView.cpp:1237 +#: modules/gui/macosx/intf.m:557 modules/gui/macosx/intf.m:558 +#: modules/gui/macosx/open.m:179 modules/gui/qt4/ui/open_disk.ui:238 msgid "Chapter" msgstr "Chapitre" -#: src/input/var.c:181 modules/access/vcdx/info.c:306 +#: src/input/var.c:193 modules/access/vcdx/info.c:306 #: modules/access/vcdx/info.c:307 modules/gui/beos/InterfaceWindow.cpp:294 msgid "Navigation" msgstr "Navigation" -#: src/input/var.c:197 modules/gui/macosx/intf.m:571 -#: modules/gui/macosx/intf.m:572 +#: src/input/var.c:206 modules/gui/macosx/intf.m:581 +#: modules/gui/macosx/intf.m:582 msgid "Video Track" msgstr "Piste vid?o" -#: src/input/var.c:202 modules/gui/macosx/intf.m:554 -#: modules/gui/macosx/intf.m:555 +#: src/input/var.c:211 modules/gui/macosx/intf.m:564 +#: modules/gui/macosx/intf.m:565 msgid "Audio Track" msgstr "Piste audio" -#: src/input/var.c:207 modules/gui/macosx/intf.m:579 -#: modules/gui/macosx/intf.m:580 +#: src/input/var.c:216 modules/gui/macosx/intf.m:589 +#: modules/gui/macosx/intf.m:590 msgid "Subtitles Track" msgstr "Piste de sous-titres" -#: src/input/var.c:274 +#: src/input/var.c:275 msgid "Next title" msgstr "Titre suivant" -#: src/input/var.c:279 +#: src/input/var.c:280 msgid "Previous title" msgstr "Titre pr?c?dent" -#: src/input/var.c:305 +#: src/input/var.c:306 #, c-format msgid "Title %i" msgstr "Titre %i" -#: src/input/var.c:329 src/input/var.c:387 +#: src/input/var.c:330 src/input/var.c:388 #, c-format msgid "Chapter %i" msgstr "Chapitre %i" -#: src/input/var.c:367 modules/gui/beos/InterfaceWindow.cpp:291 -#: modules/gui/qt4/components/interface_widgets.cpp:847 +#: src/input/var.c:368 modules/gui/beos/InterfaceWindow.cpp:291 msgid "Next chapter" msgstr "Chapitre suivant" -#: src/input/var.c:372 modules/gui/beos/InterfaceWindow.cpp:290 -#: modules/gui/qt4/components/interface_widgets.cpp:846 +#: src/input/var.c:373 modules/gui/beos/InterfaceWindow.cpp:290 msgid "Previous chapter" msgstr "Chapitre pr?c?dent" -#: src/input/vlm.c:531 src/input/vlm.c:867 +#: src/input/vlm.c:526 src/input/vlm.c:866 #, c-format msgid "Media: %s" -msgstr "M?dia: %s" +msgstr "M?dia?: %s" -#: src/interface/interaction.c:172 src/interface/interaction.c:280 -#: modules/demux/avi/avi.c:678 modules/gui/beos/InterfaceWindow.cpp:161 -#: modules/gui/macosx/bookmarks.m:102 modules/gui/macosx/controls.m:58 +#: src/interface/interaction.c:189 src/interface/interaction.c:274 +#: modules/demux/avi/avi.c:683 modules/gui/beos/InterfaceWindow.cpp:161 +#: modules/gui/macosx/bookmarks.m:102 modules/gui/macosx/controls.m:83 #: modules/gui/macosx/interaction.m:129 modules/gui/macosx/interaction.m:133 -#: modules/gui/macosx/interaction.m:136 modules/gui/macosx/open.m:168 -#: modules/gui/macosx/prefs.m:126 modules/gui/macosx/prefs.m:147 -#: modules/gui/macosx/simple_prefs.m:237 modules/gui/macosx/simple_prefs.m:300 -#: modules/gui/macosx/simple_prefs.m:627 modules/gui/macosx/wizard.m:320 -#: modules/gui/qt4/components/open_panels.cpp:1146 -#: modules/gui/qt4/components/preferences_widgets.cpp:1294 +#: modules/gui/macosx/interaction.m:136 modules/gui/macosx/open.m:167 +#: modules/gui/macosx/prefs.m:185 modules/gui/macosx/prefs.m:206 +#: modules/gui/macosx/simple_prefs.m:237 modules/gui/macosx/simple_prefs.m:295 +#: modules/gui/macosx/simple_prefs.m:616 modules/gui/macosx/wizard.m:320 +#: modules/gui/qt4/components/open_panels.cpp:1217 +#: modules/gui/qt4/components/preferences_widgets.cpp:1314 msgid "Cancel" msgstr "Annuler" -#: src/interface/interaction.c:279 modules/gui/beos/InterfaceWindow.cpp:405 -#: modules/gui/macosx/bookmarks.m:101 modules/gui/macosx/bookmarks.m:218 -#: modules/gui/macosx/bookmarks.m:226 modules/gui/macosx/bookmarks.m:271 -#: modules/gui/macosx/bookmarks.m:279 modules/gui/macosx/controls.m:59 +#: src/interface/interaction.c:273 modules/gui/beos/InterfaceWindow.cpp:405 +#: modules/gui/macosx/bookmarks.m:101 modules/gui/macosx/bookmarks.m:213 +#: modules/gui/macosx/bookmarks.m:221 modules/gui/macosx/bookmarks.m:266 +#: modules/gui/macosx/bookmarks.m:274 modules/gui/macosx/controls.m:84 #: modules/gui/macosx/extended.m:519 modules/gui/macosx/interaction.m:134 #: modules/gui/macosx/interaction.m:135 modules/gui/macosx/interaction.m:175 -#: modules/gui/macosx/intf.m:2109 modules/gui/macosx/open.m:167 -#: modules/gui/macosx/open.m:300 modules/gui/macosx/output.m:138 +#: modules/gui/macosx/intf.m:2169 modules/gui/macosx/open.m:166 +#: modules/gui/macosx/open.m:302 modules/gui/macosx/output.m:138 #: modules/gui/macosx/playlistinfo.m:425 modules/gui/macosx/simple_prefs.m:238 -#: modules/gui/macosx/update.m:65 modules/gui/macosx/wizard.m:599 -#: modules/gui/macosx/wizard.m:663 modules/gui/macosx/wizard.m:1055 -#: modules/gui/macosx/wizard.m:1140 modules/gui/macosx/wizard.m:1147 -#: modules/gui/macosx/wizard.m:1676 modules/gui/macosx/wizard.m:1684 -#: modules/gui/macosx/wizard.m:1865 modules/gui/macosx/wizard.m:1876 -#: modules/gui/macosx/wizard.m:1889 -#: modules/gui/qt4/components/open_panels.cpp:1145 -#: modules/gui/qt4/components/preferences_widgets.cpp:1293 -#: modules/gui/qt4/main_interface.cpp:523 +#: modules/gui/macosx/update.m:65 modules/gui/macosx/wizard.m:600 +#: modules/gui/macosx/wizard.m:664 modules/gui/macosx/wizard.m:1063 +#: modules/gui/macosx/wizard.m:1148 modules/gui/macosx/wizard.m:1155 +#: modules/gui/macosx/wizard.m:1681 modules/gui/macosx/wizard.m:1689 +#: modules/gui/macosx/wizard.m:1870 modules/gui/macosx/wizard.m:1881 +#: modules/gui/macosx/wizard.m:1894 +#: modules/gui/qt4/components/open_panels.cpp:1216 +#: modules/gui/qt4/components/preferences_widgets.cpp:1313 +#: modules/gui/qt4/main_interface.cpp:525 msgid "OK" msgstr "Ok" -#: src/interface/interface.c:205 modules/gui/macosx/intf.m:505 -#: modules/gui/macosx/intf.m:506 +#: src/interface/interface.c:205 modules/gui/macosx/intf.m:515 +#: modules/gui/macosx/intf.m:516 msgid "Add Interface" msgstr "Ajouter une interface" @@ -1267,11 +1292,11 @@ msgstr "Console" #: src/interface/interface.c:212 msgid "Telnet Interface" -msgstr "Interface Telnet" +msgstr "Interface telnet" #: src/interface/interface.c:215 msgid "Web Interface" -msgstr "Interface Web" +msgstr "Interface web" #: src/interface/interface.c:218 msgid "Debug logging" @@ -1281,58 +1306,77 @@ msgstr "Enregistrement des messages" msgid "Mouse Gestures" msgstr "Mouvements de la souris" -#: src/libvlc.c:292 src/libvlc.c:425 src/modules/cache.c:206 -#: src/modules/cache.c:525 +#: src/libvlc.c:344 src/libvlc.c:458 src/modules/cache.c:212 +#: src/modules/cache.c:532 msgid "C" -msgstr "Fr" +msgstr "FR" -#: src/libvlc.c:1145 +#: src/libvlc.c:1172 msgid "" "Running vlc with the default interface. Use 'cvlc' to use vlc without " "interface." msgstr "" +"Lancement de vlc avec l'interface par d?faut. Utilisez ??cvlc?? pour d?marrer " +"VLC sans interface." -#: src/libvlc.c:1290 +#: src/libvlc.c:1345 msgid "To get exhaustive help, use '-H'." -msgstr "" +msgstr "Pour une aide exhaustive, utiliser ??-H??." -#: src/libvlc.c:1622 +#: src/libvlc.c:1693 msgid " (default enabled)" msgstr " (activ? par d?faut)" -#: src/libvlc.c:1623 +#: src/libvlc.c:1694 msgid " (default disabled)" msgstr " (d?sactiv? par d?faut)" -#: src/libvlc.c:1782 src/libvlc.c:1785 +#: src/libvlc.c:1853 src/libvlc.c:1856 src/libvlc.c:1864 src/libvlc.c:1869 msgid "Note:" -msgstr "Note:" +msgstr "Note?:" -#: src/libvlc.c:1783 src/libvlc.c:1786 +#: src/libvlc.c:1854 src/libvlc.c:1857 msgid "add --advanced to your command line to see advanced options." msgstr "" +"Ajoutez ??--advanced?? ? votre ligne de commande pour voir les options " +"avanc?es." + +#: src/libvlc.c:1865 src/libvlc.c:1870 +#, c-format +msgid "" +"%d module(s) were not displayed because they only have advanced options.\n" +msgstr "" +"%d module(s) ne sont pas affich?s car ils n'ont que des options avanc?es.\n" + +#: src/libvlc.c:1877 src/libvlc.c:1881 +msgid "" +"No matching module found. Use --list or--list-verbose to list available " +"modules." +msgstr "" +"Aucun module correspondant. Utilisez ??--list?? ou ??--list-verbose?? pour la liste" +" des modules disponibles." -#: src/libvlc.c:1890 +#: src/libvlc.c:1981 #, c-format msgid "VLC version %s\n" msgstr "VLC %s\n" -#: src/libvlc.c:1891 +#: src/libvlc.c:1982 #, c-format msgid "Compiled by %s@%s.%s\n" msgstr "Compil? par %s@%s.%s\n" -#: src/libvlc.c:1893 +#: src/libvlc.c:1984 #, c-format msgid "Compiler: %s\n" -msgstr "Compilateur: %s\n" +msgstr "Compilateur?: %s\n" -#: src/libvlc.c:1895 +#: src/libvlc.c:1986 #, c-format msgid "Based upon Git commit [%s]\n" msgstr "Bas? sur les changements git [%s]\n" -#: src/libvlc.c:1931 +#: src/libvlc.c:2022 msgid "" "\n" "Dumped content to vlc-help.txt file.\n" @@ -1340,179 +1384,39 @@ msgstr "" "\n" "Contenu transf?r? dans le fichier vlc-help.txt\n" -#: src/libvlc.c:1951 +#: src/libvlc.c:2042 msgid "" "\n" "Press the RETURN key to continue...\n" msgstr "" "\n" -"Appuyez sur pour continuer?\n" +"Appuyez sur [Entr?e] pour continuer?\n" -#: src/libvlc.h:199 src/libvlc-module.c:1325 src/libvlc-module.c:1326 -#: src/libvlc-module.c:2385 src/video_output/vout_intf.c:273 +#: src/libvlc.h:183 src/libvlc-module.c:1382 src/libvlc-module.c:1383 +#: src/libvlc-module.c:2486 src/video_output/vout_intf.c:278 msgid "Zoom" msgstr "Zoom" -#: src/libvlc.h:200 src/libvlc-module.c:1251 src/video_output/vout_intf.c:168 +#: src/libvlc.h:184 src/libvlc-module.c:1302 src/video_output/vout_intf.c:172 msgid "1:4 Quarter" -msgstr "1/4" +msgstr "?" -#: src/libvlc.h:201 src/libvlc-module.c:1252 src/video_output/vout_intf.c:169 +#: src/libvlc.h:185 src/libvlc-module.c:1303 src/video_output/vout_intf.c:173 msgid "1:2 Half" -msgstr "1/2" +msgstr "?" -#: src/libvlc.h:202 src/libvlc-module.c:1253 src/video_output/vout_intf.c:170 +#: src/libvlc.h:186 src/libvlc-module.c:1304 src/video_output/vout_intf.c:174 msgid "1:1 Original" msgstr "Taille normale" -#: src/libvlc.h:203 src/libvlc-module.c:1254 src/video_output/vout_intf.c:171 +#: src/libvlc.h:187 src/libvlc-module.c:1305 src/video_output/vout_intf.c:175 msgid "2:1 Double" msgstr "Taille double" -#: src/libvlc-module.c:88 src/libvlc-module.c:285 modules/access/bda/bda.c:63 +#: src/libvlc-module.c:88 src/libvlc-module.c:295 modules/access/bda/bda.c:62 msgid "Auto" msgstr "Auto" -#: src/libvlc-module.c:89 -msgid "American English" -msgstr "Anglais am?ricain" - -#: src/libvlc-module.c:90 src/text/iso-639_def.h:43 -msgid "Arabic" -msgstr "Arabe" - -#: src/libvlc-module.c:91 -msgid "Brazilian Portuguese" -msgstr "Portugais br?silien" - -#: src/libvlc-module.c:92 -msgid "British English" -msgstr "Anglais britannique" - -#: src/libvlc-module.c:93 src/text/iso-639_def.h:57 -msgid "Bulgarian" -msgstr "Bulgare" - -#: src/libvlc-module.c:94 src/text/iso-639_def.h:59 -msgid "Catalan" -msgstr "Catalan" - -#: src/libvlc-module.c:95 -msgid "Chinese Traditional" -msgstr "Chinois Traditionnel" - -#: src/libvlc-module.c:96 src/text/iso-639_def.h:67 -msgid "Czech" -msgstr "Tch?que" - -#: src/libvlc-module.c:97 src/text/iso-639_def.h:68 -msgid "Danish" -msgstr "Danois" - -#: src/libvlc-module.c:98 src/text/iso-639_def.h:69 -msgid "Dutch" -msgstr "N?erlandais" - -#: src/libvlc-module.c:99 src/text/iso-639_def.h:76 -msgid "Finnish" -msgstr "Finnois" - -#: src/libvlc-module.c:100 src/text/iso-639_def.h:77 -msgid "French" -msgstr "Fran?ais" - -#: src/libvlc-module.c:101 -msgid "Galician" -msgstr "Galicien" - -#: src/libvlc-module.c:102 src/text/iso-639_def.h:79 -msgid "Georgian" -msgstr "G?orgien" - -#: src/libvlc-module.c:103 src/text/iso-639_def.h:80 -msgid "German" -msgstr "Allemand" - -#: src/libvlc-module.c:104 src/text/iso-639_def.h:88 -msgid "Hebrew" -msgstr "H?breu" - -#: src/libvlc-module.c:105 src/text/iso-639_def.h:92 -msgid "Hungarian" -msgstr "Hongrois" - -#: src/libvlc-module.c:106 src/text/iso-639_def.h:99 -msgid "Italian" -msgstr "Italien" - -#: src/libvlc-module.c:107 src/text/iso-639_def.h:101 -msgid "Japanese" -msgstr "Japonais" - -#: src/libvlc-module.c:108 src/text/iso-639_def.h:111 -msgid "Korean" -msgstr "Cor?en" - -#: src/libvlc-module.c:109 src/text/iso-639_def.h:125 -msgid "Malay" -msgstr "Malais" - -#: src/libvlc-module.c:110 -msgid "Occitan" -msgstr "Occitan" - -#: src/libvlc-module.c:111 src/text/iso-639_def.h:146 -msgid "Persian" -msgstr "Persan" - -#: src/libvlc-module.c:112 src/text/iso-639_def.h:148 -msgid "Polish" -msgstr "Polonais" - -#: src/libvlc-module.c:113 src/text/iso-639_def.h:149 -msgid "Portuguese" -msgstr "Portugais" - -#: src/libvlc-module.c:114 -msgid "Punjabi" -msgstr "Panj?b?" - -#: src/libvlc-module.c:115 src/text/iso-639_def.h:154 -msgid "Romanian" -msgstr "Roumain" - -#: src/libvlc-module.c:116 src/text/iso-639_def.h:156 -msgid "Russian" -msgstr "Russe" - -#: src/libvlc-module.c:117 -msgid "Simplified Chinese" -msgstr "Chinois simplifi?" - -#: src/libvlc-module.c:118 src/text/iso-639_def.h:159 -msgid "Serbian" -msgstr "Serbe" - -#: src/libvlc-module.c:119 src/text/iso-639_def.h:162 -msgid "Slovak" -msgstr "Slovaque" - -#: src/libvlc-module.c:120 src/text/iso-639_def.h:163 -msgid "Slovenian" -msgstr "Slov?ne" - -#: src/libvlc-module.c:121 src/text/iso-639_def.h:170 -msgid "Spanish" -msgstr "Espagnol" - -#: src/libvlc-module.c:122 src/text/iso-639_def.h:175 -msgid "Swedish" -msgstr "Su?dois" - -#: src/libvlc-module.c:123 src/text/iso-639_def.h:188 -msgid "Turkish" -msgstr "Turc" - #: src/libvlc-module.c:143 msgid "" "These options allow you to configure the interfaces used by VLC. You can " @@ -1533,7 +1437,7 @@ msgid "" "automatically select the best module available." msgstr "" "Cette option permet de choisir l?interface utilis?e par VLC. Le comportement " -"par d?faut est de choisir automatiquement la meilleure interfa ce." +"par d?faut est de choisir automatiquement la meilleure interface." #: src/libvlc-module.c:153 modules/control/ntservice.c:57 msgid "Extra interface modules" @@ -1548,8 +1452,8 @@ msgid "" msgstr "" "Interfaces suppl?mentaires ? utiliser. Elles seront lanc?es en t?che de fond " "en plus de l?interface par d?faut. Utilisez une liste de modules s?par?s par " -"des virgules (les valeurs courantes sont \"rc\" (commande ? distance), \"http" -"\", \"gestures\")." +"des virgules (les valeurs courantes sont ??rc?? (commande ? distance), " +"??http??, ??gestures??)." #: src/libvlc-module.c:162 msgid "You can select control interfaces for VLC." @@ -1565,38 +1469,57 @@ msgid "" "1=warnings, 2=debug)." msgstr "" "Cette option fixe le niveau de verbosit? (0=uniquement les erreurs et les " -"messages standard, 1=avertissements, 2=deboguage)." +"messages standard, 1=avertissements, 2=d?bogage)." #: src/libvlc-module.c:169 +msgid "Choose which objects should print debug message" +msgstr "Choisir les ?l?ments qui peuvent afficher des messages." + +#: src/libvlc-module.c:172 +msgid "" +"This is a ',' separated string, each objects should be prefixed by a '+' or " +"a '-' to respectively enable or disable it. The keyword 'all' refers to all " +"objects. Objects can be refered to by their type or module name. Rules " +"applying to named objects take precendence over rules applying to object " +"types. Note that you still need to use -vvv to actually display debug " +"message." +msgstr "" +"Ceci est une liste d'objets, s?par?s par des ??,??. Chaque objet est pr?fix? par" +"??+?? ou ??-?? pour l'activer ou l'inhiber. Le mot cl? ??all?? d?signe tous les objets." +"Les objets peuvent ?tre r?f?renc?s par leur type ou le nom du module. La priorit? " +"est donn?e aux objets nomm?s plut?t qu'aux types. Notez que vous pouvez toujours " +"utiliser ??-vvv?? pour afficher des messages." + +#: src/libvlc-module.c:179 msgid "Be quiet" msgstr "Ne rien afficher" -#: src/libvlc-module.c:171 +#: src/libvlc-module.c:181 msgid "Turn off all warning and information messages." msgstr "" "Cette option d?sactive tous les messages d?avertissement et d?information." -#: src/libvlc-module.c:173 +#: src/libvlc-module.c:183 msgid "Default stream" msgstr "Flux par d?faut" -#: src/libvlc-module.c:175 +#: src/libvlc-module.c:185 msgid "This stream will always be opened at VLC startup." msgstr "Ce flux sera toujours ouvert au d?marrage de VLC." -#: src/libvlc-module.c:178 +#: src/libvlc-module.c:188 msgid "" "You can manually select a language for the interface. The system language is " "auto-detected if \"auto\" is specified here." msgstr "" -"Cette option permet de choisir la langue de l?interface. Si ? auto ? est " +"Cette option permet de choisir la langue de l?interface. Si ??auto?? est " "sp?cifi?, la langue du syst?me sera automatiquement d?tect?e." -#: src/libvlc-module.c:182 +#: src/libvlc-module.c:192 msgid "Color messages" msgstr "Messages en couleur" -#: src/libvlc-module.c:184 +#: src/libvlc-module.c:194 msgid "" "This enables colorization of the messages sent to the console Your terminal " "needs Linux color support for this to work." @@ -1604,11 +1527,11 @@ msgstr "" "Envoyer les messages ? la console en couleur. Vous devez avoir un terminal " "qui reconna?t les couleurs Linux pour profiter de cette option." -#: src/libvlc-module.c:187 +#: src/libvlc-module.c:197 msgid "Show advanced options" msgstr "Afficher les options avanc?es" -#: src/libvlc-module.c:189 +#: src/libvlc-module.c:199 msgid "" "When this is enabled, the preferences and/or interfaces will show all " "available options, including those that most users should never touch." @@ -1616,11 +1539,11 @@ msgstr "" "Afficher toutes les options disponibles dans les pr?f?rences, y compris " "celles auxquelles la majorit? des utilisateurs ne touchent jamais." -#: src/libvlc-module.c:193 modules/control/showintf.c:72 +#: src/libvlc-module.c:203 modules/control/showintf.c:72 msgid "Show interface with mouse" msgstr "Afficher l?interface avec la souris" -#: src/libvlc-module.c:195 +#: src/libvlc-module.c:205 msgid "" "When this is enabled, the interface is shown when you move the mouse to the " "edge of the screen in fullscreen mode." @@ -1628,11 +1551,11 @@ msgstr "" "Montrer l?interface lorsque la souris est d?plac?e vers le bord de l??cran " "(en plein ?cran)." -#: src/libvlc-module.c:198 +#: src/libvlc-module.c:208 msgid "Interface interaction" msgstr "Interaction avec l?utilisateur" -#: src/libvlc-module.c:200 +#: src/libvlc-module.c:210 msgid "" "When this is enabled, the interface will show a dialog box each time some " "user input is required." @@ -1640,7 +1563,7 @@ msgstr "" "Quand cette option est activ?e, l?interface affichera une boite de dialogue " "chaque fois que l?utilisateur doit entrer des donn?es." -#: src/libvlc-module.c:210 +#: src/libvlc-module.c:220 msgid "" "These options allow you to modify the behavior of the audio subsystem, and " "to add audio filters which can be used for post processing or visual effects " @@ -1649,14 +1572,14 @@ msgid "" msgstr "" "Ces options permettent de r?gler le son dans VLC et d?ajouter des filtres " "permettant de faire du postprocessing ou des effets visuels (analyseur de " -"spectre?). Pour param?trer ces filtres, allez dans les options des modules ? " -"filtres audio ?." +"spectre?). Pour param?trer ces filtres, allez dans les options des modules " +"??filtres audio??." -#: src/libvlc-module.c:216 +#: src/libvlc-module.c:226 msgid "Audio output module" msgstr "Module de sortie audio" -#: src/libvlc-module.c:218 +#: src/libvlc-module.c:228 msgid "" "This is the audio output method used by VLC. The default behavior is to " "automatically select the best method available." @@ -1664,12 +1587,12 @@ msgstr "" "Module de sortie audio utilis?e par VLC. Le comportement par d?faut est de " "choisir automatiquement le meilleur module disponible." -#: src/libvlc-module.c:222 modules/gui/qt4/ui/sprefs_audio.ui:20 +#: src/libvlc-module.c:232 modules/gui/qt4/ui/sprefs_audio.ui:20 #: modules/stream_out/display.c:41 msgid "Enable audio" msgstr "Activer l?audio" -#: src/libvlc-module.c:224 +#: src/libvlc-module.c:234 msgid "" "You can completely disable the audio output. The audio decoding stage will " "not take place, thus saving some processing power." @@ -1677,51 +1600,51 @@ msgstr "" "Cette option d?sactive compl?tement la sortie audio. Le d?codage des pistes " "audio ne sera alors pas r?alis?, et cela ?conomisera du temps processeur." -#: src/libvlc-module.c:228 +#: src/libvlc-module.c:238 msgid "Force mono audio" msgstr "Forcer la sortie mono" -#: src/libvlc-module.c:229 +#: src/libvlc-module.c:239 msgid "This will force a mono audio output." msgstr "Cette option force une sortie audio mono." -#: src/libvlc-module.c:232 +#: src/libvlc-module.c:242 msgid "Default audio volume" msgstr "Volume audio par d?faut" -#: src/libvlc-module.c:234 +#: src/libvlc-module.c:244 msgid "" "You can set the default audio output volume here, in a range from 0 to 1024." msgstr "Sp?cifiez ici le volume de la sortie audio, de 0 ? 1024." -#: src/libvlc-module.c:237 +#: src/libvlc-module.c:247 msgid "Audio output saved volume" msgstr "Volume enregistr? de la sortie audio" -#: src/libvlc-module.c:239 +#: src/libvlc-module.c:249 msgid "" "This saves the audio output volume when you use the mute function. You " "should not change this option manually." msgstr "" "Le volume courant est enregistr? dans cette variable quand vous s?lectionnez " -"? muet ?. Vous ne devriez pas modifier cette valeur manuellement." +"??muet??. Vous ne devriez pas modifier cette valeur manuellement." -#: src/libvlc-module.c:242 +#: src/libvlc-module.c:252 msgid "Audio output volume step" msgstr "Pas de r?glage du volume" -#: src/libvlc-module.c:244 +#: src/libvlc-module.c:254 msgid "" "The step size of the volume is adjustable using this option, in a range from " "0 to 1024." msgstr "" "Cett option permet de modifier le pas de r?glage du volume audio, de 0 ? 1024" -#: src/libvlc-module.c:247 +#: src/libvlc-module.c:257 msgid "Audio output frequency (Hz)" msgstr "Fr?quence de la sortie audio (Hz)" -#: src/libvlc-module.c:249 +#: src/libvlc-module.c:259 msgid "" "You can force the audio output frequency here. Common values are -1 " "(default), 48000, 44100, 32000, 22050, 16000, 11025, 8000." @@ -1729,11 +1652,11 @@ msgstr "" "Vous pouvez forcer la fr?quence de sortie audio. Les valeurs courantes sont -" "1 (par d?faut), 48000, 44100, 32000, 22050, 16000, 11025, 8000." -#: src/libvlc-module.c:253 +#: src/libvlc-module.c:263 msgid "High quality audio resampling" msgstr "R??chantillonnage audio haute-qualit?" -#: src/libvlc-module.c:255 +#: src/libvlc-module.c:265 msgid "" "This uses a high quality audio resampling algorithm. High quality audio " "resampling can be processor intensive so you can disable it and a cheaper " @@ -1743,11 +1666,11 @@ msgstr "" "Si vous le d?sactivez, un algorithme de r??chantillonnage moins gourmand " "sera utilis? ? la place." -#: src/libvlc-module.c:260 +#: src/libvlc-module.c:270 msgid "Audio desynchronization compensation" msgstr "Compensation de la d?synchronisation audio" -#: src/libvlc-module.c:262 +#: src/libvlc-module.c:272 msgid "" "This delays the audio output. The delay must be given in milliseconds.This " "can be handy if you notice a lag between the video and the audio." @@ -1755,11 +1678,11 @@ msgstr "" "Retarder la sortie audio, en donnant un nombre de millisecondes. Cela peut " "?tre utile si vous remarquez un d?calage entre le son et l?image." -#: src/libvlc-module.c:265 +#: src/libvlc-module.c:275 msgid "Audio output channels mode" msgstr "Mode pr?f?r? des canaux de sortie audio" -#: src/libvlc-module.c:267 +#: src/libvlc-module.c:277 msgid "" "This sets the audio output channels mode that will be used by default when " "possible (ie. if your hardware supports it as well as the audio stream being " @@ -1769,12 +1692,12 @@ msgstr "" "est possible (c.?.d. si le mat?riel en est capable, de m?me que le flux " "audio ? jouer)." -#: src/libvlc-module.c:271 modules/gui/macosx/simple_prefs.m:230 +#: src/libvlc-module.c:281 modules/gui/macosx/simple_prefs.m:230 #: modules/gui/qt4/ui/sprefs_audio.ui:99 msgid "Use S/PDIF when available" msgstr "Utiliser S/PDIF si possible" -#: src/libvlc-module.c:273 +#: src/libvlc-module.c:283 msgid "" "S/PDIF can be used by default when your hardware supports it as well as the " "audio stream being played." @@ -1782,12 +1705,12 @@ msgstr "" "Utiliser par d?faut la sortie audio S/PDIF lorsque le mat?riel la reconna?t, " "de m?me que le flux audio en train d??tre jou?." -#: src/libvlc-module.c:276 modules/gui/macosx/simple_prefs.m:220 +#: src/libvlc-module.c:286 modules/gui/macosx/simple_prefs.m:220 #: modules/gui/qt4/ui/sprefs_audio.ui:113 msgid "Force detection of Dolby Surround" msgstr "Forcer la d?tection Dolby Surround" -#: src/libvlc-module.c:278 +#: src/libvlc-module.c:288 msgid "" "Use this when you know your stream is (or is not) encoded with Dolby " "Surround but fails to be detected as such. Even if the stream is not " @@ -1798,71 +1721,86 @@ msgstr "" "mais n?est pas d?tect? comme tel. M?me si le flux n?est pas effectivement " "encod? avec Dolby Surround, l?usage de cette option peut am?liorer les " "performances, particuli?rement si elle est combin?e avec le filtre d?effet " -"\"casque\"." +"??casque??." -#: src/libvlc-module.c:285 modules/access/bda/bda.c:63 +#: src/libvlc-module.c:295 modules/access/bda/bda.c:62 msgid "On" msgstr "Oui" -#: src/libvlc-module.c:285 modules/access/bda/bda.c:62 +#: src/libvlc-module.c:295 modules/access/bda/bda.c:61 msgid "Off" -msgstr "Off" +msgstr "Non" -#: src/libvlc-module.c:290 +#: src/libvlc-module.c:300 msgid "This adds audio post processing filters, to modify the sound rendering." msgstr "Ajouter des filtres de post-traitement audio pour modifier le son." -#: src/libvlc-module.c:293 +#: src/libvlc-module.c:303 msgid "Audio visualizations " msgstr "Visualisations audio " -#: src/libvlc-module.c:295 +#: src/libvlc-module.c:305 msgid "This adds visualization modules (spectrum analyzer, etc.)." msgstr "" "Ajouter des modules de visualisation audio (analyseur de spectre, etc )." -#: src/libvlc-module.c:299 +#: src/libvlc-module.c:309 msgid "Replay gain mode" -msgstr "Mode de Replay gain" +msgstr "Mode Replay gain" -#: src/libvlc-module.c:301 +#: src/libvlc-module.c:311 msgid "Select the replay gain mode" -msgstr "" +msgstr "S?lectionner le mode ReplayGain" -#: src/libvlc-module.c:303 +#: src/libvlc-module.c:313 msgid "Replay preamp" -msgstr "" +msgstr "Pr?ampli Replay" -#: src/libvlc-module.c:305 +#: src/libvlc-module.c:315 msgid "" "This allows you to change the default target level (89 dB) for stream with " "replay gain information" msgstr "" +"Cette option vous permet de changer la valeur par d?faut (89 dB) pour les " +"flux avec une information ReplayGain" -#: src/libvlc-module.c:308 +#: src/libvlc-module.c:318 msgid "Default replay gain" -msgstr "" +msgstr "Valeur par d?faut du ReplayGain" -#: src/libvlc-module.c:310 +#: src/libvlc-module.c:320 msgid "This is the gain used for stream without replay gain information" msgstr "" +"Valeur par d?faut utilis?e pour les flux sans information de ReplayGain" -#: src/libvlc-module.c:312 +#: src/libvlc-module.c:322 msgid "Peak protection" msgstr "Protection contre les pics" -#: src/libvlc-module.c:314 +#: src/libvlc-module.c:324 msgid "Protect against sound clipping" +msgstr "Protection contre les coupures du son" + +#: src/libvlc-module.c:327 +msgid "Enable time streching audio" +msgstr "Autoriser la dilatation temporelle de l'audio" + +#: src/libvlc-module.c:329 +msgid "" +"This allows to play audio at lower or higher speed withoutaffecting the " +"audio pitch" msgstr "" +"Ceci permet de jouer la piste audio ? une vitesse moindre ou sup?rieure sans " +"affecter le pitch audio" -#: src/libvlc-module.c:319 modules/access/dshow/dshow.cpp:81 -#: modules/access/dshow/dshow.cpp:83 modules/codec/avcodec/avcodec.c:71 -#: modules/gui/qt4/components/interface_widgets.cpp:268 -#: modules/video_output/opengl.c:126 modules/video_output/opengl.c:182 +#: src/libvlc-module.c:336 src/libvlc-module.c:568 +#: modules/access/dshow/dshow.cpp:81 modules/access/dshow/dshow.cpp:83 +#: modules/codec/avcodec/avcodec.c:70 modules/codec/kate.c:204 +#: modules/gui/qt4/components/interface_widgets.cpp:249 msgid "None" msgstr "Aucun" -#: src/libvlc-module.c:327 +#: src/libvlc-module.c:344 msgid "" "These options allow you to modify the behavior of the video output " "subsystem. You can for example enable video filters (deinterlacing, image " @@ -1873,14 +1811,14 @@ msgstr "" "Ces options permettent de modifier des r?glages relatifs ? l?affichage " "vid?o. Vous pouvez par exemple activer des filtres vid?o, comme le " "d?sentrelacement, ou encore le contraste et la saturation?\n" -"Activez ces filtres ici et configurez-les dans la section ? module de filtre " -"vid?o ?. Vous pouvez ?galement r?gler diverses options vid?o." +"Activez ces filtres ici et configurez-les dans la section ??modules de filtre " +"vid?o??. Vous pouvez ?galement r?gler diverses options vid?o." -#: src/libvlc-module.c:333 +#: src/libvlc-module.c:350 msgid "Video output module" msgstr "Module de sortie vid?o" -#: src/libvlc-module.c:335 +#: src/libvlc-module.c:352 msgid "" "This is the the video output method used by VLC. The default behavior is to " "automatically select the best method available." @@ -1888,12 +1826,12 @@ msgstr "" "Module de sortie vid?o utilis? par VLC. Le comportement par d?faut est de " "choisir automatiquement le meilleur module disponible." -#: src/libvlc-module.c:338 modules/gui/qt4/ui/sprefs_video.ui:26 +#: src/libvlc-module.c:355 modules/gui/qt4/ui/sprefs_video.ui:26 #: modules/stream_out/display.c:43 msgid "Enable video" msgstr "Activer la vid?o" -#: src/libvlc-module.c:340 +#: src/libvlc-module.c:357 msgid "" "You can completely disable the video output. The video decoding stage will " "not take place, thus saving some processing power." @@ -1901,13 +1839,13 @@ msgstr "" "D?sactiver la sortie vid?o. Le d?codage des pistes vid?o ne sera pas " "effectu?, afin d??conomiser du temps processeur." -#: src/libvlc-module.c:343 modules/codec/fake.c:59 -#: modules/stream_out/mosaic_bridge.c:137 modules/stream_out/transcode.c:76 +#: src/libvlc-module.c:360 modules/codec/fake.c:59 +#: modules/stream_out/mosaic_bridge.c:139 modules/stream_out/transcode.c:77 #: modules/visualization/visual/visual.c:46 msgid "Video width" msgstr "Largeur de la vid?o" -#: src/libvlc-module.c:345 +#: src/libvlc-module.c:362 msgid "" "You can enforce the video width. By default (-1) VLC will adapt to the video " "characteristics." @@ -1915,13 +1853,13 @@ msgstr "" "Forcer la largeur de l?image. Par d?faut (-1) VLC s?adapte aux propri?t?s de " "la vid?o." -#: src/libvlc-module.c:348 modules/codec/fake.c:62 -#: modules/stream_out/mosaic_bridge.c:140 modules/stream_out/transcode.c:79 +#: src/libvlc-module.c:365 modules/codec/fake.c:62 +#: modules/stream_out/mosaic_bridge.c:142 modules/stream_out/transcode.c:80 #: modules/visualization/visual/visual.c:50 msgid "Video height" msgstr "Hauteur de la vid?o" -#: src/libvlc-module.c:350 +#: src/libvlc-module.c:367 msgid "" "You can enforce the video height. By default (-1) VLC will adapt to the " "video characteristics." @@ -1929,33 +1867,33 @@ msgstr "" "Forcer la hauteur de l?image ici. Par d?faut VLC s?adaptera aux propri?t?s " "de la vid?o." -#: src/libvlc-module.c:353 +#: src/libvlc-module.c:370 msgid "Video X coordinate" msgstr "Position Y de la vid?o" -#: src/libvlc-module.c:355 +#: src/libvlc-module.c:372 msgid "" "You can enforce the position of the top left corner of the video window (X " "coordinate)." msgstr "" "Forcer la position du coin haut-gauche de la fen?tre vid?o (coordonn?e X)." -#: src/libvlc-module.c:358 +#: src/libvlc-module.c:375 msgid "Video Y coordinate" msgstr "Position Y de la vid?o" -#: src/libvlc-module.c:360 +#: src/libvlc-module.c:377 msgid "" "You can enforce the position of the top left corner of the video window (Y " "coordinate)." msgstr "" "Forcer la position du coin haut-gauche de la fen?tre vid?o (coordonn?e Y)." -#: src/libvlc-module.c:363 +#: src/libvlc-module.c:380 msgid "Video title" msgstr "Titre de la vid?o" -#: src/libvlc-module.c:365 +#: src/libvlc-module.c:382 msgid "" "Custom title for the video window (in case the video is not embedded in the " "interface)." @@ -1963,11 +1901,11 @@ msgstr "" "Titre personnalis? pour la fen?tre vid?o (si celle-ci n?est pas int?gr?e " "dans le contr?leur)." -#: src/libvlc-module.c:368 +#: src/libvlc-module.c:385 msgid "Video alignment" msgstr "Alignement vid?o" -#: src/libvlc-module.c:370 +#: src/libvlc-module.c:387 msgid "" "Enforce the alignment of the video in its window. By default (0) it will be " "centered (0=center, 1=left, 2=right, 4=top, 8=bottom, you can also use " @@ -1978,78 +1916,78 @@ msgstr "" "sp?cifier une combinaison des ces valeurs, comme par exemple 6=4+2, donc en " "haut ? droite)." -#: src/libvlc-module.c:375 src/libvlc-module.c:424 +#: src/libvlc-module.c:392 src/libvlc-module.c:441 #: modules/audio_filter/channel_mixer/mono.c:101 modules/codec/dvbsub.c:75 -#: modules/codec/subtitles/subsdec.c:102 modules/codec/zvbi.c:78 -#: modules/gui/fbosd.c:164 modules/video_filter/logo.c:100 +#: modules/codec/subtitles/subsdec.c:102 modules/codec/zvbi.c:79 +#: modules/gui/fbosd.c:162 modules/video_filter/logo.c:100 #: modules/video_filter/marq.c:136 modules/video_filter/mosaic.c:172 #: modules/video_filter/osdmenu.c:85 modules/video_filter/rss.c:171 msgid "Center" msgstr "Centr?" -#: src/libvlc-module.c:375 src/libvlc-module.c:424 modules/codec/dvbsub.c:75 -#: modules/codec/zvbi.c:78 modules/gui/fbosd.c:164 +#: src/libvlc-module.c:392 src/libvlc-module.c:441 modules/codec/dvbsub.c:75 +#: modules/codec/zvbi.c:79 modules/gui/fbosd.c:162 #: modules/gui/qt4/ui/video_effects.ui:335 -#: modules/gui/qt4/ui/video_effects.ui:868 -#: modules/gui/qt4/ui/video_effects.ui:922 modules/video_filter/logo.c:100 +#: modules/gui/qt4/ui/video_effects.ui:874 +#: modules/gui/qt4/ui/video_effects.ui:928 modules/video_filter/logo.c:100 #: modules/video_filter/marq.c:136 modules/video_filter/mosaic.c:172 #: modules/video_filter/osdmenu.c:85 modules/video_filter/rss.c:171 msgid "Top" msgstr "Haut" -#: src/libvlc-module.c:375 src/libvlc-module.c:424 modules/codec/dvbsub.c:75 -#: modules/codec/zvbi.c:78 modules/gui/fbosd.c:164 +#: src/libvlc-module.c:392 src/libvlc-module.c:441 modules/codec/dvbsub.c:75 +#: modules/codec/zvbi.c:79 modules/gui/fbosd.c:162 #: modules/gui/qt4/ui/video_effects.ui:386 modules/video_filter/logo.c:100 #: modules/video_filter/marq.c:136 modules/video_filter/mosaic.c:172 #: modules/video_filter/osdmenu.c:85 modules/video_filter/rss.c:171 msgid "Bottom" msgstr "Bas" -#: src/libvlc-module.c:376 src/libvlc-module.c:425 modules/codec/dvbsub.c:76 -#: modules/codec/zvbi.c:79 modules/gui/fbosd.c:165 +#: src/libvlc-module.c:393 src/libvlc-module.c:442 modules/codec/dvbsub.c:76 +#: modules/codec/zvbi.c:80 modules/gui/fbosd.c:163 #: modules/video_filter/logo.c:101 modules/video_filter/marq.c:137 #: modules/video_filter/mosaic.c:173 modules/video_filter/osdmenu.c:86 #: modules/video_filter/rss.c:172 msgid "Top-Left" msgstr "Haut-Gauche" -#: src/libvlc-module.c:376 src/libvlc-module.c:425 modules/codec/dvbsub.c:76 -#: modules/codec/zvbi.c:79 modules/gui/fbosd.c:165 +#: src/libvlc-module.c:393 src/libvlc-module.c:442 modules/codec/dvbsub.c:76 +#: modules/codec/zvbi.c:80 modules/gui/fbosd.c:163 #: modules/video_filter/logo.c:101 modules/video_filter/marq.c:137 #: modules/video_filter/mosaic.c:173 modules/video_filter/osdmenu.c:86 #: modules/video_filter/rss.c:172 msgid "Top-Right" msgstr "Haut-Droite" -#: src/libvlc-module.c:376 src/libvlc-module.c:425 modules/codec/dvbsub.c:76 -#: modules/codec/zvbi.c:79 modules/gui/fbosd.c:165 +#: src/libvlc-module.c:393 src/libvlc-module.c:442 modules/codec/dvbsub.c:76 +#: modules/codec/zvbi.c:80 modules/gui/fbosd.c:163 #: modules/video_filter/logo.c:101 modules/video_filter/marq.c:137 #: modules/video_filter/mosaic.c:173 modules/video_filter/osdmenu.c:86 #: modules/video_filter/rss.c:172 msgid "Bottom-Left" msgstr "Bas-Gauche" -#: src/libvlc-module.c:376 src/libvlc-module.c:425 modules/codec/dvbsub.c:76 -#: modules/codec/zvbi.c:79 modules/gui/fbosd.c:165 +#: src/libvlc-module.c:393 src/libvlc-module.c:442 modules/codec/dvbsub.c:76 +#: modules/codec/zvbi.c:80 modules/gui/fbosd.c:163 #: modules/video_filter/logo.c:101 modules/video_filter/marq.c:137 #: modules/video_filter/mosaic.c:173 modules/video_filter/osdmenu.c:86 #: modules/video_filter/rss.c:172 msgid "Bottom-Right" msgstr "Bas-Droite" -#: src/libvlc-module.c:378 +#: src/libvlc-module.c:395 msgid "Zoom video" msgstr "Zoom" -#: src/libvlc-module.c:380 +#: src/libvlc-module.c:397 msgid "You can zoom the video by the specified factor." msgstr "Vous pouvez agrandir l?image d?un facteur sp?cifi?." -#: src/libvlc-module.c:382 +#: src/libvlc-module.c:399 msgid "Grayscale video output" msgstr "Sortie vid?o en niveaux de gris" -#: src/libvlc-module.c:384 +#: src/libvlc-module.c:401 msgid "" "Output video in grayscale. As the color information aren't decoded, this can " "save some processing power." @@ -2057,27 +1995,27 @@ msgstr "" "Sortie vid?o en noir et blanc. L?information de couleur pr?sente dans la " "vid?o ne sera pas d?cod?e, ce qui permet d??conomiser du temps processeur." -#: src/libvlc-module.c:387 +#: src/libvlc-module.c:404 msgid "Embedded video" msgstr "Vid?o int?gr?e" -#: src/libvlc-module.c:389 +#: src/libvlc-module.c:406 msgid "Embed the video output in the main interface." msgstr "Int?grer la vid?o dans l?interface principale" -#: src/libvlc-module.c:391 +#: src/libvlc-module.c:408 msgid "Fullscreen video output" msgstr "Sortie vid?o en plein ?cran" -#: src/libvlc-module.c:393 +#: src/libvlc-module.c:410 msgid "Start video in fullscreen mode" msgstr "D?marrer en plein ?cran" -#: src/libvlc-module.c:395 +#: src/libvlc-module.c:412 msgid "Overlay video output" msgstr "Sortie vid?o en overlay" -#: src/libvlc-module.c:397 +#: src/libvlc-module.c:414 msgid "" "Overlay is the hardware acceleration capability of your video card (ability " "to render video directly). VLC will try to use it by default." @@ -2086,67 +2024,67 @@ msgstr "" "(capacit? ? afficher la vid?o directement). VLC tentera de l?utiliser par " "d?faut." -#: src/libvlc-module.c:400 src/video_output/vout_intf.c:401 -#: modules/gui/macosx/simple_prefs.m:287 modules/gui/qt4/ui/sprefs_video.ui:68 +#: src/libvlc-module.c:417 src/video_output/vout_intf.c:421 +#: modules/gui/macosx/simple_prefs.m:282 modules/gui/qt4/ui/sprefs_video.ui:65 msgid "Always on top" msgstr "Toujours au-dessus" -#: src/libvlc-module.c:402 +#: src/libvlc-module.c:419 msgid "Always place the video window on top of other windows." msgstr "Toujours placer la fen?tre vid?o au-dessus des autres fen?tres" -#: src/libvlc-module.c:404 +#: src/libvlc-module.c:421 modules/gui/qt4/ui/sprefs_subtitles.ui:35 msgid "Show media title on video" msgstr "Incruster le titre dans la vid?o." -#: src/libvlc-module.c:406 +#: src/libvlc-module.c:423 msgid "Display the title of the video on top of the movie." msgstr "Afficher le titre au sommet de la vid?o." -#: src/libvlc-module.c:408 -msgid "Show video title for x miliseconds" +#: src/libvlc-module.c:425 +msgid "Show video title for x milliseconds" msgstr "Montrer le titre de la vid?o pendant x millisecondes." -#: src/libvlc-module.c:410 -msgid "Show the video title for n miliseconds, default is 5000 ms (5 sec.)" +#: src/libvlc-module.c:427 +msgid "Show the video title for n milliseconds, default is 5000 ms (5 sec.)" msgstr "" "Montrer le titre de la vid?o pendant n millisecondes, le d?faut est 5000 ms " "(5 secs)." -#: src/libvlc-module.c:412 +#: src/libvlc-module.c:429 msgid "Position of video title" msgstr "Position du titre de la vid?o" -#: src/libvlc-module.c:414 +#: src/libvlc-module.c:431 msgid "Place on video where to display the title (default bottom center)." msgstr "" "Endroit de la vid?o o? afficher le titre (par d?faut en bas au centre)." -#: src/libvlc-module.c:416 -msgid "Hide cursor and fullscreen controller after x miliseconds" +#: src/libvlc-module.c:433 +msgid "Hide cursor and fullscreen controller after x milliseconds" msgstr "Cacher le curseur et le contr?leur plein ?cran apr?s x millisecondes" -#: src/libvlc-module.c:419 +#: src/libvlc-module.c:436 msgid "" -"Hide mouse cursor and fullscreen controller after n miliseconds, default is " +"Hide mouse cursor and fullscreen controller after n milliseconds, default is " "3000 ms (3 sec.)" msgstr "" "Cacher le curseur de la souris et le contr?leur plein ?cran apr?s x " "millisecondes, le d?faut est 3000 ms (3 secs)." -#: src/libvlc-module.c:427 +#: src/libvlc-module.c:444 msgid "Disable screensaver" msgstr "D?sactiver l??conomiseur d??cran" -#: src/libvlc-module.c:428 +#: src/libvlc-module.c:445 msgid "Disable the screensaver during video playback." msgstr "D?sactiver l??conomiseur d??cran pendant la lecture" -#: src/libvlc-module.c:430 +#: src/libvlc-module.c:447 msgid "Inhibit the power management daemon during playback" msgstr "D?sactiver le gestionnaire d??nergie pendant la lecture" -#: src/libvlc-module.c:431 +#: src/libvlc-module.c:448 msgid "" "Inhibits the power management daemon during any playback, to avoid the " "computer being suspended because of inactivity." @@ -2154,11 +2092,11 @@ msgstr "" "D?sactiver le gestionnaire d??nergie pendant la lecture, pour ?viter que " "l?ordinateur soit mis en veille pour cause d?inactivit?." -#: src/libvlc-module.c:434 modules/gui/qt4/ui/sprefs_video.ui:48 +#: src/libvlc-module.c:451 modules/gui/qt4/ui/sprefs_video.ui:48 msgid "Window decorations" msgstr "D?corations de fen?tres" -#: src/libvlc-module.c:436 +#: src/libvlc-module.c:453 msgid "" "VLC can avoid creating window caption, frames, etc... around the video, " "giving a \"minimal\" window." @@ -2166,19 +2104,19 @@ msgstr "" "Ne pas cr?er de cadre autour de la fen?tre, si possible. Ceci permet d?avoir " "une fen?tre \"minimale\"." -#: src/libvlc-module.c:439 +#: src/libvlc-module.c:456 msgid "Video output filter module" msgstr "Module de filtre de sortie vid?o" -#: src/libvlc-module.c:441 +#: src/libvlc-module.c:458 msgid "This adds video output filters like clone or wall" -msgstr "" +msgstr "Ajouter des filtres de sorie vid?o comme clone ou mur" -#: src/libvlc-module.c:443 +#: src/libvlc-module.c:460 msgid "Video filter module" msgstr "Module de filtre vid?o" -#: src/libvlc-module.c:445 +#: src/libvlc-module.c:462 msgid "" "This adds post-processing filters to enhance the picture quality, for " "instance deinterlacing, or distortthe video." @@ -2187,49 +2125,49 @@ msgstr "" "par exemple du d?sentrelacement, ou pour dupliquer ou d?former la fen?tre " "vid?o." -#: src/libvlc-module.c:449 +#: src/libvlc-module.c:466 msgid "Video snapshot directory (or filename)" -msgstr "R?pertoire des captures" +msgstr "Dossier des captures" -#: src/libvlc-module.c:451 +#: src/libvlc-module.c:468 msgid "Directory where the video snapshots will be stored." -msgstr "R?pertoire o? les captures d??cran seront stock?es." +msgstr "Dossier o? les captures d??cran seront stock?es." -#: src/libvlc-module.c:453 src/libvlc-module.c:455 +#: src/libvlc-module.c:470 src/libvlc-module.c:472 msgid "Video snapshot file prefix" msgstr "Pr?fix des captures d??cran" -#: src/libvlc-module.c:457 +#: src/libvlc-module.c:474 msgid "Video snapshot format" msgstr "Format des captures d??cran" -#: src/libvlc-module.c:459 +#: src/libvlc-module.c:476 msgid "Image format which will be used to store the video snapshots" msgstr "Format d?image ? utiliser pour stocker les captures d??cran." -#: src/libvlc-module.c:461 +#: src/libvlc-module.c:478 msgid "Display video snapshot preview" msgstr "Pr?visualisation de la capture" -#: src/libvlc-module.c:463 +#: src/libvlc-module.c:480 msgid "Display the snapshot preview in the screen's top-left corner." msgstr "Afficher une pr?-visualisation de la capture d??cran sur la vid?o." -#: src/libvlc-module.c:465 +#: src/libvlc-module.c:482 msgid "Use sequential numbers instead of timestamps" msgstr "Utiliser une num?rotation s?quentielle au lieu de la date et l?heure" -#: src/libvlc-module.c:467 +#: src/libvlc-module.c:484 msgid "Use sequential numbers instead of timestamps for snapshot numbering" msgstr "" "Utiliser une num?rotation s?quentielle au lieu de la date et l?heure pour " "enregistrer les captures d??cran" -#: src/libvlc-module.c:469 +#: src/libvlc-module.c:486 msgid "Video snapshot width" msgstr "Largeur des captures d??cran" -#: src/libvlc-module.c:471 +#: src/libvlc-module.c:488 msgid "" "You can enforce the width of the video snapshot. By default it will keep the " "original width (-1). Using 0 will scale the width to keep the aspect ratio." @@ -2237,11 +2175,11 @@ msgstr "" "Forcer la largeur de la capture d??cran. Par d?faut, la largeur est " "conserv?e (-1). La valeur 0 redimensionnera en conservant les proportions." -#: src/libvlc-module.c:475 +#: src/libvlc-module.c:492 msgid "Video snapshot height" msgstr "Hauteur des captures d??cran" -#: src/libvlc-module.c:477 +#: src/libvlc-module.c:494 msgid "" "You can enforce the height of the video snapshot. By default it will keep " "the original height (-1). Using 0 will scale the height to keep the aspect " @@ -2250,11 +2188,11 @@ msgstr "" "Forcer la hauteur de la capture d??cran. Par d?faut, la hauteur est " "conserv?e (-1). La valeur 0 redimensionnera en conservant les proportions." -#: src/libvlc-module.c:481 +#: src/libvlc-module.c:498 msgid "Video cropping" msgstr "Rognage" -#: src/libvlc-module.c:483 +#: src/libvlc-module.c:500 msgid "" "This forces the cropping of the source video. Accepted formats are x:y (4:3, " "16:9, etc.) expressing the global image aspect." @@ -2262,11 +2200,11 @@ msgstr "" "Forcer un format de rognage de la vid?o. Les formats accept?s sont du type x:" "y (4:3, 16:9, ...) exprimant l?aspect global de l?image." -#: src/libvlc-module.c:487 +#: src/libvlc-module.c:504 msgid "Source aspect ratio" msgstr "Format d??cran de la source" -#: src/libvlc-module.c:489 +#: src/libvlc-module.c:506 msgid "" "This forces the source aspect ratio. For instance, some DVDs claim to be " "16:9 while they are actually 4:3. This can also be used as a hint for VLC " @@ -2280,31 +2218,56 @@ msgstr "" "accept?s sont de la forme x:y (4:3, 16:9, etc.), ou une valeur d?cimale " "(1,25, 1,3333, etc.)." -#: src/libvlc-module.c:496 -msgid "Custom crop ratios list" +#: src/libvlc-module.c:513 +msgid "Video Auto Scaling" +msgstr "Dimensionnement auto de la vid?o" + +#: src/libvlc-module.c:515 +msgid "Let the video scale to fit a given window or fullscreen." +msgstr "Permettre le redimensionnement de la vid?o ? la taille " +"d'une fen?tre pr?cise ou en plein-?cran" + +#: src/libvlc-module.c:517 +msgid "Video scaling factor" +msgstr "Facteur de dimensionnement de la vid?o" + +#: src/libvlc-module.c:519 +msgid "" +"Scaling factor used when Auto Scaling is disabled.\n" +"Default value is 1.0 (original video size)." msgstr "" +"Facteur d'?chelle quand le mode auto est inhib?.\n" +"La valeur par d?faut est 1,0 pour avoir la taille d'origine." -#: src/libvlc-module.c:498 +#: src/libvlc-module.c:522 +msgid "Custom crop ratios list" +msgstr "Liste des rognages personnalis?s" + +#: src/libvlc-module.c:524 msgid "" "Comma seperated list of crop ratios which will be added in the interface's " "crop ratios list." msgstr "" +"Liste des rognages (s?par?s par des virgules) qui seront ajout?s ? la liste " +"des rognages de l'interface" -#: src/libvlc-module.c:501 +#: src/libvlc-module.c:527 msgid "Custom aspect ratios list" -msgstr "" +msgstr "Liste de formats d'?cran personnalis?s" -#: src/libvlc-module.c:503 +#: src/libvlc-module.c:529 msgid "" "Comma seperated list of aspect ratios which will be added in the interface's " "aspect ratio list." msgstr "" +"Liste de formats d'?cran (s?par?s par des virgules) qui seront ajout?s ? la " +"liste des formats d'?cran de l'interface" -#: src/libvlc-module.c:506 +#: src/libvlc-module.c:532 msgid "Fix HDTV height" msgstr "Corrige la hauteur HDTV" -#: src/libvlc-module.c:508 +#: src/libvlc-module.c:534 msgid "" "This allows proper handling of HDTV-1080 video format even if broken encoder " "incorrectly sets height to 1088 lines. You should only disable this option " @@ -2315,11 +2278,11 @@ msgstr "" "ne d?sactiver cette option que si votre vid?o est dans un format non-" "standard n?cessitant les 1088 lignes." -#: src/libvlc-module.c:513 +#: src/libvlc-module.c:539 msgid "Monitor pixel aspect ratio" msgstr "Format des pixels de l??cran" -#: src/libvlc-module.c:515 +#: src/libvlc-module.c:541 msgid "" "This forces the monitor aspect ratio. Most monitors have square pixels " "(1:1). If you have a 16:9 screen, you might need to change this to 4:3 in " @@ -2329,12 +2292,12 @@ msgstr "" "carr?s (1:1). Si vous avez un ?cran 16:9, vous devrez peut-?tre utiliser 4:3 " "afin de pr?server les proportions." -#: src/libvlc-module.c:519 modules/gui/macosx/simple_prefs.m:289 -#: modules/gui/qt4/ui/sprefs_video.ui:101 +#: src/libvlc-module.c:545 modules/gui/macosx/simple_prefs.m:284 +#: modules/gui/qt4/ui/sprefs_video.ui:95 msgid "Skip frames" msgstr "Sauter des images" -#: src/libvlc-module.c:521 +#: src/libvlc-module.c:547 msgid "" "Enables framedropping on MPEG2 stream. Framedropping occurs when your " "computer is not powerful enough" @@ -2342,11 +2305,11 @@ msgstr "" "Ceci active la suppression d?images sur les flux MPEG-2. La suppression " "d?images se produit lorsque votre ordinateur n?est pas assez puissant." -#: src/libvlc-module.c:524 +#: src/libvlc-module.c:550 msgid "Drop late frames" -msgstr "Suppression d?images" +msgstr "Suppression des images en retard" -#: src/libvlc-module.c:526 +#: src/libvlc-module.c:552 msgid "" "This drops frames that are late (arrive to the video output after their " "intended display date)." @@ -2354,11 +2317,11 @@ msgstr "" "Supprimer les images en retard (qui arrivent ? la sortie vid?o apr?s la date " "? laquelle elles auraient d? ?tre affich?es)." -#: src/libvlc-module.c:529 +#: src/libvlc-module.c:555 msgid "Quiet synchro" msgstr "Synchronisation silencieuse" -#: src/libvlc-module.c:531 +#: src/libvlc-module.c:557 msgid "" "This avoids flooding the message log with debug output from the video output " "synchronization mechanism." @@ -2366,7 +2329,26 @@ msgstr "" "Activez cette option pour ?viter que de nombreux messages de synchronisation " "vid?o n?apparaissent dans le journal." -#: src/libvlc-module.c:540 +#: src/libvlc-module.c:560 +msgid "key and mouse event handling at vout level." +msgstr "" + +#: src/libvlc-module.c:562 +msgid "" +"This parameter accepts values : 1 (full event handling support), 2 (event " +"handling only for fullscreen) or 3 (No event handling). Full event handling " +"support is the default value." +msgstr "" + +#: src/libvlc-module.c:568 +msgid "FullSupport" +msgstr "Support complet" + +#: src/libvlc-module.c:568 +msgid "Fullscreen-Only" +msgstr "Plein ?cran seulement" + +#: src/libvlc-module.c:576 msgid "" "These options allow you to modify the behavior of the input subsystem, such " "as the DVD or VCD device, the network interface settings or the subtitle " @@ -2376,11 +2358,11 @@ msgstr "" "p?riph?riques DVD ou VCD), ainsi que l?interface r?seau, ou le canal de sous-" "titres." -#: src/libvlc-module.c:544 +#: src/libvlc-module.c:580 msgid "Clock reference average counter" msgstr "Compteur moyen de r?f?rence de l?horloge" -#: src/libvlc-module.c:546 +#: src/libvlc-module.c:582 msgid "" "When using the PVR input (or a very irregular source), you should set this " "to 10000." @@ -2388,11 +2370,11 @@ msgstr "" "Lors de l?utilisation de l?entr?e PVR ou de toute autre source tr?s " "irr?guli?re, vous devriez r?gler cette valeur ? 10000." -#: src/libvlc-module.c:549 +#: src/libvlc-module.c:585 msgid "Clock synchronisation" msgstr "Synchronisation de l?horloge" -#: src/libvlc-module.c:551 +#: src/libvlc-module.c:587 msgid "" "It is possible to disable the input clock synchronisation for real-time " "sources. Use this if you experience jerky playback of network streams." @@ -2401,11 +2383,11 @@ msgstr "" "synchronisation d?horloge pour les sources temps-r?el. Utilisez ceci si vous " "avez des probl?mes de lecture sur des flux r?seau." -#: src/libvlc-module.c:555 modules/control/netsync.c:82 +#: src/libvlc-module.c:591 modules/control/netsync.c:77 msgid "Network synchronisation" msgstr "Synchronisation r?seau" -#: src/libvlc-module.c:556 +#: src/libvlc-module.c:592 msgid "" "This allows you to remotely synchronise clocks for server and client. The " "detailed settings are available in Advanced / Network Sync." @@ -2413,40 +2395,40 @@ msgstr "" "Synchroniser les horloges du serveur et des clients. Les r?glages d?taill?s " "sont dans Avanc? / Synchronisation" -#: src/libvlc-module.c:562 src/video_output/vout_intf.c:179 -#: src/video_output/vout_intf.c:197 modules/access/dshow/dshow.cpp:81 +#: src/libvlc-module.c:598 src/video_output/vout_intf.c:183 +#: src/video_output/vout_intf.c:201 modules/access/dshow/dshow.cpp:81 #: modules/access/dshow/dshow.cpp:83 modules/access/dshow/dshow.cpp:86 -#: modules/access/dshow/dshow.cpp:92 modules/access/v4l2/v4l2.c:246 -#: modules/audio_output/alsa.c:105 modules/gui/fbosd.c:173 -#: modules/gui/macosx/prefs_widgets.m:1280 -#: modules/gui/macosx/simple_prefs.m:381 modules/gui/macosx/simple_prefs.m:472 -#: modules/gui/macosx/simple_prefs.m:698 modules/gui/macosx/vout.m:203 -#: modules/gui/qt4/components/preferences_widgets.cpp:559 +#: modules/access/dshow/dshow.cpp:92 modules/access/v4l2.c:216 +#: modules/audio_output/alsa.c:105 modules/gui/fbosd.c:171 +#: modules/gui/macosx/prefs_widgets.m:1254 +#: modules/gui/macosx/simple_prefs.m:375 modules/gui/macosx/simple_prefs.m:470 +#: modules/gui/macosx/simple_prefs.m:686 modules/gui/macosx/vout.m:211 +#: modules/gui/qt4/components/preferences_widgets.cpp:568 #: modules/video_filter/marq.c:61 modules/video_filter/rss.c:70 #: modules/video_filter/rss.c:182 modules/video_output/msw/directx.c:161 msgid "Default" -msgstr "Pr?d?fini" +msgstr "Pr?d?fini(e)" -#: src/libvlc-module.c:562 modules/gui/macosx/equalizer.m:160 -#: modules/gui/macosx/extended.m:96 modules/gui/macosx/wizard.m:352 +#: src/libvlc-module.c:598 modules/gui/macosx/equalizer.m:157 +#: modules/gui/macosx/extended.m:96 modules/gui/macosx/wizard.m:354 #: modules/gui/qt4/ui/equalizer.ui:27 modules/gui/qt4/ui/vlm.ui:70 msgid "Enable" msgstr "Activer" -#: src/libvlc-module.c:564 modules/misc/notify/growl_udp.c:66 +#: src/libvlc-module.c:600 modules/misc/notify/growl_udp.c:66 msgid "UDP port" msgstr "Port UDP" -#: src/libvlc-module.c:566 +#: src/libvlc-module.c:602 msgid "This is the default port used for UDP streams. Default is 1234." msgstr "" "Port utilis? par d?faut pour les flux UDP. Le port par d?faut est 1234." -#: src/libvlc-module.c:568 +#: src/libvlc-module.c:604 msgid "MTU of the network interface" msgstr "MTU de l?interface r?seau" -#: src/libvlc-module.c:570 +#: src/libvlc-module.c:606 msgid "" "This is the maximum application-layer packet size that can be transmitted " "over the network (in bytes)." @@ -2454,11 +2436,11 @@ msgstr "" "Taille maximale (en ottets )des paquets pouvant ?tre transmis sur le r?seau. " "En Ethernet, elle est g?n?ralement de 1500 octets." -#: src/libvlc-module.c:575 modules/stream_out/rtp.c:118 +#: src/libvlc-module.c:611 modules/stream_out/rtp.c:119 msgid "Hop limit (TTL)" msgstr "Temps de vie (TTL)" -#: src/libvlc-module.c:577 +#: src/libvlc-module.c:613 modules/stream_out/rtp.c:121 msgid "" "This is the hop limit (also known as \"Time-To-Live\" or TTL) of the " "multicast packets sent by the stream output (-1 = use operating system built-" @@ -2468,21 +2450,21 @@ msgstr "" "valeur par d?faut, -1, signifie que le choix sera laiss? au syst?me " "d?exploitation)." -#: src/libvlc-module.c:581 +#: src/libvlc-module.c:617 msgid "Multicast output interface" msgstr "Interface de sortie multicast" -#: src/libvlc-module.c:583 +#: src/libvlc-module.c:619 msgid "Default multicast interface. This overrides the routing table." msgstr "" "Indiquez l?interface de sortie multicast IPv6. Ce r?glage passe outre la " "table de routage." -#: src/libvlc-module.c:585 +#: src/libvlc-module.c:621 msgid "IPv4 multicast output interface address" msgstr "Adresse IPv4 de l?interface de sortie multicast" -#: src/libvlc-module.c:587 +#: src/libvlc-module.c:623 msgid "" "IPv4 adress for the default multicast interface. This overrides the routing " "table." @@ -2490,17 +2472,20 @@ msgstr "" "Indiquez l?adresse IPv4 de l?interface de sortie multicast Ce r?glage passe " "outre la table de routage." -#: src/libvlc-module.c:590 +#: src/libvlc-module.c:626 msgid "DiffServ Code Point" -msgstr "" +msgstr "DiffServ Code Point" -#: src/libvlc-module.c:591 +#: src/libvlc-module.c:627 msgid "" "Differentiated Services Code Point for outgoing UDP streams (or IPv4 Type Of " "Service, or IPv6 Traffic Class). This is used for network Quality of Service." msgstr "" +"Differentiated Services Code Point pour les flux UDP sortant (ou type de " +"service IPv4, ou classe de trafic IPv6). Cette valeur est utilis?e pour la " +"qualit? de service du r?seau." -#: src/libvlc-module.c:597 +#: src/libvlc-module.c:633 msgid "" "Choose the program to select by giving its Service ID. Only use this option " "if you want to read a multi-program stream (like DVB streams for example)." @@ -2509,7 +2494,7 @@ msgstr "" "cette option que pour lire un flux multiprogramme (tel qu?un flux DVB, par " "exemple)." -#: src/libvlc-module.c:603 +#: src/libvlc-module.c:639 msgid "" "Choose the programs to select by giving a comma-separated list of Service " "IDs (SIDs). Only use this option if you want to read a multi-program stream " @@ -2519,27 +2504,27 @@ msgstr "" "s?par?s par des virgules. N?utilisez cette option que pour lire un flux " "multiprogramme (tel qu?un flux DVB, par exemple)." -#: src/libvlc-module.c:609 modules/gui/qt4/ui/open_disk.ui:238 +#: src/libvlc-module.c:645 modules/gui/qt4/ui/open_disk.ui:324 msgid "Audio track" msgstr "Piste audio" -#: src/libvlc-module.c:611 +#: src/libvlc-module.c:647 msgid "Stream number of the audio track to use (from 0 to n)." msgstr "Num?ro de flux du canal audio ? utiliser (de 0 ? n)." -#: src/libvlc-module.c:614 modules/gui/qt4/ui/open_disk.ui:270 +#: src/libvlc-module.c:650 modules/gui/qt4/ui/open_disk.ui:270 msgid "Subtitles track" msgstr "Piste de sous-titres" -#: src/libvlc-module.c:616 +#: src/libvlc-module.c:652 msgid "Stream number of the subtitle track to use (from 0 to n)." msgstr "Num?ro de flux du canal de sous-titres ? utiliser (de 0 ? n)." -#: src/libvlc-module.c:619 +#: src/libvlc-module.c:655 msgid "Audio language" msgstr "Langue audio" -#: src/libvlc-module.c:621 +#: src/libvlc-module.c:657 msgid "" "Language of the audio track you want to use (comma separated, two or three " "letter country code)." @@ -2547,11 +2532,11 @@ msgstr "" "Langue du canal audio que vous souhaitez utiliser (s?par? par des virgules, " "codes de pays ? deux ou trois lettres)." -#: src/libvlc-module.c:624 +#: src/libvlc-module.c:660 msgid "Subtitle language" msgstr "Langue des sous-titres" -#: src/libvlc-module.c:626 +#: src/libvlc-module.c:662 msgid "" "Language of the subtitle track you want to use (comma separated, two or " "three letters country code)." @@ -2559,59 +2544,67 @@ msgstr "" "Langue de la piste de sous-titres que vous souhaitez utiliser (s?par? par " "des virgules, codes de pays ? deux ou trois lettres)." -#: src/libvlc-module.c:630 +#: src/libvlc-module.c:666 msgid "Audio track ID" msgstr "ID de la piste audio" -#: src/libvlc-module.c:632 +#: src/libvlc-module.c:668 msgid "Stream ID of the audio track to use." msgstr "Identifiant du canal audio ? utiliser (de 0 ? n)." -#: src/libvlc-module.c:634 +#: src/libvlc-module.c:670 msgid "Subtitles track ID" msgstr "ID de la piste de sous-titres" -#: src/libvlc-module.c:636 +#: src/libvlc-module.c:672 msgid "Stream ID of the subtitle track to use." msgstr "Identifiant du canal de sous-titres ? utiliser (de 0 ? n)." -#: src/libvlc-module.c:638 +#: src/libvlc-module.c:674 msgid "Input repetitions" msgstr "R?p?titions de l?entr?e" -#: src/libvlc-module.c:640 +#: src/libvlc-module.c:676 msgid "Number of time the same input will be repeated" msgstr "Nombre de fois o? la m?me entr?e sera r?p?t?e" -#: src/libvlc-module.c:642 +#: src/libvlc-module.c:678 msgid "Start time" msgstr "Temps de d?but" -#: src/libvlc-module.c:644 +#: src/libvlc-module.c:680 msgid "The stream will start at this position (in seconds)." msgstr "Le flux commencera ? cette position, en secondes." -#: src/libvlc-module.c:646 +#: src/libvlc-module.c:682 msgid "Stop time" msgstr "Temps d?arr?t" -#: src/libvlc-module.c:648 +#: src/libvlc-module.c:684 msgid "The stream will stop at this position (in seconds)." msgstr "Le flux s?arr?tera ? cette position, en secondes." -#: src/libvlc-module.c:650 +#: src/libvlc-module.c:686 msgid "Run time" msgstr "Temps de lecture" -#: src/libvlc-module.c:652 +#: src/libvlc-module.c:688 msgid "The stream will run this duration (in seconds)." msgstr "Le flux sera jou? pendant tant de secondes." -#: src/libvlc-module.c:654 +#: src/libvlc-module.c:690 +msgid "Fast seek" +msgstr "Avance rapide" + +#: src/libvlc-module.c:692 +msgid "Favor speed over precision while seeking" +msgstr "Favoriser la vitesse par rapport ? la pr?cision pendant la recherche" + +#: src/libvlc-module.c:694 msgid "Input list" msgstr "Liste des entr?es" -#: src/libvlc-module.c:656 +#: src/libvlc-module.c:696 msgid "" "You can give a comma-separated list of inputs that will be concatenated " "together after the normal one." @@ -2619,11 +2612,11 @@ msgstr "" "Ceci vous permet de sp?cifier une liste de flux ? lire, s?par?s par des " "virgules. Les flux seront lus les uns ? la suite des autres." -#: src/libvlc-module.c:659 +#: src/libvlc-module.c:699 msgid "Input slave (experimental)" msgstr "Entr?e auxiliaire (exp?rimental)" -#: src/libvlc-module.c:661 +#: src/libvlc-module.c:701 msgid "" "This allows you to play from several inputs at the same time. This feature " "is experimental, not all formats are supported. Use a '#' separated list of " @@ -2633,20 +2626,59 @@ msgstr "" "exp?rimentale, tous les formats ne sont pas support?s. Utilisez une liste de " "flux s?par?s par des \"#\"" -#: src/libvlc-module.c:665 +#: src/libvlc-module.c:705 msgid "Bookmarks list for a stream" msgstr "Liste des signets pour un flux" -#: src/libvlc-module.c:667 +#: src/libvlc-module.c:707 msgid "" "You can manually give a list of bookmarks for a stream in the form " "\"{name=bookmark-name,time=optional-time-offset,bytes=optional-byte-offset}," "{...}\"" msgstr "" -"Liste de signets pour un flux sous la forme ? {name=nom-du-signet,time=date-" -"facultative,bytes=position-facultative-en-octets},{?} ?." +"Liste de signets pour un flux sous la forme ??{name=nom-du-signet,time=date-" +"facultative,bytes=position-facultative-en-octets},{?}??." + +#: src/libvlc-module.c:711 +msgid "Record directory or filename" +msgstr "Dossier ou nom de fichier des captures" + +#: src/libvlc-module.c:713 +msgid "Directory or filename where the records will be stored" +msgstr "Dossier ou nom de fichier de sauvegarde de l?enregistrement." + +#: src/libvlc-module.c:715 +msgid "Prefer native stream recording" +msgstr "Pr?f?rer l'enregistrement des flux d'origine" -#: src/libvlc-module.c:673 +#: src/libvlc-module.c:717 +msgid "" +"When possible, the input stream will be recorded instead of usingthe stream " +"output module" +msgstr "" +"Si possible le flux d'entr?e sera enregistr? au lieu d'utiliser le r?sultat du" +" module de sortie" + +#: src/libvlc-module.c:720 +msgid "Timeshift directory" +msgstr "Dossier temporaire pour le diff?r?" + +#: src/libvlc-module.c:722 +msgid "Directory used to store the timeshift temporary files." +msgstr "Dossier utilis? pour stocker les fichiers temporaires du diff?r?" + +#: src/libvlc-module.c:724 +msgid "Timeshift granularity" +msgstr "Granularit? en diff?r?" + +#: src/libvlc-module.c:726 +msgid "" +"This is the maximum size in bytes of the temporary files that will be used " +"to store the timeshifted streams." +msgstr "" +"Taille maximale des fichiers temporaires ? utiliser pour stocker le flux diff?r?." + +#: src/libvlc-module.c:731 msgid "" "These options allow you to modify the behavior of the subpictures subsystem. " "You can for example enable subpictures filters (logo, etc.). Enable these " @@ -2655,15 +2687,15 @@ msgid "" msgstr "" "Cest options vous permettent de r?gler le syst?me d?incrustations. Vous " "pouvez par exemple activer des filtres de g?n?ration d?incrustations (logo, " -"texte, heure?). Activez ces filtres ici, et configurez les dans la section ? " -"subpicture filters ?. Vous pouvez ?galement effectuer des r?glages divers " +"texte, heure?). Activez ces filtres ici, et configurez les dans la section " +"??subpicture filters??. Vous pouvez ?galement effectuer des r?glages divers " "ici." -#: src/libvlc-module.c:679 +#: src/libvlc-module.c:737 modules/gui/qt4/ui/sprefs_subtitles.ui:171 msgid "Force subtitle position" msgstr "Forcer la position des sous-titres" -#: src/libvlc-module.c:681 +#: src/libvlc-module.c:739 msgid "" "You can use this option to place the subtitles under the movie, instead of " "over the movie. Try several positions." @@ -2671,72 +2703,71 @@ msgstr "" "Utilisez cette option pour placer les sous-titres sous le film, au lieu de " "les avoir en surimpression. Essayez diff?rentes positions." -#: src/libvlc-module.c:684 +#: src/libvlc-module.c:742 msgid "Enable sub-pictures" msgstr "Incrustations" -#: src/libvlc-module.c:686 +#: src/libvlc-module.c:744 msgid "You can completely disable the sub-picture processing." msgstr "" "Il est possible de d?sactiver totalement la possibilit? d?ajouter des " "incrustations." -#: src/libvlc-module.c:688 src/libvlc-module.c:1586 src/text/iso-639_def.h:143 -#: modules/gui/macosx/simple_prefs.m:278 +#: src/libvlc-module.c:746 src/libvlc-module.c:1651 +#: modules/gui/macosx/simple_prefs.m:273 #: modules/gui/qt4/ui/sprefs_subtitles.ui:22 -#: modules/stream_out/transcode.c:227 +#: modules/stream_out/transcode.c:228 msgid "On Screen Display" msgstr "Affichage ? l??cran (OSD)" -#: src/libvlc-module.c:690 +#: src/libvlc-module.c:748 msgid "" "VLC can display messages on the video. This is called OSD (On Screen " "Display)." msgstr "" -"VLC peut afficher des messages sur la vid?o. Cette fonctionnalit? est " +"VLC peut incruster des messages sur la vid?o. Cette fonctionnalit? est " "appel?e OSD (On Screen Display)." -#: src/libvlc-module.c:693 +#: src/libvlc-module.c:751 msgid "Text rendering module" msgstr "Module de rendu du texte" -#: src/libvlc-module.c:695 +#: src/libvlc-module.c:753 msgid "" "VLC normally uses Freetype for rendering, but this allows you to use svg for " "instance." msgstr "" "Normalement VLC utilise Freetype pour le rendu du texte mais cette option " -"vous laisse la possibilit? d?utilis? SVG par exemple." +"vous laisse la possibilit? d?utiliser SVG par exemple." -#: src/libvlc-module.c:697 +#: src/libvlc-module.c:755 msgid "Subpictures filter module" msgstr "Module d?incrustations" -#: src/libvlc-module.c:699 -#, fuzzy +#: src/libvlc-module.c:757 msgid "" "This adds so-called \"subpicture filters\". These filters overlay some " -"images or text over the video (like a logo, arbitrary text...)." +"images or text over the video (like a logo, arbitrary text, ...)." msgstr "" -"Ajouter des ? filtres d?incrustations ?. Ces filtres ajoutent des images ou " -"du texte sur la vid?o (tels qu?un logo, du texte, ...)." +"Ajouter des ??filtres d?incrustations??. Ces filtres ajoutent des images ou " +"du texte sur la vid?o (tels qu?un logo, du texte,?)." -#: src/libvlc-module.c:702 +#: src/libvlc-module.c:760 msgid "Autodetect subtitle files" msgstr "Autod?tecte le fichier de sous-titres" -#: src/libvlc-module.c:704 +#: src/libvlc-module.c:762 msgid "" "Automatically detect a subtitle file, if no subtitle filename is specified " "(based on the filename of the movie)." msgstr "" "D?tecter automatiquement un fichier de sous-titres si aucun n?est sp?cifi?." -#: src/libvlc-module.c:707 +#: src/libvlc-module.c:765 msgid "Subtitle autodetection fuzziness" msgstr "Tol?rance d?autod?tection des sous-titres" -#: src/libvlc-module.c:709 +#: src/libvlc-module.c:767 msgid "" "This determines how fuzzy subtitle and movie filename matching will be. " "Options are:\n" @@ -2755,34 +2786,34 @@ msgstr "" "caract?res suppl?mentaires\n" "4 = le nom du fichier de sous-titres correspond exactement au nom du film" -#: src/libvlc-module.c:717 +#: src/libvlc-module.c:775 msgid "Subtitle autodetection paths" -msgstr "R?pertoires des sous-titres" +msgstr "Dossiers des sous-titres" -#: src/libvlc-module.c:719 +#: src/libvlc-module.c:777 msgid "" "Look for a subtitle file in those paths too, if your subtitle file was not " "found in the current directory." msgstr "" -"Cherche un fichier de sous-titres dans ces r?pertoires si le fichier de sous-" -"titres n?a pas ?t? trouv? dans le r?pertoire du film." +"Cherche un fichier de sous-titres dans ces dossiers si le fichier de sous-" +"titres n?a pas ?t? trouv? dans le dossier du film." -#: src/libvlc-module.c:722 +#: src/libvlc-module.c:780 msgid "Use subtitle file" msgstr "Utiliser un fichier de sous-titres" -#: src/libvlc-module.c:724 +#: src/libvlc-module.c:782 msgid "" "Load this subtitle file. To be used when autodetect cannot detect your " "subtitle file." msgstr "" "Charge ce fichier de sous-titres. ? utiliser quand l?autod?tection ?choue." -#: src/libvlc-module.c:727 +#: src/libvlc-module.c:785 msgid "DVD device" msgstr "P?riph?rique DVD" -#: src/libvlc-module.c:730 +#: src/libvlc-module.c:788 msgid "" "This is the default DVD drive (or file) to use. Don't forget the colon after " "the drive letter (eg. D:)" @@ -2790,15 +2821,15 @@ msgstr "" "Sp?cifie le p?riph?rique DVD (ou fichier) ? utiliser par d?faut. N?oubliez " "pas les deux-points apr?s la lettre du disque (ex. D:)" -#: src/libvlc-module.c:734 +#: src/libvlc-module.c:792 msgid "This is the default DVD device to use." msgstr "Ceci est le p?riph?rique DVD ? utiliser par d?faut." -#: src/libvlc-module.c:737 +#: src/libvlc-module.c:795 msgid "VCD device" msgstr "P?riph?rique VCD" -#: src/libvlc-module.c:740 +#: src/libvlc-module.c:798 msgid "" "This is the default VCD device to use. If you don't specify anything, we'll " "scan for a suitable CD-ROM device." @@ -2806,15 +2837,15 @@ msgstr "" "Sp?cifie le nom du lecteur de CD-ROM ? utiliser par d?faut. Si vous ne " "sp?cifiez rien, VLC cherchera un lecteur de CD-ROM par lui-m?me." -#: src/libvlc-module.c:744 +#: src/libvlc-module.c:802 msgid "This is the default VCD device to use." msgstr "Ceci est le p?riph?rique VCD ? utiliser par d?faut." -#: src/libvlc-module.c:747 +#: src/libvlc-module.c:805 msgid "Audio CD device" msgstr "Lecteur de CD audio" -#: src/libvlc-module.c:750 +#: src/libvlc-module.c:808 msgid "" "This is the default Audio CD device to use. If you don't specify anything, " "we'll scan for a suitable CD-ROM device." @@ -2822,39 +2853,39 @@ msgstr "" "Sp?cifie le nom du lecteur de CD audio ? utiliser par d?faut. Si vous ne " "sp?cifiez rien, VLC cherchera un lecteur de CD-ROM par lui-m?me." -#: src/libvlc-module.c:754 +#: src/libvlc-module.c:812 msgid "This is the default Audio CD device to use." msgstr "Ceci est le lecteur de CD audio ? utiliser par d?faut." -#: src/libvlc-module.c:757 +#: src/libvlc-module.c:815 msgid "Force IPv6" msgstr "Forcer l?utilisation d?IPv6" -#: src/libvlc-module.c:759 +#: src/libvlc-module.c:817 msgid "IPv6 will be used by default for all connections." msgstr "Utiliser IPv6 par d?faut pour toutes les connexions." -#: src/libvlc-module.c:761 +#: src/libvlc-module.c:819 msgid "Force IPv4" msgstr "Forcer l?utilisation d?IPv4" -#: src/libvlc-module.c:763 +#: src/libvlc-module.c:821 msgid "IPv4 will be used by default for all connections." msgstr "Utiliser IPv4 par d?faut pour toutes les connexions." -#: src/libvlc-module.c:765 +#: src/libvlc-module.c:823 msgid "TCP connection timeout" msgstr "Temps d?expiration TCP" -#: src/libvlc-module.c:767 +#: src/libvlc-module.c:825 msgid "Default TCP connection timeout (in milliseconds). " msgstr "Temps d?expiration par d?faut des connexions TCP en millisecondes. " -#: src/libvlc-module.c:769 +#: src/libvlc-module.c:827 msgid "SOCKS server" msgstr "serveur SOCKS" -#: src/libvlc-module.c:771 +#: src/libvlc-module.c:829 msgid "" "SOCKS proxy server to use. This must be of the form address:port. It will be " "used for all TCP connections" @@ -2862,87 +2893,87 @@ msgstr "" "Serveur SOCKS ? utiliser. Il doit ?tre de la forme adresse:port . Il sera " "utilis? pour toutes les connexions TCP." -#: src/libvlc-module.c:774 +#: src/libvlc-module.c:832 msgid "SOCKS user name" msgstr "Nom d?utilisateur SOCKS" -#: src/libvlc-module.c:776 +#: src/libvlc-module.c:834 msgid "User name to be used for connection to the SOCKS proxy." msgstr "Nom d?utilisateur ? utiliser pour la connexion au serveur SOCKS." -#: src/libvlc-module.c:778 +#: src/libvlc-module.c:836 msgid "SOCKS password" msgstr "Mot de passe SOCKS" -#: src/libvlc-module.c:780 +#: src/libvlc-module.c:838 msgid "Password to be used for connection to the SOCKS proxy." msgstr "Mot de passe ? utiliser pour la connexion au serveur SOCKS." -#: src/libvlc-module.c:782 +#: src/libvlc-module.c:840 msgid "Title metadata" msgstr "Titre" -#: src/libvlc-module.c:784 +#: src/libvlc-module.c:842 msgid "Allows you to specify a \"title\" metadata for an input." -msgstr "Permet de sp?cifier un ? titre ? pour une entr?e." +msgstr "Permet de sp?cifier un ??titre?? pour une entr?e." -#: src/libvlc-module.c:786 +#: src/libvlc-module.c:844 msgid "Author metadata" msgstr "Auteur" -#: src/libvlc-module.c:788 +#: src/libvlc-module.c:846 msgid "Allows you to specify an \"author\" metadata for an input." -msgstr "Permet de sp?cifier un ? auteur ? pour une entr?e." +msgstr "Permet de sp?cifier un ??auteur?? pour une entr?e." -#: src/libvlc-module.c:790 +#: src/libvlc-module.c:848 msgid "Artist metadata" msgstr "Artiste" -#: src/libvlc-module.c:792 +#: src/libvlc-module.c:850 msgid "Allows you to specify an \"artist\" metadata for an input." -msgstr "Permet de sp?cifier un ? artiste ? pour une entr?e." +msgstr "Permet de sp?cifier un ??artiste?? pour une entr?e." -#: src/libvlc-module.c:794 +#: src/libvlc-module.c:852 msgid "Genre metadata" msgstr "Genre" -#: src/libvlc-module.c:796 +#: src/libvlc-module.c:854 msgid "Allows you to specify a \"genre\" metadata for an input." -msgstr "Permet de sp?cifier un ? genre ? pour une entr?e." +msgstr "Permet de sp?cifier un ??genre?? pour une entr?e." -#: src/libvlc-module.c:798 +#: src/libvlc-module.c:856 msgid "Copyright metadata" msgstr "Copyright" -#: src/libvlc-module.c:800 +#: src/libvlc-module.c:858 msgid "Allows you to specify a \"copyright\" metadata for an input." -msgstr "Permet de sp?cifier un ? copyright ? pour une entr?e." +msgstr "Permet de sp?cifier un ??copyright?? pour une entr?e." -#: src/libvlc-module.c:802 +#: src/libvlc-module.c:860 msgid "Description metadata" msgstr "Description" -#: src/libvlc-module.c:804 +#: src/libvlc-module.c:862 msgid "Allows you to specify a \"description\" metadata for an input." -msgstr "Permet de sp?cifier une ? description ? pour une entr?e." +msgstr "Permet de sp?cifier une ??description?? pour une entr?e." -#: src/libvlc-module.c:806 +#: src/libvlc-module.c:864 msgid "Date metadata" msgstr "Date" -#: src/libvlc-module.c:808 +#: src/libvlc-module.c:866 msgid "Allows you to specify a \"date\" metadata for an input." -msgstr "Permet de sp?cifier une ? date ? pour une entr?e." +msgstr "Permet de sp?cifier une ??date?? pour une entr?e." -#: src/libvlc-module.c:810 +#: src/libvlc-module.c:868 msgid "URL metadata" msgstr "URL" -#: src/libvlc-module.c:812 +#: src/libvlc-module.c:870 msgid "Allows you to specify a \"url\" metadata for an input." -msgstr "Permet de sp?cifier une ? url ? pour une entr?e." +msgstr "Permet de sp?cifier une ??url?? pour une entr?e." -#: src/libvlc-module.c:816 +#: src/libvlc-module.c:874 msgid "" "This option can be used to alter the way VLC selects its codecs " "(decompression methods). Only advanced users should alter this option as it " @@ -2952,11 +2983,11 @@ msgstr "" "s?lectionne ses d?codeurs. Seuls les utilisateurs avanc?s devraient modifier " "cette option, car cela peut emp?cher la lecture de tous les flux." -#: src/libvlc-module.c:820 +#: src/libvlc-module.c:878 msgid "Preferred decoders list" msgstr "Liste de d?codeurs pr?f?r?s." -#: src/libvlc-module.c:822 +#: src/libvlc-module.c:880 msgid "" "List of codecs that VLC will use in priority. For instance, 'dummy,a52' will " "try the dummy and a52 codecs before trying the other ones. Only advanced " @@ -2966,26 +2997,28 @@ msgstr "" "s?lectionne ses d?codeurs. Seuls les utilisateurs avanc?s devraient modifier " "cette option, car cela peut emp?cher la lecture de tous les flux." -#: src/libvlc-module.c:827 +#: src/libvlc-module.c:885 msgid "Preferred encoders list" msgstr "Liste d?encodeurs pr?f?r?s" -#: src/libvlc-module.c:829 +#: src/libvlc-module.c:887 msgid "" "This allows you to select a list of encoders that VLC will use in priority." msgstr "Liste d?encodeurs que VLC choisira en priorit?." -#: src/libvlc-module.c:832 +#: src/libvlc-module.c:890 msgid "Prefer system plugins over VLC" -msgstr "" +msgstr "Pr?f?rer les plugins syst?mes plut?t que ceux de VLC" -#: src/libvlc-module.c:834 +#: src/libvlc-module.c:892 msgid "" "Indicates whether VLC will prefer native plugins installed on system over " "VLC owns plugins whenever a choice is available." msgstr "" +"Indique si VLC doit pr?f?rer les plugins natifs install?s sur le syst?me " +"plut?t que les propres plugins de VLC chaque fois que le choix est possible." -#: src/libvlc-module.c:843 +#: src/libvlc-module.c:901 msgid "" "These options allow you to set default global options for the stream output " "subsystem." @@ -2993,11 +3026,11 @@ msgstr "" "Ces options permettent de r?gler les options globales par d?faut pour le " "syst?me de flux de sortie." -#: src/libvlc-module.c:846 +#: src/libvlc-module.c:904 msgid "Default stream output chain" msgstr "Chaine de sortie de flux par d?faut" -#: src/libvlc-module.c:848 +#: src/libvlc-module.c:906 msgid "" "You can enter here a default stream output chain. Refer to the documentation " "to learn how to build such chains.Warning: this chain will be enabled for " @@ -3007,71 +3040,71 @@ msgstr "" "vous r?f?rer ? la documentation pour savoir comment construire ces cha?nes. " "Attention: cette cha?ne sera activ?e pour tous les flux." -#: src/libvlc-module.c:852 +#: src/libvlc-module.c:910 msgid "Enable streaming of all ES" msgstr "Activer la diffusion de tous les flux ?l?mentaires" -#: src/libvlc-module.c:854 +#: src/libvlc-module.c:912 msgid "Stream all elementary streams (video, audio and subtitles)" msgstr "Diffuser tous les flux ?l?mentaires (vid?o, audio et sous-titres)." -#: src/libvlc-module.c:856 +#: src/libvlc-module.c:914 msgid "Display while streaming" msgstr "Afficher pendant la diffusion" -#: src/libvlc-module.c:858 +#: src/libvlc-module.c:916 msgid "Play locally the stream while streaming it." msgstr "Afficher le flux pendant la diffusion." -#: src/libvlc-module.c:860 +#: src/libvlc-module.c:918 msgid "Enable video stream output" msgstr "Activer le flux de sortie vid?o" -#: src/libvlc-module.c:862 +#: src/libvlc-module.c:920 msgid "" "Choose whether the video stream should be redirected to the stream output " "facility when this last one is enabled." msgstr "Diffuser le flux vid?o." -#: src/libvlc-module.c:865 +#: src/libvlc-module.c:923 msgid "Enable audio stream output" msgstr "Activer le flux de sortie audio" -#: src/libvlc-module.c:867 +#: src/libvlc-module.c:925 msgid "" "Choose whether the audio stream should be redirected to the stream output " "facility when this last one is enabled." msgstr "Diffuser les flux audio." -#: src/libvlc-module.c:870 +#: src/libvlc-module.c:928 msgid "Enable SPU stream output" msgstr "Diffuser les sous-titres" -#: src/libvlc-module.c:872 +#: src/libvlc-module.c:930 msgid "" "Choose whether the SPU streams should be redirected to the stream output " "facility when this last one is enabled." msgstr "Diffuser les flux de sous-titres." -#: src/libvlc-module.c:875 +#: src/libvlc-module.c:933 modules/gui/qt4/ui/sout.ui:495 msgid "Keep stream output open" msgstr "Garder le flux de sortie actif" -#: src/libvlc-module.c:877 +#: src/libvlc-module.c:935 msgid "" "This allows you to keep an unique stream output instance across multiple " "playlist item (automatically insert the gather stream output if not " "specified)" msgstr "" "Ceci permet de garder une instance unique du flux de sortie tout au long de " -"la liste de lecture (ins?re automatiquement le module de flux de sortie ? " -"regroupement ? si non sp?cifi?)." +"la liste de lecture (ins?re automatiquement le module de flux de sortie " +"??regroupement?? si non sp?cifi?)." -#: src/libvlc-module.c:881 +#: src/libvlc-module.c:939 msgid "Stream output muxer caching (ms)" msgstr "Taille du cache du multiplexeur du flux de sortie (en millisecondes)" -#: src/libvlc-module.c:883 +#: src/libvlc-module.c:941 msgid "" "This allow you to configure the initial caching amount for stream output " "muxer. This value should be set in milliseconds." @@ -3079,39 +3112,39 @@ msgstr "" "Cette option permet de modifier la taille du cache pour le flux de sortie. " "Cette valeur est en millisecondes." -#: src/libvlc-module.c:886 +#: src/libvlc-module.c:944 msgid "Preferred packetizer list" msgstr "Liste des empaqueteurs pr?f?r?s" -#: src/libvlc-module.c:888 +#: src/libvlc-module.c:946 msgid "" "This allows you to select the order in which VLC will choose its packetizers." msgstr "" "Cette option permet de choisir l?ordre dans lequel VLC choisira ses " "empaqueteurs (packetizers, ce sont des modules de pr?traitement des flux)." -#: src/libvlc-module.c:891 +#: src/libvlc-module.c:949 msgid "Mux module" msgstr "Module de multiplexage" -#: src/libvlc-module.c:893 +#: src/libvlc-module.c:951 msgid "This is a legacy entry to let you configure mux modules" msgstr "" "Cette option vous permet de choisir un module de multiplexage par d?faut" -#: src/libvlc-module.c:895 +#: src/libvlc-module.c:953 msgid "Access output module" msgstr "Module de sortie" -#: src/libvlc-module.c:897 +#: src/libvlc-module.c:955 msgid "This is a legacy entry to let you configure access output modules" msgstr "Cette option vous permet de choisir un module de sortie par d?faut." -#: src/libvlc-module.c:899 +#: src/libvlc-module.c:957 msgid "Control SAP flow" msgstr "R?guler le d?bit SAP" -#: src/libvlc-module.c:901 +#: src/libvlc-module.c:959 msgid "" "If this option is enabled, the flow on the SAP multicast address will be " "controlled. This is needed if you want to make announcements on the MBone." @@ -3119,11 +3152,11 @@ msgstr "" "R?guler le d?bit sur l?adresse multicast SAP. Ceci est n?cessaire si vous " "voulez faire des annonces sur le MBone." -#: src/libvlc-module.c:905 +#: src/libvlc-module.c:963 msgid "SAP announcement interval" msgstr "D?lai entre les annonces SAP" -#: src/libvlc-module.c:907 +#: src/libvlc-module.c:965 msgid "" "When the SAP flow control is disabled, this lets you set the fixed interval " "between SAP announcements." @@ -3131,7 +3164,7 @@ msgstr "" "Quand la r?gulation du d?bit SAP est d?sactiv?e, ceci vous permet de r?gler " "le d?lai entre les annonces SAP." -#: src/libvlc-module.c:916 +#: src/libvlc-module.c:974 msgid "" "These options allow you to enable special CPU optimizations. You should " "always leave all these enabled." @@ -3139,22 +3172,22 @@ msgstr "" "Ces options permettent d?activer les optimisations processeur. Il est " "conseill? de toujours laisser ces options activ?es." -#: src/libvlc-module.c:919 +#: src/libvlc-module.c:977 msgid "Enable FPU support" msgstr "Activer le support FPU" -#: src/libvlc-module.c:921 +#: src/libvlc-module.c:979 msgid "" "If your processor has a floating point calculation unit, VLC can take " "advantage of it." msgstr "" "Si votre processeur a une unit? de calcul d?cimal, VLC peut en profiter." -#: src/libvlc-module.c:924 +#: src/libvlc-module.c:982 msgid "Enable CPU MMX support" msgstr "Activer le support MMX du processeur" -#: src/libvlc-module.c:926 +#: src/libvlc-module.c:984 msgid "" "If your processor supports the MMX instructions set, VLC can take advantage " "of them." @@ -3162,11 +3195,11 @@ msgstr "" "Si votre processeur reconna?t le jeu d?instructions MMX, VLC peut en " "profiter." -#: src/libvlc-module.c:929 +#: src/libvlc-module.c:987 msgid "Enable CPU 3D Now! support" msgstr "Activer le support 3D Now! du processeur" -#: src/libvlc-module.c:931 +#: src/libvlc-module.c:989 msgid "" "If your processor supports the 3D Now! instructions set, VLC can take " "advantage of them." @@ -3174,11 +3207,11 @@ msgstr "" "Si votre processeur reconna?t le jeu d?instructions 3D Now!, VLC peut en " "profiter." -#: src/libvlc-module.c:934 +#: src/libvlc-module.c:992 msgid "Enable CPU MMX EXT support" msgstr "Activer le support MMX EXT du processeur" -#: src/libvlc-module.c:936 +#: src/libvlc-module.c:994 msgid "" "If your processor supports the MMX EXT instructions set, VLC can take " "advantage of them." @@ -3186,11 +3219,11 @@ msgstr "" "Si votre processeur reconna?t le jeu d?instructions MMX EXT, VLC peut en " "profiter." -#: src/libvlc-module.c:939 +#: src/libvlc-module.c:997 msgid "Enable CPU SSE support" msgstr "Activer le support SSE du processeur" -#: src/libvlc-module.c:941 +#: src/libvlc-module.c:999 msgid "" "If your processor supports the SSE instructions set, VLC can take advantage " "of them." @@ -3198,11 +3231,11 @@ msgstr "" "Si votre processeur reconna?t le jeu d?instructions SSE, VLC peut en " "profiter." -#: src/libvlc-module.c:944 +#: src/libvlc-module.c:1002 msgid "Enable CPU SSE2 support" msgstr "Activer le support SSE2 du processeur" -#: src/libvlc-module.c:946 +#: src/libvlc-module.c:1004 msgid "" "If your processor supports the SSE2 instructions set, VLC can take advantage " "of them." @@ -3210,11 +3243,11 @@ msgstr "" "Si votre processeur reconna?t le jeu d?instructions SSE2, VLC peut en " "profiter." -#: src/libvlc-module.c:949 +#: src/libvlc-module.c:1007 msgid "Enable CPU AltiVec support" msgstr "Activer le support AltiVec du processeur" -#: src/libvlc-module.c:951 +#: src/libvlc-module.c:1009 msgid "" "If your processor supports the AltiVec instructions set, VLC can take " "advantage of them." @@ -3222,7 +3255,7 @@ msgstr "" "Si votre processeur reconna?t le jeu d?instructions AltiVec, VLC peut en " "profiter." -#: src/libvlc-module.c:956 +#: src/libvlc-module.c:1014 msgid "" "These options allow you to select default modules. Leave these alone unless " "you really know what you are doing." @@ -3230,11 +3263,11 @@ msgstr "" "Cette option vous permet de s?lectionner les modules par d?faut. Ne modifiez " "pas ces options si vous ne savez pas parfaitement ce que vous faites." -#: src/libvlc-module.c:959 +#: src/libvlc-module.c:1017 msgid "Memory copy module" msgstr "Module de copie m?moire" -#: src/libvlc-module.c:961 +#: src/libvlc-module.c:1019 msgid "" "You can select which memory copy module you want to use. By default VLC will " "select the fastest one supported by your hardware." @@ -3242,11 +3275,11 @@ msgstr "" "Vous pouvez s?lectionner le module de copie m?moire ? utiliser. Par d?faut " "VLC s?lectionnera le module le plus rapide reconnu par votre processeur." -#: src/libvlc-module.c:964 +#: src/libvlc-module.c:1022 msgid "Access module" msgstr "Module d?acc?s" -#: src/libvlc-module.c:966 +#: src/libvlc-module.c:1024 msgid "" "This allows you to force an access module. You can use it if the correct " "access is not automatically detected. You should not set this as a global " @@ -3256,23 +3289,20 @@ msgstr "" "correct n?est pas correctement d?tect?. Vous ne devriez pas toucher cette " "option sans savoir ce que vous faites." -#: src/libvlc-module.c:970 -msgid "Access filter module" -msgstr "Module de filtre d?acc?s" +#: src/libvlc-module.c:1028 +msgid "Stream filter module" +msgstr "Module de filtre de flux" -#: src/libvlc-module.c:972 -msgid "" -"Access filters are used to modify the stream that is being read. This is " -"used for instance for timeshifting." +#: src/libvlc-module.c:1030 +msgid "Stream filters are used to modify the stream that is being read. " msgstr "" -"Les filtres d?acc?s permettent de modifier le flux en train d??tre lu. Ceci " -"est utilis? pour le d?calage temporel (\"timeshifting\"), par exemple." +"Les filtres de flux permettent de modifier le flux en cours de lecture." -#: src/libvlc-module.c:975 +#: src/libvlc-module.c:1032 msgid "Demux module" msgstr "Module de d?multiplexage" -#: src/libvlc-module.c:977 +#: src/libvlc-module.c:1034 msgid "" "Demultiplexers are used to separate the \"elementary\" streams (like audio " "and video streams). You can use it if the correct demuxer is not " @@ -3283,11 +3313,11 @@ msgstr "" "correctement d?tect?. Vous ne devriez pas toucher cette option sans savoir " "ce que vous faites." -#: src/libvlc-module.c:982 +#: src/libvlc-module.c:1039 msgid "Allow real-time priority" msgstr "Utiliser la priorit? temps-r?el" -#: src/libvlc-module.c:984 +#: src/libvlc-module.c:1041 msgid "" "Running VLC in real-time priority will allow for much more precise " "scheduling and yield better, especially when streaming content. It can " @@ -3299,11 +3329,11 @@ msgstr "" "syst?me, ou le rendre tr?s tr?s lent. Vous ne devriez activer cela que si " "vous savez parfaitement ce que vous faites." -#: src/libvlc-module.c:990 +#: src/libvlc-module.c:1047 msgid "Adjust VLC priority" msgstr "Ajustement de priorit?" -#: src/libvlc-module.c:992 +#: src/libvlc-module.c:1049 msgid "" "This option adds an offset (positive or negative) to VLC default priorities. " "You can use it to tune VLC priority against other programs, or against other " @@ -3313,104 +3343,95 @@ msgstr "" "VLC. Vous pouvez utiliser ceci pour modifier la priorit? de VLC par rapport " "aux autres programmes ou par rapport aux autres instances de VLC." -#: src/libvlc-module.c:996 -msgid "Minimize number of threads" -msgstr "Minimiser le nombre de threads" - -#: src/libvlc-module.c:998 -msgid "This option minimizes the number of threads needed to run VLC." -msgstr "Minimiser le nombre de threads requis pour lancer VLC." - -#: src/libvlc-module.c:1000 +#: src/libvlc-module.c:1053 msgid "(Experimental) Don't do caching at the access level." -msgstr "" +msgstr "(Exp?rimental) Ne pas g?rer de cache au niveau de l'acc?s." -#: src/libvlc-module.c:1002 src/libvlc-module.c:1008 +#: src/libvlc-module.c:1055 msgid "" "This option is useful if you want to lower the latency when reading a stream" msgstr "" +"Cette option est utile si vous vouler r?duire la latence lors de la lecture " +"d'un flux" -#: src/libvlc-module.c:1005 -msgid "(Experimental) Minimize latency whenreading live stream." -msgstr "" - -#: src/libvlc-module.c:1011 +#: src/libvlc-module.c:1058 msgid "Modules search path" msgstr "Chemin de recherche des modules" -#: src/libvlc-module.c:1013 +#: src/libvlc-module.c:1060 msgid "" "Additional path for VLC to look for its modules. You can add several paths " "by concatenating them using \" PATH_SEP \" as separator" msgstr "" "Chemin suppl?mentaire pour trouver les modules de VLC. Vous pouvez ajouter " -"plusieurs chemins en utilisant \" PATH_SEP \" comme s?parateur" +"plusieurs chemins en utilisant ??PATH_SEP?? comme s?parateur" -#: src/libvlc-module.c:1016 +#: src/libvlc-module.c:1063 msgid "VLM configuration file" msgstr "Fichier de configuration VLM" -#: src/libvlc-module.c:1018 +#: src/libvlc-module.c:1065 msgid "Read a VLM configuration file as soon as VLM is started." msgstr "Charger un fichier de configuration d?s que VLM d?marre." -#: src/libvlc-module.c:1020 +#: src/libvlc-module.c:1067 msgid "Use a plugins cache" msgstr "Utiliser le cache de modules" -#: src/libvlc-module.c:1022 +#: src/libvlc-module.c:1069 msgid "Use a plugins cache which will greatly improve the startup time of VLC." msgstr "" "Utiliser un cache des modules qui r?duira fortement le temps de lancement de " "VLC." -#: src/libvlc-module.c:1024 +#: src/libvlc-module.c:1071 msgid "Collect statistics" msgstr "Collecter des statistiques" -#: src/libvlc-module.c:1026 +#: src/libvlc-module.c:1073 msgid "Collect miscellaneous statistics." msgstr "Collecter diverses statistiques." -#: src/libvlc-module.c:1028 +#: src/libvlc-module.c:1075 msgid "Run as daemon process" msgstr "Fonctionner en tant que d?mon" -#: src/libvlc-module.c:1030 +#: src/libvlc-module.c:1077 msgid "Runs VLC as a background daemon process." msgstr "" "Ceci permet de faire fonctionner VLC en tant que d?mon (processus en t?che " "de fond)." -#: src/libvlc-module.c:1032 +#: src/libvlc-module.c:1079 msgid "Write process id to file" -msgstr "" +msgstr "?crire l'id du processus dans un ficher" -#: src/libvlc-module.c:1034 +#: src/libvlc-module.c:1081 msgid "Writes process id into specified file." -msgstr "" +msgstr "?cris l'id du processus dans le ficher sp?cifi?." -#: src/libvlc-module.c:1036 +#: src/libvlc-module.c:1083 msgid "Log to file" -msgstr "Logguer dans un fichier" +msgstr "Journaliser dans un fichier" -#: src/libvlc-module.c:1038 +#: src/libvlc-module.c:1085 msgid "Log all VLC messages to a text file." -msgstr "Logguer tous les messages de VLC dans un fichier texte." +msgstr "Journaliser tous les messages de VLC dans un fichier texte." -#: src/libvlc-module.c:1040 +#: src/libvlc-module.c:1087 msgid "Log to syslog" -msgstr "Logguer vers Syslog" +msgstr "Journaliser vers Syslog" -#: src/libvlc-module.c:1042 +#: src/libvlc-module.c:1089 msgid "Log all VLC messages to syslog (UNIX systems)." -msgstr "Logguer tous les messages de VLC vers Syslog, sur les syst?mes Unix." +msgstr "" +"Journaliser tous les messages de VLC vers Syslog, sur les syst?mes Unix." -#: src/libvlc-module.c:1044 +#: src/libvlc-module.c:1091 msgid "Allow only one running instance" msgstr "N?autorise qu?une seule instance" -#: src/libvlc-module.c:1046 +#: src/libvlc-module.c:1094 msgid "" "Allowing only one running instance of VLC can sometimes be useful, for " "example if you associated VLC with some media types and you don't want a new " @@ -3425,14 +3446,13 @@ msgstr "" "vous permettra de jouer le fichier avec l?instance en cours ou de le mettre " "? la file." -#: src/libvlc-module.c:1054 -#, fuzzy +#: src/libvlc-module.c:1101 msgid "" "Allowing only one running instance of VLC can sometimes be useful, for " "example if you associated VLC with some media types and you don't want a new " "instance of VLC to be opened each time you open a file in your file manager. " "This option will allow you to play the file with the already running " -"instance or enqueue it. This option require the D-Bus session daemon to be " +"instance or enqueue it. This option requires the D-Bus session daemon to be " "active and the running instance of VLC to use D-Bus control interface." msgstr "" "N?autoriser le lancement que d?une seule instance de VLC peut parfois ?tre " @@ -3440,31 +3460,31 @@ msgstr "" "que vous ne d?sirez pas qu?une nouvelle instance de VLC s?ouvre ? chaque " "fois que vous double-cliquez sur un fichier de l?explorateur. Cette option " "vous permettra de jouer le fichier avec l?instance en cours ou de le mettre " -"? la queue. Cette option n?cessite que le d?mon DBus de session soit actif." +"? la file. Cette option n?cessite que le d?mon DBus de session soit actif." -#: src/libvlc-module.c:1062 +#: src/libvlc-module.c:1110 msgid "VLC is started from file association" msgstr "VLC a ?t? demarr? par l?ouverture d?un fichier associ?" -#: src/libvlc-module.c:1064 +#: src/libvlc-module.c:1112 msgid "Tell VLC that it is being launched due to a file association in the OS" msgstr "" "Informe VLC qu?il a ?t? lanc? ? cause d?une association ? un type de fichier " "par le syst?me d?exploitation" -#: src/libvlc-module.c:1067 +#: src/libvlc-module.c:1115 msgid "One instance when started from file" msgstr "Une seule instance lorsque d?marr? depuis un fichier" -#: src/libvlc-module.c:1069 +#: src/libvlc-module.c:1117 msgid "Allow only one running instance when started from file." msgstr "N?autorise qu?une seule instance lorsque d?marrer depuis un fichier" -#: src/libvlc-module.c:1071 +#: src/libvlc-module.c:1119 msgid "Increase the priority of the process" msgstr "Augmenter la priorit? du processus" -#: src/libvlc-module.c:1073 +#: src/libvlc-module.c:1121 msgid "" "Increasing the priority of the process will very likely improve your playing " "experience as it allows VLC not to be disturbed by other applications that " @@ -3480,19 +3500,19 @@ msgstr "" "le temps processus et emp?cher la totalit? du syst?me, ce qui pourrait " "n?cessiter un red?marrage de votre machine." -#: src/libvlc-module.c:1081 +#: src/libvlc-module.c:1129 msgid "Enqueue items to playlist when in one instance mode" -msgstr "Mettre en queue en mode instance unique" +msgstr "Mettre en file dans la liste de lecture en mode instance unique" -#: src/libvlc-module.c:1083 +#: src/libvlc-module.c:1131 msgid "" "When using the one instance only option, enqueue items to playlist and keep " "playing current item." msgstr "" -"Lorsque le mode \"une seule instance\" est utilis?, ceci permet de mettre " -"les ?l?ments en queue dans la liste de lecture" +"Lorsque le mode ??une seule instance?? est utilis?, ceci permet de mettre les " +"?l?ments en file dans la liste de lecture" -#: src/libvlc-module.c:1092 +#: src/libvlc-module.c:1140 msgid "" "These options define the behavior of the playlist. Some of them can be " "overridden in the playlist dialog box." @@ -3501,11 +3521,11 @@ msgstr "" "d?entre elles peuvent ?tre outrepass?es dans la fen?tre de la liste de " "lecture." -#: src/libvlc-module.c:1095 +#: src/libvlc-module.c:1143 msgid "Automatically preparse files" msgstr "Recherche des m?tadonn?es" -#: src/libvlc-module.c:1097 +#: src/libvlc-module.c:1145 msgid "" "Automatically preparse files added to the playlist (to retrieve some " "metadata)." @@ -3513,79 +3533,79 @@ msgstr "" "Rechercher automatiquement les m?tadonn?es des fichiers ajout?s ? la liste " "de lecture." -#: src/libvlc-module.c:1100 +#: src/libvlc-module.c:1148 msgid "Album art policy" msgstr "Politique de t?l?chargement des couvertures" -#: src/libvlc-module.c:1102 +#: src/libvlc-module.c:1150 msgid "Choose how album art will be downloaded." msgstr "Choisir comment les couvertures vont ?tre t?l?charg?es." -#: src/libvlc-module.c:1108 +#: src/libvlc-module.c:1156 msgid "Manual download only" msgstr "T?l?chargement manuel seulement" -#: src/libvlc-module.c:1109 +#: src/libvlc-module.c:1157 msgid "When track starts playing" msgstr "Quand la lecture commence pour la piste" -#: src/libvlc-module.c:1110 +#: src/libvlc-module.c:1158 msgid "As soon as track is added" msgstr "D?s que la piste est ajout?e ? la liste de lecture" -#: src/libvlc-module.c:1112 +#: src/libvlc-module.c:1160 msgid "Services discovery modules" msgstr "Modules de d?couverte de services" -#: src/libvlc-module.c:1114 +#: src/libvlc-module.c:1162 msgid "" "Specifies the services discovery modules to load, separated by semi-colons. " "Typical values are sap, hal, ..." msgstr "" "Vous permet de sp?cifier les modules de d?couverte de services ? lancer, " -"s?par?s par des ? : ?. Les valeurs courantes sont sap, hal?" +"s?par?s par des ??:??. Les valeurs courantes sont sap, hal?" -#: src/libvlc-module.c:1117 +#: src/libvlc-module.c:1165 msgid "Play files randomly forever" msgstr "Al?atoire" -#: src/libvlc-module.c:1119 +#: src/libvlc-module.c:1167 msgid "VLC will randomly play files in the playlist until interrupted." msgstr "Jouer les fichiers de la liste de lecture dans un ordre al?atoire." -#: src/libvlc-module.c:1123 +#: src/libvlc-module.c:1171 msgid "VLC will keep playing the playlist indefinitely." msgstr "Jouer la liste de lecture ind?finiment." -#: src/libvlc-module.c:1125 +#: src/libvlc-module.c:1173 msgid "Repeat current item" msgstr "R?p?ter l??l?ment actuel" -#: src/libvlc-module.c:1127 +#: src/libvlc-module.c:1175 msgid "VLC will keep playing the current playlist item." msgstr "Jouer en boucle l??l?ment actuel de la liste de lecture." -#: src/libvlc-module.c:1129 +#: src/libvlc-module.c:1177 msgid "Play and stop" msgstr "Lire un seul ?l?ment" -#: src/libvlc-module.c:1131 +#: src/libvlc-module.c:1179 msgid "Stop the playlist after each played playlist item." msgstr "Stopper la liste de lecture apr?s chaque ?l?ment." -#: src/libvlc-module.c:1133 +#: src/libvlc-module.c:1181 msgid "Play and exit" msgstr "Lire un seul ?l?ment puis quitter" -#: src/libvlc-module.c:1135 +#: src/libvlc-module.c:1183 msgid "Exit if there are no more items in the playlist." msgstr "Quitter si il n?y a plus d??lements dans la liste de lecture" -#: src/libvlc-module.c:1137 +#: src/libvlc-module.c:1185 msgid "Use media library" msgstr "Utilier la biblioth?que" -#: src/libvlc-module.c:1139 +#: src/libvlc-module.c:1187 msgid "" "The media library is automatically saved and reloaded each time you start " "VLC." @@ -3593,574 +3613,586 @@ msgstr "" "La biblioth?que est automatiquement sauvegard?e et recharg?e chaque fois que " "vous relancez VLC." -#: src/libvlc-module.c:1142 +#: src/libvlc-module.c:1190 msgid "Display playlist tree" msgstr "Utiliser l?arborescence de la liste de lecture" -#: src/libvlc-module.c:1144 +#: src/libvlc-module.c:1192 msgid "" "The playlist can use a tree to categorize some items, like the contents of a " "directory." msgstr "" +"La liste de lecture peut utiliser un arbre pour afficher les ?l?ments, comme " +"par exemple le contenu d'un dossier." -#: src/libvlc-module.c:1153 +#: src/libvlc-module.c:1201 msgid "These settings are the global VLC key bindings, known as \"hotkeys\"." -msgstr "R?glages des raccourcis clavier (? hotkeys ?)." - -#: src/libvlc-module.c:1156 src/video_output/vout_intf.c:414 -#: modules/gui/beos/VideoOutput.cpp:1058 modules/gui/macosx/controls.m:435 -#: modules/gui/macosx/controls.m:489 modules/gui/macosx/controls.m:938 -#: modules/gui/macosx/controls.m:969 modules/gui/macosx/embeddedwindow.m:66 -#: modules/gui/macosx/intf.m:491 modules/gui/macosx/intf.m:568 -#: modules/gui/macosx/intf.m:624 modules/gui/macosx/simple_prefs.m:286 -#: modules/gui/qt4/ui/sprefs_video.ui:61 +msgstr "R?glages des raccourcis clavier (??hotkeys??)." + +#: src/libvlc-module.c:1204 src/video_output/vout_intf.c:434 +#: modules/gui/beos/VideoOutput.cpp:1058 modules/gui/macosx/controls.m:454 +#: modules/gui/macosx/controls.m:508 modules/gui/macosx/controls.m:1000 +#: modules/gui/macosx/controls.m:1031 modules/gui/macosx/embeddedwindow.m:50 +#: modules/gui/macosx/intf.m:501 modules/gui/macosx/intf.m:578 +#: modules/gui/macosx/intf.m:641 modules/gui/macosx/simple_prefs.m:281 +#: modules/gui/qt4/ui/sprefs_video.ui:58 msgid "Fullscreen" msgstr "Plein ?cran" -#: src/libvlc-module.c:1157 +#: src/libvlc-module.c:1205 msgid "Select the hotkey to use to swap fullscreen state." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour passer en plein ?cran." -#: src/libvlc-module.c:1158 +#: src/libvlc-module.c:1206 msgid "Leave fullscreen" msgstr "Quitter le plein ?cran" -#: src/libvlc-module.c:1159 +#: src/libvlc-module.c:1207 msgid "Select the hotkey to use to leave fullscreen state." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour quitter le plein " "?cran." -#: src/libvlc-module.c:1160 +#: src/libvlc-module.c:1208 msgid "Play/Pause" msgstr "Lecture/Pause" -#: src/libvlc-module.c:1161 +#: src/libvlc-module.c:1209 msgid "Select the hotkey to use to swap paused state." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour activer/d?sactiver la " "pause." -#: src/libvlc-module.c:1162 +#: src/libvlc-module.c:1210 msgid "Pause only" msgstr "Pause seulement" -#: src/libvlc-module.c:1163 +#: src/libvlc-module.c:1211 msgid "Select the hotkey to use to pause." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour passer en pause." -#: src/libvlc-module.c:1164 +#: src/libvlc-module.c:1212 msgid "Play only" msgstr "Jouer seulement" -#: src/libvlc-module.c:1165 +#: src/libvlc-module.c:1213 msgid "Select the hotkey to use to play." msgstr "S?lectionnez la combinaison de touches ? utiliser pour jouer." -#: src/libvlc-module.c:1166 modules/control/hotkeys.c:695 -#: modules/gui/macosx/controls.m:868 modules/gui/macosx/intf.m:533 -#: modules/gui/qt4/components/interface_widgets.cpp:523 +#: src/libvlc-module.c:1214 modules/control/hotkeys.c:752 +#: modules/gui/macosx/controls.m:930 modules/gui/macosx/intf.m:543 +#: modules/gui/qt4/components/controller.hpp:109 msgid "Faster" msgstr "Avance rapide" -#: src/libvlc-module.c:1167 +#: src/libvlc-module.c:1215 msgid "Select the hotkey to use for fast forward playback." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour l?avance rapide." -#: src/libvlc-module.c:1168 modules/control/hotkeys.c:701 -#: modules/gui/macosx/controls.m:869 modules/gui/macosx/intf.m:534 -#: modules/gui/qt4/components/interface_widgets.cpp:517 +#: src/libvlc-module.c:1216 modules/control/hotkeys.c:758 +#: modules/gui/macosx/controls.m:931 modules/gui/macosx/intf.m:544 +#: modules/gui/qt4/components/controller.hpp:109 msgid "Slower" msgstr "Ralenti" -#: src/libvlc-module.c:1169 +#: src/libvlc-module.c:1217 msgid "Select the hotkey to use for slow motion playback." msgstr "S?lectionnez la combinaison de touches ? utiliser pour le ralenti." -#: src/libvlc-module.c:1170 modules/control/hotkeys.c:678 -#: modules/gui/macosx/about.m:190 modules/gui/macosx/controls.m:889 -#: modules/gui/macosx/intf.m:490 modules/gui/macosx/intf.m:536 -#: modules/gui/macosx/intf.m:612 modules/gui/macosx/intf.m:620 +#: src/libvlc-module.c:1218 modules/control/hotkeys.c:729 +#: modules/gui/macosx/about.m:190 modules/gui/macosx/controls.m:951 +#: modules/gui/macosx/intf.m:500 modules/gui/macosx/intf.m:546 +#: modules/gui/macosx/intf.m:629 modules/gui/macosx/intf.m:637 #: modules/gui/macosx/wizard.m:309 modules/gui/macosx/wizard.m:321 -#: modules/gui/macosx/wizard.m:1621 modules/gui/qt4/menus.cpp:664 -#: modules/gui/qt4/ui/streampanel.ui:108 modules/misc/notify/notify.c:301 +#: modules/gui/macosx/wizard.m:1626 modules/gui/qt4/menus.cpp:727 +#: modules/gui/qt4/ui/streampanel.ui:108 modules/misc/notify/notify.c:299 msgid "Next" msgstr "Suivant" -#: src/libvlc-module.c:1171 +#: src/libvlc-module.c:1219 msgid "Select the hotkey to use to skip to the next item in the playlist." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour passer ? l??l?ment " "suivant de la liste de lecture." -#: src/libvlc-module.c:1172 modules/control/hotkeys.c:684 -#: modules/gui/macosx/about.m:191 modules/gui/macosx/controls.m:888 -#: modules/gui/macosx/intf.m:485 modules/gui/macosx/intf.m:535 -#: modules/gui/macosx/intf.m:613 modules/gui/macosx/intf.m:619 -#: modules/gui/qt4/menus.cpp:662 modules/misc/notify/notify.c:299 +#: src/libvlc-module.c:1220 modules/control/hotkeys.c:735 +#: modules/gui/macosx/about.m:191 modules/gui/macosx/controls.m:950 +#: modules/gui/macosx/intf.m:495 modules/gui/macosx/intf.m:545 +#: modules/gui/macosx/intf.m:630 modules/gui/macosx/intf.m:636 +#: modules/gui/qt4/menus.cpp:725 modules/misc/notify/notify.c:297 msgid "Previous" msgstr "Pr?c?dent" -#: src/libvlc-module.c:1173 +#: src/libvlc-module.c:1221 msgid "Select the hotkey to use to skip to the previous item in the playlist." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour passer ? l??l?ment " "pr?c?dent de la liste de lecture." -#: src/libvlc-module.c:1174 modules/control/rc.c:77 -#: modules/gui/macosx/controls.m:880 modules/gui/macosx/intf.m:488 -#: modules/gui/macosx/intf.m:532 modules/gui/macosx/intf.m:611 -#: modules/gui/macosx/intf.m:618 modules/gui/pda/pda_interface.c:272 -#: modules/gui/pda/pda_interface.c:273 modules/gui/qt4/menus.cpp:660 -#: modules/gui/qt4/ui/streampanel.ui:101 modules/misc/notify/xosd.c:238 +#: src/libvlc-module.c:1222 modules/gui/macosx/controls.m:942 +#: modules/gui/macosx/intf.m:498 modules/gui/macosx/intf.m:542 +#: modules/gui/macosx/intf.m:628 modules/gui/macosx/intf.m:635 +#: modules/gui/pda/pda_interface.c:272 modules/gui/pda/pda_interface.c:273 +#: modules/gui/qt4/menus.cpp:723 modules/gui/qt4/ui/streampanel.ui:101 +#: modules/misc/notify/xosd.c:240 msgid "Stop" msgstr "Stop" -#: src/libvlc-module.c:1175 +#: src/libvlc-module.c:1223 msgid "Select the hotkey to stop playback." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour arr?ter la lecture." -#: src/libvlc-module.c:1176 modules/gui/fbosd.c:129 modules/gui/fbosd.c:197 +#: src/libvlc-module.c:1224 modules/gui/fbosd.c:127 modules/gui/fbosd.c:195 #: modules/gui/macosx/bookmarks.m:96 modules/gui/macosx/bookmarks.m:105 -#: modules/gui/macosx/embeddedwindow.m:68 modules/gui/macosx/intf.m:493 -#: modules/gui/qt4/ui/video_effects.ui:731 modules/video_filter/marq.c:153 +#: modules/gui/macosx/embeddedwindow.m:52 modules/gui/macosx/intf.m:503 +#: modules/gui/qt4/ui/video_effects.ui:737 modules/video_filter/marq.c:153 #: modules/video_filter/rss.c:197 msgid "Position" msgstr "Position" -#: src/libvlc-module.c:1177 +#: src/libvlc-module.c:1225 msgid "Select the hotkey to display the position." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour afficher la position." -#: src/libvlc-module.c:1179 +#: src/libvlc-module.c:1227 msgid "Very short backwards jump" msgstr "Tr?s court saut arri?re" -#: src/libvlc-module.c:1181 +#: src/libvlc-module.c:1229 msgid "Select the hotkey to make a very short backwards jump." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour faire un saut arri?re " "tr?s court." -#: src/libvlc-module.c:1182 +#: src/libvlc-module.c:1230 msgid "Short backwards jump" msgstr "Saut arri?re court" -#: src/libvlc-module.c:1184 +#: src/libvlc-module.c:1232 msgid "Select the hotkey to make a short backwards jump." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour faire un saut arri?re " "court." -#: src/libvlc-module.c:1185 +#: src/libvlc-module.c:1233 msgid "Medium backwards jump" msgstr "Saut arri?re" -#: src/libvlc-module.c:1187 +#: src/libvlc-module.c:1235 msgid "Select the hotkey to make a medium backwards jump." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour faire un saut arri?re." -#: src/libvlc-module.c:1188 +#: src/libvlc-module.c:1236 msgid "Long backwards jump" msgstr "Saut arri?re long" -#: src/libvlc-module.c:1190 +#: src/libvlc-module.c:1238 msgid "Select the hotkey to make a long backwards jump." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour faire un saut arri?re " "long." -#: src/libvlc-module.c:1192 +#: src/libvlc-module.c:1240 msgid "Very short forward jump" msgstr "Saut avant tr?s court" -#: src/libvlc-module.c:1194 +#: src/libvlc-module.c:1242 msgid "Select the hotkey to make a very short forward jump." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour faire un saut avant " "tr?s court." -#: src/libvlc-module.c:1195 +#: src/libvlc-module.c:1243 msgid "Short forward jump" msgstr "Saut avant court" -#: src/libvlc-module.c:1197 +#: src/libvlc-module.c:1245 msgid "Select the hotkey to make a short forward jump." msgstr "S?lectionnez la combinaison de touches ? faire un saut avant court." -#: src/libvlc-module.c:1198 +#: src/libvlc-module.c:1246 msgid "Medium forward jump" msgstr "Saut avant" -#: src/libvlc-module.c:1200 +#: src/libvlc-module.c:1248 msgid "Select the hotkey to make a medium forward jump." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour faire un saut avant." -#: src/libvlc-module.c:1201 +#: src/libvlc-module.c:1249 msgid "Long forward jump" msgstr "Saut avant long" -#: src/libvlc-module.c:1203 +#: src/libvlc-module.c:1251 msgid "Select the hotkey to make a long forward jump." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour faire un saut avant " "long." -#: src/libvlc-module.c:1205 +#: src/libvlc-module.c:1252 modules/control/hotkeys.c:746 +msgid "Next frame" +msgstr "Trame suivante" + +#: src/libvlc-module.c:1254 +msgid "Select the hotkey to got to the next video frame." +msgstr "" +"S?lectionnez la combinaison de touches ? utiliser pour s?lectionner la trame " +"suivante." + +#: src/libvlc-module.c:1256 msgid "Very short jump length" -msgstr "Longueur du tr?s court saut" +msgstr "Longueur du saut tr?s court" -#: src/libvlc-module.c:1206 +#: src/libvlc-module.c:1257 msgid "Very short jump length, in seconds." -msgstr "Longeur du \"tr?s court saut\", en secondes." +msgstr "Longeur du ??saut tr?s court??, en secondes." -#: src/libvlc-module.c:1207 +#: src/libvlc-module.c:1258 msgid "Short jump length" -msgstr "Longueur du court saut" +msgstr "Longueur du saut court" -#: src/libvlc-module.c:1208 +#: src/libvlc-module.c:1259 msgid "Short jump length, in seconds." -msgstr "Longeur du \"court saut\", en secondes." +msgstr "Longeur du ??saut court??, en secondes." -#: src/libvlc-module.c:1209 +#: src/libvlc-module.c:1260 msgid "Medium jump length" msgstr "Longueur du saut" -#: src/libvlc-module.c:1210 +#: src/libvlc-module.c:1261 msgid "Medium jump length, in seconds." msgstr "Longueur du saut, en secondes" -#: src/libvlc-module.c:1211 +#: src/libvlc-module.c:1262 msgid "Long jump length" msgstr "Taille du saut avant long" -#: src/libvlc-module.c:1212 +#: src/libvlc-module.c:1263 msgid "Long jump length, in seconds." -msgstr "Longueur du \"long saut\", en secondes." +msgstr "Longueur du ??saut avant long??, en secondes." -#: src/libvlc-module.c:1214 modules/control/hotkeys.c:189 -#: modules/gui/beos/InterfaceWindow.cpp:277 modules/gui/macosx/intf.m:449 -#: modules/gui/qt4/menus.cpp:696 modules/gui/skins2/commands/cmd_quit.cpp:40 +#: src/libvlc-module.c:1265 modules/control/hotkeys.c:201 +#: modules/gui/beos/InterfaceWindow.cpp:277 modules/gui/macosx/intf.m:457 +#: modules/gui/qt4/components/controller.hpp:114 modules/gui/qt4/menus.cpp:753 +#: modules/gui/skins2/commands/cmd_quit.cpp:40 msgid "Quit" msgstr "Quitter" -#: src/libvlc-module.c:1215 +#: src/libvlc-module.c:1266 msgid "Select the hotkey to quit the application." msgstr "S?lectionnez la combinaison de touches ? utiliser pour quitter VLC." -#: src/libvlc-module.c:1216 +#: src/libvlc-module.c:1267 msgid "Navigate up" msgstr "Aller vers le haut" -#: src/libvlc-module.c:1217 +#: src/libvlc-module.c:1268 msgid "Select the key to move the selector up in DVD menus." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour se d?placer vers le " "haut dans les menus DVD." -#: src/libvlc-module.c:1218 +#: src/libvlc-module.c:1269 msgid "Navigate down" msgstr "Aller vers le bas" -#: src/libvlc-module.c:1219 +#: src/libvlc-module.c:1270 msgid "Select the key to move the selector down in DVD menus." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour se d?placer vers le " "bas dans les menus DVD." -#: src/libvlc-module.c:1220 +#: src/libvlc-module.c:1271 msgid "Navigate left" msgstr "Aller vers la gauche" -#: src/libvlc-module.c:1221 +#: src/libvlc-module.c:1272 msgid "Select the key to move the selector left in DVD menus." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour se d?placer vers la " "gauche dans les menus DVD." -#: src/libvlc-module.c:1222 +#: src/libvlc-module.c:1273 msgid "Navigate right" msgstr "Aller vers la droite" -#: src/libvlc-module.c:1223 +#: src/libvlc-module.c:1274 msgid "Select the key to move the selector right in DVD menus." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour se d?placer vers la " "droite dans les menus DVD." -#: src/libvlc-module.c:1224 +#: src/libvlc-module.c:1275 msgid "Activate" msgstr "Activer" -#: src/libvlc-module.c:1225 +#: src/libvlc-module.c:1276 msgid "Select the key to activate selected item in DVD menus." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour activer l??l?ment " "s?lectionn? du menu DVD." -#: src/libvlc-module.c:1226 +#: src/libvlc-module.c:1277 msgid "Go to the DVD menu" msgstr "Aller au menu DVD" -#: src/libvlc-module.c:1227 +#: src/libvlc-module.c:1278 msgid "Select the key to take you to the DVD menu" msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour aller au menu DVD." -#: src/libvlc-module.c:1228 +#: src/libvlc-module.c:1279 msgid "Select previous DVD title" msgstr "Titre DVD pr?c?dent" -#: src/libvlc-module.c:1229 +#: src/libvlc-module.c:1280 msgid "Select the key to choose the previous title from the DVD" msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour passer au titre " "pr?c?dent du DVD." -#: src/libvlc-module.c:1230 +#: src/libvlc-module.c:1281 msgid "Select next DVD title" msgstr "Titre DVD suivant" -#: src/libvlc-module.c:1231 +#: src/libvlc-module.c:1282 msgid "Select the key to choose the next title from the DVD" msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour s?lectionner le titre " "suivant du DVD" -#: src/libvlc-module.c:1232 +#: src/libvlc-module.c:1283 msgid "Select prev DVD chapter" msgstr "Chapitre DVD pr?c?dent" -#: src/libvlc-module.c:1233 +#: src/libvlc-module.c:1284 msgid "Select the key to choose the previous chapter from the DVD" msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour s?lectionner le " "chapitre pr?c?dent du DVD" -#: src/libvlc-module.c:1234 +#: src/libvlc-module.c:1285 msgid "Select next DVD chapter" msgstr "S?lectionner le chapitre DVD suivant" -#: src/libvlc-module.c:1235 +#: src/libvlc-module.c:1286 msgid "Select the key to choose the next chapter from the DVD" msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour s?lectionner le " "chapitre suivant du DVD" -#: src/libvlc-module.c:1236 +#: src/libvlc-module.c:1287 msgid "Volume up" msgstr "Augmenter le volume" -#: src/libvlc-module.c:1237 +#: src/libvlc-module.c:1288 msgid "Select the key to increase audio volume." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour augmenter le volume." -#: src/libvlc-module.c:1238 +#: src/libvlc-module.c:1289 msgid "Volume down" msgstr "Baisser le volume" -#: src/libvlc-module.c:1239 +#: src/libvlc-module.c:1290 msgid "Select the key to decrease audio volume." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour diminuer le volume." -#: src/libvlc-module.c:1240 modules/access/v4l2/v4l2.c:195 -#: modules/gui/macosx/controls.m:928 modules/gui/macosx/intf.m:553 -#: modules/gui/macosx/intf.m:614 modules/gui/macosx/intf.m:623 -#: modules/gui/qt4/components/interface_widgets.cpp:886 +#: src/libvlc-module.c:1291 modules/access/v4l2.c:167 +#: modules/gui/macosx/controls.m:990 modules/gui/macosx/intf.m:563 +#: modules/gui/macosx/intf.m:631 modules/gui/macosx/intf.m:640 msgid "Mute" msgstr "Muet" -#: src/libvlc-module.c:1241 +#: src/libvlc-module.c:1292 msgid "Select the key to mute audio." msgstr "S?lectionnez la combinaison de touches ? utiliser pour couper l?audio." -#: src/libvlc-module.c:1242 +#: src/libvlc-module.c:1293 msgid "Subtitle delay up" msgstr "Retarder les sous-titres" -#: src/libvlc-module.c:1243 +#: src/libvlc-module.c:1294 msgid "Select the key to increase the subtitle delay." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour augmenter le retard " "des sous-titres." -#: src/libvlc-module.c:1244 +#: src/libvlc-module.c:1295 msgid "Subtitle delay down" msgstr "Avancer les sous-titres" -#: src/libvlc-module.c:1245 +#: src/libvlc-module.c:1296 msgid "Select the key to decrease the subtitle delay." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour diminuer le retard " "des sous-titres." -#: src/libvlc-module.c:1246 +#: src/libvlc-module.c:1297 msgid "Audio delay up" msgstr "Retarder l?audio" -#: src/libvlc-module.c:1247 +#: src/libvlc-module.c:1298 msgid "Select the key to increase the audio delay." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour augmenter le retard " "de l?audio." -#: src/libvlc-module.c:1248 +#: src/libvlc-module.c:1299 msgid "Audio delay down" msgstr "Avancer l?audio" -#: src/libvlc-module.c:1249 +#: src/libvlc-module.c:1300 msgid "Select the key to decrease the audio delay." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour diminuer le retard de " "l?audio." -#: src/libvlc-module.c:1256 +#: src/libvlc-module.c:1307 msgid "Play playlist bookmark 1" msgstr "Lire le favori n?1" -#: src/libvlc-module.c:1257 +#: src/libvlc-module.c:1308 msgid "Play playlist bookmark 2" msgstr "Lire le favori n?2" -#: src/libvlc-module.c:1258 +#: src/libvlc-module.c:1309 msgid "Play playlist bookmark 3" msgstr "Lire le favori n?3" -#: src/libvlc-module.c:1259 +#: src/libvlc-module.c:1310 msgid "Play playlist bookmark 4" msgstr "Lire le favori n?4" -#: src/libvlc-module.c:1260 +#: src/libvlc-module.c:1311 msgid "Play playlist bookmark 5" msgstr "Lire le favori n?5" -#: src/libvlc-module.c:1261 +#: src/libvlc-module.c:1312 msgid "Play playlist bookmark 6" msgstr "Lire le favori n?6" -#: src/libvlc-module.c:1262 +#: src/libvlc-module.c:1313 msgid "Play playlist bookmark 7" msgstr "Lire le favori n?7" -#: src/libvlc-module.c:1263 +#: src/libvlc-module.c:1314 msgid "Play playlist bookmark 8" msgstr "Lire le favori n?8" -#: src/libvlc-module.c:1264 +#: src/libvlc-module.c:1315 msgid "Play playlist bookmark 9" msgstr "Lire le favori n?9" -#: src/libvlc-module.c:1265 +#: src/libvlc-module.c:1316 msgid "Play playlist bookmark 10" msgstr "Lire le favori n?10" -#: src/libvlc-module.c:1266 +#: src/libvlc-module.c:1317 msgid "Select the key to play this bookmark." msgstr "S?lectionnez la combinaison de touches ? utiliser pour lire ce favori." -#: src/libvlc-module.c:1267 +#: src/libvlc-module.c:1318 msgid "Set playlist bookmark 1" msgstr "R?gler le favori n?1" -#: src/libvlc-module.c:1268 +#: src/libvlc-module.c:1319 msgid "Set playlist bookmark 2" msgstr "R?gler le favori n?2" -#: src/libvlc-module.c:1269 +#: src/libvlc-module.c:1320 msgid "Set playlist bookmark 3" msgstr "R?gler le favori n?3" -#: src/libvlc-module.c:1270 +#: src/libvlc-module.c:1321 msgid "Set playlist bookmark 4" msgstr "R?gler le favori n?4" -#: src/libvlc-module.c:1271 +#: src/libvlc-module.c:1322 msgid "Set playlist bookmark 5" msgstr "R?gler le favori n?5" -#: src/libvlc-module.c:1272 +#: src/libvlc-module.c:1323 msgid "Set playlist bookmark 6" msgstr "R?gler le favori n?6" -#: src/libvlc-module.c:1273 +#: src/libvlc-module.c:1324 msgid "Set playlist bookmark 7" msgstr "R?gler le favori n?7" -#: src/libvlc-module.c:1274 +#: src/libvlc-module.c:1325 msgid "Set playlist bookmark 8" msgstr "R?gler le favori n?8" -#: src/libvlc-module.c:1275 +#: src/libvlc-module.c:1326 msgid "Set playlist bookmark 9" msgstr "R?gler le favori n?9" -#: src/libvlc-module.c:1276 +#: src/libvlc-module.c:1327 msgid "Set playlist bookmark 10" msgstr "R?gler le favori n?10" -#: src/libvlc-module.c:1277 +#: src/libvlc-module.c:1328 msgid "Select the key to set this playlist bookmark." msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour r?gler ce favori." -#: src/libvlc-module.c:1279 modules/control/hotkeys.c:84 +#: src/libvlc-module.c:1330 modules/control/hotkeys.c:86 msgid "Playlist bookmark 1" msgstr "Favori n?1" -#: src/libvlc-module.c:1280 modules/control/hotkeys.c:85 +#: src/libvlc-module.c:1331 modules/control/hotkeys.c:87 msgid "Playlist bookmark 2" msgstr "Favori n?2" -#: src/libvlc-module.c:1281 modules/control/hotkeys.c:86 +#: src/libvlc-module.c:1332 modules/control/hotkeys.c:88 msgid "Playlist bookmark 3" msgstr "Favori n?3" -#: src/libvlc-module.c:1282 modules/control/hotkeys.c:87 +#: src/libvlc-module.c:1333 modules/control/hotkeys.c:89 msgid "Playlist bookmark 4" msgstr "Favori n?4" -#: src/libvlc-module.c:1283 modules/control/hotkeys.c:88 +#: src/libvlc-module.c:1334 modules/control/hotkeys.c:90 msgid "Playlist bookmark 5" msgstr "Favori n?5" -#: src/libvlc-module.c:1284 modules/control/hotkeys.c:89 +#: src/libvlc-module.c:1335 modules/control/hotkeys.c:91 msgid "Playlist bookmark 6" msgstr "Favori n?6" -#: src/libvlc-module.c:1285 modules/control/hotkeys.c:90 +#: src/libvlc-module.c:1336 modules/control/hotkeys.c:92 msgid "Playlist bookmark 7" msgstr "Favori n?7" -#: src/libvlc-module.c:1286 modules/control/hotkeys.c:91 +#: src/libvlc-module.c:1337 modules/control/hotkeys.c:93 msgid "Playlist bookmark 8" msgstr "Favori n?8" -#: src/libvlc-module.c:1287 modules/control/hotkeys.c:92 +#: src/libvlc-module.c:1338 modules/control/hotkeys.c:94 msgid "Playlist bookmark 9" msgstr "Favori n?9" -#: src/libvlc-module.c:1288 modules/control/hotkeys.c:93 +#: src/libvlc-module.c:1339 modules/control/hotkeys.c:95 msgid "Playlist bookmark 10" msgstr "Favori n?10" -#: src/libvlc-module.c:1290 +#: src/libvlc-module.c:1341 msgid "This allows you to define playlist bookmarks." msgstr "D?finir des favoris de liste de lecture." -#: src/libvlc-module.c:1292 +#: src/libvlc-module.c:1343 msgid "Go back in browsing history" msgstr "Pr?c?dent (historique)" -#: src/libvlc-module.c:1293 +#: src/libvlc-module.c:1344 msgid "" "Select the key to go back (to the previous media item) in the browsing " "history." @@ -4168,11 +4200,11 @@ msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour passer ? l??l?ment " "pr?c?dent de l?historique de navigation." -#: src/libvlc-module.c:1294 +#: src/libvlc-module.c:1345 msgid "Go forward in browsing history" msgstr "Suivant (historique)" -#: src/libvlc-module.c:1295 +#: src/libvlc-module.c:1346 msgid "" "Select the key to go forward (to the next media item) in the browsing " "history." @@ -4180,144 +4212,165 @@ msgstr "" "S?lectionnez la combinaison de touches ? utiliser pour passer ? l??l?ment " "suivant de l?historique de navigation." -#: src/libvlc-module.c:1297 +#: src/libvlc-module.c:1348 msgid "Cycle audio track" msgstr "D?filer les pistes audio" -#: src/libvlc-module.c:1298 +#: src/libvlc-module.c:1349 msgid "Cycle through the available audio tracks(languages)." msgstr "Boucler entre les diff?rentes pistes audio disponibles (langues)." -#: src/libvlc-module.c:1299 +#: src/libvlc-module.c:1350 msgid "Cycle subtitle track" msgstr "D?filer les pistes de sous-titres" -#: src/libvlc-module.c:1300 +#: src/libvlc-module.c:1351 msgid "Cycle through the available subtitle tracks." msgstr "Boucler entre les diff?rentes pistes de sous-titres." -#: src/libvlc-module.c:1301 +#: src/libvlc-module.c:1352 msgid "Cycle source aspect ratio" msgstr "Boucler entre les aspects" -#: src/libvlc-module.c:1302 +#: src/libvlc-module.c:1353 msgid "Cycle through a predefined list of source aspect ratios." msgstr "Boucler dans une liste pr?d?finie de formats d??cran." -#: src/libvlc-module.c:1303 +#: src/libvlc-module.c:1354 msgid "Cycle video crop" msgstr "Boucler entre les rognages" -#: src/libvlc-module.c:1304 +#: src/libvlc-module.c:1355 msgid "Cycle through a predefined list of crop formats." msgstr "Boucler dans une liste pr?d?finie de formats de rognage." -#: src/libvlc-module.c:1305 +#: src/libvlc-module.c:1356 +msgid "Toggle autoscaling" +msgstr "" + +#: src/libvlc-module.c:1357 +msgid "Activate or deactivate autoscaling." +msgstr "" + +#: src/libvlc-module.c:1358 +msgid "Increase scale factor" +msgstr "" + +#: src/libvlc-module.c:1359 +msgid "Increase scale factor." +msgstr "" + +#: src/libvlc-module.c:1360 +msgid "Decrease scale factor" +msgstr "" + +#: src/libvlc-module.c:1361 +msgid "Decrease scale factor." +msgstr "" + +#: src/libvlc-module.c:1362 msgid "Cycle deinterlace modes" msgstr "Boucler le d?sentrelacement" -#: src/libvlc-module.c:1306 +#: src/libvlc-module.c:1363 msgid "Cycle through deinterlace modes." msgstr "Boucler entre les diff?rents modes de d?sentrelacement." -#: src/libvlc-module.c:1307 +#: src/libvlc-module.c:1364 msgid "Show interface" msgstr "Afficher l?interface" -#: src/libvlc-module.c:1308 +#: src/libvlc-module.c:1365 msgid "Raise the interface above all other windows." msgstr "Montrer l?interface devant les autres fen?tres" -#: src/libvlc-module.c:1309 +#: src/libvlc-module.c:1366 msgid "Hide interface" msgstr "Masquer l?interface" -#: src/libvlc-module.c:1310 +#: src/libvlc-module.c:1367 msgid "Lower the interface below all other windows." msgstr "Cacher l?interface derri?re les autres fen?tres" -#: src/libvlc-module.c:1311 +#: src/libvlc-module.c:1368 msgid "Take video snapshot" msgstr "Prendre une capture d??cran" -#: src/libvlc-module.c:1312 +#: src/libvlc-module.c:1369 msgid "Takes a video snapshot and writes it to disk." msgstr "Prend une capture d??cran et l??crit sur le disque" -#: src/libvlc-module.c:1314 modules/access_filter/record.c:56 -#: modules/access_filter/record.c:57 modules/gui/macosx/simple_prefs.m:257 -#: modules/gui/qt4/components/interface_widgets.cpp:354 -#: modules/gui/qt4/ui/sprefs_input.ui:194 +#: src/libvlc-module.c:1371 modules/gui/qt4/components/controller.hpp:112 +#: modules/stream_out/record.c:60 msgid "Record" msgstr "Enregistrer" -#: src/libvlc-module.c:1315 +#: src/libvlc-module.c:1372 msgid "Record access filter start/stop." msgstr "D?marrer/arr?ter le filtre d?enregistrement" -#: src/libvlc-module.c:1316 modules/access_filter/dump.c:54 -#: modules/access_filter/dump.c:55 modules/gui/macosx/simple_prefs.m:251 -#: modules/gui/qt4/ui/sprefs_input.ui:201 +#: src/libvlc-module.c:1373 modules/access_filter/dump.c:54 +#: modules/access_filter/dump.c:55 msgid "Dump" -msgstr "" +msgstr "Dump" -#: src/libvlc-module.c:1317 +#: src/libvlc-module.c:1374 msgid "Media dump access filter trigger." -msgstr "" +msgstr "D?clenchement du filtre de dump" -#: src/libvlc-module.c:1319 +#: src/libvlc-module.c:1376 msgid "Normal/Repeat/Loop" msgstr "Normal/R?p?ter/Boucler" -#: src/libvlc-module.c:1320 +#: src/libvlc-module.c:1377 msgid "Toggle Normal/Repeat/Loop playlist modes" msgstr "Basculer les modes de liste de lecture Normal/R?p?ter/Boucler" -#: src/libvlc-module.c:1323 +#: src/libvlc-module.c:1380 msgid "Toggle random playlist playback" msgstr "Basculer le mode de lecture al?atoire" -#: src/libvlc-module.c:1328 src/libvlc-module.c:1329 +#: src/libvlc-module.c:1385 src/libvlc-module.c:1386 msgid "Un-Zoom" msgstr "D?zoomer" -#: src/libvlc-module.c:1331 src/libvlc-module.c:1332 +#: src/libvlc-module.c:1388 src/libvlc-module.c:1389 msgid "Crop one pixel from the top of the video" msgstr "Rogner un pixel en haut de la vid?o." -#: src/libvlc-module.c:1333 src/libvlc-module.c:1334 +#: src/libvlc-module.c:1390 src/libvlc-module.c:1391 msgid "Uncrop one pixel from the top of the video" msgstr "Rogner un pixel en haut de la vid?o." -#: src/libvlc-module.c:1336 src/libvlc-module.c:1337 +#: src/libvlc-module.c:1393 src/libvlc-module.c:1394 msgid "Crop one pixel from the left of the video" msgstr "Rogner un pixel ? gauche de la vid?o." -#: src/libvlc-module.c:1338 src/libvlc-module.c:1339 +#: src/libvlc-module.c:1395 src/libvlc-module.c:1396 msgid "Uncrop one pixel from the left of the video" msgstr "Enl?ve un pixel de rognage ? gauche de la vid?o." -#: src/libvlc-module.c:1341 src/libvlc-module.c:1342 +#: src/libvlc-module.c:1398 src/libvlc-module.c:1399 msgid "Crop one pixel from the bottom of the video" msgstr "Rogner un pixels en bas de la vid?o." -#: src/libvlc-module.c:1343 src/libvlc-module.c:1344 +#: src/libvlc-module.c:1400 src/libvlc-module.c:1401 msgid "Uncrop one pixel from the bottom of the video" msgstr "Enl?ve un pixel de rognage en bas de la vid?o." -#: src/libvlc-module.c:1346 src/libvlc-module.c:1347 +#: src/libvlc-module.c:1403 src/libvlc-module.c:1404 msgid "Crop one pixel from the right of the video" msgstr "Rogner un pixel ? droite de la vid?o." -#: src/libvlc-module.c:1348 src/libvlc-module.c:1349 +#: src/libvlc-module.c:1405 src/libvlc-module.c:1406 msgid "Uncrop one pixel from the right of the video" msgstr "Enl?ve un pixel de rognage ? droite de la vid?o." -#: src/libvlc-module.c:1351 +#: src/libvlc-module.c:1408 msgid "Toggle wallpaper mode in video output" msgstr "Basculer le mode papier peint de la sortie vid?o" -#: src/libvlc-module.c:1353 +#: src/libvlc-module.c:1410 msgid "" "Toggle wallpaper mode in video output. Only works with the directx video " "output for the time being." @@ -4325,67 +4378,67 @@ msgstr "" "Basculer le mode papier peint dans le module de sortie vid?o. Marche " "seulement avec le module de sortie vid?o directx pour l?instant." -#: src/libvlc-module.c:1356 src/libvlc-module.c:1357 +#: src/libvlc-module.c:1413 src/libvlc-module.c:1414 msgid "Display OSD menu on top of video output" -msgstr "" +msgstr "Afficher le menu d'affichage ? l'?cran en haut de la vid?o" -#: src/libvlc-module.c:1358 +#: src/libvlc-module.c:1415 msgid "Do not display OSD menu on video output" -msgstr "" +msgstr "Ne pas afficher le menu d'affichage ? l'?cran en haut de la vid?o" -#: src/libvlc-module.c:1359 +#: src/libvlc-module.c:1416 msgid "Do not display OSD menu on top of video output" -msgstr "" +msgstr "Ne pas afficher le menu d'affichage ? l'?cran sur vid?o" -#: src/libvlc-module.c:1360 +#: src/libvlc-module.c:1417 msgid "Highlight widget on the right" -msgstr "" +msgstr "Mettre en valeur les widgets sur la droite" -#: src/libvlc-module.c:1362 +#: src/libvlc-module.c:1419 msgid "Move OSD menu highlight to the widget on the right" -msgstr "" +msgstr "D?placer le menu d'affichage ? l'?cran dans le widget de droite" -#: src/libvlc-module.c:1363 +#: src/libvlc-module.c:1420 msgid "Highlight widget on the left" -msgstr "" +msgstr "Mettre en valeur les widgets sur la gauche" -#: src/libvlc-module.c:1365 +#: src/libvlc-module.c:1422 msgid "Move OSD menu highlight to the widget on the left" -msgstr "" +msgstr "D?placer le menu d'affichage ? l'?cran dans le widget de gauche" -#: src/libvlc-module.c:1366 +#: src/libvlc-module.c:1423 msgid "Highlight widget on top" -msgstr "" +msgstr "Mettre en valeur les widgets en haut" -#: src/libvlc-module.c:1368 +#: src/libvlc-module.c:1425 msgid "Move OSD menu highlight to the widget on top" -msgstr "" +msgstr "D?placer le menu d'affichage ? l'?cran dans le widget en haut" -#: src/libvlc-module.c:1369 +#: src/libvlc-module.c:1426 msgid "Highlight widget below" -msgstr "" +msgstr "Mettre en valeur les widgets en bas" -#: src/libvlc-module.c:1371 +#: src/libvlc-module.c:1428 msgid "Move OSD menu highlight to the widget below" -msgstr "" +msgstr "D?placer le menu d'affichage ? l'?cran dans le widget en bas" -#: src/libvlc-module.c:1372 +#: src/libvlc-module.c:1429 msgid "Select current widget" -msgstr "" +msgstr "S?lectionner le widget courant" -#: src/libvlc-module.c:1374 +#: src/libvlc-module.c:1431 msgid "Selecting current widget performs the associated action." -msgstr "" +msgstr "S?lectionner le widget courant r?alise l'action associ?e" -#: src/libvlc-module.c:1376 +#: src/libvlc-module.c:1433 msgid "Cycle through audio devices" msgstr "Boucler entre les diff?rents p?riph?riques audio" -#: src/libvlc-module.c:1377 +#: src/libvlc-module.c:1434 msgid "Cycle through available audio devices" msgstr "Boucler entre les diff?rents p?riph?riques audio disponibles" -#: src/libvlc-module.c:1379 +#: src/libvlc-module.c:1436 #, c-format msgid "" "Usage: %s [options] [stream] ...\n" @@ -4428,9 +4481,9 @@ msgstr "" "\n" "Styles des options :\n" " --option Une option globale.\n" -" -option La version ? lettre unique d?une --option globale.\n" -" :option Une option qui ne s?applique qu?au flux le pr?c?dent\n" -" et qui outrepasse le param?tre pr?c?dent.\n" +" -option La version ? lettre unique d?une --option globale.\n" +" :option Une option qui ne s?applique qu?au flux la pr?c?dant\n" +" et qui surcharge le param?tre pr?c?dant.\n" "\n" "Syntaxe des flux (MRL) :\n" " [[acces]/[demux]://]URL[@[titre][:chapitre][-[titre][:chapitre]]] [:" @@ -4438,7 +4491,7 @@ msgstr "" "\n" " De nombreuses --options globales peuvent aussi ?tre utilis?es en tant\n" " qu?options sp?cifiques ? une MRL.\n" -" Plusieurs paires ?option=valeur? peuvent ?tre sp?cifi?es.\n" +" Plusieurs paires ??option=valeur?? peuvent ?tre sp?cifi?es.\n" "\n" "Syntaxe pour l?URL :\n" " [file://]fichier fichier standard\n" @@ -4446,910 +4499,474 @@ msgstr "" " ftp://ip:port/fichier Adresse FTP\n" " mms://ip:port/fichier Adresse MMS\n" " screen:// Capture d??cran\n" -" [dvd://][p?riph?rique][@brut] DVD\n" -" [vcd://][p?riph?rique] VCD\n" -" [cdda://][p?riph?rique] CD Audio\n" +" [dvd://][p?riph?rique][@brut] DVD\n" +" [vcd://][p?riph?rique] VCD\n" +" [cdda://][p?riph?rique] CD Audio\n" " udp://[[]@[adresse d?attache][:port]]\n" " Flux UDP envoy? par un serveur\n" " Dans le cas d?un flux multicast, utiliser udp://@adresse\n" -" vlc://pause Mettre en pause la liste de lecture\n" -" vlc://quit Quitter VLC\n" +" vlc://pause Mettre en pause la liste de lecture\n" +" vlc://quit Quitter VLC\n" -#: src/libvlc-module.c:1521 src/video_output/vout_intf.c:420 -#: modules/gui/macosx/controls.m:473 modules/gui/macosx/controls.m:937 -#: modules/gui/macosx/intf.m:570 modules/gui/macosx/intf.m:625 +#: src/libvlc-module.c:1583 src/video_output/vout_intf.c:440 +#: modules/gui/macosx/controls.m:492 modules/gui/macosx/controls.m:999 +#: modules/gui/macosx/intf.m:580 modules/gui/macosx/intf.m:642 #: modules/video_output/snapshot.c:81 msgid "Snapshot" msgstr "Capture d??cran" -#: src/libvlc-module.c:1539 +#: src/libvlc-module.c:1600 msgid "Window properties" msgstr "Propri?t?s de la fen?tre" -#: src/libvlc-module.c:1587 +#: src/libvlc-module.c:1652 msgid "Subpictures" msgstr "Incrustations" -#: src/libvlc-module.c:1595 modules/codec/subtitles/subsdec.c:117 +#: src/libvlc-module.c:1660 modules/codec/subtitles/subsdec.c:117 #: modules/demux/subtitle.c:74 modules/gui/beos/InterfaceWindow.cpp:280 -#: modules/gui/qt4/ui/sout.ui:842 modules/gui/qt4/ui/sout.ui:848 msgid "Subtitles" msgstr "Sous-titres" -#: src/libvlc-module.c:1612 modules/stream_out/transcode.c:122 +#: src/libvlc-module.c:1677 modules/stream_out/transcode.c:123 msgid "Overlays" msgstr "Overlays" -#: src/libvlc-module.c:1620 +#: src/libvlc-module.c:1685 msgid "Track settings" msgstr "Param?tres de la piste" -#: src/libvlc-module.c:1650 +#: src/libvlc-module.c:1715 msgid "Playback control" msgstr "Contr?le de lecture" -#: src/libvlc-module.c:1671 +#: src/libvlc-module.c:1740 msgid "Default devices" msgstr "P?riph?riques par d?faut" -#: src/libvlc-module.c:1680 +#: src/libvlc-module.c:1749 msgid "Network settings" msgstr "Param?tres r?seau" -#: src/libvlc-module.c:1692 +#: src/libvlc-module.c:1761 msgid "Socks proxy" msgstr "Proxy SOCKS" -#: src/libvlc-module.c:1701 +#: src/libvlc-module.c:1770 msgid "Metadata" msgstr "M?tadonn?es" -#: src/libvlc-module.c:1731 +#: src/libvlc-module.c:1810 msgid "Decoders" msgstr "D?codeurs" -#: src/libvlc-module.c:1738 modules/access/v4l2/v4l2.c:92 +#: src/libvlc-module.c:1817 modules/access/v4l2.c:84 #: modules/gui/macosx/playlistinfo.m:93 -#: modules/gui/qt4/components/info_panels.cpp:524 +#: modules/gui/qt4/components/info_panels.cpp:519 msgid "Input" msgstr "Entr?e" -#: src/libvlc-module.c:1778 +#: src/libvlc-module.c:1856 msgid "VLM" msgstr "VLM" -#: src/libvlc-module.c:1811 +#: src/libvlc-module.c:1888 msgid "CPU" msgstr "Processeur" -#: src/libvlc-module.c:1833 +#: src/libvlc-module.c:1910 msgid "Special modules" msgstr "Modules sp?ciaux" -#: src/libvlc-module.c:1839 +#: src/libvlc-module.c:1916 msgid "Plugins" msgstr "Modules" -#: src/libvlc-module.c:1848 +#: src/libvlc-module.c:1924 msgid "Performance options" msgstr "Options de performance" -#: src/libvlc-module.c:1998 +#: src/libvlc-module.c:2070 msgid "Hot keys" msgstr "Combinaisons de touches" -#: src/libvlc-module.c:2395 +#: src/libvlc-module.c:2496 msgid "Jump sizes" msgstr "Tailles des sauts" -#: src/libvlc-module.c:2472 +#: src/libvlc-module.c:2573 msgid "print help for VLC (can be combined with --advanced and --help-verbose)" msgstr "" -"Afficher l?aide de VLC (peut ?tre combin? avec --advanced et --help-verbose)" +"Afficher l?aide de VLC (peut ?tre combin? avec ??--advanced?? et ??--help-" +"verbose??)" -#: src/libvlc-module.c:2475 +#: src/libvlc-module.c:2576 msgid "Exhaustive help for VLC and its modules" -msgstr "" +msgstr "Aide extensive pour VLC et ses modules" -#: src/libvlc-module.c:2477 +#: src/libvlc-module.c:2578 msgid "" "print help for VLC and all its modules (can be combined with --advanced and " "--help-verbose)" msgstr "" -"Afficher l?aide de VLC et de ses modules (peut ?tre combin? avec --advanced " -"et --help-verbose)" +"Afficher l?aide de VLC et de ses modules (peut ?tre combin? avec ??--" +"advanced?? et ??--help-verbose??)" -#: src/libvlc-module.c:2480 +#: src/libvlc-module.c:2581 msgid "ask for extra verbosity when displaying help" msgstr "Afficher plus de d?tails dans l?aide" -#: src/libvlc-module.c:2482 +#: src/libvlc-module.c:2583 msgid "print a list of available modules" msgstr "Affiche la liste des modules disponibles" -#: src/libvlc-module.c:2484 +#: src/libvlc-module.c:2585 msgid "print a list of available modules with extra detail" msgstr "Affiche la liste des modules disponibles avec tous les d?tails" -#: src/libvlc-module.c:2486 +#: src/libvlc-module.c:2587 msgid "" "print help on a specific module (can be combined with --advanced and --help-" -"verbose)" +"verbose). Prefix the module name with = for strictmatches." msgstr "" -"Afficher l?aide d?un module sp?cifique (peut ?tre combin? avec --advanced et " -"--help-verbose)" +"Afficher l?aide d'un module sp?cifique (peut ?tre combin? avec ??--advanced?? " +"et ??--help-verbose??). Pr?fixer le nom du module avec ??=?? pour ?tre plus pr?cis." -#: src/libvlc-module.c:2489 +#: src/libvlc-module.c:2591 msgid "no configuration option will be loaded nor saved to config file" msgstr "" +"aucune option de configuration ne sera charg?e ou enregistr?e dans le " +"fichier de configuration" -#: src/libvlc-module.c:2491 +#: src/libvlc-module.c:2593 msgid "save the current command line options in the config" msgstr "" "Enregistre les options de la ligne de commande actuelle dans la configuration" -#: src/libvlc-module.c:2493 +#: src/libvlc-module.c:2595 msgid "reset the current config to the default values" msgstr "Remet ? z?ro la configuration" -#: src/libvlc-module.c:2495 +#: src/libvlc-module.c:2597 msgid "use alternate config file" msgstr "Utilise un autre fichier de configuration" -#: src/libvlc-module.c:2497 +#: src/libvlc-module.c:2599 msgid "resets the current plugins cache" msgstr "Remet ? z?ro le cache des modules" -#: src/libvlc-module.c:2499 +#: src/libvlc-module.c:2601 msgid "print version information" msgstr "Affiche le num?ro de version" -#: src/libvlc-module.c:2556 +#: src/libvlc-module.c:2657 msgid "main program" msgstr "Programme principal" -#: src/misc/update.c:1620 +#: src/misc/update.c:1463 +#, c-format +msgid "%.1f GB" +msgstr "%.lf Go" + +#: src/misc/update.c:1465 +#, c-format +msgid "%.1f MB" +msgstr "%.lf Mo" + +#: src/misc/update.c:1467 +#, c-format +msgid "%.1f kB" +msgstr "%.lf ko" + +#: src/misc/update.c:1469 +#, c-format +msgid "%ld B" +msgstr "%ld B" + +#: src/misc/update.c:1572 +msgid "Saving file failed" +msgstr "?chec de l'enregistrement du fichier" + +#: src/misc/update.c:1573 +#, c-format +msgid "Failed to open \"%s\" for writing" +msgstr "?chec de l'ouverture du fichier ??%s?? en ?criture." + +#: src/misc/update.c:1589 src/misc/update.c:1613 +#, c-format +msgid "" +"%s\n" +"Downloading... %s/%s %.1f%% done" +msgstr "" +"%s\n" +"T?l?chargement? %s/%s %.1f%% fait" + +#: src/misc/update.c:1592 +msgid "Downloading ..." +msgstr "T?l?chargement?" + +#: src/misc/update.c:1632 +#, c-format +msgid "" +"%s\n" +"Done %s (100.0%%)" +msgstr "" +"%s\n" +"Fait %s (100.0%%)" + +#: src/misc/update.c:1653 msgid "File could not be verified" msgstr "Le fichier n'a pas pu ?tre v?rifi?" -#: src/misc/update.c:1621 +#: src/misc/update.c:1654 #, c-format msgid "" "It was not possible to download a cryptographic signature for the downloaded " "file \"%s\". Thus, it was deleted." msgstr "" +"Impossible de t?l?charger une signature cryptographique pour le fichier??%" +"s??. En cons?quence, il a ?t? supprim?." -#: src/misc/update.c:1632 src/misc/update.c:1644 +#: src/misc/update.c:1665 src/misc/update.c:1677 msgid "Invalid signature" msgstr "La signature est invalide" -#: src/misc/update.c:1633 src/misc/update.c:1645 +#: src/misc/update.c:1666 src/misc/update.c:1678 #, c-format msgid "" "The cryptographic signature for the downloaded file \"%s\" was invalid and " "could not be used to securely verify it. Thus, the file was deleted." msgstr "" +"La signature cryptographique pour le fichier t?l?charg? ??%s?? est invalide " +"et ne peut donc pas ?tre utilis?e pour le v?rifier. En cons?quence, il a ?t? " +"supprim?." -#: src/misc/update.c:1657 +#: src/misc/update.c:1690 msgid "File not verifiable" msgstr "Le fichier ne peut pas ?tre v?rifi?" -#: src/misc/update.c:1658 +#: src/misc/update.c:1691 #, c-format msgid "" "It was not possible to securely verify the downloaded file \"%s\". Thus, it " -"was VLC deleted." +"was deleted." msgstr "" +"Il est impossible de v?rifier de fa?on s?curis?e le fichier t?l?charg? " +"??%s??. En cons?quence, il a ?t? supprim?." -#: src/misc/update.c:1669 src/misc/update.c:1681 +#: src/misc/update.c:1702 src/misc/update.c:1714 msgid "File corrupted" msgstr "Fichier corrompu" -#: src/misc/update.c:1670 src/misc/update.c:1682 +#: src/misc/update.c:1703 src/misc/update.c:1715 #, c-format msgid "Downloaded file \"%s\" was corrupted. Thus, it was deleted." msgstr "" +"Le fichier t?l?charg? ??%s?? est corrompu. En cons?quence, il a ?t? supprim?." + +#: src/misc/update.c:1728 +msgid "Cancelled" +msgstr "Annul?" -#: src/playlist/tree.c:66 modules/access/bda/bda.c:62 -#: modules/access/bda/bda.c:115 modules/access/bda/bda.c:123 -#: modules/access/bda/bda.c:130 modules/access/bda/bda.c:136 -#: modules/access/bda/bda.c:142 modules/access/bda/bda.c:148 -#: modules/access/bda/bda.c:154 +#: src/playlist/tree.c:66 modules/access/bda/bda.c:61 +#: modules/access/bda/bda.c:114 modules/access/bda/bda.c:131 +#: modules/access/bda/bda.c:138 modules/access/bda/bda.c:144 +#: modules/access/bda/bda.c:150 modules/access/bda/bda.c:156 +#: modules/access/bda/bda.c:162 msgid "Undefined" msgstr "Ind?fini" -#: src/text/iso-639_def.h:38 -msgid "Afar" -msgstr "Afar" - -#: src/text/iso-639_def.h:39 -msgid "Abkhazian" -msgstr "Abkhaze" - -#: src/text/iso-639_def.h:40 -msgid "Afrikaans" -msgstr "Afrikaans" - -#: src/text/iso-639_def.h:41 -msgid "Albanian" -msgstr "Albanais" - -#: src/text/iso-639_def.h:42 -msgid "Amharic" -msgstr "Amharique" - -#: src/text/iso-639_def.h:44 -msgid "Armenian" -msgstr "Arm?nien" - -#: src/text/iso-639_def.h:45 -msgid "Assamese" -msgstr "Assamais" - -#: src/text/iso-639_def.h:46 -msgid "Avestan" -msgstr "Avestique" - -#: src/text/iso-639_def.h:47 -msgid "Aymara" -msgstr "Aymara" - -#: src/text/iso-639_def.h:48 -msgid "Azerbaijani" -msgstr "Az?ri" - -#: src/text/iso-639_def.h:49 -msgid "Bashkir" -msgstr "Bachkir" - -#: src/text/iso-639_def.h:50 -msgid "Basque" -msgstr "Basque" - -#: src/text/iso-639_def.h:51 -msgid "Belarusian" -msgstr "Bi?lorusse" - -#: src/text/iso-639_def.h:52 -msgid "Bengali" -msgstr "Bengali" - -#: src/text/iso-639_def.h:53 -msgid "Bihari" -msgstr "Bihari" - -#: src/text/iso-639_def.h:54 -msgid "Bislama" -msgstr "Bichlamar" - -#: src/text/iso-639_def.h:55 -msgid "Bosnian" -msgstr "Bosniaque" - -#: src/text/iso-639_def.h:56 -msgid "Breton" -msgstr "Breton" - -#: src/text/iso-639_def.h:58 -msgid "Burmese" -msgstr "Birman" - -#: src/text/iso-639_def.h:60 -msgid "Chamorro" -msgstr "Chaorro" - -#: src/text/iso-639_def.h:61 -msgid "Chechen" -msgstr "Tch?tch?ne" - -#: src/text/iso-639_def.h:62 -msgid "Chinese" -msgstr "Chinois" - -#: src/text/iso-639_def.h:63 -msgid "Church Slavic" -msgstr "Slavon" - -#: src/text/iso-639_def.h:64 -msgid "Chuvash" -msgstr "Tchouvache" - -#: src/text/iso-639_def.h:65 -msgid "Cornish" -msgstr "Cornique" - -#: src/text/iso-639_def.h:66 -msgid "Corsican" -msgstr "Corse" - -#: src/text/iso-639_def.h:70 -msgid "Dzongkha" -msgstr "Dzongkha" - -#: src/text/iso-639_def.h:71 -msgid "English" -msgstr "Anglais GB" - -#: src/text/iso-639_def.h:72 -msgid "Esperanto" -msgstr "Esp?ranto" - -#: src/text/iso-639_def.h:73 -msgid "Estonian" -msgstr "Estonien" - -#: src/text/iso-639_def.h:74 -msgid "Faroese" -msgstr "F?ro?en" - -#: src/text/iso-639_def.h:75 -msgid "Fijian" -msgstr "Fidjien" - -#: src/text/iso-639_def.h:78 -msgid "Frisian" -msgstr "Frison" - -#: src/text/iso-639_def.h:81 -msgid "Gaelic (Scots)" -msgstr "Ga?lique (?cossais)" - -#: src/text/iso-639_def.h:82 -msgid "Irish" -msgstr "Irlandais" - -#: src/text/iso-639_def.h:83 -msgid "Gallegan" -msgstr "Galicien" - -#: src/text/iso-639_def.h:84 -msgid "Manx" -msgstr "Mannois" - -#: src/text/iso-639_def.h:85 -msgid "Greek, Modern ()" -msgstr "Grec moderne" - -#: src/text/iso-639_def.h:86 -msgid "Guarani" -msgstr "Guarani" - -#: src/text/iso-639_def.h:87 -msgid "Gujarati" -msgstr "Goudjrati" - -#: src/text/iso-639_def.h:89 -msgid "Herero" -msgstr "Herero" - -#: src/text/iso-639_def.h:90 -msgid "Hindi" -msgstr "Hindi" - -#: src/text/iso-639_def.h:91 -msgid "Hiri Motu" -msgstr "Hiri motu" - -#: src/text/iso-639_def.h:93 -msgid "Icelandic" -msgstr "Islandais" - -#: src/text/iso-639_def.h:94 -msgid "Inuktitut" -msgstr "Inuktitut" - -#: src/text/iso-639_def.h:95 -msgid "Interlingue" -msgstr "Interlingue" - -#: src/text/iso-639_def.h:96 -msgid "Interlingua" -msgstr "Interlingua" - -#: src/text/iso-639_def.h:97 -msgid "Indonesian" -msgstr "Indon?sien" - -#: src/text/iso-639_def.h:98 -msgid "Inupiaq" -msgstr "Inupiaq" - -#: src/text/iso-639_def.h:100 -msgid "Javanese" -msgstr "Javanais" - -#: src/text/iso-639_def.h:102 -msgid "Kalaallisut (Greenlandic)" -msgstr "Groenlandais" - -#: src/text/iso-639_def.h:103 -msgid "Kannada" -msgstr "Kannada" - -#: src/text/iso-639_def.h:104 -msgid "Kashmiri" -msgstr "Kashmiri" - -#: src/text/iso-639_def.h:105 -msgid "Kazakh" -msgstr "Kazakh" - -#: src/text/iso-639_def.h:106 -msgid "Khmer" -msgstr "Khmer" - -#: src/text/iso-639_def.h:107 -msgid "Kikuyu" -msgstr "Kikuyu" - -#: src/text/iso-639_def.h:108 -msgid "Kinyarwanda" -msgstr "Rwanda" - -#: src/text/iso-639_def.h:109 -msgid "Kirghiz" -msgstr "Kirghize" - -#: src/text/iso-639_def.h:110 -msgid "Komi" -msgstr "Komi" - -#: src/text/iso-639_def.h:112 -msgid "Kuanyama" -msgstr "Kuanyama" - -#: src/text/iso-639_def.h:113 -msgid "Kurdish" -msgstr "Kurde" - -#: src/text/iso-639_def.h:114 -msgid "Lao" -msgstr "Lao" - -#: src/text/iso-639_def.h:115 -msgid "Latin" -msgstr "Latin" - -#: src/text/iso-639_def.h:116 -msgid "Latvian" -msgstr "Letton" - -#: src/text/iso-639_def.h:117 -msgid "Lingala" -msgstr "Lingala" - -#: src/text/iso-639_def.h:118 -msgid "Lithuanian" -msgstr "Lithuanien" - -#: src/text/iso-639_def.h:119 -msgid "Letzeburgesch" -msgstr "Luxembourgeois" - -#: src/text/iso-639_def.h:120 -msgid "Macedonian" -msgstr "Mac?donien" - -#: src/text/iso-639_def.h:121 -msgid "Marshall" -msgstr "Marshall" - -#: src/text/iso-639_def.h:122 -msgid "Malayalam" -msgstr "Malayalam" - -#: src/text/iso-639_def.h:123 -msgid "Maori" -msgstr "Maori" - -#: src/text/iso-639_def.h:124 -msgid "Marathi" -msgstr "Marathe" - -#: src/text/iso-639_def.h:126 -msgid "Malagasy" -msgstr "Malgache" - -#: src/text/iso-639_def.h:127 -msgid "Maltese" -msgstr "Maltais" - -#: src/text/iso-639_def.h:128 -msgid "Moldavian" -msgstr "Moldave" - -#: src/text/iso-639_def.h:129 -msgid "Mongolian" -msgstr "Mongol" - -#: src/text/iso-639_def.h:130 -msgid "Nauru" -msgstr "Nauruan" - -#: src/text/iso-639_def.h:131 -msgid "Navajo" -msgstr "Navaho" - -#: src/text/iso-639_def.h:132 -msgid "Ndebele, South" -msgstr "Nd?b?l? du Nord" - -#: src/text/iso-639_def.h:133 -msgid "Ndebele, North" -msgstr "Nd?b?l? du Sud" - -#: src/text/iso-639_def.h:134 -msgid "Ndonga" -msgstr "Ndonga" - -#: src/text/iso-639_def.h:135 -msgid "Nepali" -msgstr "N?palais" - -#: src/text/iso-639_def.h:136 -msgid "Norwegian" -msgstr "Norv?gien" - -#: src/text/iso-639_def.h:137 -msgid "Norwegian Nynorsk" -msgstr "Norv?gien" - -#: src/text/iso-639_def.h:138 -msgid "Norwegian Bokmaal" -msgstr "Norv?gien Bokm?l" - -#: src/text/iso-639_def.h:139 -msgid "Chichewa; Nyanja" -msgstr "Chichewa ; Nyanja" - -#: src/text/iso-639_def.h:140 -msgid "Occitan (post 1500); Provencal" -msgstr "Occitan (apr?s 1500) ; Proven?al" - -#: src/text/iso-639_def.h:141 -msgid "Oriya" -msgstr "Oriya" - -#: src/text/iso-639_def.h:142 -msgid "Oromo" -msgstr "Galla" - -#: src/text/iso-639_def.h:144 -msgid "Ossetian; Ossetic" -msgstr "Oss?te" - -#: src/text/iso-639_def.h:145 -msgid "Panjabi" -msgstr "Pendjabi" - -#: src/text/iso-639_def.h:147 -msgid "Pali" -msgstr "Pali" - -#: src/text/iso-639_def.h:150 -msgid "Pushto" -msgstr "Pachto" - -#: src/text/iso-639_def.h:151 -msgid "Quechua" -msgstr "Quechua" - -#: src/text/iso-639_def.h:152 -msgid "Original audio" -msgstr "Bande son originale" - -#: src/text/iso-639_def.h:153 -msgid "Raeto-Romance" -msgstr "Rh?to-roman" - -#: src/text/iso-639_def.h:155 -msgid "Rundi" -msgstr "Rundi" - -#: src/text/iso-639_def.h:157 -msgid "Sango" -msgstr "Sango" - -#: src/text/iso-639_def.h:158 -msgid "Sanskrit" -msgstr "Sanskrit" - -#: src/text/iso-639_def.h:160 -msgid "Croatian" -msgstr "Croate" - -#: src/text/iso-639_def.h:161 -msgid "Sinhalese" -msgstr "Singhalais" - -#: src/text/iso-639_def.h:164 -msgid "Northern Sami" -msgstr "Sami du Nord" - -#: src/text/iso-639_def.h:165 -msgid "Samoan" -msgstr "Samoan" - -#: src/text/iso-639_def.h:166 -msgid "Shona" -msgstr "Shona" - -#: src/text/iso-639_def.h:167 -msgid "Sindhi" -msgstr "Sindhi" - -#: src/text/iso-639_def.h:168 -msgid "Somali" -msgstr "Somali" - -#: src/text/iso-639_def.h:169 -msgid "Sotho, Southern" -msgstr "Sotho du Sud" - -#: src/text/iso-639_def.h:171 -msgid "Sardinian" -msgstr "Sarde" - -#: src/text/iso-639_def.h:172 -msgid "Swati" -msgstr "Swati" - -#: src/text/iso-639_def.h:173 -msgid "Sundanese" -msgstr "Soudanais" - -#: src/text/iso-639_def.h:174 -msgid "Swahili" -msgstr "Swahili" - -#: src/text/iso-639_def.h:176 -msgid "Tahitian" -msgstr "Tahitien" - -#: src/text/iso-639_def.h:177 -msgid "Tamil" -msgstr "Tamoul" - -#: src/text/iso-639_def.h:178 -msgid "Tatar" -msgstr "Tatar" - -#: src/text/iso-639_def.h:179 -msgid "Telugu" -msgstr "T?lougou" - -#: src/text/iso-639_def.h:180 -msgid "Tajik" -msgstr "Tadjik" - -#: src/text/iso-639_def.h:181 -msgid "Tagalog" -msgstr "Tagalog" - -#: src/text/iso-639_def.h:182 -msgid "Thai" -msgstr "Tha?" - -#: src/text/iso-639_def.h:183 -msgid "Tibetan" -msgstr "Tib?tain" - -#: src/text/iso-639_def.h:184 -msgid "Tigrinya" -msgstr "Tigrigna" - -#: src/text/iso-639_def.h:185 -msgid "Tonga (Tonga Islands)" -msgstr "Tongan (?les Tonga)" - -#: src/text/iso-639_def.h:186 -msgid "Tswana" -msgstr "Tswana" - -#: src/text/iso-639_def.h:187 -msgid "Tsonga" -msgstr "Tsonga" - -#: src/text/iso-639_def.h:189 -msgid "Turkmen" -msgstr "Turkm?ne" - -#: src/text/iso-639_def.h:190 -msgid "Twi" -msgstr "Twi" - -#: src/text/iso-639_def.h:191 -msgid "Uighur" -msgstr "Ou?gour" - -#: src/text/iso-639_def.h:192 -msgid "Ukrainian" -msgstr "Ukrainien" - -#: src/text/iso-639_def.h:193 -msgid "Urdu" -msgstr "Ourdou" - -#: src/text/iso-639_def.h:194 -msgid "Uzbek" -msgstr "Ouzbek" - -#: src/text/iso-639_def.h:195 -msgid "Vietnamese" -msgstr "Vietnamien" - -#: src/text/iso-639_def.h:196 -msgid "Volapuk" -msgstr "Volap?k" - -#: src/text/iso-639_def.h:197 -msgid "Welsh" -msgstr "Gallois" - -#: src/text/iso-639_def.h:198 -msgid "Wolof" -msgstr "Wolof" - -#: src/text/iso-639_def.h:199 -msgid "Xhosa" -msgstr "Xhosa" - -#: src/text/iso-639_def.h:200 -msgid "Yiddish" -msgstr "Yiddish" - -#: src/text/iso-639_def.h:201 -msgid "Yoruba" -msgstr "Yoruba" - -#: src/text/iso-639_def.h:202 -msgid "Zhuang" -msgstr "Zhuang" - -#: src/text/iso-639_def.h:203 -msgid "Zulu" -msgstr "Zoulou" - -#: src/video_output/video_output.c:391 modules/gui/macosx/intf.m:581 -#: modules/gui/macosx/intf.m:582 modules/video_filter/deinterlace.c:127 +#: src/video_output/video_output.c:490 modules/gui/macosx/intf.m:591 +#: modules/gui/macosx/intf.m:592 modules/video_filter/deinterlace.c:127 msgid "Deinterlace" msgstr "D?sentrelacer" -#: src/video_output/video_output.c:395 modules/video_filter/deinterlace.c:123 +#: src/video_output/video_output.c:494 modules/video_filter/deinterlace.c:123 msgid "Discard" msgstr "N?gliger" -#: src/video_output/video_output.c:397 modules/video_filter/deinterlace.c:123 +#: src/video_output/video_output.c:496 modules/video_filter/deinterlace.c:123 msgid "Blend" msgstr "Fondu" -#: src/video_output/video_output.c:399 modules/video_filter/deinterlace.c:123 +#: src/video_output/video_output.c:498 modules/video_filter/deinterlace.c:123 msgid "Mean" msgstr "Moyenne" -#: src/video_output/video_output.c:401 modules/video_filter/deinterlace.c:123 +#: src/video_output/video_output.c:500 modules/video_filter/deinterlace.c:123 msgid "Bob" msgstr "Bob" -#: src/video_output/video_output.c:403 modules/video_filter/deinterlace.c:123 +#: src/video_output/video_output.c:502 modules/video_filter/deinterlace.c:123 msgid "Linear" msgstr "Lin?aire" -#: src/video_output/vout_intf.c:306 modules/gui/macosx/intf.m:575 -#: modules/gui/macosx/intf.m:576 modules/gui/qt4/ui/video_effects.ui:329 +#: src/video_output/vout_intf.c:311 modules/gui/macosx/intf.m:585 +#: modules/gui/macosx/intf.m:586 modules/gui/qt4/ui/video_effects.ui:329 #: modules/video_filter/crop.c:105 modules/video_filter/croppadd.c:83 #: modules/video_output/x11/xvmc.c:133 msgid "Crop" msgstr "Rogner" -#: src/video_output/vout_intf.c:370 modules/gui/macosx/intf.m:573 -#: modules/gui/macosx/intf.m:574 +#: src/video_output/vout_intf.c:375 modules/gui/macosx/intf.m:583 +#: modules/gui/macosx/intf.m:584 msgid "Aspect-ratio" msgstr "Aspect" -#: modules/access/bda/bda.c:40 modules/access/cdda.c:66 -#: modules/access/dshow/dshow.cpp:98 modules/access/dvb/access.c:78 -#: modules/access/dv.c:71 modules/access/dvdnav.c:72 +#: src/video_output/vout_intf.c:402 +msgid "Autoscale video" +msgstr "Auto-dimensionner la vid?o" + +#: src/video_output/vout_intf.c:409 +msgid "Scale factor" +msgstr "Facteur d'?chelle" + +#: modules/access/alsa.c:72 modules/access/oss.c:62 +msgid "Capture the audio stream in stereo." +msgstr "Capture audio en st?r?o." + +#: modules/access/alsa.c:74 modules/access/oss.c:63 +#: modules/access_output/shout.c:94 +msgid "Samplerate" +msgstr "Fr?quence d??chantillonage" + +#: modules/access/alsa.c:76 modules/access/oss.c:65 +msgid "" +"Samplerate of the captured audio stream, in Hz (eg: 11025, 22050, 44100, " +"48000)" +msgstr "" +"Fr?quence d??chantillonnage audio, en Hz (par exemple : 11025, 22050, 44100, " +"48000)." + +#: modules/access/alsa.c:78 modules/access/bd/bd.c:52 +#: modules/access/bda/bda.c:39 modules/access/cdda.c:63 +#: modules/access/dshow/dshow.cpp:98 modules/access/dv.c:71 +#: modules/access/dvb/access.c:83 modules/access/dvdnav.c:72 #: modules/access/dvdread.c:76 modules/access/eyetv.m:61 -#: modules/access/fake.c:43 modules/access/file.c:84 modules/access/ftp.c:57 +#: modules/access/fake.c:44 modules/access/file.c:77 modules/access/ftp.c:57 #: modules/access/gnomevfs.c:47 modules/access/http.c:75 #: modules/access/jack.c:62 modules/access/mms/mms.c:49 -#: modules/access/pvr.c:60 modules/access/rtmp/access.c:43 -#: modules/access/screen/screen.c:39 modules/access/smb.c:64 -#: modules/access/tcp.c:41 modules/access/udp.c:49 -#: modules/access/v4l2/v4l2.c:215 modules/access/v4l.c:77 +#: modules/access/oss.c:67 modules/access/pvr.c:60 +#: modules/access/rtmp/access.c:43 modules/access/screen/screen.c:40 +#: modules/access/smb.c:64 modules/access/tcp.c:41 modules/access/udp.c:49 +#: modules/access/v4l.c:73 modules/access/v4l2.c:180 #: modules/access/vcd/vcd.c:46 msgid "Caching value in ms" msgstr "Taille du cache en ms" -#: modules/access/bda/bda.c:42 modules/access/dvb/access.c:80 +#: modules/access/alsa.c:80 +msgid "" +"Caching value for Alsa captures. This value should be set in milliseconds." +msgstr "Taille du cache pour les flux Alsa, en millisecondes." + +#: modules/access/alsa.c:87 +msgid "Alsa" +msgstr "Alsa" + +#: modules/access/alsa.c:88 +msgid "Alsa audio capture input" +msgstr "Entr?e de capture audio ??Alsa??" + +#: modules/access/bd/bd.c:54 +msgid "Caching value for BDs. This value should be set in milliseconds." +msgstr "Taille du cache pour les Blu-Rays, en millisecondes" + +#: modules/access/bd/bd.c:61 +msgid "BD" +msgstr "BD" + +#: modules/access/bd/bd.c:62 +msgid "Blu-Ray Disc Input" +msgstr "Entr?e disque Blu-Ray" + +#: modules/access/bda/bda.c:41 modules/access/dvb/access.c:85 msgid "" "Caching value for DVB streams. This value should be set in milliseconds." msgstr "" "Taille du cache pour les flux DVB (satellite, c?ble, TNT), en millisecondes." -#: modules/access/bda/bda.c:45 modules/access/dvb/access.c:83 -#: modules/gui/qt4/components/open_panels.cpp:882 +#: modules/access/bda/bda.c:44 modules/access/dvb/access.c:88 +#: modules/gui/qt4/components/open_panels.cpp:939 msgid "Adapter card to tune" msgstr "Carte ? param?trer" -#: modules/access/bda/bda.c:46 modules/access/dvb/access.c:84 +#: modules/access/bda/bda.c:45 modules/access/dvb/access.c:89 msgid "" "Adapter cards have a device file in directory named /dev/dvb/adapter[n] with " "n>=0." msgstr "" -"Les cartes ont un nom de p?riph?rique dans le r?pertoire /dev/dvb/adapter[n] " -"o? n>=0" +"Les cartes ont un nom de p?riph?rique dans le dossier /dev/dvb/adapter[n] o? " +"n>=0" -#: modules/access/bda/bda.c:49 modules/access/dvb/access.c:86 +#: modules/access/bda/bda.c:48 modules/access/dvb/access.c:91 msgid "Device number to use on adapter" msgstr "Num?ro du p?riph?rique ? utiliser sur la carte" -#: modules/access/bda/bda.c:52 modules/access/dvb/access.c:89 -#: modules/gui/qt4/components/open_panels.cpp:641 -#: modules/gui/qt4/components/open_panels.cpp:904 +#: modules/access/bda/bda.c:51 modules/access/dvb/access.c:94 +#: modules/gui/qt4/components/open_panels.cpp:696 +#: modules/gui/qt4/components/open_panels.cpp:961 msgid "Transponder/multiplex frequency" msgstr "Fr?quence du transpondeur/multiplexeur" -#: modules/access/bda/bda.c:54 modules/access/dvb/access.c:90 +#: modules/access/bda/bda.c:53 modules/access/dvb/access.c:95 msgid "In kHz for DVB-S or Hz for DVB-C/T" msgstr "En kHz pour le DVB-S ou Hz pour le DVB-C/T" -#: modules/access/bda/bda.c:56 +#: modules/access/bda/bda.c:55 msgid "In kHz for DVB-C/S/T" msgstr "En kHz pour le DVB-C/S/T" -#: modules/access/bda/bda.c:59 modules/access/dvb/access.c:92 +#: modules/access/bda/bda.c:58 modules/access/dvb/access.c:97 msgid "Inversion mode" msgstr "Mode d?inversion" -#: modules/access/bda/bda.c:60 modules/access/dvb/access.c:93 +#: modules/access/bda/bda.c:59 modules/access/dvb/access.c:98 msgid "Inversion mode [0=off, 1=on, 2=auto]" msgstr "Mode d?inversion [0=off, 1=on, 2=auto]" -#: modules/access/bda/bda.c:65 modules/access/dvb/access.c:95 +#: modules/access/bda/bda.c:64 modules/access/dvb/access.c:100 msgid "Probe DVB card for capabilities" msgstr "Teste les capacit?s de la carte DVB" -#: modules/access/bda/bda.c:66 modules/access/dvb/access.c:96 +#: modules/access/bda/bda.c:65 modules/access/dvb/access.c:101 msgid "" "Some DVB cards do not like to be probed for their capabilities, you can " "disable this feature if you experience some trouble." msgstr "Certaines cartes DVB ne supportent pas la d?tection de leur capacit?s." -#: modules/access/bda/bda.c:70 modules/access/dvb/access.c:98 +#: modules/access/bda/bda.c:69 modules/access/dvb/access.c:103 msgid "Budget mode" -msgstr "Mode ? budget ?" +msgstr "Mode ??budget??" -#: modules/access/bda/bda.c:71 modules/access/dvb/access.c:99 +#: modules/access/bda/bda.c:70 modules/access/dvb/access.c:104 msgid "This allows you to stream an entire transponder with a \"budget\" card." -msgstr "Diffuser un transpondeur entier avec une carte ? budget ?." +msgstr "Diffuser un transpondeur entier avec une carte ??budget??." -#: modules/access/bda/bda.c:76 +#: modules/access/bda/bda.c:75 msgid "Network Identifier" msgstr "Identifieur r?seau" -#: modules/access/bda/bda.c:79 modules/access/dvb/access.c:102 +#: modules/access/bda/bda.c:78 modules/access/dvb/access.c:107 msgid "Satellite number in the Diseqc system" msgstr "Num?ro du satellite dans le syst?me Diseqc" -#: modules/access/bda/bda.c:80 modules/access/dvb/access.c:103 +#: modules/access/bda/bda.c:79 modules/access/dvb/access.c:108 msgid "[0=no diseqc, 1-4=satellite number]." msgstr "[0=pas de diseqc, 1-4=num?ro du satellite]." -#: modules/access/bda/bda.c:83 modules/access/dvb/access.c:105 +#: modules/access/bda/bda.c:82 modules/access/dvb/access.c:110 msgid "LNB voltage" msgstr "Voltage LNB" -#: modules/access/bda/bda.c:84 modules/access/dvb/access.c:106 +#: modules/access/bda/bda.c:83 modules/access/dvb/access.c:111 msgid "In Volts [0, 13=vertical, 18=horizontal]." msgstr "En Volts [0, 13=vertival, 18=horizontal]." -#: modules/access/bda/bda.c:86 modules/access/dvb/access.c:108 +#: modules/access/bda/bda.c:85 modules/access/dvb/access.c:113 msgid "High LNB voltage" msgstr "Haut voltage LNB" -#: modules/access/bda/bda.c:87 modules/access/dvb/access.c:109 +#: modules/access/bda/bda.c:86 modules/access/dvb/access.c:114 msgid "" "Enable high voltage if your cables are particularly long. This is not " "supported by all frontends." @@ -5357,302 +4974,355 @@ msgstr "" "Activer le voltage ?lev? si vos c?bles sont particuli?rement longs. Cette " "option n?est pas suport?e par tous les adaptateurs." -#: modules/access/bda/bda.c:90 modules/access/dvb/access.c:112 +#: modules/access/bda/bda.c:89 modules/access/dvb/access.c:117 msgid "22 kHz tone" msgstr "Signal ? 22 kHz" -#: modules/access/bda/bda.c:91 modules/access/dvb/access.c:113 +#: modules/access/bda/bda.c:90 modules/access/dvb/access.c:118 msgid "[0=off, 1=on, -1=auto]." msgstr "[0=off, 1=on, -1=auto]." -#: modules/access/bda/bda.c:93 modules/access/dvb/access.c:115 +#: modules/access/bda/bda.c:92 modules/access/dvb/access.c:120 msgid "Transponder FEC" msgstr "FEC du transpondeur" -#: modules/access/bda/bda.c:94 modules/access/dvb/access.c:116 +#: modules/access/bda/bda.c:93 modules/access/dvb/access.c:121 msgid "FEC=Forward Error Correction mode [9=auto]." msgstr "FEC=Forward Error Correction mode [9=auto]." -#: modules/access/bda/bda.c:96 modules/access/dvb/access.c:118 +#: modules/access/bda/bda.c:95 modules/access/dvb/access.c:123 msgid "Transponder symbol rate in kHz" msgstr "D?bit de symboles du transpondeur en kHz" -#: modules/access/bda/bda.c:99 modules/access/dvb/access.c:121 +#: modules/access/bda/bda.c:98 modules/access/dvb/access.c:126 msgid "Antenna lnb_lof1 (kHz)" msgstr "lnb_lof1 de l?antenne (kHz)" -#: modules/access/bda/bda.c:100 -msgid "Low Band Local Osc Freq in kHz usually 9.75GHz" -msgstr "" +#: modules/access/bda/bda.c:99 +msgid "Low Band Local Osc Freq in kHz (usually 9.75GHz)" +msgstr "??Low Band Local Osc Freq?? en kHz, habituellement 9.75GHz" -#: modules/access/bda/bda.c:102 modules/access/dvb/access.c:124 +#: modules/access/bda/bda.c:101 modules/access/dvb/access.c:129 msgid "Antenna lnb_lof2 (kHz)" msgstr "lnb_lof2 de l?antenne (kHz)" -#: modules/access/bda/bda.c:103 -msgid "High Band Local Osc Freq in kHz usually 10.6GHz" -msgstr "" +#: modules/access/bda/bda.c:102 +msgid "High Band Local Osc Freq in kHz (usually 10.6GHz)" +msgstr "??High Band Local Osc Freq?? en kHz, habituellement 10.6GHz" -#: modules/access/bda/bda.c:105 modules/access/dvb/access.c:127 +#: modules/access/bda/bda.c:104 modules/access/dvb/access.c:132 msgid "Antenna lnb_slof (kHz)" msgstr "lnb_slof de l?antenne (kHz)" -#: modules/access/bda/bda.c:107 -msgid "Low Noise Block switch freq in kHz usually 11.7GHz" -msgstr "" +#: modules/access/bda/bda.c:106 +msgid "Low Noise Block switch freq in kHz (usually 11.7GHz)" +msgstr "??Low Noise Block switch freq?? en kHz, habituellement 11.7GHz" -#: modules/access/bda/bda.c:110 modules/access/dvb/access.c:131 +#: modules/access/bda/bda.c:109 modules/access/dvb/access.c:136 msgid "Modulation type" msgstr "Type de modulation" -#: modules/access/bda/bda.c:111 -msgid "QAM constellation points [16, 32, 64, 128, 256]" +#: modules/access/bda/bda.c:110 +msgid "QAM, PSK or VSB modulation method" msgstr "" -#: modules/access/bda/bda.c:115 -msgid "16" -msgstr "16" +#: modules/access/bda/bda.c:114 +msgid "QAM16" +msgstr "QAM16" + +#: modules/access/bda/bda.c:114 +msgid "QAM32" +msgstr "QAM32" + +#: modules/access/bda/bda.c:114 +msgid "QAM64" +msgstr "QAM64" + +#: modules/access/bda/bda.c:114 +msgid "QAM128" +msgstr "QAM128" + +#: modules/access/bda/bda.c:114 +msgid "QAM256" +msgstr "QAM256" #: modules/access/bda/bda.c:115 -msgid "32" -msgstr "32" +msgid "BPSK" +msgstr "BPSK" #: modules/access/bda/bda.c:115 -msgid "64" -msgstr "64" +msgid "QPSK" +msgstr "QPSK" #: modules/access/bda/bda.c:115 -msgid "128" -msgstr "128" +msgid "8VSB" +msgstr "8VSB" #: modules/access/bda/bda.c:115 -msgid "256" -msgstr "256" +msgid "16VSB" +msgstr "16VSB" -#: modules/access/bda/bda.c:118 modules/access/dvb/access.c:135 -msgid "Terrestrial high priority stream code rate (FEC)" -msgstr "FEC terrestre haute priorit?" +#: modules/access/bda/bda.c:118 modules/access/bda/bda.c:119 +msgid "ATSC Major Channel" +msgstr "Canal Majeur ATSC" + +#: modules/access/bda/bda.c:120 modules/access/bda/bda.c:121 +msgid "ATSC Minor Channel" +msgstr "Canal Mineur ATSC" + +#: modules/access/bda/bda.c:122 modules/access/bda/bda.c:123 +msgid "ATSC Physical Channel" +msgstr "Canal Physique ATSC" + +#: modules/access/bda/bda.c:126 +msgid "FEC rate" +msgstr "Vitesse FEC" -#: modules/access/bda/bda.c:119 -msgid "High Priority FEC Rate [Undefined,1/2,2/3,3/4,5/6,7/8]" +#: modules/access/bda/bda.c:127 +msgid "FEC rate includes DVB-T high priority stream FEC Rate" msgstr "" -#: modules/access/bda/bda.c:123 modules/access/bda/bda.c:130 +#: modules/access/bda/bda.c:131 modules/access/bda/bda.c:138 msgid "1/2" msgstr "1/2" -#: modules/access/bda/bda.c:123 modules/access/bda/bda.c:130 +#: modules/access/bda/bda.c:131 modules/access/bda/bda.c:138 msgid "2/3" msgstr "2/3" -#: modules/access/bda/bda.c:123 modules/access/bda/bda.c:130 +#: modules/access/bda/bda.c:131 modules/access/bda/bda.c:138 msgid "3/4" msgstr "3/4" -#: modules/access/bda/bda.c:123 modules/access/bda/bda.c:130 +#: modules/access/bda/bda.c:131 modules/access/bda/bda.c:138 msgid "5/6" msgstr "5/6" -#: modules/access/bda/bda.c:123 modules/access/bda/bda.c:130 +#: modules/access/bda/bda.c:131 modules/access/bda/bda.c:138 msgid "7/8" msgstr "7/8" -#: modules/access/bda/bda.c:125 modules/access/dvb/access.c:138 +#: modules/access/bda/bda.c:133 modules/access/dvb/access.c:143 msgid "Terrestrial low priority stream code rate (FEC)" msgstr "FEC terrestre basse priorit?" -#: modules/access/bda/bda.c:126 +#: modules/access/bda/bda.c:134 msgid "Low Priority FEC Rate [Undefined,1/2,2/3,3/4,5/6,7/8]" -msgstr "" +msgstr "Taux FEC de basse priorit? [Ind?fini,1/2,2/3,3/4,5/6,7/8]" -#: modules/access/bda/bda.c:132 modules/access/dvb/access.c:141 +#: modules/access/bda/bda.c:140 modules/access/dvb/access.c:146 msgid "Terrestrial bandwidth" msgstr "Bande passante terrestre" -#: modules/access/bda/bda.c:133 modules/access/dvb/access.c:142 +#: modules/access/bda/bda.c:141 modules/access/dvb/access.c:147 msgid "Terrestrial bandwidth [0=auto,6,7,8 in MHz]" msgstr "Bande passante terrestre [0=auto,6,7,8 en MHz]" -#: modules/access/bda/bda.c:136 +#: modules/access/bda/bda.c:144 msgid "6 MHz" msgstr "6 MHz" -#: modules/access/bda/bda.c:136 +#: modules/access/bda/bda.c:144 msgid "7 MHz" msgstr "7 MHz" -#: modules/access/bda/bda.c:136 +#: modules/access/bda/bda.c:144 msgid "8 MHz" msgstr "8 MHz" -#: modules/access/bda/bda.c:138 modules/access/dvb/access.c:144 +#: modules/access/bda/bda.c:146 modules/access/dvb/access.c:149 msgid "Terrestrial guard interval" msgstr "Intervalle de garde terrestre" -#: modules/access/bda/bda.c:139 +#: modules/access/bda/bda.c:147 msgid "Guard interval [Undefined,1/4,1/8,1/16,1/32]" -msgstr "" +msgstr "Intervalle de garde [Ind?fini,1/4,1/8,1/16,1/32]" -#: modules/access/bda/bda.c:142 +#: modules/access/bda/bda.c:150 msgid "1/4" msgstr "1/4" -#: modules/access/bda/bda.c:142 +#: modules/access/bda/bda.c:150 msgid "1/8" msgstr "1/8" -#: modules/access/bda/bda.c:142 +#: modules/access/bda/bda.c:150 msgid "1/16" msgstr "1/16" -#: modules/access/bda/bda.c:142 +#: modules/access/bda/bda.c:150 msgid "1/32" msgstr "1/32" -#: modules/access/bda/bda.c:144 modules/access/dvb/access.c:147 +#: modules/access/bda/bda.c:152 modules/access/dvb/access.c:152 msgid "Terrestrial transmission mode" msgstr "Mode de transmission terrestre" -#: modules/access/bda/bda.c:145 +#: modules/access/bda/bda.c:153 msgid "Transmission mode [Undefined,2k,8k]" -msgstr "" +msgstr "Mode de transmission [Ind?fini,2k,8k]" -#: modules/access/bda/bda.c:148 +#: modules/access/bda/bda.c:156 msgid "2k" msgstr "2k" -#: modules/access/bda/bda.c:148 +#: modules/access/bda/bda.c:156 msgid "8k" msgstr "8k" -#: modules/access/bda/bda.c:150 modules/access/dvb/access.c:150 +#: modules/access/bda/bda.c:158 modules/access/dvb/access.c:155 msgid "Terrestrial hierarchy mode" msgstr "Mode de hi?rarchie terrestre" -#: modules/access/bda/bda.c:151 +#: modules/access/bda/bda.c:159 msgid "Hierarchy alpha value [Undefined,1,2,4]" -msgstr "" +msgstr "Hi?rarchie des valeurs alpha [Ind?finie,1,2,4]" -#: modules/access/bda/bda.c:154 +#: modules/access/bda/bda.c:162 msgid "1" msgstr "1" -#: modules/access/bda/bda.c:154 +#: modules/access/bda/bda.c:162 msgid "2" msgstr "2" -#: modules/access/bda/bda.c:154 +#: modules/access/bda/bda.c:162 msgid "4" msgstr "4" -#: modules/access/bda/bda.c:157 +#: modules/access/bda/bda.c:165 msgid "Satellite Azimuth" msgstr "Azimuth satellite" -#: modules/access/bda/bda.c:158 +#: modules/access/bda/bda.c:166 msgid "Satellite Azimuth in tenths of degree" -msgstr "Azimuth satellite en dixi?me de degr?" +msgstr "Azimuth satellite en dixi?mes de degr?" -#: modules/access/bda/bda.c:159 +#: modules/access/bda/bda.c:167 msgid "Satellite Elevation" msgstr "?levation satellite" -#: modules/access/bda/bda.c:160 +#: modules/access/bda/bda.c:168 msgid "Satellite Elevation in tenths of degree" -msgstr "?levation satellite en dix?me de degr?" +msgstr "?levation satellite en dixi?mes de degr?" -#: modules/access/bda/bda.c:161 +#: modules/access/bda/bda.c:169 msgid "Satellite Longitude" msgstr "Longitude satellite" -#: modules/access/bda/bda.c:163 +#: modules/access/bda/bda.c:171 msgid "Satellite Longitude in 10ths of degree, -ve=West" -msgstr "" +msgstr "Longitude satellite en dixi?mes de degr?s, -ve=Ouest" -#: modules/access/bda/bda.c:164 +#: modules/access/bda/bda.c:172 msgid "Satellite Polarisation" msgstr "Polarisation satellite" -#: modules/access/bda/bda.c:165 +#: modules/access/bda/bda.c:173 msgid "Satellite Polarisation [H/V/L/R]" msgstr "Polarisation Satellite [H/V/L/R]" -#: modules/access/bda/bda.c:168 +#: modules/access/bda/bda.c:176 msgid "Horizontal" msgstr "Horizontale" -#: modules/access/bda/bda.c:168 +#: modules/access/bda/bda.c:176 msgid "Vertical" msgstr "Verticale" -#: modules/access/bda/bda.c:169 +#: modules/access/bda/bda.c:177 msgid "Circular Left" -msgstr "" +msgstr "Circulaire gauche" -#: modules/access/bda/bda.c:169 +#: modules/access/bda/bda.c:177 msgid "Circular Right" +msgstr "Circulaire droite" + +#: modules/access/bda/bda.c:178 +msgid "Satellite Range Code" +msgstr "Code Range satellite" + +#: modules/access/bda/bda.c:179 +msgid "Satellite Range Code as defined by manufacturer e.g. DISEqC switch code" +msgstr "" + +#: modules/access/bda/bda.c:181 +msgid "Network Name" +msgstr "Nom du r?seau" + +#: modules/access/bda/bda.c:182 +msgid "Unique network name in the System Tuning Spaces" +msgstr "" + +#: modules/access/bda/bda.c:183 +msgid "Network Name to Create" +msgstr "" + +#: modules/access/bda/bda.c:184 +msgid "Create Unique name in the System Tuning Spaces" msgstr "" -#: modules/access/bda/bda.c:172 modules/access/dvb/access.c:188 +#: modules/access/bda/bda.c:187 modules/access/dvb/access.c:193 msgid "DVB" msgstr "DVB" -#: modules/access/bda/bda.c:173 +#: modules/access/bda/bda.c:188 msgid "DirectShow DVB input" msgstr "Entr?e DVB DirectShow" -#: modules/access/cdda/access.c:285 -msgid "CD reading failed" -msgstr "La lecture du CD a ?chou?" - -#: modules/access/cdda/access.c:286 -#, c-format -msgid "VLC could not get a new block of size: %i." -msgstr "VLC n?a pas pu obtenir un nouveau bloc de taille %i." - -#: modules/access/cdda.c:68 +#: modules/access/cdda.c:65 msgid "" "Default caching value for Audio CDs. This value should be set in " "milliseconds." msgstr "Taille du cache pour les CD Audio, en millisecondes." -#: modules/access/cdda.c:72 modules/gui/macosx/open.m:187 -#: modules/gui/macosx/open.m:555 modules/gui/macosx/open.m:643 -#: modules/gui/qt4/ui/open_disk.ui:148 +#: modules/access/cdda.c:69 modules/gui/macosx/open.m:186 +#: modules/gui/macosx/open.m:571 modules/gui/macosx/open.m:659 +#: modules/gui/qt4/ui/open_disk.ui:77 msgid "Audio CD" msgstr "CD audio" -#: modules/access/cdda.c:73 +#: modules/access/cdda.c:70 msgid "Audio CD input" msgstr "CD audio" -#: modules/access/cdda.c:79 +#: modules/access/cdda.c:76 msgid "[cdda:][device][@[track]]" -msgstr "[cdda://][p?riph?rique-ou-fichier][@[num?ro de piste]" +msgstr "[cdda://][p?riph?rique-ou-fichier][@[num?ro de piste]]" -#: modules/access/cdda.c:91 +#: modules/access/cdda.c:88 msgid "CDDB Server" msgstr "Serveur CDDB" -#: modules/access/cdda.c:91 +#: modules/access/cdda.c:88 msgid "Address of the CDDB server to use." msgstr "Adresse du serveur CDDB ? utiliser" -#: modules/access/cdda.c:94 +#: modules/access/cdda.c:91 msgid "CDDB port" msgstr "Port CDDB" -#: modules/access/cdda.c:94 +#: modules/access/cdda.c:91 msgid "CDDB Server port to use." msgstr "Port du serveur CDDB ? utiliser." -#: modules/access/cdda.c:466 +#: modules/access/cdda.c:471 +#, c-format +msgid "Audio CD - Track %02i" +msgstr "CD Audio - Piste %02i" + +#: modules/access/cdda/access.c:285 +msgid "CD reading failed" +msgstr "La lecture du CD a ?chou?" + +#: modules/access/cdda/access.c:286 #, c-format -msgid "Audio CD - Track %i" -msgstr "CD Audio - Piste %i" +msgid "VLC could not get a new block of size: %i." +msgstr "VLC n?a pas pu obtenir un nouveau bloc de taille %i." -#: modules/access/cdda/cdda.c:43 modules/access/directory.c:86 -#: modules/codec/x264.c:392 modules/codec/x264.c:398 modules/codec/x264.c:403 +#: modules/access/cdda/cdda.c:43 modules/access/directory.c:72 +#: modules/codec/dirac.c:80 modules/codec/x264.c:403 modules/codec/x264.c:409 +#: modules/codec/x264.c:414 msgid "none" msgstr "Aucun" @@ -5677,7 +5347,7 @@ msgid "" "libcdio (0x80) 128\n" "libcddb (0x100) 256\n" msgstr "" -"Cet entier, en binaire, est un masque de d?boggage\n" +"Cet entier, en binaire, est un masque de d?bogage\n" "informations 1\n" "?v?nements 2\n" "MRL 4\n" @@ -5767,11 +5437,12 @@ msgstr "" " %T : Num?ro de piste\n" " %s : Dur?e en secondes de la piste\n" " %S : Dur?e en secondes du CD\n" +" %t : Titre de la piste ou MRL\n" " %% : un signe % \n" #: modules/access/cdda/cdda.c:101 msgid "Enable CD paranoia?" -msgstr "Activer CD paranoia" +msgstr "Activer CD paranoia ?" #: modules/access/cdda/cdda.c:103 msgid "" @@ -5812,7 +5483,7 @@ msgstr "Nombre de blocs ? lire ? chaque fois sur le CD" #: modules/access/cdda/cdda.c:140 msgid "Format to use in playlist \"title\" field when no CDDB" -msgstr "Format ? utiliser dans le champ ? titre ? quand CDDB n?est pas utilis?" +msgstr "Format ? utiliser dans le champ ??titre?? quand CDDB n?est pas utilis?" #: modules/access/cdda/cdda.c:145 msgid "Use CD audio controls and output?" @@ -5846,7 +5517,7 @@ msgstr "CDDB" #: modules/access/cdda/cdda.c:178 msgid "Format to use in playlist \"title\" field when using CDDB" -msgstr "Format ? utiliser dans le champ ? titre ? quand CDDB est utilis?" +msgstr "Format ? utiliser dans le champ ??titre?? quand CDDB est utilis?" #: modules/access/cdda/cdda.c:182 msgid "CDDB lookups" @@ -5907,7 +5578,7 @@ msgstr "Temps (en secondes) d?attente d?une r?ponse du serveur CDDB" #: modules/access/cdda/cdda.c:220 modules/access/cdda/cdda.c:221 msgid "Directory to cache CDDB requests" -msgstr "R?pertoire dans lequel placer les requ?tes CDDB mises en cache" +msgstr "Dossier dans lequel placer les requ?tes CDDB mises en cache" #: modules/access/cdda/cdda.c:225 msgid "Prefer CD-Text info to CDDB info?" @@ -5918,35 +5589,35 @@ msgid "" "If set, CD-Text information will be preferred to CDDB information when both " "are available" msgstr "" -"Si cette option est activ?e, si des informations CD-Text sont pr?sntes, " +"Si cette option est activ?e, si des informations CD-Text sont pr?sentes, " "elles seront utilis?es en priorit? par rapport ? CDDB." -#: modules/access/cdda/info.c:330 modules/access/cdda/info.c:336 -#: modules/access/cdda/info.c:339 modules/access/dvdread.c:99 -#: modules/access/vcdx/info.c:91 modules/gui/macosx/open.m:171 -#: modules/gui/macosx/open.m:424 +#: modules/access/cdda/info.c:331 modules/access/cdda/info.c:337 +#: modules/access/cdda/info.c:340 modules/access/dvdread.c:99 +#: modules/access/vcdx/info.c:91 modules/gui/macosx/open.m:170 +#: modules/gui/macosx/open.m:440 msgid "Disc" msgstr "Disque" -#: modules/access/cdda/info.c:330 modules/access/cdda/info.c:395 -#: modules/gui/macosx/playlist.m:128 -#: modules/gui/qt4/components/playlist/sorting.h:48 +#: modules/access/cdda/info.c:331 modules/access/cdda/info.c:396 +#: modules/gui/macosx/playlist.m:130 modules/gui/macosx/wizard.m:352 +#: modules/gui/qt4/components/playlist/sorting.h:51 msgid "Duration" msgstr "Dur?e" -#: modules/access/cdda/info.c:336 +#: modules/access/cdda/info.c:337 msgid "Media Catalog Number (MCN)" msgstr "Media Catalog Number (MCN)" -#: modules/access/cdda/info.c:339 modules/access/vcdx/info.c:106 +#: modules/access/cdda/info.c:340 modules/access/vcdx/info.c:106 msgid "Tracks" msgstr "Pistes" -#: modules/access/cdda/info.c:399 +#: modules/access/cdda/info.c:400 modules/gui/qt4/ui/open.ui:165 msgid "MRL" msgstr "MRL" -#: modules/access/cdda/info.c:907 modules/access/cdda/info.c:939 +#: modules/access/cdda/info.c:854 modules/access/cdda/info.c:881 #, c-format msgid "Track %i" msgstr "Piste %i" @@ -5955,35 +5626,36 @@ msgstr "Piste %i" msgid "dc1394 input" msgstr "entr?e dc1394" -#: modules/access/directory.c:77 +#: modules/access/directory.c:63 msgid "Subdirectory behavior" -msgstr "Comportement des sous-r?pertoires" +msgstr "Comportement des sous-dossiers" -#: modules/access/directory.c:79 +#: modules/access/directory.c:65 msgid "" "Select whether subdirectories must be expanded.\n" "none: subdirectories do not appear in the playlist.\n" "collapse: subdirectories appear but are expanded on first play.\n" "expand: all subdirectories are expanded.\n" msgstr "" -"S?lectionnez s?il faut d?velopper les sous r?pertoires.\n" -"aucun: les sous-r?pertoires n?apparaissent pas dans la liste de lecture.\n" -"refermer: ils apparaissent, mais ne sont pas d?velopp?s avant leur lecture.\n" -"d?velopper: tous les sous-r?pertoires sont d?velopp?s.\n" +"S?lectionnez s?il faut d?velopper les sous-dossiers.\n" +"aucun : les sous-dossiers n?apparaissent pas dans la liste de lecture.\n" +"refermer : ils apparaissent, mais ne sont pas d?velopp?s avant leur " +"lecture.\n" +"d?velopper : tous les sous-dossiers sont d?velopp?s.\n" -#: modules/access/directory.c:86 +#: modules/access/directory.c:72 msgid "collapse" msgstr "refermer" -#: modules/access/directory.c:86 +#: modules/access/directory.c:72 msgid "expand" msgstr "d?velopper" -#: modules/access/directory.c:88 +#: modules/access/directory.c:74 msgid "Ignored extensions" msgstr "Extensions ignor?es" -#: modules/access/directory.c:90 +#: modules/access/directory.c:76 msgid "" "Files with these extensions will not be added to playlist when opening a " "directory.\n" @@ -5992,15 +5664,15 @@ msgid "" msgstr "" "Liste d?extensions de fichiers s?par?es par des virgules. Les fichiers avec " "ces extensions ne seront pas ajout?s ? la liste de lecture. Ceci est utile " -"si vous ajoutez des r?pertoires contenant des albums MP3 par exemple." +"si vous ajoutez des dossiers contenant des albums MP3 par exemple." -#: modules/access/directory.c:97 modules/gui/qt4/ui/sprefs_video.ui:171 +#: modules/access/directory.c:83 modules/gui/qt4/ui/sprefs_video.ui:201 msgid "Directory" -msgstr "R?pertoire" +msgstr "Dossier" -#: modules/access/directory.c:99 +#: modules/access/directory.c:85 msgid "Standard filesystem directory input" -msgstr "Lecture d?un r?pertoire" +msgstr "Lecture d?un dossier" #: modules/access/dshow/dshow.cpp:86 msgid "Cable" @@ -6029,12 +5701,12 @@ msgstr "DSS" #: modules/access/dshow/dshow.cpp:100 msgid "" "Caching value for DirectShow streams. This value should be set in " -"millisecondss." +"milliseconds." msgstr "Taille du cache pour les flux DirectShow, en millisecondes." -#: modules/access/dshow/dshow.cpp:102 modules/access/v4l.c:81 -#: modules/gui/qt4/components/open_panels.cpp:692 -#: modules/gui/qt4/components/open_panels.cpp:727 +#: modules/access/dshow/dshow.cpp:102 modules/access/v4l.c:77 +#: modules/gui/qt4/components/open_panels.cpp:749 +#: modules/gui/qt4/components/open_panels.cpp:784 msgid "Video device name" msgstr "Nom du p?riph?rique vid?o" @@ -6046,9 +5718,9 @@ msgstr "" "Nom du p?riph?rique vid?o qui sera utilis? pour le plugin DirectShow. Si " "vous ne sp?cifiez rien, le p?riph?rique par d?faut sera utilis?." -#: modules/access/dshow/dshow.cpp:107 modules/access/v4l2/v4l2.c:169 -#: modules/access/v4l.c:85 modules/gui/qt4/components/open_panels.cpp:698 -#: modules/gui/qt4/components/open_panels.cpp:733 +#: modules/access/dshow/dshow.cpp:107 +#: modules/gui/qt4/components/open_panels.cpp:755 +#: modules/gui/qt4/components/open_panels.cpp:790 msgid "Audio device name" msgstr "Nom du p?riph?rique audio" @@ -6061,7 +5733,7 @@ msgstr "" "vous ne sp?cifiez rien, le p?riph?rique par d?faut sera utilis?." #: modules/access/dshow/dshow.cpp:112 -#: modules/gui/qt4/components/open_panels.cpp:606 +#: modules/gui/qt4/components/open_panels.cpp:659 msgid "Video size" msgstr "Taille de la vid?o" @@ -6074,8 +5746,8 @@ msgstr "" "Taille de la vid?o qui sera affich? par le plugin DirectShow. Si vous ne " "sp?cifiez rien, la taille par d?faut sera utilis?e." -#: modules/access/dshow/dshow.cpp:117 modules/access/v4l2/v4l2.c:86 -#: modules/access/v4l.c:89 +#: modules/access/dshow/dshow.cpp:117 modules/access/v4l.c:81 +#: modules/access/v4l2.c:78 msgid "Video input chroma format" msgstr "Chroma vid?o" @@ -6097,7 +5769,7 @@ msgid "" "default, 25, 29.97, 50, 59.94, etc.)" msgstr "" "Force l?entr?e vid?o DirectShow ? utiliser un nombre d?images par seconde " -"donn? (par exemple 0 correspond ? la valeur par defaut, 25, 29,97, 50, " +"donn? (par exemple 0 correspond ? la valeur par d?faut, 25, 29,97, 50, " "59,94, etc.)" #: modules/access/dshow/dshow.cpp:125 @@ -6151,7 +5823,7 @@ msgstr "Type d?entr?e du tuner (C?ble/Antenne)." #: modules/access/dshow/dshow.cpp:143 msgid "Video input pin" -msgstr "Patte d?entr?e vid?o" +msgstr "Entr?e vid?o" #: modules/access/dshow/dshow.cpp:145 msgid "" @@ -6162,7 +5834,7 @@ msgid "" msgstr "" "Source vid?o ? utiliser, telle que composite, s-video ou tuner. Ces " "param?tres sont sp?cifiques au mat?riel. Vous devriez trouver de bons " -"r?glages dans la zone ? configuration du p?riph?rique ? et utiliser ces " +"r?glages dans la zone ??configuration du p?riph?rique?? et utiliser ces " "nombres. -1 signifie que les r?glages ne seront pas modifi?s." #: modules/access/dshow/dshow.cpp:149 @@ -6171,7 +5843,7 @@ msgstr "Patte d?entr?e audio" #: modules/access/dshow/dshow.cpp:151 msgid "Select the audio input source. See the \"video input\" option." -msgstr "S?lection de la source audio. Voir l?option \"patte d?entr?e vid?o\"." +msgstr "S?lection de la source audio. Voir l?option ??Entr?e vid?o??." #: modules/access/dshow/dshow.cpp:152 msgid "Video output pin" @@ -6179,7 +5851,7 @@ msgstr "Patte de sortie vid?o" #: modules/access/dshow/dshow.cpp:154 msgid "Select the video output type. See the \"video input\" option." -msgstr "S?lection de la sortie vid?o. Voir l?option \"patte d?entr?e vid?o\"." +msgstr "S?lection de la sortie vid?o. Voir l?option ??Entr?e vid?o??." #: modules/access/dshow/dshow.cpp:155 msgid "Audio output pin" @@ -6187,7 +5859,7 @@ msgstr "Patte de sortie audio" #: modules/access/dshow/dshow.cpp:157 msgid "Select the audio output type. See the \"video input\" option." -msgstr "S?lection de la sortie audio. Voir l?option \"patte d?entr?e vid?o\"." +msgstr "S?lection de la sortie audio. Voir l?option ??Entr?e vid?o??." #: modules/access/dshow/dshow.cpp:159 msgid "AM Tuner mode" @@ -6198,6 +5870,8 @@ msgid "" "AM Tuner mode. Can be one of Default (0), TV (1),AM Radio (2), FM Radio (3) " "or DSS (4)." msgstr "" +"Mode de tuner AM. Peut ?tre d?faut (0), TV (1), Radio AM (2), Radio FM (3) " +"ou DSS (4)" #: modules/access/dshow/dshow.cpp:164 msgid "Number of audio channels" @@ -6207,14 +5881,18 @@ msgstr "Nombre de canaux audio" msgid "" "Select audio input format with the given number of audio channels (if non 0)" msgstr "" +"S?lectionner le format audio d'entr?e avec le nombre de canaux audio suivant " +"(0 si aucun)" -#: modules/access/dshow/dshow.cpp:168 modules/stream_out/transcode.c:103 +#: modules/access/dshow/dshow.cpp:168 modules/stream_out/transcode.c:104 msgid "Audio sample rate" -msgstr "Fr?quence d??chantillonage audio" +msgstr "Fr?quence d??chantillonnage audio" #: modules/access/dshow/dshow.cpp:170 msgid "Select audio input format with the given sample rate (if non 0)" msgstr "" +"S?lectionner le format audio avec le taux d'?chantillonnage suivant (0 si " +"aucun)" #: modules/access/dshow/dshow.cpp:172 msgid "Audio bits per sample" @@ -6223,6 +5901,8 @@ msgstr "Bits par ?chantillon audio" #: modules/access/dshow/dshow.cpp:174 msgid "Select audio input format with the given bits/sample (if non 0)" msgstr "" +"S?lectionner le format audio avec le nombre de bits par ?chantillon suivant " +"(0 si aucun)" #: modules/access/dshow/dshow.cpp:186 msgid "DirectShow" @@ -6233,7 +5913,7 @@ msgid "DirectShow input" msgstr "Entr?e DirectShow" #: modules/access/dshow/dshow.cpp:195 modules/access/dshow/dshow.cpp:200 -#: modules/audio_output/alsa.c:114 modules/audio_output/waveout.c:177 +#: modules/audio_output/alsa.c:115 modules/audio_output/waveout.c:178 #: modules/video_output/msw/directx.c:177 msgid "Refresh list" msgstr "Rafra?chir la liste" @@ -6250,49 +5930,69 @@ msgstr "La capture a ?chou?" #, c-format msgid "VLC cannot use the device \"%s\", because its type is not supported." msgstr "" +"VLC ne peut pas utiliser le p?riph?rique ??%s??, car son type n'est pas " +"support?." #: modules/access/dshow/dshow.cpp:979 #, c-format msgid "The capture device \"%s\" does not support the required parameters." msgstr "" +"Le p?riph?rique de capture ??%s?? ne supporte pas les param?tres requis." + +#: modules/access/dv.c:73 +msgid "Caching value for DV streams. This value should be set in milliseconds." +msgstr "" +"Taille du cache pour les flux DV, en millisecondes." -#: modules/access/dvb/access.c:132 +#: modules/access/dv.c:77 +msgid "Digital Video (Firewire/ieee1394) input" +msgstr "Entr?e Digitale Vid?o (Firewire/ieee1394)" + +#: modules/access/dv.c:78 +msgid "DV" +msgstr "DV" + +#: modules/access/dvb/access.c:137 msgid "Modulation type for front-end device." msgstr "Type de modulation pour le p?riph?rique de frontend." -#: modules/access/dvb/access.c:153 +#: modules/access/dvb/access.c:140 +msgid "Terrestrial high priority stream code rate (FEC)" +msgstr "FEC terrestre haute priorit?" + +#: modules/access/dvb/access.c:158 msgid "HTTP Host address" msgstr "Adresse de l?h?te HTTP" -#: modules/access/dvb/access.c:155 +#: modules/access/dvb/access.c:160 msgid "To enable the internal HTTP server, set its address and port here." msgstr "" "Entrez ici l?adresse et le port ? utiliser pour activer le serveur HTTP " "sp?cifique aux cartes DVB." -#: modules/access/dvb/access.c:157 +#: modules/access/dvb/access.c:162 msgid "HTTP user name" msgstr "Nom d?utilisateur HTTP" -#: modules/access/dvb/access.c:159 +#: modules/access/dvb/access.c:164 msgid "" "User name the administrator will use to log into the internal HTTP server." msgstr "Nom d?utilisateur pour le serveur HTTP sp?cifique aux cartes DVB." -#: modules/access/dvb/access.c:162 +#: modules/access/dvb/access.c:167 msgid "HTTP password" msgstr "Mot de passe HTTP" -#: modules/access/dvb/access.c:164 +#: modules/access/dvb/access.c:169 msgid "" "Password the administrator will use to log into the internal HTTP server." msgstr "Mot de passe pour le serveur HTTP sp?cifique aux cartes DVB." -#: modules/access/dvb/access.c:167 +#: modules/access/dvb/access.c:172 msgid "HTTP ACL" msgstr "ACL HTTP" -#: modules/access/dvb/access.c:169 +#: modules/access/dvb/access.c:174 msgid "" "Access control list (equivalent to .hosts) file path, which will limit the " "range of IPs entitled to log into the internal HTTP server." @@ -6301,80 +6001,79 @@ msgstr "" "hosts), qui permet de limiter les adresses IP autoris?es ? utiliser le " "serveur HTTP interne." -#: modules/access/dvb/access.c:173 modules/access_output/http.c:74 +#: modules/access/dvb/access.c:178 modules/access_output/http.c:74 #: modules/control/http/http.c:55 msgid "Certificate file" msgstr "Fichier certificat" -#: modules/access/dvb/access.c:174 +#: modules/access/dvb/access.c:179 msgid "HTTP interface x509 PEM certificate file (enables SSL)" msgstr "Fichier de certificat x509 pour l?interface HTTP (active SSL)" -#: modules/access/dvb/access.c:177 modules/access_output/http.c:77 +#: modules/access/dvb/access.c:182 modules/access_output/http.c:77 #: modules/control/http/http.c:58 msgid "Private key file" msgstr "Fichier de cl? priv?e" -#: modules/access/dvb/access.c:178 +#: modules/access/dvb/access.c:183 msgid "HTTP interface x509 PEM private key file" msgstr "Fichier de cl? priv?e x509 pour l?interface HTTP" -#: modules/access/dvb/access.c:180 modules/access_output/http.c:81 +#: modules/access/dvb/access.c:185 modules/access_output/http.c:81 #: modules/control/http/http.c:60 msgid "Root CA file" msgstr "Fichier CA" -#: modules/access/dvb/access.c:181 +#: modules/access/dvb/access.c:186 msgid "HTTP interface x509 PEM trusted root CA certificates file" msgstr "Fichier d?autorit? de certification x509 pour l?interface HTTP" -#: modules/access/dvb/access.c:184 modules/access_output/http.c:86 +#: modules/access/dvb/access.c:189 modules/access_output/http.c:86 #: modules/control/http/http.c:63 msgid "CRL file" msgstr "Fichier CRL" -#: modules/access/dvb/access.c:185 +#: modules/access/dvb/access.c:190 msgid "HTTP interface Certificates Revocation List file" msgstr "Fichier de r?vocations de certificats x509 pour l?interface HTTP" -#: modules/access/dvb/access.c:189 +#: modules/access/dvb/access.c:194 msgid "DVB input with v4l2 support" msgstr "Entr?e DVB (V4L2)" -#: modules/access/dvb/access.c:241 +#: modules/access/dvb/access.c:246 msgid "HTTP server" msgstr "Serveur HTTP" -#: modules/access/dvb/access.c:733 +#: modules/access/dvb/access.c:938 msgid "Input syntax is deprecated" -msgstr "" +msgstr "Cette syntaxe d'entr?e est obsol?te" -#: modules/access/dvb/access.c:734 +#: modules/access/dvb/access.c:939 msgid "" "The given syntax is deprecated. Run \"vlc -p dvb\" to see an explanation of " "the new syntax." msgstr "" +"La syntaxe est obsol?te. Lancer ??vlc -p dvb?? pour voir une explication de " +"la nouvelle syntaxe." -#: modules/access/dvb/access.c:780 +#: modules/access/dvb/access.c:985 msgid "Illegal Polarization" msgstr "Polarisation ill?gale" -#: modules/access/dvb/access.c:781 +#: modules/access/dvb/access.c:986 #, c-format msgid "The provided polarization \"%c\" is not valid." -msgstr "" - -#: modules/access/dv.c:73 -msgid "Caching value for DV streams. Thisvalue should be set in milliseconds." -msgstr "Taille du cache pour les flux DV, en millisecondes." +msgstr "La polarisation fournie ??%c?? n'est pas valide." -#: modules/access/dv.c:77 -msgid "Digital Video (Firewire/ieee1394) input" -msgstr "Entr?e Digital Video (Firewire/ieee1394)" +#: modules/access/dvb/scan.c:311 +#, c-format +msgid "%.1f MHz (%d services)" +msgstr "" -#: modules/access/dv.c:78 -msgid "dv" -msgstr "dv" +#: modules/access/dvb/scan.c:321 +msgid "Scanning DVB-T" +msgstr "" #: modules/access/dvdnav.c:68 modules/access/dvdread.c:72 msgid "DVD angle" @@ -6398,7 +6097,7 @@ msgid "" "useless warning introductions." msgstr "" "Commencer directement le DVD au menu principal, en essayant de passer toutes " -"les introductions inutiles d?avertissements." +"les introductions d?avertissements inutiles." #: modules/access/dvdnav.c:87 msgid "DVD with menus" @@ -6408,14 +6107,14 @@ msgstr "DVD avec menus" msgid "DVDnav Input" msgstr "Entr?e DVDnav" -#: modules/access/dvdnav.c:304 modules/access/dvdread.c:251 +#: modules/access/dvdnav.c:311 modules/access/dvdread.c:251 #: modules/access/dvdread.c:511 modules/access/dvdread.c:573 msgid "Playback failure" msgstr "?chec de la lecture" -#: modules/access/dvdnav.c:305 +#: modules/access/dvdnav.c:312 msgid "" -"VLC cannot set the DVD's title. It possibly cannot decrypt the entire disk." +"VLC cannot set the DVD's title. It possibly cannot decrypt the entire disc." msgstr "" "VLC ne peut pas d?finir le titre du DVD. Peut ?tre qu?il ne pourra pas " "d?chiffrer le disque enti?rement." @@ -6448,7 +6147,7 @@ msgstr "" "d?un titre.\n" "disc: la cl? du disque est d?abord d?crypt?e, puis toutes les cl? de titres " "peuvent ?tre d?crypt?es instantan?ment, ce qui permet de v?rifier souvent.\n" -"key: la m?me chose que ? disc ? si vous n?avez pas de fichier avec les cl?s " +"key: la m?me chose que ??disc?? si vous n?avez pas de fichier avec les cl?s " "de lecteur au moment de la compilation. Si vous en avez un, le d?cryptage de " "la cl? du disque sera plus rapide avec cette m?thode. C?est celle qui ?tait " "utilis?e par libcss.\n" @@ -6467,23 +6166,23 @@ msgid "DVD without menus" msgstr "DVD sans menus" #: modules/access/dvdread.c:106 -msgid "DVDRead Input (DVD without menu support)" +msgid "DVDRead Input (no menu support)" msgstr "Entr?e DVDRead (DVD sans menus)" #: modules/access/dvdread.c:252 #, c-format -msgid "DVDRead could not open the disk \"%s\"." -msgstr "DVDRead: impossible d?ouvrir le disque ? %s ?." +msgid "DVDRead could not open the disc \"%s\"." +msgstr "DVDRead?: impossible d?ouvrir le disque ??%s??." #: modules/access/dvdread.c:512 #, c-format msgid "DVDRead could not read block %d." -msgstr "DVDRead: impossible de lire le block %d." +msgstr "DVDRead?: impossible de lire le block %d." #: modules/access/dvdread.c:574 #, c-format msgid "DVDRead could not read %d/%d blocks at 0x%02x." -msgstr "DVDRead: impossible de lire les blocks %d/%d ? 0x%02x." +msgstr "DVDRead?: impossible de lire les blocks %d/%d ? 0x%02x." #: modules/access/eyetv.m:56 msgid "Channel number" @@ -6494,6 +6193,8 @@ msgid "" "EyeTV program number, or use 0 for last channel, -1 for S-Video input, -2 " "for Composite input" msgstr "" +"num?ro du programme EyeTV, ou utiliser 0 pour le dernier canal, -1 pour " +"l'entr?e S-Video, -2 pour l'entr?e composite" #: modules/access/eyetv.m:63 msgid "" @@ -6501,29 +6202,29 @@ msgid "" msgstr "Taille du cache pour les flux eyeTV, en millisecondes." #: modules/access/eyetv.m:68 -msgid "EyeTV access module" -msgstr "Module d?acc?s EyeTV" +msgid "EyeTV input" +msgstr "Entr?e EyeTV" -#: modules/access/fake.c:45 +#: modules/access/fake.c:46 msgid "" "Caching value for fake streams. This value should be set in milliseconds." msgstr "Taille du cache pour les flux factices, en millisecondes." -#: modules/access/fake.c:47 modules/access/pvr.c:86 -#: modules/access/v4l2/v4l2.c:107 modules/access/v4l.c:140 +#: modules/access/fake.c:48 modules/access/pvr.c:86 modules/access/v4l.c:126 +#: modules/access/v4l2.c:99 msgid "Framerate" msgstr "D?bit d?images" -#: modules/access/fake.c:49 +#: modules/access/fake.c:50 msgid "Number of frames per second (eg. 24, 25, 29.97, 30)." msgstr "Nombre d?images par seconde (i.e. 24, 25, 29,997, 30)." -#: modules/access/fake.c:50 modules/gui/qt4/components/playlist/sorting.h:46 -#: modules/stream_out/bridge.c:40 modules/stream_out/mosaic_bridge.c:133 +#: modules/access/fake.c:51 modules/gui/qt4/components/playlist/sorting.h:49 +#: modules/stream_out/bridge.c:41 modules/stream_out/mosaic_bridge.c:135 msgid "ID" msgstr "ID" -#: modules/access/fake.c:52 +#: modules/access/fake.c:53 msgid "" "Set the ID of the fake elementary stream for use in #duplicate{} constructs " "(default 0)." @@ -6531,147 +6232,59 @@ msgstr "" "Ceci vous permet de sp?cifier un identifiant pour le flux factice, pour ?tre " "utilis? dans les cha?nes de flux de sortie (0 par d?faut)." -#: modules/access/fake.c:54 +#: modules/access/fake.c:55 msgid "Duration in ms" msgstr "Dur?e (ms)" -#: modules/access/fake.c:56 +#: modules/access/fake.c:57 msgid "" -"Duration of the fake streaming before faking an end-of-file (default is 0, " -"meaning that the stream is unlimited)." +"Duration of the fake streaming before faking an end-of-file (default is -1 " +"meaning that the stream is unlimited when fake is forced, or lasts for 10 " +"seconds otherwise. 0, means that the stream is unlimited)." msgstr "" -"Dur?e du flux factice. La valeur par d?faut (0) signifie que le flux est " -"illimit?" +"Dur?e du flux factice. La valeur par d?faut (-1) signifie que le flux est " +"illimit? quand on force un flux factice, sinon 10 secondes. 0, signifie flus illimit?." -#: modules/access/fake.c:60 modules/codec/fake.c:89 +#: modules/access/fake.c:63 modules/codec/fake.c:89 msgid "Fake" msgstr "Factice" -#: modules/access/fake.c:61 +#: modules/access/fake.c:64 msgid "Fake input" msgstr "Entr?e factice" -#: modules/access/file.c:86 +#: modules/access/file.c:79 msgid "Caching value for files. This value should be set in milliseconds." msgstr "Taille du cache pour les fichiers, en millisecondes." -#: modules/access/file.c:90 +#: modules/access/file.c:83 msgid "File input" msgstr "Lecture de fichiers" -#: modules/access/file.c:91 modules/access_output/file.c:70 +#: modules/access/file.c:84 modules/access_output/file.c:70 #: modules/audio_output/file.c:114 modules/gui/beos/InterfaceWindow.cpp:264 -#: modules/gui/beos/MediaControlView.cpp:1236 -#: modules/gui/beos/PlayListWindow.cpp:88 modules/gui/macosx/open.m:170 -#: modules/gui/macosx/open.m:420 modules/gui/macosx/output.m:142 +#: modules/gui/beos/MediaControlView.cpp:1235 +#: modules/gui/beos/PlayListWindow.cpp:88 modules/gui/macosx/open.m:169 +#: modules/gui/macosx/open.m:436 modules/gui/macosx/output.m:142 #: modules/gui/macosx/output.m:230 modules/gui/macosx/output.m:369 #: modules/gui/pda/pda_interface.c:364 modules/gui/qt4/ui/sout.ui:38 #: modules/gui/qt4/ui/sprefs_audio.ui:224 msgid "File" msgstr "Fichier" -#: modules/access/file.c:246 modules/access/file.c:364 -#: modules/access/file.c:378 modules/access/mmap.c:214 +#: modules/access/file.c:224 modules/access/file.c:344 +#: modules/access/mmap.c:229 msgid "File reading failed" -msgstr "La lecture du fichier a ?chou?" +msgstr "La lecture du fichier a ?chou? " -#: modules/access/file.c:247 modules/access/mmap.c:215 +#: modules/access/file.c:225 modules/access/mmap.c:230 msgid "VLC could not read the file." msgstr "VLC n?a pas pu lire le fichier." -#: modules/access/file.c:365 modules/access/file.c:379 +#: modules/access/file.c:345 #, c-format msgid "VLC could not open the file \"%s\"." -msgstr "VLC n?a pas pu ouvrir le fichier ? %s ?." - -#: modules/access_filter/bandwidth.c:34 -msgid "Bandwidth limit (bytes/s)" -msgstr "" - -#: modules/access_filter/bandwidth.c:36 -msgid "" -"The bandwidth module will drop any data in excess of that many bytes per " -"seconds." -msgstr "" - -#: modules/access_filter/bandwidth.c:45 -#: modules/gui/qt4/components/open_panels.cpp:660 -msgid "Bandwidth" -msgstr "" - -#: modules/access_filter/bandwidth.c:46 modules/gui/macosx/simple_prefs.m:247 -#: modules/gui/qt4/ui/sprefs_input.ui:208 -msgid "Bandwidth limiter" -msgstr "" - -#: modules/access_filter/dump.c:42 -msgid "Force use of dump module" -msgstr "Imposer l?utilisation de module ?dump?" - -#: modules/access_filter/dump.c:43 -msgid "Activate the dump module even for media with fast seeking." -msgstr "" - -#: modules/access_filter/dump.c:46 -msgid "Maximum size of temporary file (Mb)" -msgstr "Taille maximum d?un fichier temporaire (Mo)" - -#: modules/access_filter/dump.c:47 -msgid "" -"The dump module will abort dumping of the media if more than this much " -"megabyte were performed." -msgstr "" - -#: modules/access_filter/record.c:48 -msgid "Record directory" -msgstr "R?pertoire d?enregistrement" - -#: modules/access_filter/record.c:50 -msgid "Directory where the record will be stored." -msgstr "R?pertoire de sauvegarde de l?enregistrement." - -#: modules/access_filter/record.c:339 -msgid "Recording" -msgstr "Enregistrement" - -#: modules/access_filter/record.c:341 -msgid "Recording done" -msgstr "Enregistrement effectu?" - -#: modules/access_filter/timeshift.c:53 -msgid "Timeshift granularity" -msgstr "Granularit? en diff?r?" - -#: modules/access_filter/timeshift.c:55 -msgid "" -"This is the size of the temporary files that will be used to store the " -"timeshifted streams." -msgstr "" -"Taille des fichiers temporaires ? utiliser pour stocker le flux diff?r?." - -#: modules/access_filter/timeshift.c:57 -msgid "Timeshift directory" -msgstr "R?pertoire temporaire pour le diff?r?" - -#: modules/access_filter/timeshift.c:58 -msgid "Directory used to store the timeshift temporary files." -msgstr "R?pertoire utilis? pour stocker les fichiers temporaires du diff?r?" - -#: modules/access_filter/timeshift.c:60 -msgid "Force use of the timeshift module" -msgstr "Imposer l?utilisation de module ?timeshift?" - -#: modules/access_filter/timeshift.c:61 -msgid "" -"Force use of the timeshift module even if the access declares that it can " -"control pace or pause." -msgstr "" - -#: modules/access_filter/timeshift.c:65 modules/access_filter/timeshift.c:66 -#: modules/gui/macosx/simple_prefs.m:260 -#: modules/gui/qt4/ui/sprefs_input.ui:187 -msgid "Timeshift" -msgstr "Diff?r?" +msgstr "VLC n?a pas pu ouvrir le fichier ??%s??." #: modules/access/ftp.c:59 msgid "" @@ -6708,30 +6321,30 @@ msgstr "Entr?e FTP" #: modules/access/ftp.c:90 msgid "FTP upload output" -msgstr "" +msgstr "Envois FTP" -#: modules/access/ftp.c:135 modules/access/ftp.c:145 modules/access/ftp.c:206 -#: modules/access/ftp.c:216 modules/access/ftp.c:224 +#: modules/access/ftp.c:136 modules/access/ftp.c:146 modules/access/ftp.c:211 +#: modules/access/ftp.c:221 modules/access/ftp.c:229 msgid "Network interaction failed" msgstr "L?interaction r?seau a ?chou?" -#: modules/access/ftp.c:136 +#: modules/access/ftp.c:137 msgid "VLC could not connect with the given server." msgstr "VLC n?a pas pu se connecter au serveur sp?cifi?." -#: modules/access/ftp.c:146 +#: modules/access/ftp.c:147 msgid "VLC's connection to the given server was rejected." msgstr "La connection de VLC au serveur sp?cifi? ? ?t? rejet?e." -#: modules/access/ftp.c:207 +#: modules/access/ftp.c:212 msgid "Your account was rejected." msgstr "Votre compte a ?t? rejet?." -#: modules/access/ftp.c:217 +#: modules/access/ftp.c:222 msgid "Your password was rejected." msgstr "Votre mot de passe a ?t? rejet?." -#: modules/access/ftp.c:225 +#: modules/access/ftp.c:230 msgid "Your connection attempt to the server was rejected." msgstr "Votre tentative de connection au serveur a ?t? rejet?e." @@ -6764,7 +6377,7 @@ msgstr "Mot de passe du proxy HTTP" #: modules/access/http.c:73 msgid "If your HTTP proxy requires a password, set it here." -msgstr "" +msgstr "Si votre proxy HTTP n?cessite un mot de passe, le donner ici." #: modules/access/http.c:77 msgid "" @@ -6803,13 +6416,12 @@ msgstr "" "globalement, car elle emp?che la lecture de tout autre type de flux HTTP." #: modules/access/http.c:95 -#, fuzzy msgid "Forward Cookies" -msgstr "En avant" +msgstr "Propager les cookies" #: modules/access/http.c:96 -msgid "Forward Cookies Across http redirections " -msgstr "" +msgid "Forward Cookies across http redirections " +msgstr "Propager les cookies ? travers les redirections HTTP" #: modules/access/http.c:99 msgid "HTTP input" @@ -6819,29 +6431,32 @@ msgstr "Entr?e HTTP" msgid "HTTP(S)" msgstr "HTTP(S)" -#: modules/access/http.c:446 -#, fuzzy, c-format +#: modules/access/http.c:447 +#, c-format msgid "Please enter a valid login name and a password for realm %s." -msgstr "S?il vous plait entrez un identifiant et un mot de passe valides." +msgstr "" +"S?il vous plait entrez un identifiant et un mot de passe valides pour le " +"domaine ??%s??." -#: modules/access/http.c:450 +#: modules/access/http.c:451 msgid "HTTP authentication" msgstr "Authentification HTTP" #: modules/access/jack.c:64 msgid "" -"Make VLC buffer audio data capturer from jack for the specified length in " +"Make VLC buffer audio data captured from jack for the specified length in " "milliseconds." msgstr "" +"Forcer VLC ? bufferiser les donn?es audio captur?es depuis ??Jack?? pour le " +"temps sp?cifi? en millisecondes." #: modules/access/jack.c:66 msgid "Pace" -msgstr "Au pas" +msgstr "Rythme" #: modules/access/jack.c:68 -#, fuzzy msgid "Read the audio stream at VLC pace rather than Jack pace." -msgstr "Consid?rer comme un tuyau plut?t que comme un fichier" +msgstr "Lire le flux audio au ryhtme VLC plut?t que ??Jack??." #: modules/access/jack.c:69 msgid "Auto Connection" @@ -6850,14 +6465,16 @@ msgstr "Connexion automatique" #: modules/access/jack.c:71 msgid "Automatically connect VLC input ports to available output ports." msgstr "" +"Connecter automatiquement les ports d'entr?e de VLC aux ports de sortie " +"disponible." #: modules/access/jack.c:74 msgid "JACK audio input" -msgstr "Entr?e audio JACK" +msgstr "Entr?e audio ??Jack??" #: modules/access/jack.c:76 msgid "JACK Input" -msgstr "Entr?e JACK" +msgstr "Entr?e ??Jack??" #: modules/access/mmap.c:42 msgid "Use file memory mapping" @@ -6866,15 +6483,16 @@ msgstr "Utiliser le mapping fichier-m?moire" #: modules/access/mmap.c:44 msgid "Try to use memory mapping to read files and block devices." msgstr "" +"Essayer d'utiliser le mappage m?moire pour lire les fichiers et " +"p?riph?riques de type bloc." #: modules/access/mmap.c:54 msgid "MMap" msgstr "MMap" #: modules/access/mmap.c:55 -#, fuzzy msgid "Memory-mapped file input" -msgstr "Mapping m?moire " +msgstr "Mapping m?moire" #: modules/access/mms/mms.c:51 msgid "" @@ -6909,9 +6527,9 @@ msgid "" "mydomain:myport/ ; if empty, the http_proxy environment variable will be " "tried." msgstr "" -"Serveur proxy HTTP. Il doit ?tre de la forme http://[utilisateur[:motdepasse]" -"@]monproxy.mondomaine:port/. Si aucun proxy n?est sp?cifi?, la variable " -"d?environnement http_proxy sera utilis?e." +"Serveur proxy HTTP. Il doit ?tre de la forme ??http://[utilisateur[:" +"motdepasse]@]monproxy.mondomaine:port/??. Si aucun proxy n?est sp?cifi?, la " +"variable d?environnement ??http_proxy?? sera utilis?e." #: modules/access/mms/mms.c:69 msgid "TCP/UDP timeout (ms)" @@ -6922,239 +6540,25 @@ msgid "" "Amount of time (in ms) to wait before aborting network reception of data. " "Note that there will be 10 retries before completely giving up." msgstr "" +"Dur?e en ms ? attendre avant d'annuler la r?ception de donn?es sur le " +"r?seau. Notez qu'il y aura 10 tentatives avant d'abandonner." #: modules/access/mms/mms.c:74 msgid "Microsoft Media Server (MMS) input" msgstr "Microsoft Media Server (MMS)" -#: modules/access_output/dummy.c:45 modules/stream_out/dummy.c:51 -msgid "Dummy stream output" -msgstr "Flux de sortie inutile" - -#: modules/access_output/dummy.c:46 modules/misc/dummy/dummy.c:61 -msgid "Dummy" -msgstr "Inutile" - -#: modules/access_output/file.c:64 -msgid "Append to file" -msgstr "Ajouter au fichier" - -#: modules/access_output/file.c:65 -msgid "Append to file if it exists instead of replacing it." -msgstr "Ecrit ? la fin du fichier au lieu de le remplacer." - -#: modules/access_output/file.c:69 -msgid "File stream output" -msgstr "Sortie vers un fichier" - -#: modules/access_output/http.c:65 modules/gui/qt4/ui/sprefs_audio.ui:309 -#: modules/misc/audioscrobbler.c:132 -msgid "Username" -msgstr "Nom d?utilisateur" - -#: modules/access_output/http.c:66 -msgid "User name that will be requested to access the stream." -msgstr "Nom d?utilisateur qui sera demand? pour acc?der au flux." - -#: modules/access_output/http.c:68 modules/control/telnet.c:87 -#: modules/gui/macosx/simple_prefs.m:227 -#: modules/gui/qt4/dialogs/interaction.cpp:99 -#: modules/gui/qt4/ui/sprefs_audio.ui:319 modules/misc/audioscrobbler.c:134 -#: modules/misc/notify/growl_udp.c:64 -msgid "Password" -msgstr "Mot de passe" - -#: modules/access_output/http.c:69 -msgid "Password that will be requested to access the stream." -msgstr "Mot de passe qui sera demand? pour acc?der au flux." - -#: modules/access_output/http.c:71 -msgid "Mime" -msgstr "MIME" - -#: modules/access_output/http.c:72 -msgid "MIME returned by the server (autodetected if not specified)." -msgstr "Type MIME renvoy? par le serveur (autod?tect? si non sp?cifi?)." - -#: modules/access_output/http.c:75 -msgid "Path to the x509 PEM certificate file that will be used for HTTPS." -msgstr "Chemin du fichier x509 de certificat ? utiliser pour HTTPS." - -#: modules/access_output/http.c:78 -#, fuzzy +#: modules/access/oss.c:69 msgid "" -"Path to the x509 PEM private key file that will be used for HTTPS. Leave " -"empty if you don't have one." -msgstr "" -"Chemin du fichier x509 de cl? priv?e ? utiliser pour HTTPS. Ne rien entrer " -"si vous n?en n?avez pas." +"Caching value for OSS captures. This value should be set in milliseconds." +msgstr "Taille du cache pour les flux OSS, en millisecondes." -#: modules/access_output/http.c:82 -#, fuzzy -msgid "" -"Path to the x509 PEM trusted root CA certificates (certificate authority) " -"file that will be used for HTTPS. Leave empty if you don't have one." -msgstr "" -"Chemin du fichier x509 d?autorit? de certification qui sera utilis? pour " -"HTTPS. Ne rien entrer si vous n?en n?avez pas." +#: modules/access/oss.c:77 +msgid "OSS" +msgstr "OSS" -#: modules/access_output/http.c:87 -#, fuzzy -msgid "" -"Path to the x509 PEM Certificates Revocation List file that will be used for " -"SSL. Leave empty if you don't have one." -msgstr "" -"Chemin du fichier x509 de liste de r?vocation de certificats qui sera " -"utilis? pour HTTPS. Ne rien entrer si vous n?en n?avez pas" - -#: modules/access_output/http.c:90 -msgid "Advertise with Bonjour" -msgstr "Annoncer avec Bonjour" - -#: modules/access_output/http.c:91 -msgid "Advertise the stream with the Bonjour protocol." -msgstr "Annoncer ce flux par le protocole Bonjour (Zeroconf)." - -#: modules/access_output/http.c:95 -msgid "HTTP stream output" -msgstr "Flux de sortie HTTP" - -#: modules/access_output/rtmp.c:44 -#, fuzzy -msgid "Active TCP connection" -msgstr "Connexion automatique" - -#: modules/access_output/rtmp.c:46 -msgid "" -"If enabled, VLC will connect to a remote destination instead of waiting for " -"an incoming connection." -msgstr "" - -#: modules/access_output/rtmp.c:55 -msgid "RTMP stream output" -msgstr "Flux de sortie RTMP" - -#: modules/access_output/rtmp.c:56 modules/access/rtmp/access.c:53 -msgid "RTMP" -msgstr "RTMP" - -#: modules/access_output/shout.c:63 -msgid "Stream name" -msgstr "Nom" - -#: modules/access_output/shout.c:64 -msgid "Name to give to this stream/channel on the shoutcast/icecast server." -msgstr "Nom ? donner ? ce flux/canal sur le serveur shoutcast/icecast." - -#: modules/access_output/shout.c:67 -msgid "Stream description" -msgstr "Description du flux" - -#: modules/access_output/shout.c:68 -msgid "Description of the stream content or information about your channel." -msgstr "Description du contenu de votre flux et informations sur votre canal." - -#: modules/access_output/shout.c:71 -msgid "Stream MP3" -msgstr "Diffuser en MP3" - -#: modules/access_output/shout.c:72 -msgid "" -"You normally have to feed the shoutcast module with Ogg streams. It is also " -"possible to stream MP3 instead, so you can forward MP3 streams to the " -"shoutcast/icecast server." -msgstr "" -"G?n?ralement, la sortie Shoutcast/Icecast utilise des flux Ogg. Cette option " -"vous permet d?utiliser des flux MP3 ? la place." - -#: modules/access_output/shout.c:81 -msgid "Genre description" -msgstr "Description du genre" - -#: modules/access_output/shout.c:82 -msgid "Genre of the content. " -msgstr "Genre du contenu." - -#: modules/access_output/shout.c:84 -msgid "URL description" -msgstr "Description de l?URL" - -#: modules/access_output/shout.c:85 -msgid "URL with information about the stream or your channel. " -msgstr "URL avec des informations sur votre flux ou canal. " - -#: modules/access_output/shout.c:92 -msgid "Bitrate information of the transcoded stream. " -msgstr "Information sur le d?bit du le flux transcod?." - -#: modules/access_output/shout.c:94 modules/access/v4l2/v4l2.c:211 -#: modules/access/v4l.c:126 -msgid "Samplerate" -msgstr "Fr?quence d??chantillonage" - -#: modules/access_output/shout.c:95 -msgid "Samplerate information of the transcoded stream. " -msgstr "Information sur l??chantillonnage du flux transcod?." - -#: modules/access_output/shout.c:97 -msgid "Number of channels" -msgstr "Nombre de canaux" - -#: modules/access_output/shout.c:98 -msgid "Number of channels information of the transcoded stream. " -msgstr "Nombre de canaux du flux transcod?." - -#: modules/access_output/shout.c:100 -msgid "Ogg Vorbis Quality" -msgstr "Qualit? Ogg Vorbis" - -#: modules/access_output/shout.c:101 -msgid "Ogg Vorbis Quality information of the transcoded stream. " -msgstr "Qualit? Ogg Vorbis du flux transcod?." - -#: modules/access_output/shout.c:103 -msgid "Stream public" -msgstr "Diffuser publiquement" - -#: modules/access_output/shout.c:104 -msgid "" -"Make the server publicly available on the 'Yellow Pages' (directory listing " -"of streams) on the icecast/shoutcast website. Requires the bitrate " -"information specified for shoutcast. Requires Ogg streaming for icecast." -msgstr "" - -#: modules/access_output/shout.c:110 -msgid "IceCAST output" -msgstr "Sortie IceCAST" - -#: modules/access_output/udp.c:67 modules/access/rtsp/access.c:46 -#: modules/demux/live555.cpp:74 -msgid "Caching value (ms)" -msgstr "Taille du cache en ms" - -#: modules/access_output/udp.c:69 -msgid "" -"Default caching value for outbound UDP streams. This value should be set in " -"milliseconds." -msgstr "Taille du cache pour les flux UDP, en millisecondes." - -#: modules/access_output/udp.c:72 -msgid "Group packets" -msgstr "Groupe les paquets" - -#: modules/access_output/udp.c:73 -msgid "" -"Packets can be sent one by one at the right time or by groups. You can " -"choose the number of packets that will be sent at a time. It helps reducing " -"the scheduling load on heavily-loaded systems." -msgstr "" -"Les paquets peuvent ?tre envoy?s un par un au moment ad?quat ou par groupes. " -"Ceci permet de pr?ciser le nombre de paquets qui seront envoy?s en m?me " -"temps. Cela r?duit la charge de planification sur les syst?mes surcharg?s." - -#: modules/access_output/udp.c:80 -msgid "UDP stream output" -msgstr "Flux de sortie UDP" +#: modules/access/oss.c:78 +msgid "OSS input" +msgstr "Entr?e OSS" #: modules/access/pvr.c:62 msgid "" @@ -7178,18 +6582,18 @@ msgstr "P?riph?rique radio" msgid "PVR radio device" msgstr "P?riph?rique radio PVR." -#: modules/access/pvr.c:71 modules/access/v4l.c:100 -#: modules/gui/qt4/components/open_panels.cpp:740 -#: modules/gui/qt4/components/open_panels.cpp:839 +#: modules/access/pvr.c:71 modules/access/v4l.c:92 +#: modules/gui/qt4/components/open_panels.cpp:797 +#: modules/gui/qt4/components/open_panels.cpp:896 msgid "Norm" msgstr "Norme" -#: modules/access/pvr.c:72 modules/access/v4l.c:102 +#: modules/access/pvr.c:72 modules/access/v4l.c:94 msgid "Norm of the stream (Automatic, SECAM, PAL, or NTSC)." msgstr "Norme du flux (Automatique, SECAM, PAL ou NTSC)" -#: modules/access/pvr.c:75 modules/access/v4l2/v4l2.c:101 -#: modules/access/v4l.c:106 modules/demux/rawvid.c:48 +#: modules/access/pvr.c:75 modules/access/v4l.c:98 modules/access/v4l2.c:93 +#: modules/codec/invmem.c:53 modules/demux/rawvid.c:49 #: modules/video_filter/mosaic.c:96 modules/video_output/vmem.c:50 msgid "Width" msgstr "Largeur" @@ -7198,8 +6602,8 @@ msgstr "Largeur" msgid "Width of the stream to capture (-1 for autodetection)." msgstr "Largeur de la vid?o ? capturer (-1 pour autod?tecter)." -#: modules/access/pvr.c:79 modules/access/v4l2/v4l2.c:104 -#: modules/access/v4l.c:109 modules/demux/rawvid.c:52 +#: modules/access/pvr.c:79 modules/access/v4l.c:101 modules/access/v4l2.c:96 +#: modules/codec/invmem.c:56 modules/demux/rawvid.c:53 #: modules/video_filter/mosaic.c:94 modules/video_output/vmem.c:53 msgid "Height" msgstr "Hauteur" @@ -7208,18 +6612,17 @@ msgstr "Hauteur" msgid "Height of the stream to capture (-1 for autodetection)." msgstr "Hauteur de la vid?o ? capturer (-1 pour autod?tecter)." -#: modules/access/pvr.c:83 modules/access/v4l2/v4l2.c:230 -#: modules/access/v4l.c:93 modules/gui/qt4/components/open_panels.cpp:747 -#: modules/gui/qt4/components/open_panels.cpp:846 +#: modules/access/pvr.c:83 modules/access/v4l.c:85 modules/access/v4l2.c:195 +#: modules/gui/qt4/components/open_panels.cpp:804 +#: modules/gui/qt4/components/open_panels.cpp:903 msgid "Frequency" msgstr "Fr?quence" -#: modules/access/pvr.c:84 modules/access/v4l.c:95 +#: modules/access/pvr.c:84 modules/access/v4l.c:87 msgid "Frequency to capture (in kHz), if applicable." msgstr "Fr?quence de capture, en kHz, si possible." -#: modules/access/pvr.c:87 modules/access/v4l2/v4l2.c:108 -#: modules/access/v4l.c:141 +#: modules/access/pvr.c:87 modules/access/v4l.c:127 msgid "Framerate to capture, if applicable (-1 for autodetect)." msgstr "D?bit d?images ? capturer, si possible (-1 pour automatique)." @@ -7240,7 +6643,7 @@ msgid "" "If this option is set, B-Frames will be used. Use this option to set the " "number of B-Frames." msgstr "" -"Si cette option est activ?e, des images ? B ? seront produites. Utilisez " +"Si cette option est activ?e, des images ??B?? seront produites. Utilisez " "cette option pour en r?gler le nombre." #: modules/access/pvr.c:98 @@ -7273,8 +6676,9 @@ msgstr "" "Cette option vous permet de r?gler des masques de bits qui seront utilis?s " "par la partie audio de la carte." -#: modules/access/pvr.c:110 modules/access/v4l2/v4l2.c:189 -#: modules/access/vcdx/info.c:100 modules/gui/macosx/intf.m:492 +#: modules/access/pvr.c:110 modules/access/v4l2.c:161 +#: modules/access/vcdx/info.c:100 modules/gui/macosx/intf.m:502 +#: modules/stream_out/raop.c:143 msgid "Volume" msgstr "Volume" @@ -7282,7 +6686,7 @@ msgstr "Volume" msgid "Audio volume (0-65535)." msgstr "Volume audio (de 0 ? 65535)." -#: modules/access/pvr.c:113 modules/access/v4l.c:96 +#: modules/access/pvr.c:113 modules/access/v4l.c:88 msgid "Channel" msgstr "Canal" @@ -7293,22 +6697,19 @@ msgstr "" "Canal de la carte ? utiliser (Habituellement, 0 pour le tuner, 1 pour " "l?entr?e composite et 2 pour l?entr?e S-Video)." -#: modules/access/pvr.c:120 modules/access/v4l.c:147 +#: modules/access/pvr.c:120 modules/access/v4l.c:138 msgid "Automatic" msgstr "Automatique" -#: modules/access/pvr.c:120 modules/access/v4l2/v4l2.c:246 -#: modules/access/v4l.c:147 +#: modules/access/pvr.c:120 modules/access/v4l.c:138 modules/access/v4l2.c:216 msgid "SECAM" msgstr "SECAM" -#: modules/access/pvr.c:120 modules/access/v4l2/v4l2.c:246 -#: modules/access/v4l.c:147 +#: modules/access/pvr.c:120 modules/access/v4l.c:138 modules/access/v4l2.c:216 msgid "PAL" msgstr "PAL" -#: modules/access/pvr.c:120 modules/access/v4l2/v4l2.c:246 -#: modules/access/v4l.c:147 +#: modules/access/pvr.c:120 modules/access/v4l.c:138 modules/access/v4l2.c:216 msgid "NTSC" msgstr "NTSC" @@ -7332,26 +6733,116 @@ msgstr "Entr?e pour cartes MPEG IVTV" msgid "Quicktime Capture" msgstr "Capture Quicktime" -#: modules/access/qtcapture.m:226 +#: modules/access/qtcapture.m:225 msgid "No Input device found" msgstr "Aucune entr?e trouv?e" -#: modules/access/qtcapture.m:227 +#: modules/access/qtcapture.m:226 msgid "" "Your Mac does not seem to be equipped with a suitable input device. Please " "check your connectors and drivers." msgstr "" +"Votre Mac ne semble pas avoir le p?riph?rique ad?quat. V?rifiez vos " +"connecteurs et pilotes." #: modules/access/rtmp/access.c:45 -#, fuzzy msgid "" "Caching value for RTMP streams. This value should be set in milliseconds." -msgstr "Taille du cache par d?faut pour les flux RTSP, en millisecondes." +msgstr "Taille du cache par d?faut pour les flux RTMP, en millisecondes." #: modules/access/rtmp/access.c:52 msgid "RTMP input" msgstr "Entr?e RTMP" +#: modules/access/rtmp/access.c:53 modules/access_output/rtmp.c:56 +msgid "RTMP" +msgstr "RTMP" + +#: modules/access/rtp/rtp.c:41 +msgid "RTP de-jitter buffer length (msec)" +msgstr "" + +#: modules/access/rtp/rtp.c:43 +msgid "How long to wait for late RTP packets (and delay the performance)." +msgstr "" + +#: modules/access/rtp/rtp.c:45 +msgid "RTCP (local) port" +msgstr "" + +#: modules/access/rtp/rtp.c:47 +msgid "" +"RTCP packets will be received on this transport protocol port. If zero, " +"multiplexed RTP/RTCP is used." +msgstr "" + +#: modules/access/rtp/rtp.c:50 modules/stream_out/rtp.c:134 +msgid "SRTP key (hexadecimal)" +msgstr "" + +#: modules/access/rtp/rtp.c:52 +msgid "" +"RTP packets will be authenticated and deciphered with this Secure RTP master " +"shared secret key." +msgstr "" + +#: modules/access/rtp/rtp.c:55 modules/stream_out/rtp.c:139 +msgid "SRTP salt (hexadecimal)" +msgstr "" + +#: modules/access/rtp/rtp.c:57 modules/stream_out/rtp.c:141 +msgid "Secure RTP requires a (non-secret) master salt value." +msgstr "" + +#: modules/access/rtp/rtp.c:59 +msgid "Maximum RTP sources" +msgstr "" + +#: modules/access/rtp/rtp.c:61 +msgid "How many distinct active RTP sources are allowed at a time." +msgstr "" + +#: modules/access/rtp/rtp.c:63 +msgid "RTP source timeout (sec)" +msgstr "Temps d?expiration RTP (en secondes)" + +#: modules/access/rtp/rtp.c:65 +msgid "How long to wait for any packet before a source is expired." +msgstr "" + +#: modules/access/rtp/rtp.c:67 +msgid "Maximum RTP sequence number dropout" +msgstr "" + +#: modules/access/rtp/rtp.c:69 +msgid "" +"RTP packets will be discarded if they are too much ahead (i.e. in the " +"future) by this many packets from the last received packet." +msgstr "" + +#: modules/access/rtp/rtp.c:72 +msgid "Maximum RTP sequence number misordering" +msgstr "" + +#: modules/access/rtp/rtp.c:74 +msgid "" +"RTP packets will be discarded if they are too far behind (i.e. in the past) " +"by this many packets from the last received packet." +msgstr "" + +#: modules/access/rtp/rtp.c:84 modules/stream_out/rtp.c:162 +msgid "RTP" +msgstr "RTP" + +#: modules/access/rtp/rtp.c:85 +msgid "Real-Time Protocol (RTP) input" +msgstr "" + +#: modules/access/rtsp/access.c:46 modules/access_output/udp.c:67 +#: modules/demux/live555.cpp:75 +msgid "Caching value (ms)" +msgstr "Taille du cache en ms" + #: modules/access/rtsp/access.c:48 msgid "" "Caching value for RTSP streams. This value should be set in milliseconds." @@ -7368,30 +6859,31 @@ msgstr "La connexion a ?chou?" #: modules/access/rtsp/access.c:99 #, c-format msgid "VLC could not connect to \"%s:%d\"." -msgstr "VLC n?a pas pu se connecter ? \"%s:%d\"." +msgstr "VLC n?a pas pu se connecter ? ??%s:%d??." -#: modules/access/rtsp/access.c:232 +#: modules/access/rtsp/access.c:239 msgid "Session failed" msgstr "La session a ?chou?" -#: modules/access/rtsp/access.c:233 +#: modules/access/rtsp/access.c:240 msgid "The requested RTSP session could not be established." -msgstr "" +msgstr "La sesion TRSP demand?e n'a pu ?tre ?tablie." -#: modules/access/screen/screen.c:41 +#: modules/access/screen/screen.c:42 msgid "" "Caching value for screen capture. This value should be set in milliseconds." msgstr "Taille du cache pour les captures d??cran, en millisecondes." -#: modules/access/screen/screen.c:45 +#: modules/access/screen/screen.c:46 +#: modules/gui/qt4/components/open_panels.cpp:1004 msgid "Desired frame rate for the capture." msgstr "D?bit d?images pour la capture." -#: modules/access/screen/screen.c:48 +#: modules/access/screen/screen.c:49 msgid "Capture fragment size" msgstr "Taille des fragments captur?s" -#: modules/access/screen/screen.c:50 +#: modules/access/screen/screen.c:51 msgid "" "Optimize the capture by fragmenting the screen in chunks of predefined " "height (16 might be a good value, and 0 means disabled)." @@ -7400,46 +6892,51 @@ msgstr "" "pr?d?finie (16 semble ?tre une valeur convenable, 0 signifie que ceci est " "d?sactiv?)." -#: modules/access/screen/screen.c:55 modules/access/screen/screen.c:59 -#, fuzzy +#: modules/access/screen/screen.c:56 modules/access/screen/screen.c:60 msgid "Subscreen top left corner" -msgstr "Tol?rance U" +msgstr "Coin haut gauche du sous-?cran" -#: modules/access/screen/screen.c:57 -#, fuzzy +#: modules/access/screen/screen.c:58 msgid "Top coordinate of the subscreen top left corner." -msgstr "Abscisse du coin en haut ? gauche de la mosa?que." +msgstr "Ordonn?e du coin haut gauche du sous-?cran." -#: modules/access/screen/screen.c:61 -#, fuzzy +#: modules/access/screen/screen.c:62 msgid "Left coordinate of the subscreen top left corner." -msgstr "Abscisse du coin en haut ? gauche de la mosa?que." +msgstr "Abscisse du coin haut gauche du sous-?cran." -#: modules/access/screen/screen.c:63 modules/access/screen/screen.c:65 -#, fuzzy +#: modules/access/screen/screen.c:64 modules/access/screen/screen.c:66 msgid "Subscreen width" -msgstr "Ecran %d" +msgstr "Taille sous-?cran" -#: modules/access/screen/screen.c:67 modules/access/screen/screen.c:69 -#, fuzzy +#: modules/access/screen/screen.c:68 modules/access/screen/screen.c:70 msgid "Subscreen height" -msgstr "Hauteur de la vid?o" +msgstr "Hauteur sous-?cran" -#: modules/access/screen/screen.c:71 +#: modules/access/screen/screen.c:72 msgid "Follow the mouse" msgstr "Suivre la souris" -#: modules/access/screen/screen.c:73 +#: modules/access/screen/screen.c:74 msgid "Follow the mouse when capturing a subscreen." +msgstr "Suivre la souris lors de la capture d'une partie de l'?cran." + +#: modules/access/screen/screen.c:78 +msgid "Mouse pointer image" +msgstr "Image du curseur de la souris" + +#: modules/access/screen/screen.c:80 +msgid "" +"If specifed, will use the image to draw the mouse pointer on the capture." msgstr "" +"Image ? utiliser pour dessiner le pointeur de la souris lors des captures." -#: modules/access/screen/screen.c:86 +#: modules/access/screen/screen.c:94 msgid "Screen Input" msgstr "Module de capture d??cran" -#: modules/access/screen/screen.c:87 modules/gui/macosx/open.m:207 -#: modules/gui/macosx/open.m:864 modules/gui/macosx/simple_prefs.m:478 -#: modules/gui/macosx/vout.m:214 +#: modules/access/screen/screen.c:95 modules/gui/macosx/open.m:206 +#: modules/gui/macosx/open.m:411 modules/gui/macosx/open.m:879 +#: modules/gui/macosx/simple_prefs.m:476 modules/gui/macosx/vout.m:222 msgid "Screen" msgstr "?cran" @@ -7494,535 +6991,498 @@ msgstr "UDP" msgid "UDP input" msgstr "Entr?e UDP" -#: modules/access/v4l2/v4l2.c:79 modules/gui/macosx/open.m:178 -#: modules/gui/qt4/components/open_panels.cpp:826 -msgid "Device name" -msgstr "Nom du p?riph?rique" +#: modules/access/v4l.c:75 +msgid "" +"Caching value for V4L captures. This value should be set in milliseconds." +msgstr "Taille du cache pour les flux v4l (Video 4 Linux), en millisecondes." + +#: modules/access/v4l.c:79 +msgid "" +"Name of the video device to use. If you don't specify anything, no video " +"device will be used." +msgstr "" +"Nom du p?riph?rique vid?o ? utiliser. Si vous n?entrez rien, aucun " +"p?riph?rique vid?o ne sera utilis?." + +#: modules/access/v4l.c:83 +msgid "" +"Force the Video4Linux video device to use a specific chroma format (eg. I420 " +"(default), RV24, etc.)" +msgstr "" +"Force le p?riph?rique Video4Linux ? utiliser un format de chroma particulier " +"(par exemple I420 (d?faut), RV24, etc.)" -#: modules/access/v4l2/v4l2.c:81 +#: modules/access/v4l.c:90 msgid "" -"Name of the device to use. If you don't specify anything, /dev/video0 will " -"be used." +"Channel of the card to use (Usually, 0 = tuner, 1 = composite, 2 = svideo)." msgstr "" -"Nom du p?riph?rique vid?o ? utiliser. Si vous n?entrez rien, /dev/video0 " -"sera utilis?." +"Canal de la carte ? utiliser (Habituellement, 0 pour le tuner, 1 pour " +"l?entr?e composite et 2 pour l?entr?e S-Video)." + +#: modules/access/v4l.c:95 +msgid "Audio Channel" +msgstr "Canal audio" + +#: modules/access/v4l.c:97 +msgid "Audio Channel to use, if there are several audio inputs." +msgstr "Canal audio ? utiliser, s?il existe plusieurs entr?es audio." + +#: modules/access/v4l.c:99 +msgid "Width of the stream to capture (-1 for autodetect)." +msgstr "Largeur de la vid?o ? capturer (-1 pour autod?tecter)." -#: modules/access/v4l2/v4l2.c:83 -#: modules/gui/qt4/components/open_panels.cpp:705 +#: modules/access/v4l.c:102 +msgid "Height of the stream to capture (-1 for autodetect)." +msgstr "Hauteur de la vid?o ? capturer (-1 pour autod?tecter)." + +#: modules/access/v4l.c:104 modules/access/v4l2.c:106 +#: modules/gui/macosx/extended.m:97 modules/gui/qt4/ui/video_effects.ui:197 +#: modules/video_filter/atmo/atmo.cpp:196 +msgid "Brightness" +msgstr "Brillance" + +#: modules/access/v4l.c:106 +msgid "Brightness of the video input." +msgstr "Brillance de l?image." + +#: modules/access/v4l.c:107 modules/access/v4l2.c:115 +#: modules/gui/macosx/extended.m:100 modules/gui/qt4/ui/video_effects.ui:211 +msgid "Hue" +msgstr "Teinte" + +#: modules/access/v4l.c:109 +msgid "Hue of the video input." +msgstr "Teinte de l?image." + +#: modules/access/v4l.c:110 modules/gui/fbosd.c:141 +#: modules/gui/qt4/ui/video_effects.ui:247 +#: modules/gui/qt4/ui/video_effects.ui:311 +#: modules/gui/qt4/ui/video_effects.ui:649 modules/misc/notify/xosd.c:83 +#: modules/video_filter/colorthres.c:54 modules/video_filter/marq.c:122 +#: modules/video_filter/rss.c:154 +msgid "Color" +msgstr "Couleur" + +#: modules/access/v4l.c:112 +msgid "Color of the video input." +msgstr "Couleur de l?image." + +#: modules/access/v4l.c:113 modules/access/v4l2.c:109 +#: modules/gui/macosx/extended.m:98 modules/gui/qt4/ui/video_effects.ui:190 +msgid "Contrast" +msgstr "Contraste" + +#: modules/access/v4l.c:115 +msgid "Contrast of the video input." +msgstr "Contraste de la vid?o" + +#: modules/access/v4l.c:116 modules/access/v4l2.c:265 +msgid "Tuner" +msgstr "Tuner" + +#: modules/access/v4l.c:117 +msgid "Tuner to use, if there are several ones." +msgstr "Tuner ? utiliser, s?il en existe plusieurs." + +#: modules/access/v4l.c:118 +msgid "MJPEG" +msgstr "MJPEG" + +#: modules/access/v4l.c:120 +msgid "Set this option if the capture device outputs MJPEG" +msgstr "Activez cette option si le p?riph?rique envoie du MJPEG" + +#: modules/access/v4l.c:121 +msgid "Decimation" +msgstr "D?cimation" + +#: modules/access/v4l.c:123 +msgid "Decimation level for MJPEG streams" +msgstr "Niveau de d?cimation des flux MJPEG" + +#: modules/access/v4l.c:124 +msgid "Quality" +msgstr "Qualit?" + +#: modules/access/v4l.c:125 +msgid "Quality of the stream." +msgstr "Qualit? du flux." + +#: modules/access/v4l.c:131 +msgid "" +"Alsa or OSS audio capture in the v4l access is deprecated. please use " +"'v4l:// :input-slave=alsa://' or 'v4l:// :input-slave=oss://' instead." +msgstr "" + +#: modules/access/v4l.c:143 +msgid "Video4Linux" +msgstr "Video4Linux" + +#: modules/access/v4l.c:144 +msgid "Video4Linux input" +msgstr "Lecture Video4Linux" + +#: modules/access/v4l2.c:75 modules/gui/qt4/components/open_panels.cpp:762 #: modules/stream_out/standard.c:100 msgid "Standard" msgstr "Standard" -#: modules/access/v4l2/v4l2.c:85 +#: modules/access/v4l2.c:77 msgid "Video standard (Default, SECAM, PAL, or NTSC)." msgstr "Norme vid?o (Automatique, SECAM, PAL ou NTSC)" -#: modules/access/v4l2/v4l2.c:88 +#: modules/access/v4l2.c:80 msgid "" "Force the Video4Linux2 video device to use a specific chroma format (eg. " "I420 or I422 for raw images, MJPG for M-JPEG compressed input) (Complete " "list: GREY, I240, RV16, RV15, RV24, RV32, YUY2, YUYV, UYVY, I41N, I422, " "I420, I411, I410, MJPG)" msgstr "" +"Force le p?riph?rique Video4Linux2 ? utiliser une chroma sp?cifique (Par " +"exemple I420 ou I422 pour les images brutes, MJPG pour une entr?e M-JPEG " +"compress?e)(Liste compl?te des formats :\n" +"GREY, I240, RV16, RV15, RV24, RV32, YUY2, YUYV, UYVY, I41N, I422, I420, " +"I411, I410, MJPG)" -#: modules/access/v4l2/v4l2.c:94 +#: modules/access/v4l2.c:86 msgid "Input of the card to use (see debug)." msgstr "Entr? de la carte ? utiliser (voir les messages)." -#: modules/access/v4l2/v4l2.c:95 modules/access/v4l2/v4l2.c:301 +#: modules/access/v4l2.c:87 msgid "Audio input" msgstr "Entr?e audio" -#: modules/access/v4l2/v4l2.c:97 +#: modules/access/v4l2.c:89 msgid "Audio input of the card to use (see debug)." -msgstr "" +msgstr "Entr?e audio de la carte ? utiliser (voir les messages)." -#: modules/access/v4l2/v4l2.c:98 +#: modules/access/v4l2.c:90 msgid "IO Method" msgstr "M?thode d?entr?e/sortie" -#: modules/access/v4l2/v4l2.c:100 +#: modules/access/v4l2.c:92 msgid "IO Method (READ, MMAP, USERPTR)." msgstr "M?thode d?entr?e/sortie (READ, MMAP, USERPTR)." -#: modules/access/v4l2/v4l2.c:103 -msgid "Force width (-1 for autodetect)." -msgstr "Largeur de la vid?o ? capturer (-1 pour autod?tecter)." +#: modules/access/v4l2.c:95 +msgid "Force width (-1 for autodetect, 0 for driver default)." +msgstr "Largeur de la vid?o ? capturer (-1 pour autod?tecter, 0 pour la valeur par d?faut du p?riph?rique)." -#: modules/access/v4l2/v4l2.c:106 -msgid "Force height (-1 for autodetect)." -msgstr "Hauteur de la vid?o ? capturer (-1 pour autod?tecter)." +#: modules/access/v4l2.c:98 +msgid "Force height (-1 for autodetect, 0 for driver default)." +msgstr "Hauteur de la vid?o ? capturer (-1 pour autod?tecter, 0 pour la valeur par d?faut du p?riph?rique)." -#: modules/access/v4l2/v4l2.c:111 +#: modules/access/v4l2.c:100 +msgid "Framerate to capture, if applicable (0 for autodetect)." +msgstr "D?bit d?images ? capturer, si possible (0 pour autod?tecter)." + +#: modules/access/v4l2.c:103 msgid "Reset v4l2 controls" msgstr "Mettre ? z?ro les contr?les v4l2" -#: modules/access/v4l2/v4l2.c:113 +#: modules/access/v4l2.c:105 msgid "Reset controls to defaults provided by the v4l2 driver." -msgstr "" +msgstr "R?initialiser les contr?les aux valeurs fournies par le driver." -#: modules/access/v4l2/v4l2.c:114 modules/access/v4l.c:112 -#: modules/gui/macosx/extended.m:97 modules/gui/qt4/ui/video_effects.ui:197 -#: modules/video_filter/atmo/atmo.cpp:196 -msgid "Brightness" -msgstr "Brillance" - -#: modules/access/v4l2/v4l2.c:116 +#: modules/access/v4l2.c:108 msgid "Brightness of the video input (if supported by the v4l2 driver)." msgstr "Brillance de l?image de l'entr?e (si support? par le pilote v4l2)" -#: modules/access/v4l2/v4l2.c:117 modules/access/v4l.c:121 -#: modules/gui/macosx/extended.m:98 modules/gui/qt4/ui/video_effects.ui:190 -msgid "Contrast" -msgstr "Contraste" - -#: modules/access/v4l2/v4l2.c:119 +#: modules/access/v4l2.c:111 msgid "Contrast of the video input (if supported by the v4l2 driver)." msgstr "Contraste de l?image de l'entr?e (si support? par le pilote v4l2)" -#: modules/access/v4l2/v4l2.c:120 modules/gui/macosx/extended.m:101 +#: modules/access/v4l2.c:112 modules/gui/macosx/extended.m:101 #: modules/gui/qt4/ui/video_effects.ui:204 #: modules/gui/qt4/ui/video_effects.ui:304 msgid "Saturation" msgstr "Saturation" -#: modules/access/v4l2/v4l2.c:122 +#: modules/access/v4l2.c:114 msgid "Saturation of the video input (if supported by the v4l2 driver)." msgstr "Saturation de l?image de l'entr?e (si support? par le pilote v4l2)" -#: modules/access/v4l2/v4l2.c:123 modules/access/v4l.c:115 -#: modules/gui/macosx/extended.m:100 modules/gui/qt4/ui/video_effects.ui:211 -msgid "Hue" -msgstr "Teinte" - -#: modules/access/v4l2/v4l2.c:125 +#: modules/access/v4l2.c:117 msgid "Hue of the video input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Teinte de l'entr?e vid?o (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:126 +#: modules/access/v4l2.c:118 msgid "Black level" msgstr "Niveau de noir" -#: modules/access/v4l2/v4l2.c:128 +#: modules/access/v4l2.c:120 msgid "Black level of the video input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Niveau de noir de l'entr?e vid?o (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:129 +#: modules/access/v4l2.c:121 msgid "Auto white balance" -msgstr "" +msgstr "Balance automatique des blancs" -#: modules/access/v4l2/v4l2.c:131 +#: modules/access/v4l2.c:123 msgid "" "Automatically set the white balance of the video input (if supported by the " "v4l2 driver)." msgstr "" +"G?rer automatiquement la balance des blancs de l'entr?e vid?o (si support? " +"par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:133 +#: modules/access/v4l2.c:125 msgid "Do white balance" -msgstr "" +msgstr "Faire la balance des blancs" -#: modules/access/v4l2/v4l2.c:135 +#: modules/access/v4l2.c:127 msgid "" "Trigger a white balancing action, useless if auto white balance is activated " "(if supported by the v4l2 driver)." msgstr "" +"D?clencher la balance des blancs, inutile si la balance automatique des " +"blancs est activ?e (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:137 +#: modules/access/v4l2.c:129 msgid "Red balance" -msgstr "" +msgstr "Balance des rouges" -#: modules/access/v4l2/v4l2.c:139 +#: modules/access/v4l2.c:131 msgid "Red balance of the video input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Balance des rouges de l'entr?e vid?o (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:140 +#: modules/access/v4l2.c:132 msgid "Blue balance" -msgstr "" +msgstr "Balance des bleus" -#: modules/access/v4l2/v4l2.c:142 +#: modules/access/v4l2.c:134 msgid "Blue balance of the video input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Balance des bleus de l'entr?e vid?o (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:143 modules/gui/macosx/extended.m:99 +#: modules/access/v4l2.c:135 modules/gui/macosx/extended.m:99 #: modules/gui/qt4/ui/video_effects.ui:183 msgid "Gamma" msgstr "Gamma" -#: modules/access/v4l2/v4l2.c:145 +#: modules/access/v4l2.c:137 msgid "Gamma of the video input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Gamma de l'entr?e vid?o (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:146 +#: modules/access/v4l2.c:138 msgid "Exposure" -msgstr "" +msgstr "Exposition" -#: modules/access/v4l2/v4l2.c:148 +#: modules/access/v4l2.c:140 msgid "Exposure of the video input (if supported by the v4L2 driver)." -msgstr "" +msgstr "Exposition de l'entr?e vid?o (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:149 +#: modules/access/v4l2.c:141 msgid "Auto gain" msgstr "Gain automatique" -#: modules/access/v4l2/v4l2.c:151 +#: modules/access/v4l2.c:143 msgid "" "Automatically set the video input's gain (if supported by the v4l2 driver)." msgstr "" +"Mettre le gain automatique de l'entr?e vid?o (si support? par le driver " +"v4l2)." -#: modules/access/v4l2/v4l2.c:153 +#: modules/access/v4l2.c:145 msgid "Gain" msgstr "Gain" -#: modules/access/v4l2/v4l2.c:155 +#: modules/access/v4l2.c:147 msgid "Video input's gain (if supported by the v4l2 driver)." -msgstr "" +msgstr "Gain de l'entr?e vid?o (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:156 +#: modules/access/v4l2.c:148 msgid "Horizontal flip" msgstr "Retournement horizontal" -#: modules/access/v4l2/v4l2.c:158 +#: modules/access/v4l2.c:150 msgid "Flip the video horizontally (if supported by the v4l2 driver)." -msgstr "" +msgstr "Retourner horizontalement la vid?o (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:159 +#: modules/access/v4l2.c:151 msgid "Vertical flip" msgstr "Retournement vertical" -#: modules/access/v4l2/v4l2.c:161 +#: modules/access/v4l2.c:153 msgid "Flip the video vertically (if supported by the v4l2 driver)." -msgstr "" +msgstr "Retourner verticalement la vid?o (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:162 +#: modules/access/v4l2.c:154 msgid "Horizontal centering" msgstr "Centrage horizontal" -#: modules/access/v4l2/v4l2.c:164 +#: modules/access/v4l2.c:156 msgid "" "Set the camera's horizontal centering (if supported by the v4l2 driver)." msgstr "" +"Activer le centrage horizontal de la cam?ra (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:165 +#: modules/access/v4l2.c:157 msgid "Vertical centering" msgstr "Centrage vertical" -#: modules/access/v4l2/v4l2.c:167 +#: modules/access/v4l2.c:159 msgid "Set the camera's vertical centering (if supported by the v4l2 driver)." msgstr "" +"Activer le centrage vertical de la cam?ra (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:172 -msgid "" -"Name of the audio device to use. If you don't specify anything, \"/dev/dsp\" " -"will be used for OSS." -msgstr "" -"Nom du p?riph?rique audio ? utiliser. Si vous n?entrez rien, \"/dev/dsp\" " -"sera utilis? pour OSS" - -#: modules/access/v4l2/v4l2.c:176 -msgid "" -"Name of the audio device to use. If you don't specify anything, \"/dev/dsp\" " -"will be used for OSS, \"hw\" for Alsa." -msgstr "" -"Nom du p?riph?rique audio ? utiliser. Si vous n?entrez rien, \"/dev/dsp\" " -"sera utilis? pour OSS, \"hw\" pour Alsa." - -#: modules/access/v4l2/v4l2.c:180 -msgid "Audio method" -msgstr "M?thode audio" - -#: modules/access/v4l2/v4l2.c:183 -msgid "Audio method to use: 0 to disable audio, 1 for OSS." -msgstr "" - -#: modules/access/v4l2/v4l2.c:186 -msgid "" -"Audio method to use: 0 to disable audio, 1 for OSS, 2 for ALSA, 3 for ALSA " -"or OSS (ALSA is preferred)." -msgstr "" - -#: modules/access/v4l2/v4l2.c:191 +#: modules/access/v4l2.c:163 msgid "Volume of the audio input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Volume de l'entr?e audio (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:192 +#: modules/access/v4l2.c:164 msgid "Balance" msgstr "Balance" -#: modules/access/v4l2/v4l2.c:194 +#: modules/access/v4l2.c:166 msgid "Balance of the audio input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Volume de l'entr?e audio (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:197 +#: modules/access/v4l2.c:169 msgid "Mute audio input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Rendre muette l'entr?e audio (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:198 modules/meta_engine/id3genres.h:69 +#: modules/access/v4l2.c:170 modules/meta_engine/id3genres.h:69 msgid "Bass" msgstr "Basse" -#: modules/access/v4l2/v4l2.c:200 +#: modules/access/v4l2.c:172 msgid "Bass level of the audio input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Niveau de basse de l'entr?e audio (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:201 +#: modules/access/v4l2.c:173 msgid "Treble" msgstr "Aigu?s" -#: modules/access/v4l2/v4l2.c:203 +#: modules/access/v4l2.c:175 msgid "Treble level of the audio input (if supported by the v4l2 driver)." -msgstr "" +msgstr "Niveau d'aigu?s de l'entr?e audio (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:204 +#: modules/access/v4l2.c:176 msgid "Loudness" -msgstr "" +msgstr "Correcteur physiologique (Loudness)" -#: modules/access/v4l2/v4l2.c:206 +#: modules/access/v4l2.c:178 msgid "Loudness of the audio input (if supported by the v4l2 driver)." msgstr "" +"Correcteur physiologique de l'entr?e audio (si support? par le driver v4l2)." -#: modules/access/v4l2/v4l2.c:210 modules/access/v4l.c:131 -msgid "Capture the audio stream in stereo." -msgstr "Capture audio en st?r?o." - -#: modules/access/v4l2/v4l2.c:213 -msgid "" -"Samplerate of the captured audio stream, in Hz (eg: 11025, 22050, 44100, " -"48000)" -msgstr "" -"Fr?quence d??chantillonage audio, en Hz (par exemple, 11025, 22050, 44100, " -"48000)." - -#: modules/access/v4l2/v4l2.c:217 +#: modules/access/v4l2.c:182 msgid "" "Caching value for V4L2 captures. This value should be set in milliseconds." msgstr "Taille du cache pour la capture V4L2, en millisecondes." -#: modules/access/v4l2/v4l2.c:219 +#: modules/access/v4l2.c:184 msgid "v4l2 driver controls" msgstr "Contr?les du pilote v4l2" -#: modules/access/v4l2/v4l2.c:221 +#: modules/access/v4l2.c:186 msgid "" "Set the v4l2 driver controls to the values specified using a comma separated " "list optionally encapsulated by curly braces (e.g.: {video_bitrate=6000000," "audio_crc=0,stream_type=3} ). To list available controls, increase verbosity " "(-vvv) or use the v4l2-ctl application." msgstr "" +"Positionne des options du driver v412 ? des valeurs sp?cifi?es en utilisant " +"une liste optionnellement encapsul?e dans des accolades (par exemple : " +"??{video_bitrate=6000000,audio_crc=0,stream_type=3}?? ). Pour conna?tre la " +"liste de ces options, augmentez la verbosit? (??-vvv??) ou utilisez " +"l'application ??v4l2-ctl??." -#: modules/access/v4l2/v4l2.c:227 +#: modules/access/v4l2.c:192 msgid "Tuner id" msgstr "Id du tuner" -#: modules/access/v4l2/v4l2.c:229 +#: modules/access/v4l2.c:194 msgid "Tuner id (see debug output)." -msgstr "" +msgstr "Id du tuner (voir la sortie de d?bogage)" -#: modules/access/v4l2/v4l2.c:232 +#: modules/access/v4l2.c:197 msgid "Tuner frequency in Hz or kHz (see debug output)" -msgstr "" +msgstr "Fr?quence du tuner en Hz ou kHz (voir la sortie de d?bogage)" -#: modules/access/v4l2/v4l2.c:233 +#: modules/access/v4l2.c:198 msgid "Audio mode" msgstr "Mode audio" -#: modules/access/v4l2/v4l2.c:235 +#: modules/access/v4l2.c:200 msgid "Tuner audio mono/stereo and track selection." +msgstr "Tuner audio mono/st?r?o et s?lection des pistes" + +#: modules/access/v4l2.c:203 +msgid "" +"Alsa or OSS audio capture in the v4l2 access is deprecated. please use " +"'v4l2:// :input-slave=alsa://' or 'v4l2:// :input-slave=oss://' instead." msgstr "" -#: modules/access/v4l2/v4l2.c:251 +#: modules/access/v4l2.c:221 msgid "READ" msgstr "READ" -#: modules/access/v4l2/v4l2.c:251 +#: modules/access/v4l2.c:221 msgid "MMAP" msgstr "MMAP" -#: modules/access/v4l2/v4l2.c:251 +#: modules/access/v4l2.c:221 msgid "USERPTR" msgstr "USERPTR" -#: modules/access/v4l2/v4l2.c:258 modules/audio_output/alsa.c:189 -#: modules/audio_output/directx.c:536 modules/audio_output/oss.c:227 -#: modules/audio_output/portaudio.c:399 modules/audio_output/sdl.c:185 -#: modules/audio_output/sdl.c:204 modules/audio_output/waveout.c:532 +#: modules/access/v4l2.c:228 modules/audio_output/alsa.c:190 +#: modules/audio_output/directx.c:577 modules/audio_output/oss.c:228 +#: modules/audio_output/portaudio.c:395 modules/audio_output/sdl.c:185 +#: modules/audio_output/sdl.c:204 modules/audio_output/waveout.c:534 msgid "Mono" msgstr "Mono" -#: modules/access/v4l2/v4l2.c:260 +#: modules/access/v4l2.c:230 msgid "Primary language (Analog TV tuners only)" -msgstr "" +msgstr "Langue principale (tuner TV analogique uniquement)" -#: modules/access/v4l2/v4l2.c:261 +#: modules/access/v4l2.c:231 msgid "Secondary language (Analog TV tuners only)" -msgstr "" +msgstr "Langue secondaire (tuner TV analogique uniquement)" -#: modules/access/v4l2/v4l2.c:262 +#: modules/access/v4l2.c:232 msgid "Second audio program (Analog TV tuners only)" -msgstr "" +msgstr "Second programme audio (tuner TV analogique uniquement)" -#: modules/access/v4l2/v4l2.c:263 +#: modules/access/v4l2.c:233 msgid "Primary language left, Secondary language right" -msgstr "" +msgstr "Langure principale ? gauche, secondaire ? droite" -#: modules/access/v4l2/v4l2.c:275 +#: modules/access/v4l2.c:239 msgid "Video4Linux2" msgstr "Video4Linux2" -#: modules/access/v4l2/v4l2.c:276 +#: modules/access/v4l2.c:240 msgid "Video4Linux2 input" msgstr "Entr?e Video4Linux2" -#: modules/access/v4l2/v4l2.c:280 +#: modules/access/v4l2.c:244 msgid "Video input" msgstr "Entr?e vid?o" -#: modules/access/v4l2/v4l2.c:313 modules/access/v4l.c:124 -msgid "Tuner" -msgstr "Tuner" - -#: modules/access/v4l2/v4l2.c:323 +#: modules/access/v4l2.c:275 msgid "Controls" msgstr "Contr?les" -#: modules/access/v4l2/v4l2.c:324 +#: modules/access/v4l2.c:276 msgid "v4l2 driver controls, if supported by your v4l2 driver." -msgstr "" +msgstr "Options du driver v412, si support?es par votre driver v412." -#: modules/access/v4l2/v4l2.c:382 +#: modules/access/v4l2.c:341 msgid "Video4Linux2 Compressed A/V" msgstr "Audio/Vid?o compress?s Video4Linux2" -#: modules/access/v4l2/v4l2.c:3136 +#: modules/access/v4l2.c:2642 msgid "Reset controls to default" -msgstr "" - -#: modules/access/v4l.c:79 -msgid "" -"Caching value for V4L captures. This value should be set in milliseconds." -msgstr "Taille du cache pour les flux v4l (Video 4 Linux), en millisecondes." - -#: modules/access/v4l.c:83 -#, fuzzy -msgid "" -"Name of the video device to use. If you don't specify anything, no video " -"device will be used." -msgstr "" -"Nom du p?riph?rique vid?o ? utiliser. Si vous n?entrez rien, aucun " -"p?riph?rique vid?o ne sera utilis?." - -#: modules/access/v4l.c:87 -#, fuzzy -msgid "" -"Name of the audio device to use. If you don't specify anything, no audio " -"device will be used." -msgstr "" -"Nom du p?riph?rique audio ? utiliser. Si vous ne sp?cifiez rien, aucun " -"p?riph?rique audio ne sera utilis?." - -#: modules/access/v4l.c:91 -msgid "" -"Force the Video4Linux video device to use a specific chroma format (eg. I420 " -"(default), RV24, etc.)" -msgstr "" -"Force le p?riph?rique Video4Linux ? utiliser un format de chroma particulier " -"(par exemple I420 (d?faut), RV24, etc.)" - -#: modules/access/v4l.c:98 -msgid "" -"Channel of the card to use (Usually, 0 = tuner, 1 = composite, 2 = svideo)." -msgstr "" -"Canal de la carte ? utiliser (Habituellement, 0 pour le tuner, 1 pour " -"l?entr?e composite et 2 pour l?entr?e S-Video)." - -#: modules/access/v4l.c:103 -msgid "Audio Channel" -msgstr "Canal audio" - -#: modules/access/v4l.c:105 -msgid "Audio Channel to use, if there are several audio inputs." -msgstr "Canal audio ? utiliser, s?il existe plusieurs entr?es audio." - -#: modules/access/v4l.c:107 -msgid "Width of the stream to capture (-1 for autodetect)." -msgstr "Largeur de la vid?o ? capturer (-1 pour autod?tecter)." - -#: modules/access/v4l.c:110 -msgid "Height of the stream to capture (-1 for autodetect)." -msgstr "Hauteur de la vid?o ? capturer (-1 pour autod?tecter)." - -#: modules/access/v4l.c:114 -msgid "Brightness of the video input." -msgstr "Brillance de l?image." - -#: modules/access/v4l.c:117 -msgid "Hue of the video input." -msgstr "Teinte de l?image." - -#: modules/access/v4l.c:118 modules/gui/fbosd.c:143 -#: modules/gui/qt4/ui/video_effects.ui:247 -#: modules/gui/qt4/ui/video_effects.ui:311 -#: modules/gui/qt4/ui/video_effects.ui:643 modules/misc/notify/xosd.c:83 -#: modules/video_filter/colorthres.c:54 modules/video_filter/marq.c:122 -#: modules/video_filter/rss.c:154 -msgid "Color" -msgstr "Couleur" - -#: modules/access/v4l.c:120 -msgid "Color of the video input." -msgstr "Couleur de l?image." - -#: modules/access/v4l.c:123 -msgid "Contrast of the video input." -msgstr "Contraste de la vid?o" - -#: modules/access/v4l.c:125 -msgid "Tuner to use, if there are several ones." -msgstr "Tuner ? utiliser, s?il en existe plusieurs." - -#: modules/access/v4l.c:128 -msgid "" -"Samplerate of the captured audio stream, in Hz (eg: 11025, 22050, 44100)" -msgstr "" -"Fr?quence d??chantillonage audio, en Hz (par exemple, 11024, 22050, 44100)." - -#: modules/access/v4l.c:132 -msgid "MJPEG" -msgstr "MJPEG" - -#: modules/access/v4l.c:134 -msgid "Set this option if the capture device outputs MJPEG" -msgstr "Activez cette option si le p?riph?rique envoie du MJPEG" - -#: modules/access/v4l.c:135 -msgid "Decimation" -msgstr "D?cimation" - -#: modules/access/v4l.c:137 -msgid "Decimation level for MJPEG streams" -msgstr "Niveau de d?cimation des flux MJPEG" - -#: modules/access/v4l.c:138 -msgid "Quality" -msgstr "Qualit?" - -#: modules/access/v4l.c:139 -msgid "Quality of the stream." -msgstr "Qualit? du flux." - -#: modules/access/v4l.c:150 -msgid "Video4Linux" -msgstr "Video4Linux" - -#: modules/access/v4l.c:151 -msgid "Video4Linux input" -msgstr "Lecture Video4Linux" +msgstr "Remise aux valeurs par d?faut" #: modules/access/vcd/vcd.c:48 msgid "Caching value for VCDs. This value should be set in milliseconds." msgstr "Taille du cache pour les VCD, en millisecondes." -#: modules/access/vcd/vcd.c:52 modules/gui/macosx/open.m:186 -#: modules/gui/macosx/open.m:549 modules/gui/macosx/open.m:635 +#: modules/access/vcd/vcd.c:52 modules/gui/macosx/open.m:185 +#: modules/gui/macosx/open.m:565 modules/gui/macosx/open.m:651 msgid "VCD" msgstr "VCD" @@ -8045,7 +7505,7 @@ msgstr "Le message ci-dessus avait un niveau de verbosit? vcdimager inconnu." #: modules/access/vcdx/access.c:286 modules/access/vcdx/access.c:369 #: modules/access/vcdx/access.c:696 modules/access/vcdx/info.c:294 #: modules/access/vcdx/info.c:295 -#: modules/gui/qt4/components/open_panels.cpp:328 +#: modules/gui/qt4/components/open_panels.cpp:335 msgid "Entry" msgstr "Entr?e" @@ -8055,7 +7515,7 @@ msgstr "Segments" #: modules/access/vcdx/access.c:433 modules/access/vcdx/access.c:715 #: modules/access/vcdx/info.c:298 modules/access/vcdx/info.c:299 -#: modules/demux/mkv.cpp:5399 +#: modules/demux/mkv/demux.cpp:628 msgid "Segment" msgstr "Segment" @@ -8067,7 +7527,7 @@ msgstr "LID" msgid "VCD Format" msgstr "Format VCD" -#: modules/access/vcdx/info.c:95 modules/gui/qt4/dialogs/messages.cpp:257 +#: modules/access/vcdx/info.c:95 modules/gui/qt4/dialogs/messages.cpp:255 msgid "Application" msgstr "Application" @@ -8198,11 +7658,269 @@ msgstr "" #: modules/access/vcdx/vcd.c:143 msgid "Format to use in the playlist's \"author\" field." -msgstr "Format ? utiliser dans le champ ? auteur ? de la liste de lecture" +msgstr "Format ? utiliser dans le champ ??auteur?? de la liste de lecture" #: modules/access/vcdx/vcd.c:149 msgid "Format to use in the playlist's \"title\" field." -msgstr "Format ? utiliser dans le champ ? titre ? de la liste de lecture" +msgstr "Format ? utiliser dans le champ ??titre?? de la liste de lecture" + +#: modules/access_filter/bandwidth.c:34 +msgid "Bandwidth limit (bytes/s)" +msgstr "Limite de la bande passante (octets/s)" + +#: modules/access_filter/bandwidth.c:36 +msgid "" +"The bandwidth module will drop any data in excess of that many bytes per " +"seconds." +msgstr "" +"Le module de bande passante va supprimer toute donn?e en exc?s par rapport ? " +"ce nombre d'octets par seconde." + +#: modules/access_filter/bandwidth.c:45 +#: modules/gui/qt4/components/open_panels.cpp:715 +msgid "Bandwidth" +msgstr "Bande passante" + +#: modules/access_filter/bandwidth.c:46 +msgid "Bandwidth limiter" +msgstr "Limiteur de bande passante" + +#: modules/access_filter/dump.c:42 +msgid "Force use of dump module" +msgstr "Imposer l?utilisation de module ??dump??" + +#: modules/access_filter/dump.c:43 +msgid "Activate the dump module even for media with fast seeking." +msgstr "Activer le module ??dump?? m?me pour les m?dias avec recherche rapide" + +#: modules/access_filter/dump.c:46 +msgid "Maximum size of temporary file (Mb)" +msgstr "Taille maximum d?un fichier temporaire (Mo)" + +#: modules/access_filter/dump.c:47 +msgid "" +"The dump module will abort dumping of the media if more than this much " +"megabyte were performed." +msgstr "" +"Le module ??dump?? s'arr?tera de sauvegarder le m?dia au dessus de cette " +"limite en m?ga-octets." + +#: modules/access_output/dummy.c:45 modules/stream_out/dummy.c:51 +msgid "Dummy stream output" +msgstr "Flux de sortie bidon" + +#: modules/access_output/dummy.c:46 modules/misc/dummy/dummy.c:61 +msgid "Dummy" +msgstr "Bidon" + +#: modules/access_output/file.c:64 +msgid "Append to file" +msgstr "Ajouter au fichier" + +#: modules/access_output/file.c:65 +msgid "Append to file if it exists instead of replacing it." +msgstr "Ecrire ? la fin du fichier au lieu de le remplacer." + +#: modules/access_output/file.c:69 +msgid "File stream output" +msgstr "Sortie vers un fichier" + +#: modules/access_output/http.c:65 modules/gui/qt4/ui/sprefs_audio.ui:309 +#: modules/misc/audioscrobbler.c:132 +msgid "Username" +msgstr "Nom d?utilisateur" + +#: modules/access_output/http.c:66 +msgid "User name that will be requested to access the stream." +msgstr "Nom d?utilisateur qui sera demand? pour acc?der au flux." + +#: modules/access_output/http.c:68 modules/control/telnet.c:87 +#: modules/gui/macosx/simple_prefs.m:227 +#: modules/gui/qt4/dialogs/interaction.cpp:109 +#: modules/gui/qt4/ui/sprefs_audio.ui:319 modules/misc/audioscrobbler.c:134 +#: modules/misc/notify/growl_udp.c:64 +msgid "Password" +msgstr "Mot de passe" + +#: modules/access_output/http.c:69 +msgid "Password that will be requested to access the stream." +msgstr "Mot de passe qui sera demand? pour acc?der au flux." + +#: modules/access_output/http.c:71 +msgid "Mime" +msgstr "MIME" + +#: modules/access_output/http.c:72 +msgid "MIME returned by the server (autodetected if not specified)." +msgstr "Type MIME renvoy? par le serveur (autod?tect? si non sp?cifi?)." + +#: modules/access_output/http.c:75 +msgid "Path to the x509 PEM certificate file that will be used for HTTPS." +msgstr "Chemin du fichier x509 de certificat ? utiliser pour HTTPS." + +#: modules/access_output/http.c:78 +msgid "" +"Path to the x509 PEM private key file that will be used for HTTPS. Leave " +"empty if you don't have one." +msgstr "" +"Chemin du fichier x509 de cl? priv?e ? utiliser pour HTTPS. Ne rien entrer " +"si vous n?en n?avez pas." + +#: modules/access_output/http.c:82 +msgid "" +"Path to the x509 PEM trusted root CA certificates (certificate authority) " +"file that will be used for HTTPS. Leave empty if you don't have one." +msgstr "" +"Chemin du fichier x509 d?autorit? de certification qui sera utilis? pour " +"HTTPS. Ne rien entrer si vous n?en n?avez pas." + +#: modules/access_output/http.c:87 +msgid "" +"Path to the x509 PEM Certificates Revocation List file that will be used for " +"SSL. Leave empty if you don't have one." +msgstr "" +"Chemin du fichier x509 de liste de r?vocation de certificats qui sera " +"utilis? pour HTTPS. Ne rien entrer si vous n?en n?avez pas" + +#: modules/access_output/http.c:90 +msgid "Advertise with Bonjour" +msgstr "Annoncer avec Bonjour" + +#: modules/access_output/http.c:91 +msgid "Advertise the stream with the Bonjour protocol." +msgstr "Annoncer ce flux par le protocole Bonjour (Zeroconf)." + +#: modules/access_output/http.c:95 +msgid "HTTP stream output" +msgstr "Flux de sortie HTTP" + +#: modules/access_output/rtmp.c:44 +msgid "Active TCP connection" +msgstr "Connexion TCP active" + +#: modules/access_output/rtmp.c:46 +msgid "" +"If enabled, VLC will connect to a remote destination instead of waiting for " +"an incoming connection." +msgstr "" +"Si ceci est activ?, VLC se connectera ? une destination distance au lieu " +"d'attentre une connection entrante." + +#: modules/access_output/rtmp.c:55 +msgid "RTMP stream output" +msgstr "Flux de sortie RTMP" + +#: modules/access_output/shout.c:63 +msgid "Stream name" +msgstr "Nom" + +#: modules/access_output/shout.c:64 +msgid "Name to give to this stream/channel on the shoutcast/icecast server." +msgstr "Nom ? donner ? ce flux/canal sur le serveur shoutcast/icecast." + +#: modules/access_output/shout.c:67 +msgid "Stream description" +msgstr "Description du flux" + +#: modules/access_output/shout.c:68 +msgid "Description of the stream content or information about your channel." +msgstr "Description du contenu de votre flux et informations sur votre canal." + +#: modules/access_output/shout.c:71 +msgid "Stream MP3" +msgstr "Diffuser en MP3" + +#: modules/access_output/shout.c:72 +msgid "" +"You normally have to feed the shoutcast module with Ogg streams. It is also " +"possible to stream MP3 instead, so you can forward MP3 streams to the " +"shoutcast/icecast server." +msgstr "" +"G?n?ralement, la sortie Shoutcast/Icecast utilise des flux Ogg. Cette option " +"vous permet d?utiliser des flux MP3 ? la place." + +#: modules/access_output/shout.c:81 +msgid "Genre description" +msgstr "Description du genre" + +#: modules/access_output/shout.c:82 +msgid "Genre of the content. " +msgstr "Genre du contenu." + +#: modules/access_output/shout.c:84 +msgid "URL description" +msgstr "Description de l?URL" + +#: modules/access_output/shout.c:85 +msgid "URL with information about the stream or your channel. " +msgstr "URL avec des informations sur votre flux ou canal. " + +#: modules/access_output/shout.c:92 +msgid "Bitrate information of the transcoded stream. " +msgstr "Information sur le d?bit du le flux transcod?." + +#: modules/access_output/shout.c:95 +msgid "Samplerate information of the transcoded stream. " +msgstr "Information sur l??chantillonnage du flux transcod?." + +#: modules/access_output/shout.c:97 +msgid "Number of channels" +msgstr "Nombre de canaux" + +#: modules/access_output/shout.c:98 +msgid "Number of channels information of the transcoded stream. " +msgstr "Nombre de canaux du flux transcod?." + +#: modules/access_output/shout.c:100 +msgid "Ogg Vorbis Quality" +msgstr "Qualit? Ogg Vorbis" + +#: modules/access_output/shout.c:101 +msgid "Ogg Vorbis Quality information of the transcoded stream. " +msgstr "Qualit? Ogg Vorbis du flux transcod?." + +#: modules/access_output/shout.c:103 +msgid "Stream public" +msgstr "Diffuser publiquement" + +#: modules/access_output/shout.c:104 +msgid "" +"Make the server publicly available on the 'Yellow Pages' (directory listing " +"of streams) on the icecast/shoutcast website. Requires the bitrate " +"information specified for shoutcast. Requires Ogg streaming for icecast." +msgstr "" +"Rend le serveur publiquement accessible sur les ??Yellow Pages?? (affichage " +"des contenus des dosssiers de flux) du site web ??icecast/shoutcast??. Les " +"infos de d?bit doivent ?tre sp?cifi?es pour shoutcast. Les flux doivent ?tre " +"en format Ogg pour icecast." + +#: modules/access_output/shout.c:110 +msgid "IceCAST output" +msgstr "Sortie IceCAST" + +#: modules/access_output/udp.c:69 +msgid "" +"Default caching value for outbound UDP streams. This value should be set in " +"milliseconds." +msgstr "Taille du cache pour les flux UDP, en millisecondes." + +#: modules/access_output/udp.c:72 +msgid "Group packets" +msgstr "Groupe les paquets" + +#: modules/access_output/udp.c:73 +msgid "" +"Packets can be sent one by one at the right time or by groups. You can " +"choose the number of packets that will be sent at a time. It helps reducing " +"the scheduling load on heavily-loaded systems." +msgstr "" +"Les paquets peuvent ?tre envoy?s un par un au moment ad?quat ou par groupes. " +"Ceci permet de pr?ciser le nombre de paquets qui seront envoy?s en m?me " +"temps. Cela r?duit la charge de planification sur les syst?mes surcharg?s." + +#: modules/access_output/udp.c:80 +msgid "UDP stream output" +msgstr "Flux de sortie UDP" #: modules/audio_filter/channel_mixer/dolby.c:49 msgid "Simple decoder for Dolby Surround encoded streams" @@ -8254,7 +7972,6 @@ msgid "No decoding of Dolby Surround" msgstr "Pas de d?codage Dolby Surround" #: modules/audio_filter/channel_mixer/headphone.c:78 -#, fuzzy msgid "" "Dolby Surround encoded streams won't be decoded before being processed by " "this filter. Enabling this setting is not recommended." @@ -8272,9 +7989,8 @@ msgid "Headphone effect" msgstr "Effet casque" #: modules/audio_filter/channel_mixer/mono.c:89 -#, fuzzy msgid "Use downmix algorithm" -msgstr "Activer l?algorithme de r?duction du bruit." +msgstr "Activer l?algorithme de passage en mono" #: modules/audio_filter/channel_mixer/mono.c:90 msgid "" @@ -8282,6 +7998,9 @@ msgid "" "headphone channel mixer. It gives the effect of standing in a room full of " "speakers." msgstr "" +"Cette option s?lectionne un algorithme de passage en mono qui est utilis? " +"par le mixeur pour les casques. Il permet un effet ?quivalent ? se trouver " +"dans une pi?ce pleine de haut-parleurs." #: modules/audio_filter/channel_mixer/mono.c:94 msgid "Select channel to keep" @@ -8292,6 +8011,9 @@ msgid "" "This option silences all other channels except the selected channel. Choose " "one from (0=left, 1=right, 2=rear left, 3=rear right, 4=center, 5=left front)" msgstr "" +"Cette option permet de rendre muet tous les canaux sauf un. Choisir parmi " +"(0=gauche, 1=droite, 2=arri?re gauche, 3=arri?re droite, 4=centre, 5=avant " +"gauche)" #: modules/audio_filter/channel_mixer/mono.c:101 msgid "Left rear" @@ -8321,12 +8043,12 @@ msgstr "mixeur de canaux simple" msgid "Audio filter for trivial channel mixing" msgstr "Mixeur de canaux trivial" -#: modules/audio_filter/converter/a52tofloat32.c:97 +#: modules/audio_filter/converter/a52tofloat32.c:93 msgid "A/52 dynamic range compression" msgstr "Compression dynamique A/52" -#: modules/audio_filter/converter/a52tofloat32.c:99 -#: modules/audio_filter/converter/dtstofloat32.c:86 +#: modules/audio_filter/converter/a52tofloat32.c:95 +#: modules/audio_filter/converter/dtstofloat32.c:85 msgid "" "Dynamic range compression makes the loud sounds softer, and the soft sounds " "louder, so you can more easily listen to the stream in a noisy environment " @@ -8339,16 +8061,16 @@ msgstr "" "compression dynamique, le rendu sera plus adapt? ? une salle de cin?ma ou " "une chambre d??coute." -#: modules/audio_filter/converter/a52tofloat32.c:104 +#: modules/audio_filter/converter/a52tofloat32.c:100 msgid "Enable internal upmixing" -msgstr "" +msgstr "Activer l'encodage entrelac? interne" -#: modules/audio_filter/converter/a52tofloat32.c:106 +#: modules/audio_filter/converter/a52tofloat32.c:102 msgid "Enable the internal upmixing algorithm (not recommended)." msgstr "Active algorithme d?encodage entrelac? (non recommand?)." -#: modules/audio_filter/converter/a52tofloat32.c:110 -#: modules/audio_filter/converter/a52tofloat32.c:119 +#: modules/audio_filter/converter/a52tofloat32.c:106 +#: modules/audio_filter/converter/a52tofloat32.c:115 msgid "ATSC A/52 (AC-3) audio decoder" msgstr "D?codeur audio ATSC A/52 (ou AC-3)" @@ -8356,12 +8078,12 @@ msgstr "D?codeur audio ATSC A/52 (ou AC-3)" msgid "Audio filter for A/52->S/PDIF encapsulation" msgstr "Encapsulateur A/52->S/PDIF" -#: modules/audio_filter/converter/dtstofloat32.c:84 +#: modules/audio_filter/converter/dtstofloat32.c:83 msgid "DTS dynamic range compression" msgstr "Compression dynamique DTS" -#: modules/audio_filter/converter/dtstofloat32.c:96 -#: modules/audio_filter/converter/dtstofloat32.c:102 +#: modules/audio_filter/converter/dtstofloat32.c:95 +#: modules/audio_filter/converter/dtstofloat32.c:101 msgid "DTS Coherent Acoustics audio decoder" msgstr "D?codeur DTS Coherent Acoustics" @@ -8395,15 +8117,14 @@ msgid "Bands gain" msgstr "Gain des diff?rentes bandes" #: modules/audio_filter/equalizer.c:61 -#, fuzzy msgid "" "Don't use presets, but manually specified bands. You need to provide 10 " "values between -20dB and 20dB, separated by spaces, e.g. \"0 2 4 2 0 -2 -4 -" "2 0\"." msgstr "" "Ne pas utiliser de pr?r?glages, mais r?gler manuellement les bandes. Vous " -"devez donner 10 valeurs entre -20 et 20, s?par?es par des espaces, comme \"0 " -"2 4 2 0 -2 -3 -2 0\"." +"devez donner 10 valeurs entre -20dB et 20dB, s?par?es par des espaces, comme " +"??0 2 4 2 0 -2 -3 -2 0??." #: modules/audio_filter/equalizer.c:65 msgid "Two pass" @@ -8618,8 +8339,8 @@ msgid "Audio filter for ugly resampling" msgstr "R??chantillonneur basique" #: modules/audio_filter/scaletempo.c:47 -msgid "Scale audio tempo in sync with playback rate" -msgstr "" +msgid "Audio tempo scaler synched with rate" +msgstr "Mettre en corr?lation le tempo audio avec la vitesse de lecture" #: modules/audio_filter/scaletempo.c:48 msgid "Scaletempo" @@ -8627,33 +8348,54 @@ msgstr "Scaletempo" #: modules/audio_filter/scaletempo.c:54 msgid "Stride Length" -msgstr "" +msgstr "Dur?e du pas de temps" #: modules/audio_filter/scaletempo.c:54 msgid "Length in milliseconds to output each stride" -msgstr "" +msgstr "Dur?e en milisecondes de chaque pas de temps" #: modules/audio_filter/scaletempo.c:56 msgid "Overlap Length" -msgstr "" +msgstr "Dur?e de recouvrement" #: modules/audio_filter/scaletempo.c:56 msgid "Percentage of stride to overlap" -msgstr "" +msgstr "Pourcentage de recouvrement par pas de temps" #: modules/audio_filter/scaletempo.c:58 -#, fuzzy msgid "Search Length" -msgstr "Chercher" +msgstr "Dur?e de recherche" #: modules/audio_filter/scaletempo.c:58 msgid "Length in milliseconds to search for best overlap position" msgstr "" +"Dur?e en milliseondes de la recherche de la meilleure position de " +"recouvrement" + +#: modules/audio_filter/spatializer/spatializer.cpp:48 +msgid "Room size" +msgstr "Pi?ce al?atoire" #: modules/audio_filter/spatializer/spatializer.cpp:49 -#: modules/audio_filter/spatializer/spatializer.cpp:50 -msgid "spatializer" -msgstr "spatialiseur" +msgid "Defines the virtual surface of the roomemulated by the filter." +msgstr "" + +#: modules/audio_filter/spatializer/spatializer.cpp:52 +msgid "Room width" +msgstr "Largeur de la pi?ce" + +#: modules/audio_filter/spatializer/spatializer.cpp:53 +msgid "Width of the virtual room" +msgstr "Largeur de la pi?ce virtuelle" + +#: modules/audio_filter/spatializer/spatializer.cpp:65 +msgid "Audio Spatializer" +msgstr "Spatialiseur Audio" + +#: modules/audio_filter/spatializer/spatializer.cpp:66 +#: modules/gui/qt4/dialogs/extended.cpp:59 +msgid "Spatializer" +msgstr "Spatialiseur" #: modules/audio_mixer/float32.c:50 msgid "Float32 audio mixer" @@ -8679,57 +8421,53 @@ msgstr "Sortie audio ALSA" msgid "ALSA Device Name" msgstr "Nom du p?riph?rique ALSA" -#: modules/audio_output/alsa.c:132 modules/audio_output/auhal.c:131 -#: modules/audio_output/auhal.c:968 modules/audio_output/directx.c:421 -#: modules/audio_output/oss.c:134 modules/audio_output/portaudio.c:393 +#: modules/audio_output/alsa.c:133 modules/audio_output/auhal.c:131 +#: modules/audio_output/auhal.c:968 modules/audio_output/directx.c:462 +#: modules/audio_output/oss.c:135 modules/audio_output/portaudio.c:389 #: modules/audio_output/sdl.c:179 modules/audio_output/sdl.c:197 -#: modules/audio_output/waveout.c:462 modules/gui/macosx/intf.m:558 -#: modules/gui/macosx/intf.m:559 +#: modules/audio_output/waveout.c:464 modules/gui/macosx/intf.m:568 +#: modules/gui/macosx/intf.m:569 msgid "Audio Device" msgstr "P?riph?rique audio" -#: modules/audio_output/alsa.c:202 modules/audio_output/directx.c:499 -#: modules/audio_output/oss.c:183 modules/audio_output/portaudio.c:418 -#: modules/audio_output/waveout.c:500 +#: modules/audio_output/alsa.c:203 modules/audio_output/directx.c:540 +#: modules/audio_output/oss.c:184 modules/audio_output/portaudio.c:414 +#: modules/audio_output/waveout.c:502 msgid "2 Front 2 Rear" -msgstr "2 ? l?avant ; 2 ? l?arri?re" +msgstr "2 ? l?avant; 2 ? l?arri?re" -#: modules/audio_output/alsa.c:250 modules/audio_output/directx.c:592 -#: modules/audio_output/oss.c:251 modules/audio_output/waveout.c:550 +#: modules/audio_output/alsa.c:251 modules/audio_output/directx.c:664 +#: modules/audio_output/oss.c:252 modules/audio_output/waveout.c:552 msgid "A/52 over S/PDIF" msgstr "A/52 sur S/PDIF" -#: modules/audio_output/alsa.c:326 +#: modules/audio_output/alsa.c:327 msgid "No Audio Device" msgstr "Pas de p?riph?rique audio" -#: modules/audio_output/alsa.c:327 +#: modules/audio_output/alsa.c:328 msgid "No audio device name was given. You might want to enter \"default\"." -msgstr "" +msgstr "Pas de p?riph?rique audio sp?cifi?. Utilisez ??Pr?d?fini(e)??." -#: modules/audio_output/alsa.c:434 modules/audio_output/alsa.c:473 -#: modules/audio_output/alsa.c:485 modules/audio_output/auhal.c:246 +#: modules/audio_output/alsa.c:435 modules/audio_output/alsa.c:474 +#: modules/audio_output/alsa.c:486 modules/audio_output/auhal.c:246 msgid "Audio output failed" msgstr "La sortie audio a ?chou?" -#: modules/audio_output/alsa.c:435 modules/audio_output/alsa.c:486 +#: modules/audio_output/alsa.c:436 modules/audio_output/alsa.c:487 #, c-format msgid "VLC could not open the ALSA device \"%s\" (%s)." -msgstr "VLC n?a pas pu ouvrir le p?riph?rique ALSA \"%s\" (%s)." +msgstr "VLC n?a pas pu ouvrir le p?riph?rique ALSA ??%s?? (%s)." -#: modules/audio_output/alsa.c:474 +#: modules/audio_output/alsa.c:475 #, c-format msgid "The audio device \"%s\" is already in use." -msgstr "Le p?riph?rique audio \"%s\" est d?j? utilis?." +msgstr "Le p?riph?rique audio ??%s?? est d?j? utilis?." -#: modules/audio_output/alsa.c:964 +#: modules/audio_output/alsa.c:967 msgid "Unknown soundcard" msgstr "Carte son inconnue" -#: modules/audio_output/arts.c:66 -msgid "aRts audio output" -msgstr "Sortie audio aRts" - #: modules/audio_output/auhal.c:132 msgid "" "Choose a number corresponding to the number of an audio device, as listed in " @@ -8737,7 +8475,7 @@ msgid "" "playback." msgstr "" "Choisissez un num?ro correspondant au num?ro d?un p?riph?rique audio, tel " -"qu?il appara?t dans le menu ? p?riph?riques audio ?. Ce p?riph?rique sera " +"qu?il appara?t dans le menu ??p?riph?riques audio??. Ce p?riph?rique sera " "alors utilis? par d?faut pour la lecture audio." #: modules/audio_output/auhal.c:138 @@ -8748,7 +8486,7 @@ msgstr "Sortie HAL AudioUnit" msgid "" "The selected audio output device is exclusively in use by another program." msgstr "" -"Le p?riph?rique audio s?l?ctionn? est exclusivement utilis? par un autre " +"Le p?riph?rique audio s?lectionn? est exclusivement utilis? par un autre " "programme." #: modules/audio_output/auhal.c:431 @@ -8760,30 +8498,33 @@ msgid "" "You should configure your speaker layout with the \"Audio Midi Setup\" " "utility in /Applications/Utilities. Stereo mode is being used now." msgstr "" +"Vous devriez configurer les positions des haut-parleurs avec l'utilitaire " +"??Audio Midi Setup?? du menu ??/Applications/Utilitaire??. Le mode st?r?o est " +"actuellement utilis?." #: modules/audio_output/auhal.c:1014 #, c-format msgid "%s (Encoded Output)" msgstr "%s (sortie encod?e)" -#: modules/audio_output/directx.c:219 modules/audio_output/portaudio.c:110 +#: modules/audio_output/directx.c:225 modules/audio_output/portaudio.c:105 msgid "Output device" msgstr "P?riph?rique de sortie" -#: modules/audio_output/directx.c:221 +#: modules/audio_output/directx.c:227 msgid "" "DirectX device number: 0 default device, 1..N device by number(Note that the " "default device appears as 0 AND another number)." msgstr "" -"Num?ro du p?riph?rique DirectX: 0 p?riph?rique par d?faut, 1..N num?ro de " +"Num?ro du p?riph?rique DirectX?: 0 p?riph?rique par d?faut, 1..N num?ro de " "p?riph?rique (Notez que le p?riph?rique par d?faut appara?t comme 0 et un " "autre num?ro)." -#: modules/audio_output/directx.c:223 modules/audio_output/waveout.c:155 +#: modules/audio_output/directx.c:229 modules/audio_output/waveout.c:155 msgid "Use float32 output" msgstr "Utiliser une sortie en virgule flottante" -#: modules/audio_output/directx.c:225 modules/audio_output/waveout.c:157 +#: modules/audio_output/directx.c:231 modules/audio_output/waveout.c:157 msgid "" "The option allows you to enable or disable the high-quality float32 audio " "output mode (which is not well supported by some soundcards)." @@ -8792,22 +8533,24 @@ msgstr "" "haute qualit? en virgule flottante (qui n?est pas tr?s bien support? par " "toutes les cartes son)." -#: modules/audio_output/directx.c:229 +#: modules/audio_output/directx.c:233 +msgid "Select speaker configuration" +msgstr "Configuration Haut-parleurs" + +#: modules/audio_output/directx.c:234 +msgid "" +"Select speaker configuration you want to use. This option doesn't upmix! So " +"NO e.g. Stereo -> 5.1 conversion." +msgstr "" + +#: modules/audio_output/directx.c:238 msgid "DirectX audio output" msgstr "Sortie audio DirectX" -#: modules/audio_output/directx.c:476 modules/audio_output/portaudio.c:426 +#: modules/audio_output/directx.c:517 modules/audio_output/portaudio.c:422 msgid "3 Front 2 Rear" msgstr "3 ? l?avant ; 2 ? l?arri?re" -#: modules/audio_output/esd.c:70 -msgid "EsounD audio output" -msgstr "Sortie audio EsounD" - -#: modules/audio_output/esd.c:73 -msgid "Esound server" -msgstr "Serveur esound" - #: modules/audio_output/file.c:83 msgid "Output format" msgstr "Format de sortie" @@ -8817,8 +8560,8 @@ msgid "" "One of \"u8\", \"s8\", \"u16\", \"s16\", \"u16_le\", \"s16_le\", \"u16_be\", " "\"s16_be\", \"fixed32\", \"float32\" or \"spdif\"" msgstr "" -"Un parmi ? u8 ?, ? s8 ?, ? u16 ?, ? s16 ?, ? u16_le ?, ? s16_le ?, ? u16_be?, ? " -"s16_be ?, ? fixed32 ?, ? float32 ? ou ? spdif ?" +"Un parmi ??u8??, ??s8??, ??u16??, ??s16??, ??u16_le??, ??s16_le??, ??u16_be??, " +"??s16_be??, ??fixed32??, ??float32?? ou ??spdif??" #: modules/audio_output/file.c:87 msgid "Number of output channels" @@ -8847,9 +8590,10 @@ msgid "Output file" msgstr "Fichier de sortie" #: modules/audio_output/file.c:110 -#, fuzzy msgid "File to which the audio samples will be written to. (\"-\" for stdout" -msgstr "Fichier dans lequel les ?chantillons audio vont ?tre ?crits." +msgstr "" +"Fichier dans lequel les ?chantillons audio vont ?tre ?crits. (??-?? pour la " +"sortie standard)" #: modules/audio_output/file.c:113 msgid "File audio output" @@ -8861,23 +8605,27 @@ msgstr "Sortie audio Roku HD1000" #: modules/audio_output/jack.c:68 msgid "Automatically connect to writable clients" -msgstr "" +msgstr "Connection automatique aux clients" #: modules/audio_output/jack.c:70 msgid "" "If enabled, this option will automatically connect sound output to the first " "writable JACK clients found." msgstr "" +"Si valid?, la sortie son sera automatiquement connect?e au premier client " +"JACK trouv?." #: modules/audio_output/jack.c:74 msgid "Connect to clients matching" -msgstr "" +msgstr "Connection aux clients sp?cifi?s" #: modules/audio_output/jack.c:76 msgid "" "If automatic connection is enabled, only JACK clients whose names match this " "regular expression will be considered for connection." msgstr "" +"Si la connection automatique est activ?, seuls les clients JACK dont le nom " +"correspond ? cette expression r?guli?re seront utilis?s." #: modules/audio_output/jack.c:84 msgid "JACK audio output" @@ -8888,7 +8636,6 @@ msgid "Try to work around buggy OSS drivers" msgstr "Tentative de coutournement pour les pilotes OSS bogu?s" #: modules/audio_output/oss.c:105 -#, fuzzy msgid "" "Some buggy OSS drivers just don't like when their internal buffers are " "completely filled (the sound gets heavily hashed). If you have one of these " @@ -8906,29 +8653,29 @@ msgstr "Sortie audio OSS pour UNIX" msgid "OSS DSP device" msgstr "P?riph?rique audio OSS" -#: modules/audio_output/portaudio.c:111 +#: modules/audio_output/portaudio.c:106 msgid "Portaudio identifier for the output device" msgstr "Identifiant Portaudio du p?riph?rique" -#: modules/audio_output/portaudio.c:115 +#: modules/audio_output/portaudio.c:110 msgid "PORTAUDIO audio output" msgstr "Sortie audio Portaudio" -#: modules/audio_output/pulse.c:61 modules/gui/macosx/intf.m:481 -#: modules/gui/macosx/intf.m:482 modules/gui/macosx/intf.m:1779 +#: modules/audio_output/pulse.c:61 modules/gui/macosx/intf.m:491 +#: modules/gui/macosx/intf.m:492 modules/gui/macosx/intf.m:1826 #: modules/gui/pda/pda_interface.c:210 modules/gui/pda/pda_interface.c:1353 -#: modules/gui/qt4/main_interface.cpp:355 -#: modules/gui/qt4/main_interface.cpp:359 -#: modules/gui/qt4/main_interface.cpp:934 -#: modules/gui/qt4/main_interface.cpp:936 -#: modules/gui/qt4/main_interface.cpp:1000 -#: modules/gui/qt4/main_interface.cpp:1015 -#: modules/gui/qt4/main_interface.cpp:1022 -#: modules/gui/qt4/main_interface.cpp:1039 +#: modules/gui/qt4/main_interface.cpp:369 +#: modules/gui/qt4/main_interface.cpp:373 +#: modules/gui/qt4/main_interface.cpp:888 +#: modules/gui/qt4/main_interface.cpp:890 +#: modules/gui/qt4/main_interface.cpp:959 +#: modules/gui/qt4/main_interface.cpp:976 +#: modules/gui/qt4/main_interface.cpp:983 +#: modules/gui/qt4/main_interface.cpp:1002 msgid "VLC media player" msgstr "Lecteur multim?dia VLC" -#: modules/audio_output/pulse.c:97 +#: modules/audio_output/pulse.c:99 msgid "Pulseaudio audio output" msgstr "Sortie audio Pulseaudio" @@ -8938,7 +8685,7 @@ msgstr "Sortie audio simple DirectMedia Layer" #: modules/audio_output/waveout.c:148 msgid "Microsoft Soundmapper" -msgstr "" +msgstr "P?riph?rique Microsoft SoundMapper" #: modules/audio_output/waveout.c:159 msgid "Select Audio Device" @@ -8949,6 +8696,8 @@ msgid "" "Select special Audio device, or let windows decide (default), change needs " "VLC restart to apply." msgstr "" +"S?lectionner le p?riph?rique audio, ou laisser Windows d?cider (par d?faut), " +"en cas de modification un red?marrage de VLC est n?cessaire." #: modules/audio_output/waveout.c:163 msgid "Default Audio Device" @@ -8958,15 +8707,15 @@ msgstr "P?riph?rique audio par d?faut" msgid "Win32 waveOut extension output" msgstr "Sortie audio waveOut Win32" -#: modules/audio_output/waveout.c:479 +#: modules/audio_output/waveout.c:481 msgid "5.1" msgstr "5.1" -#: modules/codec/a52.c:98 +#: modules/codec/a52.c:48 msgid "A/52 parser" msgstr "Parseur A/52" -#: modules/codec/a52.c:105 +#: modules/codec/a52.c:55 msgid "A/52 audio packetizer" msgstr "Empaqueteur audio A/52" @@ -8974,6 +8723,14 @@ msgstr "Empaqueteur audio A/52" msgid "ADPCM audio decoder" msgstr "D?codeur audio ADPCM" +#: modules/codec/aes3.c:48 +msgid "AES3/SMPTE 302M audio decoder" +msgstr "D?codeur AES3/SMPTE 302M audio" + +#: modules/codec/aes3.c:53 +msgid "AES3/SMPTE 302M audio packetizer" +msgstr "Empaqueteur audio AES3/SMPTE 302M" + #: modules/codec/araw.c:49 msgid "Raw/Log Audio decoder" msgstr "D?codeur de flux audio bruts" @@ -8982,37 +8739,37 @@ msgstr "D?codeur de flux audio bruts" msgid "Raw audio encoder" msgstr "Encodeur de flux audio bruts" -#: modules/codec/avcodec/avcodec.c:71 +#: modules/codec/avcodec/avcodec.c:70 msgid "Non-ref" msgstr "Non-ref" -#: modules/codec/avcodec/avcodec.c:71 +#: modules/codec/avcodec/avcodec.c:70 msgid "Bidir" msgstr "Bidir" -#: modules/codec/avcodec/avcodec.c:71 +#: modules/codec/avcodec/avcodec.c:70 msgid "Non-key" msgstr "Non-key" -#: modules/codec/avcodec/avcodec.c:71 modules/gui/macosx/prefs.m:129 -#: modules/gui/macosx/simple_prefs.m:299 -#: modules/gui/qt4/dialogs/preferences.cpp:73 +#: modules/codec/avcodec/avcodec.c:70 modules/gui/macosx/prefs.m:188 +#: modules/gui/macosx/simple_prefs.m:294 +#: modules/gui/qt4/dialogs/preferences.cpp:70 msgid "All" msgstr "Tous" -#: modules/codec/avcodec/avcodec.c:76 +#: modules/codec/avcodec/avcodec.c:75 msgid "rd" msgstr "rd" -#: modules/codec/avcodec/avcodec.c:76 +#: modules/codec/avcodec/avcodec.c:75 msgid "bits" msgstr "bits" -#: modules/codec/avcodec/avcodec.c:76 +#: modules/codec/avcodec/avcodec.c:75 msgid "simple" msgstr "simple" -#: modules/codec/avcodec/avcodec.c:82 +#: modules/codec/avcodec/avcodec.c:81 msgid "" "Various audio and video decoders/encodersdelivered by the FFmpeg library. " "This includes (MS)MPEG4, DivX, SV1,H261, H263, H264, WMV, WMA, AAC, AMR, DV, " @@ -9022,39 +8779,39 @@ msgstr "" "(MS)MPEG4, DivX, SV1, H261, H263, H264, WMV, WMA, AAC, AMR, DV, MJPEG et " "d?autres codecs" -#: modules/codec/avcodec/avcodec.c:94 +#: modules/codec/avcodec/avcodec.c:93 msgid "AltiVec FFmpeg audio/video decoder ((MS)MPEG4,SVQ1,H263,WMV,WMA)" msgstr "D?codeur audio/vid?o FFmpeg Altivec ((MS)MPEG4,SVQ1,H263,WMV,WMA)" -#: modules/codec/avcodec/avcodec.c:98 +#: modules/codec/avcodec/avcodec.c:97 msgid "FFmpeg audio/video decoder" msgstr "D?codeur audio/vid?o FFmpeg" -#: modules/codec/avcodec/avcodec.c:102 +#: modules/codec/avcodec/avcodec.c:101 msgid "Decoding" msgstr "Decodage" -#: modules/codec/avcodec/avcodec.c:134 +#: modules/codec/avcodec/avcodec.c:133 msgid "Encoding" msgstr "Encodage" -#: modules/codec/avcodec/avcodec.c:135 +#: modules/codec/avcodec/avcodec.c:134 msgid "FFmpeg audio/video encoder" msgstr "Encodeur audio/vid?o ffmpeg" -#: modules/codec/avcodec/avcodec.c:200 +#: modules/codec/avcodec/avcodec.c:199 msgid "FFmpeg deinterlace video filter" msgstr "D?sentrelaceur ffmpeg" -#: modules/codec/avcodec/avcodec.h:54 modules/codec/avcodec/avcodec.h:56 +#: modules/codec/avcodec/avcodec.h:67 modules/codec/avcodec/avcodec.h:69 msgid "Direct rendering" msgstr "Rendu direct" -#: modules/codec/avcodec/avcodec.h:58 +#: modules/codec/avcodec/avcodec.h:71 msgid "Error resilience" msgstr "R?silience d?erreur" -#: modules/codec/avcodec/avcodec.h:60 +#: modules/codec/avcodec/avcodec.h:73 msgid "" "Ffmpeg can do error resilience.\n" "However, with a buggy encoder (such as the ISO MPEG-4 encoder from M$) this " @@ -9066,11 +8823,11 @@ msgstr "" "peut produire une flopp?e d?erreurs.\n" "Valeurs possibles : de 0 ? 4 (0 d?sactive toute r?silience d?erreurs)." -#: modules/codec/avcodec/avcodec.h:65 +#: modules/codec/avcodec/avcodec.h:78 msgid "Workaround bugs" msgstr "Contournement de bugs" -#: modules/codec/avcodec/avcodec.h:67 +#: modules/codec/avcodec/avcodec.h:80 msgid "" "Try to fix some bugs:\n" "1 autodetect\n" @@ -9083,7 +8840,7 @@ msgid "" "This must be the sum of the values. For example, to fix \"ac vlc\" and \"ump4" "\", enter 40." msgstr "" -"Essayer de corriger certains probl?mes\n" +"Essayer de corriger certains probl?mes?:\n" "1 autodetect\n" "2 old msmpeg4\n" "4 xvid interlaced\n" @@ -9092,14 +8849,14 @@ msgstr "" "32 ac vlc\n" "64 Qpel chroma.\n" "Vous devez sp?cifier une somme de ces valeurs. Par exemple, pour corriger " -"\"ac vlc\" et \"ump4\", entrez 40." +"??ac vlc?? et ??ump4??, entrez 40." -#: modules/codec/avcodec/avcodec.h:78 modules/codec/avcodec/avcodec.h:174 -#: modules/demux/rawdv.c:40 modules/stream_out/transcode.c:146 +#: modules/codec/avcodec/avcodec.h:91 modules/codec/avcodec/avcodec.h:187 +#: modules/demux/rawdv.c:40 modules/stream_out/transcode.c:147 msgid "Hurry up" msgstr "H?ter" -#: modules/codec/avcodec/avcodec.h:80 +#: modules/codec/avcodec/avcodec.h:93 msgid "" "The decoder can partially decode or skip frame(s) when there is not enough " "time. It's useful with low CPU power but it can produce distorted pictures." @@ -9108,40 +8865,44 @@ msgstr "" "lorsqu?il n?y a pas assez de temps processeur. Cela est utile pour les " "processeurs peu puissants mais peut donner des images d?form?es." -#: modules/codec/avcodec/avcodec.h:84 +#: modules/codec/avcodec/avcodec.h:97 msgid "Skip frame (default=0)" msgstr "Sauter des images (defaut = 0)" -#: modules/codec/avcodec/avcodec.h:86 +#: modules/codec/avcodec/avcodec.h:99 msgid "" "Force skipping of frames to speed up decoding (-1=None, 0=Default, 1=B-" "frames, 2=P-frames, 3=B+P frames, 4=all frames)." msgstr "" +"Forcer ? sauter des trames pour acc?l?rer le d?codage (-1=Aucune, 0=Par " +"d?faut, 1=trames-B, 2=trames-P, 3=trames B+P, A=toutes les trames)." -#: modules/codec/avcodec/avcodec.h:89 -#, fuzzy +#: modules/codec/avcodec/avcodec.h:102 msgid "Skip idct (default=0)" -msgstr "Sauter des images" +msgstr "Sauter idct (par d?faut=0)" -#: modules/codec/avcodec/avcodec.h:91 +#: modules/codec/avcodec/avcodec.h:104 msgid "" "Force skipping of idct to speed up decoding for frame types(-1=None, " "0=Default, 1=B-frames, 2=P-frames, 3=B+P frames, 4=all frames)." msgstr "" +"Forcer ? sauter des idcts pour acc?l?rer le d?codage pour certaines trames (-" +"1=Aucune, 0=Par d?faut, 1=trames-B, 2=trames-P, 3=trames B+P, A=toutes les " +"trames)." -#: modules/codec/avcodec/avcodec.h:94 +#: modules/codec/avcodec/avcodec.h:107 msgid "Debug mask" -msgstr "Masque de d?boggage" +msgstr "Masque de d?bogage" -#: modules/codec/avcodec/avcodec.h:95 +#: modules/codec/avcodec/avcodec.h:108 msgid "Set ffmpeg debug mask" -msgstr "R?gler le masque de d?boggage de ffmpeg" +msgstr "R?gler le masque de d?bogage de ffmpeg" -#: modules/codec/avcodec/avcodec.h:98 +#: modules/codec/avcodec/avcodec.h:111 msgid "Visualize motion vectors" msgstr "Afficher les vecteurs de d?placement" -#: modules/codec/avcodec/avcodec.h:100 +#: modules/codec/avcodec/avcodec.h:113 msgid "" "You can overlay the motion vectors (arrows showing how the images move) on " "the image. This value is a mask, based on these values:\n" @@ -9158,22 +8919,22 @@ msgstr "" "4 - affiche les vecteurs de mouvement des images B calcul?s en arri?re\n" "Pour visualiser tous les vecteurs, la valeur devrait ?tre 7." -#: modules/codec/avcodec/avcodec.h:107 +#: modules/codec/avcodec/avcodec.h:120 msgid "Low resolution decoding" msgstr "D?codage ? faible r?solution" -#: modules/codec/avcodec/avcodec.h:108 +#: modules/codec/avcodec/avcodec.h:121 msgid "" "Only decode a low resolution version of the video. This requires less " "processing power" msgstr "" "D?coder la vid?o en basse r?solution, afin d??conomoiser de la puissance." -#: modules/codec/avcodec/avcodec.h:111 +#: modules/codec/avcodec/avcodec.h:124 msgid "Skip the loop filter for H.264 decoding" msgstr "Pas de filtre de boucle pour H264" -#: modules/codec/avcodec/avcodec.h:112 +#: modules/codec/avcodec/avcodec.h:125 msgid "" "Skipping the loop filter (aka deblocking) usually has a detrimental effect " "on quality. However it provides a big speedup for high definition streams." @@ -9181,61 +8942,61 @@ msgstr "" "Ne pas utiliser le filtre de boucle (d?blocage) a un effet n?gatif sur la " "qualit?, mais acc?l?re fortement les flux haute d?finition." -#: modules/codec/avcodec/avcodec.h:121 +#: modules/codec/avcodec/avcodec.h:134 msgid "Ratio of key frames" msgstr "Ratio d?images cl?s" -#: modules/codec/avcodec/avcodec.h:122 +#: modules/codec/avcodec/avcodec.h:135 msgid "Number of frames that will be coded for one key frame." msgstr "Nombre d?images cod?es pour une seule image-cl?." -#: modules/codec/avcodec/avcodec.h:125 +#: modules/codec/avcodec/avcodec.h:138 msgid "Ratio of B frames" msgstr "Ratio d?images B" -#: modules/codec/avcodec/avcodec.h:126 +#: modules/codec/avcodec/avcodec.h:139 msgid "Number of B frames that will be coded between two reference frames." msgstr "Nombre d?images B cod?es entre deux images de r?f?rence." -#: modules/codec/avcodec/avcodec.h:129 +#: modules/codec/avcodec/avcodec.h:142 msgid "Video bitrate tolerance" msgstr "Tol?rance du d?bit de la vid?o" -#: modules/codec/avcodec/avcodec.h:130 +#: modules/codec/avcodec/avcodec.h:143 msgid "Video bitrate tolerance in kbit/s." msgstr "Tol?rance sur le d?bit de la vid?o, en kbit/s." -#: modules/codec/avcodec/avcodec.h:132 +#: modules/codec/avcodec/avcodec.h:145 msgid "Interlaced encoding" msgstr "Encodage entrelac?" -#: modules/codec/avcodec/avcodec.h:133 +#: modules/codec/avcodec/avcodec.h:146 msgid "Enable dedicated algorithms for interlaced frames." msgstr "Utiliser des algorithmes sp?cifiques pour les images entrelac?es." -#: modules/codec/avcodec/avcodec.h:136 +#: modules/codec/avcodec/avcodec.h:149 msgid "Interlaced motion estimation" msgstr "Pr?diction de mouvement entrelac?" -#: modules/codec/avcodec/avcodec.h:137 +#: modules/codec/avcodec/avcodec.h:150 msgid "Enable interlaced motion estimation algorithms. This requires more CPU." msgstr "" "Activer des algorithmes de pr?diction de mouvement entrelac?. Ceci " "n?cessitera plus de puissance." -#: modules/codec/avcodec/avcodec.h:140 +#: modules/codec/avcodec/avcodec.h:153 msgid "Pre-motion estimation" msgstr "Pr?-pr?diction de mouvement" -#: modules/codec/avcodec/avcodec.h:141 +#: modules/codec/avcodec/avcodec.h:154 msgid "Enable the pre-motion estimation algorithm." msgstr "Activer les algorithmes de pr?-pr?diction de mouvement." -#: modules/codec/avcodec/avcodec.h:144 +#: modules/codec/avcodec/avcodec.h:157 msgid "Rate control buffer size" msgstr "Taille du tampon de contr?le du d?bit" -#: modules/codec/avcodec/avcodec.h:145 +#: modules/codec/avcodec/avcodec.h:158 msgid "" "Rate control buffer size (in kbytes). A bigger buffer will allow for better " "rate control, but will cause a delay in the stream." @@ -9243,19 +9004,19 @@ msgstr "" "Taille du buffer de contr?le de d?bit (en Ko). Un buffer plus important " "permettra un meilleur contr?le, au prix d?une latence du flux." -#: modules/codec/avcodec/avcodec.h:149 +#: modules/codec/avcodec/avcodec.h:162 msgid "Rate control buffer aggressiveness" msgstr "Efficacit? du contr?le de d?bit" -#: modules/codec/avcodec/avcodec.h:150 +#: modules/codec/avcodec/avcodec.h:163 msgid "Rate control buffer aggressiveness." msgstr "Efficacit? du contr?le de d?bit" -#: modules/codec/avcodec/avcodec.h:153 +#: modules/codec/avcodec/avcodec.h:166 msgid "I quantization factor" msgstr "Facteur de quantization I" -#: modules/codec/avcodec/avcodec.h:155 +#: modules/codec/avcodec/avcodec.h:168 msgid "" "Quantization factor of I frames, compared with P frames (for instance 1.0 => " "same qscale for I and P frames)." @@ -9263,12 +9024,12 @@ msgstr "" "Facteur de quantisation des images I, par rapport aux images P (par exemple " "1,0 => m?me quantisation pour les images I et P)." -#: modules/codec/avcodec/avcodec.h:158 modules/codec/x264.c:324 -#: modules/demux/mod.c:75 +#: modules/codec/avcodec/avcodec.h:171 modules/codec/x264.c:335 +#: modules/demux/mod.c:77 msgid "Noise reduction" msgstr "R?solution de bruit" -#: modules/codec/avcodec/avcodec.h:159 +#: modules/codec/avcodec/avcodec.h:172 msgid "" "Enable a simple noise reduction algorithm to lower the encoding length and " "bitrate, at the expense of lower quality frames." @@ -9276,11 +9037,11 @@ msgstr "" "Activer un algorithme simple de r?duction de bruit afin de r?duire la dur?e " "d?encodage et le d?bit, au prix d?images de plus faible qualit?." -#: modules/codec/avcodec/avcodec.h:163 +#: modules/codec/avcodec/avcodec.h:176 msgid "MPEG4 quantization matrix" msgstr "Matrice de quantisation MPEG4" -#: modules/codec/avcodec/avcodec.h:164 +#: modules/codec/avcodec/avcodec.h:177 msgid "" "Use the MPEG4 quantization matrix for MPEG2 encoding. This generally yields " "a better looking picture, while still retaining the compatibility with " @@ -9290,11 +9051,11 @@ msgstr "" "MPEG2. Cela m?ne en g?n?ral ? des images de meilleure qualit?, tout en " "restant compatible avec les d?codeurs standards MPEG2." -#: modules/codec/avcodec/avcodec.h:169 +#: modules/codec/avcodec/avcodec.h:182 msgid "Quality level" msgstr "Niveau de qualit?" -#: modules/codec/avcodec/avcodec.h:170 +#: modules/codec/avcodec/avcodec.h:183 msgid "" "Quality level for the encoding of motions vectors (this can slow down the " "encoding very much)." @@ -9302,8 +9063,7 @@ msgstr "" "Niveau de qualit? pour l?encodage des vecteurs de d?placement (ceci peut " "consid?rablement ralentir l?encodage)." -#: modules/codec/avcodec/avcodec.h:175 -#, fuzzy +#: modules/codec/avcodec/avcodec.h:188 msgid "" "The encoder can make on-the-fly quality tradeoffs if your CPU can't keep up " "with the encoding rate. It will disable trellis quantization, then the rate " @@ -9316,37 +9076,37 @@ msgstr "" "des vecteurs de d?placement (haute qualit?) et enfin augmentera le seuil de " "r?duction de bruit afin de faciliter la t?che de l?encodeur." -#: modules/codec/avcodec/avcodec.h:181 +#: modules/codec/avcodec/avcodec.h:194 msgid "Minimum video quantizer scale" msgstr "Minimum de l??chelle de quantization vid?o" -#: modules/codec/avcodec/avcodec.h:182 +#: modules/codec/avcodec/avcodec.h:195 msgid "Minimum video quantizer scale." msgstr "Minimum de l??chelle de quantisation vid?o." -#: modules/codec/avcodec/avcodec.h:185 +#: modules/codec/avcodec/avcodec.h:198 msgid "Maximum video quantizer scale" msgstr "Maximum de l??chelle de quantization vid?o" -#: modules/codec/avcodec/avcodec.h:186 +#: modules/codec/avcodec/avcodec.h:199 msgid "Maximum video quantizer scale." msgstr "Maximum de l??chelle de quantisation vid?o." -#: modules/codec/avcodec/avcodec.h:189 +#: modules/codec/avcodec/avcodec.h:202 msgid "Trellis quantization" msgstr "Quantisation treillis" -#: modules/codec/avcodec/avcodec.h:190 +#: modules/codec/avcodec/avcodec.h:203 msgid "Enable trellis quantization (rate distortion for block coefficients)." msgstr "" "Activer la quantization treillis (distortion de d?bit pour les coefficients " "des blocs)." -#: modules/codec/avcodec/avcodec.h:193 +#: modules/codec/avcodec/avcodec.h:206 msgid "Fixed quantizer scale" msgstr "Echelle de quantisation fixe" -#: modules/codec/avcodec/avcodec.h:194 +#: modules/codec/avcodec/avcodec.h:207 msgid "" "A fixed video quantizer scale for VBR encoding (accepted values: 0.01 to " "255.0)." @@ -9354,41 +9114,41 @@ msgstr "" "Echelle de quantisation fixe pour l?encodage VBR. Les valeurs accept?es sont " "0,01 ? 255,0." -#: modules/codec/avcodec/avcodec.h:197 +#: modules/codec/avcodec/avcodec.h:210 msgid "Strict standard compliance" msgstr "Respect strict des standards" -#: modules/codec/avcodec/avcodec.h:198 +#: modules/codec/avcodec/avcodec.h:211 msgid "" "Force a strict standard compliance when encoding (accepted values: -1, 0, 1)." msgstr "" "Forcer un respect strict des standards lors de l?encodage. Les valeurs " "accept?es sont -1, 0 et 1." -#: modules/codec/avcodec/avcodec.h:201 +#: modules/codec/avcodec/avcodec.h:214 msgid "Luminance masking" msgstr "Masquage de luminance" -#: modules/codec/avcodec/avcodec.h:202 +#: modules/codec/avcodec/avcodec.h:215 msgid "Raise the quantizer for very bright macroblocks (default: 0.0)." msgstr "" "Augmenter la quantisation pour les macroblocs tr?s brillants (par d?faut: " "0,0)." -#: modules/codec/avcodec/avcodec.h:205 +#: modules/codec/avcodec/avcodec.h:218 msgid "Darkness masking" msgstr "Masquage d?obscurit?" -#: modules/codec/avcodec/avcodec.h:206 +#: modules/codec/avcodec/avcodec.h:219 msgid "Raise the quantizer for very dark macroblocks (default: 0.0)." msgstr "" "Augmenter la quantisation pour les macroblocs tr?s sombres (par d?faut: 0,0)." -#: modules/codec/avcodec/avcodec.h:209 +#: modules/codec/avcodec/avcodec.h:222 msgid "Motion masking" msgstr "Masquage de mouvement" -#: modules/codec/avcodec/avcodec.h:210 +#: modules/codec/avcodec/avcodec.h:223 msgid "" "Raise the quantizer for macroblocks with a high temporal complexity " "(default: 0.0)." @@ -9396,11 +9156,11 @@ msgstr "" "Augmenter la quantization pour les macroblocs pr?sentant un mouvement " "important (par d?faut: 0,0)." -#: modules/codec/avcodec/avcodec.h:213 +#: modules/codec/avcodec/avcodec.h:226 msgid "Border masking" msgstr "Masquage de bordure" -#: modules/codec/avcodec/avcodec.h:214 +#: modules/codec/avcodec/avcodec.h:227 msgid "" "Raise the quantizer for macroblocks at the border of the frame (default: " "0.0)." @@ -9408,63 +9168,77 @@ msgstr "" "Augmenter la quantisation pour les macroblocs en marge de l?image (par " "d?faut: 0,0)." -#: modules/codec/avcodec/avcodec.h:217 +#: modules/codec/avcodec/avcodec.h:230 msgid "Luminance elimination" msgstr "Elimination de luminance" -#: modules/codec/avcodec/avcodec.h:218 -#, fuzzy +#: modules/codec/avcodec/avcodec.h:231 msgid "" "Eliminates luminance blocks when the PSNR isn't much changed (default: 0.0). " "The H264 specification recommends -4." msgstr "" "Ceci vous permet d??liminer les blocs de luminance lorsque le PSNR n?a que " -"peu chang? (par d?faut: 0,0). La sp?cification H264 recommande une valeur de " -"-4." +"peu chang? (par d?faut?: 0,0). La sp?cification H264 recommande une valeur " +"de -4." -#: modules/codec/avcodec/avcodec.h:222 +#: modules/codec/avcodec/avcodec.h:235 msgid "Chrominance elimination" msgstr "Elimination de chrominance" -#: modules/codec/avcodec/avcodec.h:223 -#, fuzzy +#: modules/codec/avcodec/avcodec.h:236 msgid "" "Eliminates chrominance blocks when the PSNR isn't much changed (default: " "0.0). The H264 specification recommends 7." msgstr "" -"Ceci vous permet d??liminer les blocs de luminance lorsque le PSNR n?a que " -"peu chang? (par d?faut: 0,0). La sp?cification H264 recommande une valeur de " -"7." +"Ceci vous permet d??liminer les blocs de chrominance lorsque le PSNR n?a que " +"peu chang? (par d?faut?: 0,0). La sp?cification H264 recommande une valeur " +"de 7." -#: modules/codec/avcodec/avcodec.h:228 +#: modules/codec/avcodec/avcodec.h:241 msgid "Specify AAC audio profile to use" msgstr "Sp?cifiez le profile audio AAC ? utiliser" -#: modules/codec/avcodec/avcodec.h:229 +#: modules/codec/avcodec/avcodec.h:242 msgid "" "Specify the AAC audio profile to use for encoding the audio bitstream. It " "takes the following options: main, low, ssr (not supported) and ltp " "(default: main)" msgstr "" +"S?lectionnez le profil audio AAC pour l'encodage du flux audio. Les options " +"sont : ??main?? (par d?faut), ??low??, ??ssr?? (non support?) et ??ltp??" -#: modules/codec/avcodec/encoder.c:229 +#: modules/codec/avcodec/encoder.c:227 #, c-format msgid "\"%s\" is no video encoder." -msgstr "? %s ? n?est pas un encodeur vid?o." +msgstr "??%s?? n?est pas un encodeur vid?o." -#: modules/codec/avcodec/encoder.c:237 +#: modules/codec/avcodec/encoder.c:235 #, c-format msgid "\"%s\" is no audio encoder." -msgstr "? %s ? n?est pas un encodeur audio." +msgstr "??%s?? n?est pas un encodeur audio." -#: modules/codec/avcodec/encoder.c:249 +#: modules/codec/avcodec/encoder.c:255 #, c-format -msgid "VLC could not find encoder \"%s\"." -msgstr "VLC n?a pas pu trouver l?encodeur \"%s\"." +msgid "" +"It seems your FFMPEG (libavcodec) installation lacks the following encoder:\n" +"%s.\n" +"If you don't know how to fix this, ask for support from your distribution.\n" +"\n" +"This is not an error inside VLC media player.\n" +"Do not contact the VideoLAN project about this issue.\n" +msgstr "" +"Il semble que votre installation de FFMPEG (libavcodec) ne comprenne pas " +"l'encodeur suivant :\n" +"%s.\n" +"Si vous ne savez pas comment corriger ceci, demandez du support ? votre " +"distribution.\n" +"\n" +"Ceci n'est pas une erreur interne ? VLC.\n" +"Ne contactez pas le projet VideoLan ? ce sujet.\n" -#: modules/codec/avcodec/encoder.c:664 modules/codec/avcodec/encoder.c:673 +#: modules/codec/avcodec/encoder.c:681 modules/codec/avcodec/encoder.c:690 msgid "VLC could not open the encoder." -msgstr "VLC n?a pas pu ouvrir l?encoder" +msgstr "VLC n?a pas pu ouvrir l?encodeur." #: modules/codec/cc.c:64 msgid "CC 608/708" @@ -9478,21 +9252,17 @@ msgstr "D?codeurs de sous-titres pour malentendants" msgid "CDG video decoder" msgstr "D?codeur vid?o CDG" -#: modules/codec/cinepak.c:43 -msgid "Cinepak video decoder" -msgstr "D?codeur vid?o Cinepak" - #: modules/codec/cmml/cmml.c:73 msgid "CMML annotations decoder" msgstr "D?codeur d?annotations CMML" -#: modules/codec/csri.c:52 modules/codec/libass.c:53 +#: modules/codec/csri.c:52 modules/codec/libass.c:57 msgid "Subtitles (advanced)" msgstr "Sous-titres (avanc?)" #: modules/codec/csri.c:53 msgid "Wrapper for subtitle renderers using CSRI/asa" -msgstr "" +msgstr "Sur-couche pour le rendu des sous-titres utilisant CSRI/asa" #: modules/codec/cvdsub.c:51 msgid "CVD subtitle decoder" @@ -9502,22 +9272,212 @@ msgstr "D?codeur de sous-titres CVD" msgid "Chaoji VCD subtitle packetizer" msgstr "Empaqueteur de sous-titres VCD Chaoji" -#: modules/codec/dirac.c:72 modules/codec/theora.c:95 -#: modules/codec/twolame.c:55 modules/codec/vorbis.c:173 -msgid "Encoding quality" -msgstr "Qualit? d?encodage" +#: modules/codec/dirac.c:62 +msgid "Constant quality factor" +msgstr "" + +#: modules/codec/dirac.c:63 +msgid "If bitrate=0, use this value for constant quality" +msgstr "" + +#: modules/codec/dirac.c:66 +msgid "CBR bitrate (kbps)" +msgstr "D?bit CBR (kbps)" + +#: modules/codec/dirac.c:67 +msgid "A value > 0 enables constant bitrate mode" +msgstr "Une valeur positive implique un d?bit constant" + +#: modules/codec/dirac.c:70 +msgid "Enable lossless coding" +msgstr "Codage sans perte" + +#: modules/codec/dirac.c:71 +msgid "" +"Lossless coding ignores bitrate and quality settings, allowing for perfect " +"reproduction of the original" +msgstr "" + +#: modules/codec/dirac.c:75 +msgid "Prefilter" +msgstr "Pr?-filtre" + +#: modules/codec/dirac.c:76 +msgid "Enable adaptive prefiltering" +msgstr "Active/D?sactive le pr?-filtre adaptatif" + +#: modules/codec/dirac.c:80 +msgid "Centre Weighted Median" +msgstr "" + +#: modules/codec/dirac.c:81 +msgid "Rectangular Linear Phase" +msgstr "" -#: modules/codec/dirac.c:74 -msgid "Quality of the encoding between 1.0 (low) and 10.0 (high)." -msgstr "Qualit? entre 1,0 (basse) et 10,0 (haute)." +#: modules/codec/dirac.c:81 +msgid "Diagonal Linear Phase" +msgstr "" -#: modules/codec/dirac.c:79 -msgid "Dirac video decoder" -msgstr "D?codeur vid?o Dirac" +#: modules/codec/dirac.c:84 +msgid "Amount of prefiltering" +msgstr "" #: modules/codec/dirac.c:85 -msgid "Dirac video encoder" -msgstr "Encodeur vid?o Dirac" +msgid "Higher value implies more prefiltering" +msgstr "" + +#: modules/codec/dirac.c:88 +msgid "Chroma format" +msgstr "Format chromatographique" + +#: modules/codec/dirac.c:89 +msgid "" +"Picking chroma format will force a conversion of the video into that format" +msgstr "" + +#: modules/codec/dirac.c:94 +msgid "4:2:0" +msgstr "4:2:0" + +#: modules/codec/dirac.c:94 +msgid "4:2:2" +msgstr "4:2:2" + +#: modules/codec/dirac.c:94 +msgid "4:4:4" +msgstr "4:4:4" + +#: modules/codec/dirac.c:97 +msgid "Distance between 'P' frames" +msgstr "Distance entre deux images 'P'" + +#: modules/codec/dirac.c:101 +msgid "Number of 'P' frames per GOP" +msgstr "Nombre d?images de r?f?rence 'P' par GOP" + +#: modules/codec/dirac.c:105 +msgid "Picture coding mode" +msgstr "Mode de codage d'image" + +#: modules/codec/dirac.c:106 +msgid "" +"Field coding is where interlaced fields are coded seperately as opposed to a " +"pseudo-progressive frame" +msgstr "" + +#: modules/codec/dirac.c:111 +msgid "auto - let encoder decide based upon input (Best)" +msgstr "" + +#: modules/codec/dirac.c:112 +msgid "force coding frame as single picture" +msgstr "" + +#: modules/codec/dirac.c:113 +msgid "force coding frame as seperate interlaced fields" +msgstr "" + +#: modules/codec/dirac.c:117 +msgid "Width of motion compensation blocks" +msgstr "" + +#: modules/codec/dirac.c:121 +msgid "Height of motion compensation blocks" +msgstr "" + +#: modules/codec/dirac.c:126 +msgid "Block overlap (%)" +msgstr "" + +#: modules/codec/dirac.c:127 +msgid "Amount that each motion block should be overlapped by its neighbours" +msgstr "" + +#: modules/codec/dirac.c:132 +msgid "xblen" +msgstr "xblen" + +#: modules/codec/dirac.c:133 +msgid "Total horizontal block length including overlaps" +msgstr "" + +#: modules/codec/dirac.c:137 +msgid "yblen" +msgstr "yblen" + +#: modules/codec/dirac.c:138 +msgid "Total vertical block length including overlaps" +msgstr "" + +#: modules/codec/dirac.c:141 +msgid "Motion vector precision" +msgstr "" + +#: modules/codec/dirac.c:142 +msgid "Motion vector precision in pels." +msgstr "" + +#: modules/codec/dirac.c:147 +msgid "Simple ME search area x:y" +msgstr "" + +#: modules/codec/dirac.c:148 +msgid "" +"(Not recommended) Perform a simple (non hierarchical block matching motion " +"vector search with search range of +/-x, +/-y" +msgstr "" + +#: modules/codec/dirac.c:153 +msgid "Three component motion estimation" +msgstr "" + +#: modules/codec/dirac.c:154 +msgid "Use chroma as part of the motion estimation process" +msgstr "Chroma dans l?estimation de mouvement" + +#: modules/codec/dirac.c:157 +msgid "Intra picture DWT filter" +msgstr "Filtre intra sous-image DWT" + +#: modules/codec/dirac.c:161 +msgid "Inter picture DWT filter" +msgstr "Filtre inter sous-image DWT" + +#: modules/codec/dirac.c:165 +msgid "Number of DWT iterations" +msgstr "Nombre d'it?rations DWT" + +#: modules/codec/dirac.c:166 +msgid "Also known as DWT levels" +msgstr "Aussi connu sous le nom niveaux DWT" + +#: modules/codec/dirac.c:170 +msgid "Enable multiple quantizers" +msgstr "" + +#: modules/codec/dirac.c:171 +msgid "Enable multiple quantizers per subband (one per codeblock)" +msgstr "" + +#: modules/codec/dirac.c:175 +msgid "Enable spatial partitioning" +msgstr "Activer le spatialiseur" + +#: modules/codec/dirac.c:179 +msgid "Disable arithmetic coding" +msgstr "" + +#: modules/codec/dirac.c:180 +msgid "Use variable length codes instead, useful for very high bitrates" +msgstr "" + +#: modules/codec/dirac.c:185 +msgid "cycles per degree" +msgstr "Cycles par degr?" + +#: modules/codec/dirac.c:207 +msgid "Dirac video encoder using dirac-research library" +msgstr "" #: modules/codec/dmo/dmo.c:102 msgid "DirectMedia Object decoder" @@ -9527,11 +9487,11 @@ msgstr "D?codeur DirectMedia Object" msgid "DirectMedia Object encoder" msgstr "Encodeur DirectMedia Object" -#: modules/codec/dts.c:100 +#: modules/codec/dts.c:47 msgid "DTS parser" msgstr "Parseur DTS" -#: modules/codec/dts.c:105 +#: modules/codec/dts.c:52 msgid "DTS audio packetizer" msgstr "Empaqueteur audio DTS" @@ -9585,7 +9545,11 @@ msgstr "Position Y de l?incrustation encod?e" msgid "DVB subtitles decoder" msgstr "D?codeur de sous-titres DVB" -#: modules/codec/dvbsub.c:104 +#: modules/codec/dvbsub.c:92 modules/demux/ts.c:3555 modules/demux/ts.c:3584 +msgid "DVB subtitles" +msgstr "Sous-titres DVB" + +#: modules/codec/dvbsub.c:105 msgid "DVB subtitles encoder" msgstr "Encodeur de sous-titres DVB" @@ -9593,17 +9557,11 @@ msgstr "Encodeur de sous-titres DVB" msgid "AAC audio decoder (using libfaad2)" msgstr "D?codeur audio AAC (utilisant libfaad2)" -#: modules/codec/faad.c:389 +#: modules/codec/faad.c:379 msgid "AAC extension" msgstr "Extension AAC" -#: modules/codec/faad.c:393 -#, c-format -msgid "%d Hz" -msgstr "%d Hz" - -#: modules/codec/fake.c:53 modules/gui/fbosd.c:111 -#: modules/video_output/image.c:86 +#: modules/codec/fake.c:53 modules/gui/fbosd.c:109 msgid "Image file" msgstr "Fichier d?image" @@ -9619,13 +9577,13 @@ msgstr "Recharger le fichier d?image" msgid "Reload image file every n seconds." msgstr "Recharger l?image toutes les n secondes." -#: modules/codec/fake.c:61 modules/stream_out/mosaic_bridge.c:139 -#: modules/stream_out/transcode.c:78 +#: modules/codec/fake.c:61 modules/stream_out/mosaic_bridge.c:141 +#: modules/stream_out/transcode.c:79 msgid "Output video width." msgstr "Largeur de la vid?o." -#: modules/codec/fake.c:64 modules/stream_out/mosaic_bridge.c:142 -#: modules/stream_out/transcode.c:81 +#: modules/codec/fake.c:64 modules/stream_out/mosaic_bridge.c:144 +#: modules/stream_out/transcode.c:82 msgid "Output video height." msgstr "Hauteur de la vid?o." @@ -9646,7 +9604,7 @@ msgid "Aspect ratio of the image file (4:3, 16:9). Default is square pixels." msgstr "" "Proportions du fichier image (4:3, 16:9). Le d?faut est 1:1 (pixels carr?s)" -#: modules/codec/fake.c:71 modules/stream_out/transcode.c:70 +#: modules/codec/fake.c:71 modules/stream_out/transcode.c:71 msgid "Deinterlace video" msgstr "D?sentrelacer la vid?o" @@ -9654,7 +9612,7 @@ msgstr "D?sentrelacer la vid?o" msgid "Deinterlace the image after loading it." msgstr "D?sentrelacer l?image apr?s l?avoir charg?e." -#: modules/codec/fake.c:74 modules/stream_out/transcode.c:73 +#: modules/codec/fake.c:74 modules/stream_out/transcode.c:74 msgid "Deinterlace module" msgstr "Module de d?sentrelacement" @@ -9662,11 +9620,13 @@ msgstr "Module de d?sentrelacement" msgid "Deinterlace module to use." msgstr "Module de d?sentrelacement" -#: modules/codec/fake.c:77 modules/video_output/fb.c:87 +#: modules/codec/fake.c:77 modules/video_output/fb.c:88 +#: modules/video_output/omapfb.c:92 modules/video_output/yuv.c:54 msgid "Chroma used." msgstr "Chroma utilis?." -#: modules/codec/fake.c:79 modules/video_output/fb.c:89 +#: modules/codec/fake.c:79 modules/video_output/fb.c:90 +#: modules/video_output/yuv.c:56 msgid "Force use of a specific chroma for output. Default is I420." msgstr "" "Forcer l?utilisation d?un chroma sp?cifique pour la sortie vid?o. Le d?faut " @@ -9690,59 +9650,335 @@ msgstr "Empaqueteur audio Flac" #: modules/codec/fluidsynth.c:33 msgid "Sound fonts (required)" -msgstr "" +msgstr "Banques de sons (requis)" #: modules/codec/fluidsynth.c:35 msgid "A sound fonts file is required for software synthesis." -msgstr "" +msgstr "Une banque de sons est n?cessaire pour la synth?se logicielle." #: modules/codec/fluidsynth.c:41 msgid "FluidSynth MIDI synthetizer" msgstr "Synth?tiseur FluidSynth MIDI " -#: modules/codec/kate.c:105 modules/codec/subtitles/subsdec.c:111 +#: modules/codec/fluidsynth.c:43 +msgid "FluidSynth" +msgstr "" + +#: modules/codec/invmem.c:54 modules/video_output/vmem.c:51 +msgid "Video memory buffer width." +msgstr "Largeur du tampon de m?moire vid?o" + +#: modules/codec/invmem.c:57 modules/video_output/vmem.c:54 +msgid "Video memory buffer height." +msgstr "Hauteur du tampon de m?moire vid?o" + +#: modules/codec/invmem.c:59 modules/video_output/vmem.c:63 +msgid "Lock function" +msgstr "Fonction de blocage" + +#: modules/codec/invmem.c:60 +msgid "" +"Address of the locking callback function. This function must return a valid " +"memory address for use by the video renderer." +msgstr "" +"Adresse de la fonction de retour pour le blocage. Cette fonction doit " +"retourner une adresse m?moire valide pour l'utilisation par le moteur de " +"rendu vid?o." + +#: modules/codec/invmem.c:64 modules/video_output/vmem.c:68 +msgid "Unlock function" +msgstr "Fonction de d?blocage" + +#: modules/codec/invmem.c:65 modules/video_output/vmem.c:69 +msgid "Address of the unlocking callback function" +msgstr "Adresse de la fonction de retour pour le d?blocage" + +#: modules/codec/invmem.c:67 modules/video_output/vmem.c:71 +msgid "Callback data" +msgstr "Donn?e pour la fonction de retour" + +#: modules/codec/invmem.c:68 modules/video_output/vmem.c:72 +msgid "Data for the locking and unlocking functions" +msgstr "Donn?e pour les fonctions blocage/d?blocage" + +#: modules/codec/invmem.c:70 +msgid "" +"This module make possible making video stream from raw-image generating (to " +"memory) from rendering program uses libvlc. To use this module from libvlc " +"set --codec to invmem, set all --invmem-* options in vlc_argv an use " +"libvlc_media_new(libvlc, \"fake://\", &ex);. Besides is simillar to vmem " +"video output module." +msgstr "" + +#: modules/codec/invmem.c:79 modules/codec/invmem.c:80 +msgid "Memory video decoder" +msgstr "D?codeur vid?o m?moire" + +#: modules/codec/kate.c:196 modules/codec/subtitles/subsdec.c:111 msgid "Formatted Subtitles" msgstr "Formatage des sous-titres" -#: modules/codec/kate.c:106 -#, fuzzy +#: modules/codec/kate.c:197 msgid "" "Kate streams allow for text formatting. VLC partly implements this, but you " -"can choose to disable all formatting." +"can choose to disable all formatting.Note that this has no effect is " +"rendering via Tiger is enabled." msgstr "" "Certains formats de sous-titres acceptent des formatages, que VLC impl?mente " "partiellement." -#: modules/codec/kate.c:112 +#: modules/codec/kate.c:204 +msgid "Shadow" +msgstr "Ombre" + +#: modules/codec/kate.c:204 modules/misc/freetype.c:120 +msgid "Outline" +msgstr "Contour" + +#: modules/codec/kate.c:212 modules/gui/fbosd.c:171 +#: modules/misc/freetype.c:127 modules/misc/quartztext.c:103 +#: modules/misc/win32text.c:87 modules/video_filter/marq.c:61 +#: modules/video_filter/rss.c:70 +msgid "Black" +msgstr "Noir" + +#: modules/codec/kate.c:212 modules/gui/fbosd.c:172 +#: modules/misc/freetype.c:127 modules/misc/quartztext.c:103 +#: modules/misc/win32text.c:87 modules/video_filter/marq.c:61 +#: modules/video_filter/rss.c:71 +msgid "Gray" +msgstr "Gris" + +#: modules/codec/kate.c:212 modules/gui/fbosd.c:172 +#: modules/misc/freetype.c:127 modules/misc/quartztext.c:103 +#: modules/misc/win32text.c:87 modules/video_filter/marq.c:62 +#: modules/video_filter/rss.c:71 +msgid "Silver" +msgstr "Argent" + +#: modules/codec/kate.c:212 modules/gui/fbosd.c:172 +#: modules/misc/freetype.c:127 modules/misc/quartztext.c:103 +#: modules/misc/win32text.c:87 modules/video_filter/marq.c:62 +#: modules/video_filter/rss.c:71 +msgid "White" +msgstr "Blanc" + +#: modules/codec/kate.c:212 modules/gui/fbosd.c:172 +#: modules/misc/freetype.c:127 modules/misc/quartztext.c:103 +#: modules/misc/win32text.c:87 modules/video_filter/marq.c:62 +#: modules/video_filter/rss.c:71 +msgid "Maroon" +msgstr "Marron" + +#: modules/codec/kate.c:213 modules/gui/fbosd.c:172 +#: modules/gui/macosx/controls.m:543 modules/gui/macosx/intf.m:598 +#: modules/misc/freetype.c:128 modules/misc/quartztext.c:104 +#: modules/misc/win32text.c:88 modules/video_filter/colorthres.c:63 +#: modules/video_filter/marq.c:62 modules/video_filter/rss.c:71 +msgid "Red" +msgstr "Rouge" + +#: modules/codec/kate.c:213 modules/gui/fbosd.c:173 +#: modules/misc/freetype.c:128 modules/misc/quartztext.c:104 +#: modules/misc/win32text.c:88 modules/video_filter/colorthres.c:63 +#: modules/video_filter/marq.c:63 modules/video_filter/rss.c:72 +msgid "Fuchsia" +msgstr "Fuchsia" + +#: modules/codec/kate.c:213 modules/gui/fbosd.c:173 +#: modules/gui/macosx/controls.m:547 modules/gui/macosx/intf.m:600 +#: modules/misc/freetype.c:128 modules/misc/quartztext.c:104 +#: modules/misc/win32text.c:88 modules/video_filter/colorthres.c:63 +#: modules/video_filter/marq.c:63 modules/video_filter/rss.c:72 +msgid "Yellow" +msgstr "Jaune" + +#: modules/codec/kate.c:213 modules/gui/fbosd.c:173 +#: modules/misc/freetype.c:128 modules/misc/quartztext.c:104 +#: modules/misc/win32text.c:88 modules/video_filter/marq.c:63 +#: modules/video_filter/rss.c:72 +msgid "Olive" +msgstr "Olive" + +#: modules/codec/kate.c:213 modules/gui/fbosd.c:173 +#: modules/gui/macosx/controls.m:545 modules/gui/macosx/intf.m:599 +#: modules/misc/freetype.c:128 modules/misc/quartztext.c:104 +#: modules/misc/win32text.c:88 modules/video_filter/marq.c:63 +#: modules/video_filter/rss.c:72 +msgid "Green" +msgstr "Vert" + +#: modules/codec/kate.c:213 modules/gui/fbosd.c:174 +#: modules/misc/freetype.c:128 modules/misc/quartztext.c:104 +#: modules/misc/win32text.c:88 modules/video_filter/marq.c:64 +#: modules/video_filter/rss.c:73 +msgid "Teal" +msgstr "Emeraude" + +#: modules/codec/kate.c:214 modules/gui/fbosd.c:174 +#: modules/misc/freetype.c:129 modules/misc/quartztext.c:105 +#: modules/misc/win32text.c:89 modules/video_filter/colorthres.c:63 +#: modules/video_filter/marq.c:64 modules/video_filter/rss.c:73 +msgid "Lime" +msgstr "Citron vert" + +#: modules/codec/kate.c:214 modules/gui/fbosd.c:174 +#: modules/misc/freetype.c:129 modules/misc/quartztext.c:105 +#: modules/misc/win32text.c:89 modules/video_filter/marq.c:64 +#: modules/video_filter/rss.c:73 +msgid "Purple" +msgstr "Violet" + +#: modules/codec/kate.c:214 modules/gui/fbosd.c:174 +#: modules/misc/freetype.c:129 modules/misc/quartztext.c:105 +#: modules/misc/win32text.c:89 modules/video_filter/marq.c:64 +#: modules/video_filter/rss.c:73 +msgid "Navy" +msgstr "Marine" + +#: modules/codec/kate.c:214 modules/gui/fbosd.c:174 +#: modules/gui/macosx/controls.m:549 modules/gui/macosx/intf.m:601 +#: modules/misc/freetype.c:129 modules/misc/quartztext.c:105 +#: modules/misc/win32text.c:89 modules/video_filter/colorthres.c:63 +#: modules/video_filter/marq.c:64 modules/video_filter/rss.c:73 +msgid "Blue" +msgstr "Bleu" + +#: modules/codec/kate.c:214 modules/gui/fbosd.c:175 +#: modules/misc/freetype.c:129 modules/misc/quartztext.c:105 +#: modules/misc/win32text.c:89 modules/video_filter/colorthres.c:63 +#: modules/video_filter/marq.c:65 modules/video_filter/rss.c:74 +msgid "Aqua" +msgstr "Eau" + +#: modules/codec/kate.c:216 +msgid "Use Tiger for rendering" +msgstr "Rendu avec Tiger" + +#: modules/codec/kate.c:217 +msgid "" +"Kate streams can be rendered using the Tiger library. Disabling this will " +"only render static text and bitmap based streams." +msgstr "" + +#: modules/codec/kate.c:221 +msgid "Rendering quality" +msgstr "Qualit? de rendu" + +#: modules/codec/kate.c:222 +msgid "" +"Select rendering quality, at the expense of speed. 0 is fastest, 1 is " +"highest quality." +msgstr "" + +#: modules/codec/kate.c:226 +msgid "Default font effect" +msgstr "Effet de police de caract?res par d?faut" + +#: modules/codec/kate.c:227 +msgid "" +"Add a font effect to text to improve readability against different " +"backgrounds." +msgstr "" + +#: modules/codec/kate.c:231 +msgid "Default font effect strength" +msgstr "" + +#: modules/codec/kate.c:232 +msgid "How pronounced to make the chosen font effect (effect dependent)." +msgstr "" + +#: modules/codec/kate.c:236 +msgid "Default font description" +msgstr "Description de police de caract?re par d?faut" + +#: modules/codec/kate.c:237 +msgid "" +"Which font description to use if the Kate stream does not specify particular " +"font parameters (name, size, etc) to use. A blank name will let Tiger choose " +"font parameters where appropriate." +msgstr "" + +#: modules/codec/kate.c:242 +msgid "Default font color" +msgstr "Couleur par d?faut du texte" + +#: modules/codec/kate.c:243 +msgid "" +"Default font color to use if the Kate stream does not specify a particular " +"font color to use." +msgstr "" + +#: modules/codec/kate.c:247 +msgid "Default font alpha" +msgstr "Alpha par d?faut du texte" + +#: modules/codec/kate.c:248 +msgid "" +"Transparency of the default font color if the Kate stream does not specify a " +"particular font color to use." +msgstr "" + +#: modules/codec/kate.c:252 +msgid "Default background color" +msgstr "Couleur d'arri?re-plan par d?faut" + +#: modules/codec/kate.c:253 +msgid "" +"Default background color if the Kate stream does not specify a background " +"color to use." +msgstr "" + +#: modules/codec/kate.c:257 +msgid "Default background alpha" +msgstr "Alpha d'arri?re-plan par d?faut" + +#: modules/codec/kate.c:258 +msgid "" +"Transparency of the default background color if the Kate stream does not " +"specify a particular background color to use." +msgstr "" + +#: modules/codec/kate.c:264 +msgid "" +"Kate is a codec for text and image based overlays.\n" +"The Tiger rendering library is needed to render complex Kate streams, but " +"VLC can still render static text and image based subtitles if it is not " +"available.\n" +"Note that changing settings below will not take effect until a new stream is " +"played. This will hopefully be fixed soon." +msgstr "" + +#: modules/codec/kate.c:273 msgid "Kate" msgstr "Kate" -#: modules/codec/kate.c:113 -msgid "Kate text subtitles decoder" -msgstr "D?codeur de sous-titres Kate" +#: modules/codec/kate.c:274 +msgid "Kate overlay decoder" +msgstr "D?codeur d'incrustation Kate" -#: modules/codec/kate.c:122 +#: modules/codec/kate.c:293 +msgid "Tiger rendering defaults" +msgstr "D?fauts du rendu Tiger" + +#: modules/codec/kate.c:329 msgid "Kate text subtitles packetizer" msgstr "Empaqueteur de sous-titres Kate" -#: modules/codec/kate.c:731 -msgid "Kate comment" -msgstr "Commentaires Kate" - -#: modules/codec/libass.c:54 -#, fuzzy +#: modules/codec/libass.c:58 msgid "Subtitle renderers using libass" -msgstr "Param?tres de sous-titres" +msgstr "Param?tres de sous-titres avec libass" -#: modules/codec/libmpeg2.c:102 +#: modules/codec/libmpeg2.c:103 msgid "MPEG I/II video decoder (using libmpeg2)" msgstr "D?codeur vid?o MPEG I/II (utilisant libmpeg2)" -#: modules/codec/lpcm.c:88 +#: modules/codec/lpcm.c:52 msgid "Linear PCM audio decoder" msgstr "Parseur audio pour PCM lin?aire" -#: modules/codec/lpcm.c:93 +#: modules/codec/lpcm.c:57 msgid "Linear PCM audio packetizer" msgstr "Empaqueteur audio pour PCM lin?aire" @@ -9750,11 +9986,11 @@ msgstr "Empaqueteur audio pour PCM lin?aire" msgid "Video decoder using openmash" msgstr "D?codeur vid?o utilisant openmash" -#: modules/codec/mpeg_audio.c:116 +#: modules/codec/mpeg_audio.c:113 msgid "MPEG audio layer I/II/III decoder" msgstr "Parseur MPEG audio couches I/II/III" -#: modules/codec/mpeg_audio.c:127 +#: modules/codec/mpeg_audio.c:124 msgid "MPEG audio layer I/II/III packetizer" msgstr "Empaqueteur MPEG audio couches I/II/III" @@ -9766,11 +10002,11 @@ msgstr "D?codeur vid?o PNG" msgid "QuickTime library decoder" msgstr "D?codeur QuickTime" -#: modules/codec/rawvideo.c:73 +#: modules/codec/rawvideo.c:72 msgid "Pseudo raw video decoder" msgstr "Pseudo-d?codeur vid?o brute" -#: modules/codec/rawvideo.c:80 +#: modules/codec/rawvideo.c:79 msgid "Pseudo raw video packetizer" msgstr "Pseudo-empaqueteur vid?o brute" @@ -9794,26 +10030,96 @@ msgstr "D?codeur d?images (SDL)" msgid "SDL_image video decoder" msgstr "D?codeur d?images (SDL)" -#: modules/codec/speex.c:115 +#: modules/codec/speex.c:56 modules/codec/speex.c:844 +#: modules/gui/qt4/ui/video_effects.ui:642 +msgid "Mode" +msgstr "Mode" + +#: modules/codec/speex.c:58 +msgid "Enforce the mode of the encoder." +msgstr "Forcer le mode de l?encodeur." + +#: modules/codec/speex.c:60 modules/codec/theora.c:95 +#: modules/codec/twolame.c:55 modules/codec/vorbis.c:165 +msgid "Encoding quality" +msgstr "Qualit? d?encodage" + +#: modules/codec/speex.c:62 +msgid "Enforce a quality between 0 (low) and 10 (high)." +msgstr "Qualit? entre 0 (basse) et 10 (haute)." + +#: modules/codec/speex.c:64 +msgid "Encoding complexity" +msgstr "Complexit? d?encodage" + +#: modules/codec/speex.c:66 +msgid "Enforce the complexity of the encoder." +msgstr "" + +#: modules/codec/speex.c:68 +msgid "Maximal bitrate" +msgstr "D?bit maximum" + +#: modules/codec/speex.c:70 +msgid "Enforce the maximal VBR bitrate" +msgstr "" + +#: modules/codec/speex.c:72 modules/codec/vorbis.c:175 +msgid "CBR encoding" +msgstr "Encodage CBR (d?bit constant)" + +#: modules/codec/speex.c:74 +msgid "" +"Enforce a constant bitrate encoding (CBR) instead of default variable " +"bitrate encoding (VBR)." +msgstr "" + +#: modules/codec/speex.c:77 +msgid "Voice activity detection" +msgstr "" + +#: modules/codec/speex.c:79 +msgid "" +"Enable voice activity detection (VAD). It is automatically activated in VBR " +"mode." +msgstr "" + +#: modules/codec/speex.c:82 +msgid "Discontinuous Transmission" +msgstr "Flux continu" + +#: modules/codec/speex.c:84 +msgid "Enable discontinuous transmission (DTX)." +msgstr "" + +#: modules/codec/speex.c:88 +msgid "Narrow-band (8kHz)" +msgstr "" + +#: modules/codec/speex.c:88 +msgid "Wide-band (16kHz)" +msgstr "" + +#: modules/codec/speex.c:88 +msgid "Ultra-wideband (32kHz)" +msgstr "" + +#: modules/codec/speex.c:95 msgid "Speex audio decoder" msgstr "D?codeur audio Speex" -#: modules/codec/speex.c:120 +#: modules/codec/speex.c:97 +msgid "Speex" +msgstr "Speex" + +#: modules/codec/speex.c:101 msgid "Speex audio packetizer" msgstr "Empaqueteur audio Speex" -#: modules/codec/speex.c:125 +#: modules/codec/speex.c:106 msgid "Speex audio encoder" msgstr "Encodeur audio Speex" -#: modules/codec/speex.c:769 modules/codec/speex.c:786 -msgid "Speex comment" -msgstr "Commentaires Speex" - -#: modules/codec/speex.c:769 modules/gui/qt4/ui/video_effects.ui:636 -msgid "Mode" -msgstr "Mode" - #: modules/codec/spudec/spudec.c:46 msgid "DVD subtitles decoder" msgstr "D?codeur de sous-titres DVD" @@ -9861,11 +10167,11 @@ msgstr "" msgid "Text subtitles decoder" msgstr "D?codeur de sous-titres texte" -#: modules/codec/subtitles/subsusf.c:51 +#: modules/codec/subtitles/subsusf.c:52 msgid "USFSubs" msgstr "Sous-titres USF" -#: modules/codec/subtitles/subsusf.c:52 +#: modules/codec/subtitles/subsusf.c:53 msgid "USF subtitles decoder" msgstr "D?codeur de sous-titres USF" @@ -9875,7 +10181,7 @@ msgstr "Encodeur de texte T.140" #: modules/codec/svcdsub.c:47 msgid "Enable debug" -msgstr "Activer le d?boggage" +msgstr "Activer le d?bogage" #: modules/codec/svcdsub.c:50 msgid "" @@ -9883,6 +10189,9 @@ msgid "" "calls 1\n" "packet assembly info 2\n" msgstr "" +"Cet entier quand il est vu en binaire avec un masque de d?bogage\n" +"appels 1\n" +"info assemblage paquet 2\n" #: modules/codec/svcdsub.c:55 msgid "Philips OGT (SVCD subtitle) decoder" @@ -9897,45 +10206,52 @@ msgid "Philips OGT (SVCD subtitle) packetizer" msgstr "Empaqueteur de sous-titres Philips OGT (Sous-titres SVCD)" #: modules/codec/tarkin.c:80 -msgid "Tarkin decoder module" +msgid "Tarkin decoder" msgstr "D?codeur Tarkin" -#: modules/codec/telx.c:56 +#: modules/codec/telx.c:55 msgid "Override page" msgstr "Forcer la page" -#: modules/codec/telx.c:57 +#: modules/codec/telx.c:56 msgid "" "Override the indicated page, try this if your subtitles don't appear (-1 = " "autodetect from TS, 0 = autodetect from teletext, >0 = actual page number, " "usually 888 or 889)." msgstr "" +"Surcharger la page indiqu?e, ? essayer quand vos sous-titres n'apparaissent " +"pas (-1 = d?tecte automatiquement depuis TS, 0 = d?tecte depuis le " +"t?l?texte, >0 = num?ro de la page courante, en g?n?ral 888 ou 889)." -#: modules/codec/telx.c:62 -#, fuzzy +#: modules/codec/telx.c:61 msgid "Ignore subtitle flag" -msgstr "Utiliser un fichier de sous-titres" +msgstr "Ignorer l'indicateur de sous-titres" -#: modules/codec/telx.c:63 +#: modules/codec/telx.c:62 msgid "Ignore the subtitle flag, try this if your subtitles don't appear." msgstr "" +"Ignore le l'attribut sous-titre, ? essayer quand vos sous-titres " +"n'apparaissent pas." -#: modules/codec/telx.c:66 +#: modules/codec/telx.c:65 msgid "Workaround for France" msgstr "Contournement d?un bug sp?cifique ? la France" -#: modules/codec/telx.c:67 +#: modules/codec/telx.c:66 msgid "" "Some French channels do not flag their subtitling pages correctly due to a " "historical interpretation mistake. Try using this wrong interpretation if " "your subtitles don't appear." msgstr "" +"Quelques chaines fran?aises n'indiquent pas correctement l'attribut des " +"pages de sous-titres ? la suite d'une erreur d'interpr?tation, ? essayer " +"quand vos sous-titres n'apparaissent pas." -#: modules/codec/telx.c:73 +#: modules/codec/telx.c:72 msgid "Teletext subtitles decoder" msgstr "D?codeur de sous-titres T?l?texte" -#: modules/codec/theora.c:97 modules/codec/vorbis.c:175 +#: modules/codec/theora.c:97 modules/codec/vorbis.c:167 msgid "" "Enforce a quality between 1 (low) and 10 (high), instead of specifying a " "particular bitrate. This will produce a VBR stream." @@ -9956,10 +10272,6 @@ msgstr "Empaqueteur vid?o Theora" msgid "Theora video encoder" msgstr "Encodeur vid?o Theora" -#: modules/codec/theora.c:533 -msgid "Theora comment" -msgstr "Commentaires Theora" - #: modules/codec/twolame.c:57 msgid "" "Force a specific encoding quality between 0.0 (high) and 50.0 (low), instead " @@ -10006,49 +10318,41 @@ msgstr "St?r?o jointe" msgid "Libtwolame audio encoder" msgstr "Encodeur audio libtwolame" -#: modules/codec/vorbis.c:177 +#: modules/codec/vorbis.c:169 msgid "Maximum encoding bitrate" msgstr "D?bit maximum d?encodage" -#: modules/codec/vorbis.c:179 +#: modules/codec/vorbis.c:171 msgid "Maximum bitrate in kbps. This is useful for streaming applications." msgstr "D?bit maximum en kbits. Utile pour les applications de diffusion." -#: modules/codec/vorbis.c:180 +#: modules/codec/vorbis.c:172 msgid "Minimum encoding bitrate" msgstr "D?bit minimum d?encodage" -#: modules/codec/vorbis.c:182 +#: modules/codec/vorbis.c:174 msgid "" "Minimum bitrate in kbps. This is useful for encoding for a fixed-size " "channel." msgstr "" "D?bit minimum en kbits. Utile pour l?encodage pour un canal de taille fixe." -#: modules/codec/vorbis.c:183 -msgid "CBR encoding" -msgstr "Encodage CBR (d?bit constant)" - -#: modules/codec/vorbis.c:185 +#: modules/codec/vorbis.c:177 msgid "Force a constant bitrate encoding (CBR)." msgstr "Forcer un encodage ? d?bit constant (CBR)." -#: modules/codec/vorbis.c:189 +#: modules/codec/vorbis.c:181 msgid "Vorbis audio decoder" msgstr "D?codeur audio Vorbis" -#: modules/codec/vorbis.c:200 +#: modules/codec/vorbis.c:192 msgid "Vorbis audio packetizer" msgstr "Empaqueteur audio Vorbis" -#: modules/codec/vorbis.c:207 +#: modules/codec/vorbis.c:199 msgid "Vorbis audio encoder" msgstr "Encodeur audio Vorbis" -#: modules/codec/vorbis.c:643 -msgid "Vorbis comment" -msgstr "Commentaires Vorbis" - #: modules/codec/x264.c:52 msgid "Maximum GOP size" msgstr "Taille maximale du GOP" @@ -10111,13 +10415,15 @@ msgstr "" #: modules/codec/x264.c:79 msgid "Faster, less precise scenecut detection" -msgstr "" +msgstr "D?tection de changements de sc?nes plus rapide (moins pr?cise)" #: modules/codec/x264.c:80 msgid "" "Faster, less precise scenecut detection. Required and implied by multi-" "threading." msgstr "" +"D?tection de changements de sc?nes plus rapide (moins pr?cise). N?cessaire " +"et implicite en mode multi-threading." #: modules/codec/x264.c:84 msgid "B-frames between I and P" @@ -10131,7 +10437,15 @@ msgstr "Nombre d?images B cons?cutives entre images I et P (de 1 ? 16)." msgid "Adaptive B-frame decision" msgstr "Utilisation adaptative d?images B" -#: modules/codec/x264.c:89 +#: modules/codec/x264.c:90 +msgid "" +"Force the specified number of consecutive B-frames to be used, except " +"possibly before an I-frame.Range 0 to 2." +msgstr "" +"Forcer le nombre d?images B cons?cutives ? utiliser, sauf ?ventuellement " +"avant une image I (de 0 ? 2)." + +#: modules/codec/x264.c:94 msgid "" "Force the specified number of consecutive B-frames to be used, except " "possibly before an I-frame." @@ -10139,24 +10453,23 @@ msgstr "" "Forcer le nombre d?images B cons?cutives ? utiliser, sauf ?ventuellement " "avant une image I. " -#: modules/codec/x264.c:92 -#, fuzzy +#: modules/codec/x264.c:98 msgid "Influence (bias) B-frames usage" -msgstr "Utilisation d?images B" +msgstr "Biaiser l'utilisation des images B" -#: modules/codec/x264.c:93 +#: modules/codec/x264.c:99 msgid "" "Bias the choice to use B-frames. Positive values cause more B-frames, " "negative values cause less B-frames." msgstr "" "Modifier le choix d?utilisation des images B. Les valeurs positives " -"augmentent le nombre d?images B, les valeurs n?gatives le diminuent. " +"augmentent le nombre d?images B, les valeurs n?gatives le diminuent." -#: modules/codec/x264.c:96 +#: modules/codec/x264.c:102 msgid "Keep some B-frames as references" msgstr "Garder des images B en r?f?rences" -#: modules/codec/x264.c:97 +#: modules/codec/x264.c:103 msgid "" "Allows B-frames to be used as references for predicting other frames. Keeps " "the middle of 2+ consecutive B-frames as a reference, and reorders frame " @@ -10166,11 +10479,11 @@ msgstr "" "garde la moyenne de deux ou plus images B cons?cutives comme r?f?rences, et " "r?ordonne l?image en cons?quence." -#: modules/codec/x264.c:101 +#: modules/codec/x264.c:107 msgid "CABAC" msgstr "CABAC" -#: modules/codec/x264.c:102 +#: modules/codec/x264.c:108 msgid "" "CABAC (Context-Adaptive Binary Arithmetic Coding). Slightly slows down " "encoding and decoding, but should save 10 to 15% bitrate." @@ -10178,12 +10491,11 @@ msgstr "" "CABAC (Codage arithm?tique binaire adaptatif). Ceci ralentit l?encodage et " "le d?codage, mais entra?ne un gain de d?bit de 10 ? 15%." -#: modules/codec/x264.c:106 +#: modules/codec/x264.c:112 msgid "Number of reference frames" msgstr "Nombre d?images de r?f?rence" -#: modules/codec/x264.c:107 -#, fuzzy +#: modules/codec/x264.c:113 msgid "" "Number of previous frames used as predictors. This is effective in Anime, " "but seems to make little difference in live-action source material. Some " @@ -10194,50 +10506,54 @@ msgstr "" "diff?rences pour les sc?nes r?elles. Certains d?codeurs ne savent pas " "traiter des valeurs ?lev?es. Les valeurs vont de 1 ? 16." -#: modules/codec/x264.c:112 +#: modules/codec/x264.c:118 msgid "Skip loop filter" msgstr "Pas de filtre de boucle" -#: modules/codec/x264.c:113 +#: modules/codec/x264.c:119 msgid "Deactivate the deblocking loop filter (decreases quality)." msgstr "D?sactiver le filtre de boucle. Ceci diminue la qualit?." -#: modules/codec/x264.c:115 +#: modules/codec/x264.c:121 msgid "Loop filter AlphaC0 and Beta parameters alpha:beta" -msgstr "" +msgstr "Param?tres AlphaC0 et Beta du filtre de boucle" -#: modules/codec/x264.c:116 +#: modules/codec/x264.c:122 msgid "" "Loop filter AlphaC0 and Beta parameters. Range -6 to 6 for both alpha and " "beta parameters. -6 means light filter, 6 means strong." msgstr "" +"Param?tres AlphaC0 et Beta du filtre de boucle. Les valeurs vont de -6 ? 6. -" +"6 pour un moindre filtre, 6 pour un filtre important." -#: modules/codec/x264.c:120 +#: modules/codec/x264.c:126 msgid "H.264 level" msgstr "Niveau H.264" -#: modules/codec/x264.c:121 +#: modules/codec/x264.c:127 msgid "" "Specify H.264 level (as defined by Annex A of the standard). Levels are not " "enforced; it's up to the user to select a level compatible with the rest of " "the encoding options. Range 1 to 5.1 (10 to 51 is also allowed)." msgstr "" +"Sp?cifiez le niveau H.264 (comme d?fini dans l'annexe A du standard). Les " +"niveaux ne sont pas impos?s; c'est ? l'utilisateur de choisir un niveau " +"compatible avec les autres options d'encodage. Les valeurs vont de 1 ? 5,1 " +"(10 ? 51 fonctionne aussi)." -#: modules/codec/x264.c:130 +#: modules/codec/x264.c:136 msgid "Interlaced mode" msgstr "Mode de d?sentrelacement" -#: modules/codec/x264.c:131 -#, fuzzy +#: modules/codec/x264.c:137 msgid "Pure-interlaced mode." -msgstr "Mode de d?sentrelacement pure" +msgstr "Mode d'entrelacement pur" -#: modules/codec/x264.c:136 +#: modules/codec/x264.c:142 msgid "Set QP" msgstr "QP" -#: modules/codec/x264.c:137 -#, fuzzy +#: modules/codec/x264.c:143 msgid "" "This selects the quantizer to use. Lower values result in better fidelity, " "but higher bitrates. 26 is a good default value. Range 0 (lossless) to 51." @@ -10246,174 +10562,180 @@ msgstr "" "la fid?lit? mais augmentent le d?bit. La valeur par d?faut de 26 est bonne. " "0 signifie que l?encodage sera sans perte." -#: modules/codec/x264.c:141 +#: modules/codec/x264.c:147 msgid "Quality-based VBR" msgstr "VBR par qalit?" -#: modules/codec/x264.c:142 -#, fuzzy +#: modules/codec/x264.c:148 msgid "1-pass Quality-based VBR. Range 0 to 51." msgstr "VBR bas? sur la qualit? en une passe. De 0 ? 51." -#: modules/codec/x264.c:144 +#: modules/codec/x264.c:150 msgid "Min QP" msgstr "QP minimum" -#: modules/codec/x264.c:145 -#, fuzzy +#: modules/codec/x264.c:151 msgid "Minimum quantizer parameter. 15 to 35 seems to be a useful range." -msgstr "Quantisateur minimal, 15 ? 35 semble ?tre une bonne ?chelle" +msgstr "Quantisateur minimal, 15 ? 35 semble ?tre un bon ensemble de valeurs" -#: modules/codec/x264.c:148 +#: modules/codec/x264.c:154 msgid "Max QP" msgstr "QP max" -#: modules/codec/x264.c:149 +#: modules/codec/x264.c:155 msgid "Maximum quantizer parameter." msgstr "Quantisateur maximal" -#: modules/codec/x264.c:151 +#: modules/codec/x264.c:157 msgid "Max QP step" msgstr "Saut de QP maximum" -#: modules/codec/x264.c:152 +#: modules/codec/x264.c:158 msgid "Max QP step between frames." msgstr "Saut de QP maximum entre deux images" -#: modules/codec/x264.c:154 +#: modules/codec/x264.c:160 msgid "Average bitrate tolerance" msgstr "Tol?rance moyenne sur le d?bit" -#: modules/codec/x264.c:155 -#, fuzzy +#: modules/codec/x264.c:161 msgid "Allowed variance in average bitrate (in kbits/s)." msgstr "Variance autoris?e du d?bit moyen, en kbits/s." -#: modules/codec/x264.c:158 +#: modules/codec/x264.c:164 msgid "Max local bitrate" msgstr "D?bit maximum local" -#: modules/codec/x264.c:159 -#, fuzzy +#: modules/codec/x264.c:165 msgid "Sets a maximum local bitrate (in kbits/s)." msgstr "R?gle le d?bit maximum local en kbits/s." -#: modules/codec/x264.c:161 +#: modules/codec/x264.c:167 msgid "VBV buffer" msgstr "Buffer VBV" -#: modules/codec/x264.c:162 -#, fuzzy +#: modules/codec/x264.c:168 msgid "Averaging period for the maximum local bitrate (in kbits)." msgstr "P?riode de moyennage pour le d?bit maximal local en kbits." -#: modules/codec/x264.c:165 +#: modules/codec/x264.c:171 msgid "Initial VBV buffer occupancy" msgstr "Remplissage initial du buffer VBV" -#: modules/codec/x264.c:166 -#, fuzzy +#: modules/codec/x264.c:172 msgid "" "Sets the initial buffer occupancy as a fraction of the buffer size. Range " "0.0 to 1.0." msgstr "" "Ceci configure l?occupation initiale du tampon en tant que fraction de la " -"taille du tampon." +"taille du tampon. Valeurs de 0,0 ? 1,0." -#: modules/codec/x264.c:170 +#: modules/codec/x264.c:176 msgid "How AQ distributes bits" -msgstr "" +msgstr "Distributions des bits par AQ" -#: modules/codec/x264.c:171 +#: modules/codec/x264.c:177 msgid "" "Defines bitdistribution mode for AQ, default 2\n" " - 0: Disabled\n" " - 1: Avoid moving bits between frames\n" " - 2: Move bits between frames" msgstr "" +"D?finis le mode de distribution des bits pour AQ, 2 par d?faut\n" +" - 0?: inhib?\n" +" - 1?: ?vite de d?placer des bits entre images\n" +" - 2?: d?place des bits entre les images" -#: modules/codec/x264.c:176 -#, fuzzy +#: modules/codec/x264.c:182 msgid "Strength of AQ" -msgstr "M?thode de diffusion" +msgstr "Force pour AQ" -#: modules/codec/x264.c:177 +#: modules/codec/x264.c:183 msgid "" "Strength to reduce blocking and blurring in flat\n" "and textured areas, default 1.0 recommented to be between 0..2\n" " - 0.5: weak AQ\n" " - 1.5: strong AQ" msgstr "" +"Niveau de r?duction du facteur de bloc et du flou\n" +"dans les zones en aplat et textur?es, le d?faut est de 1,0\n" +"la valeur recommand?e entre 0 et 2\n" +" - 0,5?: AQ faible\n" +" - 1,5?: AQ fort" -#: modules/codec/x264.c:184 +#: modules/codec/x264.c:190 msgid "QP factor between I and P" msgstr "Facteur de QP entre I et P" -#: modules/codec/x264.c:185 -#, fuzzy +#: modules/codec/x264.c:191 msgid "QP factor between I and P. Range 1.0 to 2.0." -msgstr "Facteur de QP entre I et P." +msgstr "Facteur de QP entre I et P. Valeurs de 1,0 ? 2,0." -#: modules/codec/x264.c:188 +#: modules/codec/x264.c:194 msgid "QP factor between P and B" msgstr "Facteur de QP entre P et B" -#: modules/codec/x264.c:189 -#, fuzzy +#: modules/codec/x264.c:195 msgid "QP factor between P and B. Range 1.0 to 2.0." -msgstr "Facteur de QP entre P et B." +msgstr "Facteur de QP entre P et B. Valeurs de 1,0 ? 2,0." -#: modules/codec/x264.c:191 +#: modules/codec/x264.c:197 msgid "QP difference between chroma and luma" msgstr "Diff?rence de QP entre chrominance et luminance" -#: modules/codec/x264.c:192 +#: modules/codec/x264.c:198 msgid "QP difference between chroma and luma." msgstr "Diff?rence de QP entre chrominance et luminance." -#: modules/codec/x264.c:194 -#, fuzzy +#: modules/codec/x264.c:200 msgid "Multipass ratecontrol" -msgstr "Contr?le strict du d?bit" +msgstr "Controle de vitesse multi-passes" -#: modules/codec/x264.c:195 +#: modules/codec/x264.c:201 msgid "" "Multipass ratecontrol:\n" " - 1: First pass, creates stats file\n" " - 2: Last pass, does not overwrite stats file\n" " - 3: Nth pass, overwrites stats file\n" msgstr "" +"Controle de vitesse multi-passes?:\n" +" - 1?: premi?re passe, cr?ation du fichier de stats\n" +" - 2?: derni?re passe, n'?crase pas le fichier de stats\n" +" - 3?: n-i?me passe, ?crase le fichier de stats\n" -#: modules/codec/x264.c:200 +#: modules/codec/x264.c:206 msgid "QP curve compression" msgstr "Compression dynamique de QP" -#: modules/codec/x264.c:201 -#, fuzzy +#: modules/codec/x264.c:207 msgid "QP curve compression. Range 0.0 (CBR) to 1.0 (QCP)." msgstr "Compression de la courbe de QP. (0,0 = CBR, 1,0 = QCP)" -#: modules/codec/x264.c:203 modules/codec/x264.c:207 +#: modules/codec/x264.c:209 modules/codec/x264.c:213 msgid "Reduce fluctuations in QP" msgstr "R?duire les fluctuations de QP" -#: modules/codec/x264.c:204 +#: modules/codec/x264.c:210 msgid "" "This reduces the fluctuations in QP before curve compression. Temporally " "blurs complexity." msgstr "" +"Ceci r?duit les fluctuations de QP avant la compression de la courbe. " +"Augmente temporairement le flou complexe." -#: modules/codec/x264.c:208 +#: modules/codec/x264.c:214 msgid "" "This reduces the fluctations in QP after curve compression. Temporally blurs " "quants." msgstr "" +"Ceci r?duit les fluctuations de QP apr?s la compression de la courbe. " +"Augmente temporairement le flou des quantifications." -#: modules/codec/x264.c:213 +#: modules/codec/x264.c:219 msgid "Partitions to consider" msgstr "Partitions ? consid?rer" -#: modules/codec/x264.c:214 +#: modules/codec/x264.c:220 msgid "" "Partitions to consider in analyse mode: \n" " - none : \n" @@ -10431,41 +10753,42 @@ msgstr "" " - tout : i4x4, p8x8, (i8x8), b8x8, p4x4\n" "(p4x4 requiert p8x8. i8x8 requiert 8x8dct)." -#: modules/codec/x264.c:222 +#: modules/codec/x264.c:228 msgid "Direct MV prediction mode" msgstr "Mode de pr?diction des vecteurs de mouvement directs" -#: modules/codec/x264.c:223 -#, fuzzy +#: modules/codec/x264.c:229 msgid "Direct MV prediction mode." msgstr "Mode de pr?diction des vecteurs de mouvement directs. " -#: modules/codec/x264.c:226 -#, fuzzy +#: modules/codec/x264.c:232 msgid "Direct prediction size" -msgstr "Mode de pr?diction des vecteurs de mouvement directs" +msgstr "Taille de pr?diction des vecteurs de mouvement directs" -#: modules/codec/x264.c:227 +#: modules/codec/x264.c:233 msgid "" "Direct prediction size: - 0: 4x4\n" " - 1: 8x8\n" " - -1: smallest possible according to level\n" msgstr "" +"Taille de pr?diction des vecteurs de mouvement directs:\n" +" - 0?: 4x4\n" +" - 1?: 8x8\n" +" - -1?: le plus petit possible en concordance avec le niveau\n" -#: modules/codec/x264.c:233 +#: modules/codec/x264.c:239 msgid "Weighted prediction for B-frames" msgstr "Pr?diction pond?r?e pour les images B" -#: modules/codec/x264.c:234 +#: modules/codec/x264.c:240 msgid "Weighted prediction for B-frames." msgstr "Pr?diction pond?r?e pour les images B." -#: modules/codec/x264.c:236 +#: modules/codec/x264.c:242 msgid "Integer pixel motion estimation method" msgstr "M?thode d?estimation des mouvements" -#: modules/codec/x264.c:238 -#, fuzzy +#: modules/codec/x264.c:244 msgid "" "Selects the motion estimation algorithm: - dia: diamond search, radius 1 " "(fast)\n" @@ -10474,14 +10797,16 @@ msgid "" " - esa: exhaustive search (extremely slow, primarily for testing)\n" " - tesa: hadamard exhaustive search (extremely slow, primarily for testing)\n" msgstr "" -"S?lectionne l?algorithme d?estimation de mouvement:\n" -" - dia : diamant, rayon 1 (rapide)\n" -" - hex : recherche hexagonale, rayon 2\n" -" - umh : multi-hexagone irr?gulier, meilleur mais plus lent\n" -" - esa : recherche exhaustive (extr?mement lent, principalement pour des " +"S?lectionne l?algorithme d?estimation de mouvement?:\n" +" - dia? : diamant, rayon 1 (rapide)\n" +" - hex? : recherche hexagonale, rayon 2\n" +" - umh? : multi-hexagone irr?gulier (meilleur mais plus lent)\n" +" - esa? : recherche exhaustive (extr?mement lent, principalement pour des " "tests)\n" +" - tesa?: recherche exhaustive hadamard (extr?mement lent, principalement " +"pour des tests)\n" -#: modules/codec/x264.c:245 +#: modules/codec/x264.c:251 msgid "" "Selects the motion estimation algorithm: - dia: diamond search, radius 1 " "(fast)\n" @@ -10496,12 +10821,11 @@ msgstr "" " - esa : recherche exhaustive (extr?mement lent, principalement pour des " "tests)\n" -#: modules/codec/x264.c:253 +#: modules/codec/x264.c:259 msgid "Maximum motion vector search range" msgstr "Distance maximale de recherche" -#: modules/codec/x264.c:254 -#, fuzzy +#: modules/codec/x264.c:260 msgid "" "Maximum distance to search for motion estimation, measured from predicted " "position(s). Default of 16 is good for most footage, high motion sequences " @@ -10510,38 +10834,47 @@ msgstr "" "Distance maximale de recherche pour l?estimation de mouvement, ? partir des " "positions pr?dites. La valeur par d?faut de 16 convient pour la plupart des " "s?quences. Pour des s?quences ? fort mouvement, des r?glages de l?ordre de " -"24-32 peuvent ?tre meilleurs. Les valeurs vont de 0 ? 64." +"24 ? 32 peuvent ?tre meilleurs. Valeurs de 0 ? 64." -#: modules/codec/x264.c:259 -#, fuzzy +#: modules/codec/x264.c:265 msgid "Maximum motion vector length" msgstr "Distance maximale de recherche" -#: modules/codec/x264.c:260 +#: modules/codec/x264.c:266 msgid "" "Maximum motion vector length in pixels. -1 is automatic, based on level." msgstr "" +"Taille maximale du vecteur de mouvement en pixels. -1 pour automatique." -#: modules/codec/x264.c:265 -#, fuzzy +#: modules/codec/x264.c:271 msgid "Minimum buffer space between threads" -msgstr "Minimiser le nombre de threads" +msgstr "Minimiser la taille des tampons entre les threads" -#: modules/codec/x264.c:266 -#, fuzzy +#: modules/codec/x264.c:272 msgid "" "Minimum buffer space between threads. -1 is automatic, based on number of " "threads." -msgstr "Minimiser le nombre de threads" +msgstr "" +"Taille minimale des tampons entre les threads. -1 pour automatique, bas? sur " +"le nombre de threads." -#: modules/codec/x264.c:270 +#: modules/codec/x264.c:276 msgid "Subpixel motion estimation and partition decision quality" msgstr "" "Qualit? de l?estimation de mouvement sous-pixel et de la d?cision de " "partition" -#: modules/codec/x264.c:274 -#, fuzzy +#: modules/codec/x264.c:280 +msgid "" +"This parameter controls quality versus speed tradeoffs involved in the " +"motion estimation decision process (lower = quicker and higher = better " +"quality). Range 1 to 9." +msgstr "" +"Ce param?tre contr?le la qualit? par rapport aux compromis de vitesses " +"impliqu?es dans le processus de choix du mouvement estim? (faible = plus " +"rapide et ?lev? = meilleure qualit?). Valeurs de 1 ? 9." + +#: modules/codec/x264.c:285 msgid "" "This parameter controls quality versus speed tradeoffs involved in the " "motion estimation decision process (lower = quicker and higher = better " @@ -10549,10 +10882,9 @@ msgid "" msgstr "" "Ce param?tre contr?le la qualit? par rapport aux compromis de vitesses " "impliqu?es dans le processus de choix du mouvement estim? (faible = plus " -"rapide et ?lev? = meilleure qualit?)." +"rapide et ?lev? = meilleure qualit?). Valeurs de 1 ? 7." -#: modules/codec/x264.c:279 -#, fuzzy +#: modules/codec/x264.c:290 msgid "" "This parameter controls quality versus speed tradeoffs involved in the " "motion estimation decision process (lower = quicker and higher = better " @@ -10560,10 +10892,9 @@ msgid "" msgstr "" "Ce param?tre contr?le la qualit? par rapport aux compromis de vitesses " "impliqu?es dans le processus de choix du mouvement estim? (faible = plus " -"rapide et ?lev? = meilleure qualit?)." +"rapide et ?lev? = meilleure qualit?). Valeurs de 1 ? 6." -#: modules/codec/x264.c:284 -#, fuzzy +#: modules/codec/x264.c:295 msgid "" "This parameter controls quality versus speed tradeoffs involved in the " "motion estimation decision process (lower = quicker and higher = better " @@ -10571,24 +10902,23 @@ msgid "" msgstr "" "Ce param?tre contr?le la qualit? par rapport aux compromis de vitesses " "impliqu?es dans le processus de choix du mouvement estim? (faible = plus " -"rapide et ?lev? = meilleure qualit?)." +"rapide et ?lev? = meilleure qualit?). Valeurs de 1 ? 5." -#: modules/codec/x264.c:289 -#, fuzzy +#: modules/codec/x264.c:300 msgid "RD based mode decision for B-frames" msgstr "Mode de d?cision pour images B bas? sur RD" -#: modules/codec/x264.c:290 -#, fuzzy +#: modules/codec/x264.c:301 msgid "RD based mode decision for B-frames. This requires subme 6 (or higher)." msgstr "" -"Mode de d?cision pour les images B bas? sur RD. Ceci n?cessite subme 6." +"Mode de d?cision pour les images B bas? sur RD. Ceci n?cessite subme 6 (ou " +"plus)." -#: modules/codec/x264.c:293 +#: modules/codec/x264.c:304 msgid "Decide references on a per partition basis" msgstr "D?cider des r?f?rences pour chaque partition" -#: modules/codec/x264.c:294 +#: modules/codec/x264.c:305 msgid "" "Allows each 8x8 or 16x8 partition to independently select a reference frame, " "as opposed to only one ref per macroblock." @@ -10596,37 +10926,35 @@ msgstr "" "Permettre ? chaque partition 8x8 ou 16x8 de choisir une image de r?f?rence, " "? l?inverse d?une seule r?f?rence par macrobloc." -#: modules/codec/x264.c:298 -#, fuzzy +#: modules/codec/x264.c:309 msgid "Chroma in motion estimation" -msgstr "Ignorer le chroma dans l?estimation de mouvement" +msgstr "Chroma dans l?estimation de mouvement" -#: modules/codec/x264.c:299 -#, fuzzy +#: modules/codec/x264.c:310 msgid "Chroma ME for subpel and mode decision in P-frames." msgstr "Mode de d?cision pour images B bas? sur RD" -#: modules/codec/x264.c:302 +#: modules/codec/x264.c:313 msgid "Jointly optimize both MVs in B-frames" msgstr "Optimiser les deux vecteurs de mouvement dans les images B" -#: modules/codec/x264.c:303 +#: modules/codec/x264.c:314 msgid "Joint bidirectional motion refinement." msgstr "Am?lioration de mouvement bidirectionnelle conjointe" -#: modules/codec/x264.c:305 +#: modules/codec/x264.c:316 msgid "Adaptive spatial transform size" msgstr "Taille de la transformation spatiale adaptative" -#: modules/codec/x264.c:307 +#: modules/codec/x264.c:318 msgid "SATD-based decision for 8x8 transform in inter-MBs." msgstr "D?cision bas?e sur SADT pour les transformations 8x8." -#: modules/codec/x264.c:309 +#: modules/codec/x264.c:320 msgid "Trellis RD quantization" msgstr "Quantisation treillis RD" -#: modules/codec/x264.c:310 +#: modules/codec/x264.c:321 msgid "" "Trellis RD quantization: \n" " - 0: disabled\n" @@ -10635,244 +10963,242 @@ msgid "" "This requires CABAC." msgstr "" "Quantisation treillis RD : \n" -"- 0 : d?sactiv?\n" -"- 1 : activ? seulement ? l?encodage final d?un macrobloc\n" -"- 2 : activ? sur toutes les d?cisions de mode.\n" +" - 0?: d?sactiv?\n" +" - 1?: activ? seulement ? l?encodage final d?un macrobloc\n" +" - 2?: activ? sur toutes les d?cisions de mode.\n" "Ceci n?cessite CABAC." -#: modules/codec/x264.c:316 +#: modules/codec/x264.c:327 msgid "Early SKIP detection on P-frames" msgstr "D?tection SKIP pr?coce sur images P" -#: modules/codec/x264.c:317 +#: modules/codec/x264.c:328 msgid "Early SKIP detection on P-frames." msgstr "D?tection SKIP pr?coce sur images P." -#: modules/codec/x264.c:319 +#: modules/codec/x264.c:330 msgid "Coefficient thresholding on P-frames" -msgstr "" +msgstr "Co?fficient de seuil sur les images P" -#: modules/codec/x264.c:320 +#: modules/codec/x264.c:331 msgid "" "Coefficient thresholding on P-frames.Eliminate dct blocks containing only a " "small single coefficient." msgstr "" -#: modules/codec/x264.c:325 -#, fuzzy +#: modules/codec/x264.c:336 msgid "" "Dct-domain noise reduction. Adaptive pseudo-deadzone. 10 to 1000 seems to be " "a useful range." -msgstr "R?duction de bruit DCT. Pseudo zone morte adaptative." +msgstr "" +"R?duction de bruit DCT. Pseudo zone morte adaptative. Valeurs de 10 ? 100 " +"correctes" -#: modules/codec/x264.c:329 -#, fuzzy +#: modules/codec/x264.c:340 msgid "Inter luma quantization deadzone" -msgstr "Facteur de quantization I" +msgstr "" -#: modules/codec/x264.c:330 -#, fuzzy +#: modules/codec/x264.c:341 msgid "Set the size of the inter luma quantization deadzone. Range 0 to 32." -msgstr "Facteur de quantization I" +msgstr "" -#: modules/codec/x264.c:333 -#, fuzzy +#: modules/codec/x264.c:344 msgid "Intra luma quantization deadzone" -msgstr "Facteur de quantization I" +msgstr "" -#: modules/codec/x264.c:334 -#, fuzzy +#: modules/codec/x264.c:345 msgid "Set the size of the intra luma quantization deadzone. Range 0 to 32." -msgstr "Facteur de quantization I" +msgstr "" -#: modules/codec/x264.c:341 +#: modules/codec/x264.c:352 msgid "Non-deterministic optimizations when threaded" msgstr "" -#: modules/codec/x264.c:342 +#: modules/codec/x264.c:353 msgid "Slightly improve quality of SMP, at the cost of repeatability." msgstr "" -#: modules/codec/x264.c:346 +#: modules/codec/x264.c:357 msgid "CPU optimizations" msgstr "Optimisations CPU" -#: modules/codec/x264.c:347 +#: modules/codec/x264.c:358 msgid "Use assembler CPU optimizations." msgstr "Utilisation les optimisations CPU assembleur" -#: modules/codec/x264.c:349 +#: modules/codec/x264.c:360 msgid "Filename for 2 pass stats file" -msgstr "" +msgstr "Nom du fichier de stats en mode 2 passes" -#: modules/codec/x264.c:350 +#: modules/codec/x264.c:361 msgid "Filename for 2 pass stats file for multi-pass encoding." -msgstr "" +msgstr "Nom du fichier de stats en mode multi-passes." -#: modules/codec/x264.c:352 +#: modules/codec/x264.c:363 msgid "PSNR computation" msgstr "Calcul PSNR" -#: modules/codec/x264.c:353 +#: modules/codec/x264.c:364 msgid "" "Compute and print PSNR stats. This has no effect on the actual encoding " "quality." msgstr "" -#: modules/codec/x264.c:356 +#: modules/codec/x264.c:367 msgid "SSIM computation" msgstr "Calcul SSIM" -#: modules/codec/x264.c:357 +#: modules/codec/x264.c:368 msgid "" "Compute and print SSIM stats. This has no effect on the actual encoding " "quality." msgstr "" -#: modules/codec/x264.c:360 +#: modules/codec/x264.c:371 msgid "Quiet mode" -msgstr "Mode ? calme ?" +msgstr "Mode ??calme??" -#: modules/codec/x264.c:361 +#: modules/codec/x264.c:372 msgid "Quiet mode." -msgstr "Mode ? calme ?." +msgstr "Mode ??calme??." -#: modules/codec/x264.c:363 modules/gui/macosx/playlistinfo.m:78 +#: modules/codec/x264.c:374 modules/gui/macosx/playlistinfo.m:78 #: modules/gui/qt4/ui/streampanel.ui:28 msgid "Statistics" msgstr "Statistiques" -#: modules/codec/x264.c:364 +#: modules/codec/x264.c:375 msgid "Print stats for each frame." msgstr "Afficher des statistiques pour chaque image." -#: modules/codec/x264.c:367 +#: modules/codec/x264.c:378 msgid "SPS and PPS id numbers" msgstr "" -#: modules/codec/x264.c:368 +#: modules/codec/x264.c:379 msgid "" "Set SPS and PPS id numbers to allow concatenating streams with different " "settings." msgstr "" -#: modules/codec/x264.c:372 -#, fuzzy +#: modules/codec/x264.c:383 msgid "Access unit delimiters" -msgstr "Filtres d?acc?s" +msgstr "" -#: modules/codec/x264.c:373 -#, fuzzy +#: modules/codec/x264.c:384 msgid "Generate access unit delimiter NAL units." -msgstr "Filtres d?acc?s" +msgstr "" -#: modules/codec/x264.c:379 modules/codec/x264.c:386 +#: modules/codec/x264.c:390 modules/codec/x264.c:397 msgid "dia" msgstr "dia" -#: modules/codec/x264.c:379 modules/codec/x264.c:386 +#: modules/codec/x264.c:390 modules/codec/x264.c:397 msgid "hex" msgstr "hex" -#: modules/codec/x264.c:379 modules/codec/x264.c:386 +#: modules/codec/x264.c:390 modules/codec/x264.c:397 msgid "umh" msgstr "umh" -#: modules/codec/x264.c:379 modules/codec/x264.c:386 +#: modules/codec/x264.c:390 modules/codec/x264.c:397 msgid "esa" msgstr "esa" -#: modules/codec/x264.c:386 +#: modules/codec/x264.c:397 msgid "tesa" msgstr "tesa" -#: modules/codec/x264.c:392 +#: modules/codec/x264.c:403 msgid "fast" msgstr "rapide" -#: modules/codec/x264.c:392 +#: modules/codec/x264.c:403 msgid "normal" msgstr "normal" -#: modules/codec/x264.c:392 +#: modules/codec/x264.c:403 msgid "slow" msgstr "lent" -#: modules/codec/x264.c:392 +#: modules/codec/x264.c:403 msgid "all" msgstr "tous" -#: modules/codec/x264.c:398 modules/codec/x264.c:403 +#: modules/codec/x264.c:409 modules/codec/x264.c:414 msgid "spatial" msgstr "spatial" -#: modules/codec/x264.c:398 modules/codec/x264.c:403 +#: modules/codec/x264.c:409 modules/codec/x264.c:414 msgid "temporal" msgstr "temporal" -#: modules/codec/x264.c:398 modules/gui/pda/pda_interface.c:741 +#: modules/codec/x264.c:409 modules/gui/pda/pda_interface.c:741 #: modules/video_filter/mosaic.c:168 msgid "auto" msgstr "auto" -#: modules/codec/x264.c:407 -msgid "H.264/MPEG4 AVC encoder (using x264 library)" -msgstr "Encodeur vid?o H264 utilisant la biblioth?que x264" +#: modules/codec/x264.c:418 +msgid "H.264/MPEG4 AVC encoder (x264)" +msgstr "Encodeur vid?o H.264/MPEG4 (utilisant x264)" #: modules/codec/xvmc/xxmc.c:104 -#, fuzzy msgid "MPEG I/II hw video decoder (using libmpeg2)" msgstr "D?codeur vid?o MPEG I/II (utilisant libmpeg2)" -#: modules/codec/zvbi.c:58 +#: modules/codec/zvbi.c:59 msgid "Teletext page" msgstr "Page t?l?texte" -#: modules/codec/zvbi.c:59 +#: modules/codec/zvbi.c:60 msgid "Open the indicated Teletext page.Default page is index 100" -msgstr "" +msgstr "Ouvrir la page T?l?texte indiqu?e. Par d?faut d'index 100" -#: modules/codec/zvbi.c:62 +#: modules/codec/zvbi.c:63 msgid "Text is always opaque" -msgstr "" +msgstr "Texte toujours opaque" -#: modules/codec/zvbi.c:63 +#: modules/codec/zvbi.c:64 msgid "Setting vbi-opaque to false makes the boxed text transparent." msgstr "" -#: modules/codec/zvbi.c:66 +#: modules/codec/zvbi.c:67 msgid "Teletext alignment" msgstr "Alignement T?l?texte" -#: modules/codec/zvbi.c:68 -#, fuzzy +#: modules/codec/zvbi.c:69 msgid "" "You can enforce the teletext position on the video (0=center, 1=left, " "2=right, 4=top, 8=bottom, you can also use combinations of these values, eg. " "6 = top-right)." msgstr "" -"Forcer la position de l?heure sur la vid?o. (0=centr?, 1=gauche, 2=droite, " +"Forcer la position du t?l?texte sur la vid?o. (0=centr?, 1=gauche, 2=droite, " "4=haut, 8=bas, vous pouvez ?galement sp?cifier une combinaison des ces " "valeurs en les additionant, par exemple 6 = haut-droit)." -#: modules/codec/zvbi.c:72 -#, fuzzy +#: modules/codec/zvbi.c:73 msgid "Teletext text subtitles" -msgstr "D?codeur de sous-titres texte" +msgstr "D?codeur de sous-titres t?l?texte" -#: modules/codec/zvbi.c:73 +#: modules/codec/zvbi.c:74 msgid "Output teletext subtitles as text instead of as RGBA" msgstr "" -#: modules/codec/zvbi.c:82 -#, fuzzy +#: modules/codec/zvbi.c:83 msgid "VBI and Teletext decoder" -msgstr "D?codeur de sous-titres texte" +msgstr "D?codeur de sous-titres VBI et T?l?texte" -#: modules/codec/zvbi.c:83 -#, fuzzy +#: modules/codec/zvbi.c:84 msgid "VBI & Teletext" -msgstr "D?codeur de sous-titres texte" +msgstr "VBI & T?l?texte" + +#: modules/codec/zvbi.c:686 +msgid "Subpage" +msgstr "Sous-Page" + +#: modules/codec/zvbi.c:700 +msgid "Page" +msgstr "Page" #: modules/control/dbus.c:111 msgid "dbus" @@ -10911,72 +11237,102 @@ msgstr "Mouvements" msgid "Mouse gestures control interface" msgstr "Interface de contr?le par mouvements de souris" -#: modules/control/hotkeys.c:94 +#: modules/control/globalhotkeys/win32.c:46 +#: modules/control/globalhotkeys/x11.c:47 +msgid "Global Hotkeys" +msgstr "Raccourcis" + +#: modules/control/globalhotkeys/win32.c:49 +#: modules/control/globalhotkeys/x11.c:50 +msgid "Global Hotkeys interface" +msgstr "Interface de combinaisons de touches" + +#: modules/control/hotkeys.c:96 msgid "Define playlist bookmarks." msgstr "R?gler les favoris" -#: modules/control/hotkeys.c:97 modules/gui/macosx/simple_prefs.m:193 -#: modules/gui/qt4/components/simple_preferences.cpp:84 +#: modules/control/hotkeys.c:99 modules/gui/macosx/simple_prefs.m:193 +#: modules/gui/qt4/components/simple_preferences.cpp:85 msgid "Hotkeys" msgstr "Raccourcis" -#: modules/control/hotkeys.c:98 +#: modules/control/hotkeys.c:100 msgid "Hotkeys management interface" msgstr "Interface de combinaisons de touches" -#: modules/control/hotkeys.c:393 +#: modules/control/hotkeys.c:405 #, c-format msgid "Audio Device: %s" -msgstr "P?riph?rique audio: %s" +msgstr "P?riph?rique audio?: %s" -#: modules/control/hotkeys.c:497 +#: modules/control/hotkeys.c:509 #, c-format msgid "Audio track: %s" -msgstr "Piste audio : %s" +msgstr "Piste audio?: %s" -#: modules/control/hotkeys.c:512 modules/control/hotkeys.c:541 +#: modules/control/hotkeys.c:524 modules/control/hotkeys.c:553 #, c-format msgid "Subtitle track: %s" -msgstr "Piste de sous-titres : %s" +msgstr "Piste de sous-titres?: %s" -#: modules/control/hotkeys.c:512 +#: modules/control/hotkeys.c:524 msgid "N/A" -msgstr "N/A" +msgstr "N/D" -#: modules/control/hotkeys.c:565 +#: modules/control/hotkeys.c:577 #, c-format msgid "Aspect ratio: %s" -msgstr "Ratio d?aspect : %s" +msgstr "Ratio d?aspect?: %s" -#: modules/control/hotkeys.c:593 +#: modules/control/hotkeys.c:605 #, c-format msgid "Crop: %s" -msgstr "Rognage : %s" +msgstr "Rognage?: %s" + +#: modules/control/hotkeys.c:619 +msgid "Zooming reset" +msgstr "" -#: modules/control/hotkeys.c:621 +#: modules/control/hotkeys.c:627 +msgid "Scaled to screen" +msgstr "Ajuster ? l??cran" + +#: modules/control/hotkeys.c:630 +msgid "Original Size" +msgstr "Taille originale" + +#: modules/control/hotkeys.c:672 #, c-format msgid "Deinterlace mode: %s" -msgstr "D?sentrelacement : %s" +msgstr "D?sentrelacement?: %s" -#: modules/control/hotkeys.c:653 +#: modules/control/hotkeys.c:704 #, c-format msgid "Zoom mode: %s" -msgstr "Mode de Zoom: %s" +msgstr "Mode de Zoom?: %s" -#: modules/control/hotkeys.c:736 modules/control/hotkeys.c:746 +#: modules/control/hotkeys.c:793 modules/control/hotkeys.c:803 #, c-format msgid "Subtitle delay %i ms" msgstr "Retard des sous-titres %i ms" -#: modules/control/hotkeys.c:756 modules/control/hotkeys.c:766 +#: modules/control/hotkeys.c:813 modules/control/hotkeys.c:823 #, c-format msgid "Audio delay %i ms" msgstr "Retard de l'audio %i ms" -#: modules/control/hotkeys.c:1015 +#: modules/control/hotkeys.c:877 +msgid "Recording" +msgstr "Enregistrement" + +#: modules/control/hotkeys.c:879 +msgid "Recording done" +msgstr "Enregistrement effectu?" + +#: modules/control/hotkeys.c:1093 #, c-format msgid "Volume %d%%" -msgstr "Volume : %d%%" +msgstr "Volume?: %d%%" #: modules/control/http/http.c:39 msgid "Host address" @@ -10995,7 +11351,7 @@ msgstr "" #: modules/control/http/http.c:45 modules/control/http/http.c:46 msgid "Source directory" -msgstr "R?pertoire source" +msgstr "Dossier source" #: modules/control/http/http.c:47 msgid "Handlers" @@ -11011,13 +11367,15 @@ msgstr "" #: modules/control/http/http.c:51 msgid "Export album art as /art." -msgstr "" +msgstr "Exporter la jaquette vers ??/art??" #: modules/control/http/http.c:53 msgid "" "Allow exporting album art for current playlist items at the /art and /art?" "id= URLs." msgstr "" +"Permet d'exporter les jaquettes pour les ?l?ments de la liste de lecture " +"courante vers les URLS /art et /art? id=." #: modules/control/http/http.c:56 msgid "HTTP interface x509 PEM certificate file (enables SSL)." @@ -11047,22 +11405,21 @@ msgstr "Interface de commande ? distance HTTP" msgid "HTTP SSL" msgstr "HTTP SSL" -#: modules/control/lirc.c:41 -#, fuzzy +#: modules/control/lirc.c:45 msgid "Change the lirc configuration file." -msgstr "Fichier de configuration" +msgstr "Changer le fichier de configuration lirc" -#: modules/control/lirc.c:43 +#: modules/control/lirc.c:47 msgid "" "Tell lirc to read this configuration file. By default it searches in the " "users home directory." msgstr "" -#: modules/control/lirc.c:66 +#: modules/control/lirc.c:57 msgid "Infrared" msgstr "Infrarouge" -#: modules/control/lirc.c:69 +#: modules/control/lirc.c:60 msgid "Infrared remote control interface" msgstr "Interface de contr?le ? distance par infra-rouge" @@ -11071,39 +11428,37 @@ msgid "Use the rotate video filter instead of transform" msgstr "" #: modules/control/motion.c:78 -#, fuzzy msgid "motion" -msgstr "Position" +msgstr "" #: modules/control/motion.c:80 -#, fuzzy msgid "motion control interface" -msgstr "Interface de commande ? distance" +msgstr "" #: modules/control/motion.c:81 msgid "" "Use HDAPS, AMS, APPLESMC or UNIMOTION motion sensors to rotate the video" msgstr "" -#: modules/control/netsync.c:71 +#: modules/control/netsync.c:66 msgid "Act as master" msgstr "Ma?tre" -#: modules/control/netsync.c:72 +#: modules/control/netsync.c:67 msgid "Should act as the master client for the network synchronisation?" msgstr "Agir en tant que ma?tre pour la synchronisation r?seau." -#: modules/control/netsync.c:76 +#: modules/control/netsync.c:71 msgid "Master client ip address" msgstr "Adresse IP du client ma?tre" -#: modules/control/netsync.c:77 +#: modules/control/netsync.c:72 msgid "IP address of the master client used for the network synchronisation." msgstr "" "Adresse IP du client ma?tre pour la synchronisation r?seau (uniquement en " "mode esclave)." -#: modules/control/netsync.c:81 +#: modules/control/netsync.c:76 msgid "Network Sync" msgstr "Synchronisation r?seau" @@ -11163,78 +11518,61 @@ msgstr "Service NT" msgid "Windows Service interface" msgstr "Interface de service Windows NT/2K/XP" -#: modules/control/rc.c:72 -#, fuzzy -msgid "Initializing" -msgstr "Italien" - #: modules/control/rc.c:73 -#, fuzzy -msgid "Opening" -msgstr "Ouvrir th?me" +msgid "Initializing" +msgstr "Initialisation" #: modules/control/rc.c:74 -#, fuzzy -msgid "Buffer" -msgstr "Buffer VBV" +msgid "Opening" +msgstr "Ouverture" -#: modules/control/rc.c:76 modules/gui/macosx/embeddedwindow.m:151 -#: modules/gui/macosx/intf.m:1789 modules/gui/macosx/intf.m:1790 -#: modules/gui/macosx/intf.m:1791 modules/gui/macosx/intf.m:1792 +#: modules/control/rc.c:76 modules/gui/macosx/embeddedwindow.m:135 +#: modules/gui/macosx/intf.m:1836 modules/gui/macosx/intf.m:1837 +#: modules/gui/macosx/intf.m:1838 modules/gui/macosx/intf.m:1839 #: modules/gui/pda/pda_interface.c:248 modules/gui/pda/pda_interface.c:249 -#: modules/gui/qt4/menus.cpp:647 modules/misc/notify/xosd.c:243 +#: modules/gui/qt4/menus.cpp:710 modules/misc/notify/xosd.c:245 msgid "Pause" msgstr "Pause" -#: modules/control/rc.c:78 modules/gui/pda/pda_interface.c:284 -#: modules/gui/pda/pda_interface.c:285 -msgid "Forward" -msgstr "En avant" - -#: modules/control/rc.c:79 -#, fuzzy -msgid "Backward" -msgstr "&Retour arri?re" - -#: modules/control/rc.c:80 +#: modules/control/rc.c:77 msgid "End" msgstr "Fin" -#: modules/control/rc.c:81 modules/gui/macosx/interaction.m:140 +#: modules/control/rc.c:78 modules/gui/macosx/interaction.m:140 msgid "Error" msgstr "Erreur" -#: modules/control/rc.c:170 +#: modules/control/rc.c:165 msgid "Show stream position" msgstr "Montrer la position dans le flux" -#: modules/control/rc.c:171 +#: modules/control/rc.c:166 msgid "" "Show the current position in seconds within the stream from time to time." msgstr "" "Affiche la position actuelle en secondes dans le flux de temps en temps." -#: modules/control/rc.c:174 +#: modules/control/rc.c:169 msgid "Fake TTY" msgstr "TTY factice" -#: modules/control/rc.c:175 +#: modules/control/rc.c:170 msgid "Force the rc module to use stdin as if it was a TTY." msgstr "Force le module rc ? utiliser stdin comme si c??tait une TTY" -#: modules/control/rc.c:177 +#: modules/control/rc.c:172 msgid "UNIX socket command input" msgstr "Entr?e de commandes par Socket Unix" -#: modules/control/rc.c:178 +#: modules/control/rc.c:173 msgid "Accept commands over a Unix socket rather than stdin." msgstr "Permet d?accepter les commandes sur une socket Unix plut?t que stdin." -#: modules/control/rc.c:181 +#: modules/control/rc.c:176 msgid "TCP command input" msgstr "Entr?e de commandes par TCP/IP" -#: modules/control/rc.c:182 +#: modules/control/rc.c:177 msgid "" "Accept commands over a socket rather than stdin. You can set the address and " "port the interface will bind to." @@ -11242,515 +11580,465 @@ msgstr "" "Ceci permet d?accepter les commandes sur une socket plut?t que stdin. Vous " "pouvez r?gler l?adresse et le port sur lesquels ?couter." -#: modules/control/rc.c:186 modules/misc/dummy/dummy.c:52 +#: modules/control/rc.c:181 modules/misc/dummy/dummy.c:52 msgid "Do not open a DOS command box interface" msgstr "Ne pas ouvrir une interface de commande DOS" -#: modules/control/rc.c:188 +#: modules/control/rc.c:183 msgid "" "By default the rc interface plugin will start a DOS command box. Enabling " "the quiet mode will not bring this command box but can also be pretty " "annoying when you want to stop VLC and no video window is open." msgstr "" "Par d?faut, l?interface rc lancera une interface de commande DOS. En " -"activant le mode ? quiet ?, ce ne sera pas fait, mais cela peut ?tre ennuyeux " +"activant le mode ??quiet??, ce ne sera pas fait, mais cela peut ?tre ennuyeux " "si vous voulez arr?ter VLC alors qu?aucune vid?o n?est affich?e." -#: modules/control/rc.c:195 +#: modules/control/rc.c:190 msgid "RC" msgstr "RC" -#: modules/control/rc.c:198 +#: modules/control/rc.c:193 msgid "Remote control interface" msgstr "Interface de commande ? distance" -#: modules/control/rc.c:347 +#: modules/control/rc.c:342 msgid "Remote control interface initialized. Type `help' for help." msgstr "" -"Interface de commande ? distance initialis?e, ? h ? pour obtenir de l?aide." +"Interface de commande ? distance initialis?e, ??h?? pour obtenir de l?aide." -#: modules/control/rc.c:820 +#: modules/control/rc.c:817 #, c-format msgid "Unknown command `%s'. Type `help' for help." -msgstr "Commande inconnue ? %s ?, tapez ? help ? pour obtenir de l?aide." +msgstr "Commande inconnue ??%s??, tapez ??help?? pour obtenir de l?aide." -#: modules/control/rc.c:853 +#: modules/control/rc.c:851 msgid "+----[ Remote control commands ]" msgstr "+----[ Commandes de l?interface ? distance ]" -#: modules/control/rc.c:855 +#: modules/control/rc.c:853 msgid "| add XYZ . . . . . . . . . . . . add XYZ to playlist" msgstr "| add XYZ . . . . ajoute XYZ ? la playlist et le lit" -#: modules/control/rc.c:856 +#: modules/control/rc.c:854 msgid "| enqueue XYZ . . . . . . . . . queue XYZ to playlist" msgstr "| enqueue XYZ . . . . . . . ajoute XYZ ? la playlist" -#: modules/control/rc.c:857 +#: modules/control/rc.c:855 msgid "| playlist . . . . . show items currently in playlist" msgstr "| playlist . . . afficher les ?l?ments de la playlist" -#: modules/control/rc.c:858 +#: modules/control/rc.c:856 msgid "| play . . . . . . . . . . . . . . . . . . play stream" msgstr "| play . . . . . . . . . . . . . . . . . . . . . jouer" -#: modules/control/rc.c:859 +#: modules/control/rc.c:857 msgid "| stop . . . . . . . . . . . . . . . . . . stop stream" msgstr "| stop . . . . . . . . . . . . . . . . . . . . arr?ter" -#: modules/control/rc.c:860 +#: modules/control/rc.c:858 msgid "| next . . . . . . . . . . . . . . next playlist item" msgstr "| next . . . . . . . . . . . . . . . . ?l?ment suivant" -#: modules/control/rc.c:861 +#: modules/control/rc.c:859 msgid "| prev . . . . . . . . . . . . previous playlist item" msgstr "| prev . . . . . . . . . . . . . . . ?l?ment pr?c?dent" -#: modules/control/rc.c:862 +#: modules/control/rc.c:860 msgid "| goto . . . . . . . . . . . . . . goto item at index" msgstr "| goto . . . . . . . . . . . . . . aller ? la position" -#: modules/control/rc.c:863 +#: modules/control/rc.c:861 msgid "| repeat [on|off] . . . . toggle playlist item repeat" -msgstr "| repeat [on|off]. . . . basculer le mode ? r?p?ter ?" +msgstr "| repeat [on|off]. . . . basculer le mode ??r?p?ter??" -#: modules/control/rc.c:864 -#, fuzzy +#: modules/control/rc.c:862 msgid "| loop [on|off] . . . . . . . . . toggle playlist loop" -msgstr "| loop [on|off]. . . . . basculer le mode ? boucler ?" +msgstr "| loop [on|off]. . . . . basculer le mode ??boucler??" -#: modules/control/rc.c:865 -#, fuzzy +#: modules/control/rc.c:863 msgid "| random [on|off] . . . . . . . toggle random jumping" -msgstr "| loop [on|off]. . . . . basculer le mode ? boucler ?" +msgstr "| random [on|off]. . . basculer le mode ??al?atoire??" -#: modules/control/rc.c:866 -#, fuzzy +#: modules/control/rc.c:864 msgid "| clear . . . . . . . . . . . . . . clear the playlist" msgstr "| clear . . . . . . . . . . vider la liste de lecture" -#: modules/control/rc.c:867 +#: modules/control/rc.c:865 msgid "| status . . . . . . . . . . . current playlist status" msgstr "| status . . . . . . . . . . afficher les informations" -#: modules/control/rc.c:868 +#: modules/control/rc.c:866 msgid "| title [X] . . . . . . set/get title in current item" msgstr "| title [X] . . . . afficher/modifier le titre courant" -#: modules/control/rc.c:869 +#: modules/control/rc.c:867 msgid "| title_n . . . . . . . . next title in current item" msgstr "| title_n . . . . . . . . . . . . . . . titre suivant" -#: modules/control/rc.c:870 +#: modules/control/rc.c:868 msgid "| title_p . . . . . . previous title in current item" msgstr "| title_p . . . . . . . . . . . . . . titre pr?c?dent" -#: modules/control/rc.c:871 +#: modules/control/rc.c:869 msgid "| chapter [X] . . . . set/get chapter in current item" msgstr "| chapter [X] . . . . . modifier/afficher le chapitre" -#: modules/control/rc.c:872 +#: modules/control/rc.c:870 msgid "| chapter_n . . . . . . next chapter in current item" msgstr "| chapter_n . . . . . . . . . . . . . chapitre suivant" -#: modules/control/rc.c:873 +#: modules/control/rc.c:871 msgid "| chapter_p . . . . previous chapter in current item" msgstr "| chapter_p . . . . . . . . . . . . chapitre pr?c?dent" -#: modules/control/rc.c:875 +#: modules/control/rc.c:873 msgid "| seek X . . . seek in seconds, for instance `seek 12'" -msgstr "| seek X . . se d?placer, en secondes, ex. ? seek 12 ?" +msgstr "| seek X . . se d?placer, en secondes, ex. ??seek 12??" -#: modules/control/rc.c:876 +#: modules/control/rc.c:874 msgid "| pause . . . . . . . . . . . . . . . . toggle pause" msgstr "| pause . . . . . . . . . . . . . . basculer la pause" -#: modules/control/rc.c:877 +#: modules/control/rc.c:875 msgid "| fastforward . . . . . . . . . set to maximum rate" msgstr "| fastforward . . . . . . . . . . . . . avance rapide" -#: modules/control/rc.c:878 +#: modules/control/rc.c:876 msgid "| rewind . . . . . . . . . . . . set to minimum rate" msgstr "| rewind . . . . . . . . . . . . . . . . . rembobiner" -#: modules/control/rc.c:879 +#: modules/control/rc.c:877 msgid "| faster . . . . . . . . . . faster playing of stream" msgstr "| play . . . . . . . . . . . . . . . . jouer plus vite" -#: modules/control/rc.c:880 +#: modules/control/rc.c:878 msgid "| slower . . . . . . . . . . slower playing of stream" msgstr "| slower . . . . . . . . . . . . jouer plus lentement" -#: modules/control/rc.c:881 +#: modules/control/rc.c:879 msgid "| normal . . . . . . . . . . normal playing of stream" msgstr "| normal . . . . . . . . . . . jouer ? vitesse normale" -#: modules/control/rc.c:882 +#: modules/control/rc.c:880 msgid "| f [on|off] . . . . . . . . . . . . toggle fullscreen" -msgstr "| f [on|off]. . . . . . . basculer le mode plein-?cran" +msgstr "| f [on|off]. . . . . . . basculer le mode plein ?cran" -#: modules/control/rc.c:883 +#: modules/control/rc.c:881 msgid "| info . . . . . information about the current stream" msgstr "| info . . . . . . . informations sur le flux courant" -#: modules/control/rc.c:884 -#, fuzzy +#: modules/control/rc.c:882 msgid "| stats . . . . . . . . show statistical information" -msgstr "| status . . . . . . . . . . afficher les informations" +msgstr "| stats . . . . . . . . . . afficher les informations" -#: modules/control/rc.c:885 +#: modules/control/rc.c:883 msgid "| get_time . . seconds elapsed since stream's beginning" -msgstr "| get_time . . . temps parcouru depuis le d?but du flux" +msgstr "| get_time . . temps parcouru depuis le d?but du flux" -#: modules/control/rc.c:886 +#: modules/control/rc.c:884 msgid "| is_playing . . . . 1 if a stream plays, 0 otherwise" msgstr "| is_playing . . . . 1 si un ?l?ment est jou?, 0 sinon" -#: modules/control/rc.c:887 +#: modules/control/rc.c:885 msgid "| get_title . . . . . the title of the current stream" msgstr "| get_title . . . . afficher le titre du flux courant" -#: modules/control/rc.c:888 +#: modules/control/rc.c:886 msgid "| get_length . . . . the length of the current stream" msgstr "| get_length . . . . . . . la longueur du flux courant" -#: modules/control/rc.c:890 +#: modules/control/rc.c:888 msgid "| volume [X] . . . . . . . . . . set/get audio volume" msgstr "| volume [X] . . . . . . . modifier/afficher le volume" -#: modules/control/rc.c:891 -#, fuzzy +#: modules/control/rc.c:889 msgid "| volup [X] . . . . . . . raise audio volume X steps" -msgstr "| volup [X] . . . . . . . . augmenter le volume de X" +msgstr "| volup [X] . . . . . . . . augmenter le volume de X" -#: modules/control/rc.c:892 -#, fuzzy +#: modules/control/rc.c:890 msgid "| voldown [X] . . . . . . lower audio volume X steps" -msgstr "| voldown [X] . . . . . . .diminuer le volume de X" +msgstr "| voldown [X] . . . . . . . . diminuer le volume de X" -#: modules/control/rc.c:893 -#, fuzzy +#: modules/control/rc.c:891 msgid "| adev [X] . . . . . . . . . . . set/get audio device" -msgstr "| adev [X] . . . . . . . . . modifier/afficher le p?riph?rique audio" +msgstr "| adev [X] . . modifier/afficher le p?riph?rique audio" -#: modules/control/rc.c:894 -#, fuzzy +#: modules/control/rc.c:892 msgid "| achan [X]. . . . . . . . . . set/get audio channels" -msgstr "| achan [X] . . . . . . . . modifier/afficher les canaux audios" +msgstr "| achan [X] . . . . modifier/afficher les canaux audio" -#: modules/control/rc.c:895 -#, fuzzy +#: modules/control/rc.c:893 msgid "| atrack [X] . . . . . . . . . . . set/get audio track" -msgstr "| adev [X] . . . . . . . . . modifier/afficher le p?riph?rique audio" +msgstr "| atrack [X] . . . . .modifier/afficher la piste audio" -#: modules/control/rc.c:896 -#, fuzzy +#: modules/control/rc.c:894 msgid "| vtrack [X] . . . . . . . . . . . set/get video track" -msgstr "| adev [X] . . . . . . . . . modifier/afficher le p?riph?rique audio" +msgstr "| vtrack [X] . . . . modifier/afficher la piste vid?o" -#: modules/control/rc.c:897 -#, fuzzy +#: modules/control/rc.c:895 msgid "| vratio [X] . . . . . . . set/get video aspect ratio" -msgstr "" -"| title [X] . . . . . . . . . . afficher le titre courant ou sauter ? un " -"titre" +msgstr "| vratio [X] . . modifier/afficher la proportion vid?o" -#: modules/control/rc.c:898 -#, fuzzy +#: modules/control/rc.c:896 msgid "| vcrop [X] . . . . . . . . . . . set/get video crop" -msgstr "| adev [X] . . . . . . . . . modifier/afficher le p?riph?rique audio" +msgstr "| vcrop [X] . . . . modifier/afficher le rognage vid?o" -#: modules/control/rc.c:899 -#, fuzzy +#: modules/control/rc.c:897 msgid "| vzoom [X] . . . . . . . . . . . set/get video zoom" -msgstr "| volume [X] . . . . . . . .modifier/afficher le volume" +msgstr "| vzoom [X] . . . . . modifier/afficher le zoom vid?o" -#: modules/control/rc.c:900 -#, fuzzy +#: modules/control/rc.c:898 msgid "| snapshot . . . . . . . . . . . . take video snapshot" -msgstr "| adev [X] . . . . . . . . . modifier/afficher le p?riph?rique audio" +msgstr "| snapshot . . . . . . . . prendre une capture d??cran" -#: modules/control/rc.c:901 -#, fuzzy +#: modules/control/rc.c:899 msgid "| strack [X] . . . . . . . . . set/get subtitles track" -msgstr "| achan [X] . . . . . . . . modifier/afficher les canaux audios" +msgstr "| strack [X] . modifier/afficher la piste sous-titres" -#: modules/control/rc.c:902 +#: modules/control/rc.c:900 msgid "| key [hotkey name] . . . . . . simulate hotkey press" -msgstr "" +msgstr "| key [raccourci] . . . simuler l'appui sur raccourci" -#: modules/control/rc.c:903 -#, fuzzy +#: modules/control/rc.c:901 msgid "| menu . . [on|off|up|down|left|right|select] use menu" -msgstr "| menu [on|off|up|down|left|right|select] utiliser le menu" +msgstr "| menu [on|off|up|down|left|right|select] utiliser menu" -#: modules/control/rc.c:908 -#, fuzzy +#: modules/control/rc.c:906 msgid "| @name marq-marquee STRING . . overlay STRING in video" -msgstr "| marq-marquee CHA . . ?crit CHA sur la vid?o" +msgstr "| @name marq-marquee CHA?NE ?crit CHA?NE sur la vid?o" -#: modules/control/rc.c:909 -#, fuzzy +#: modules/control/rc.c:907 msgid "| @name marq-x X . . . . . . . . . . . .offset from left" -msgstr "| marq-x X . . . . . . . . .d?calage du texte depuis la gauche" +msgstr "| @name marq-x X . d?calage du texte depuis la gauche" -#: modules/control/rc.c:910 -#, fuzzy +#: modules/control/rc.c:908 msgid "| @name marq-y Y . . . . . . . . . . . . offset from top" -msgstr "| marq-y Y . . . . . . . . . d?calage du texte depuis le haut" +msgstr "| @name marq-y Y . . d?calage du texte depuis le haut" -#: modules/control/rc.c:911 -#, fuzzy +#: modules/control/rc.c:909 msgid "| @name marq-position #. . . .relative position control" -msgstr "| marq-position # . . . contr?le la position relative du texte" +msgstr "| @name marq-position # . . position relative du texte" -#: modules/control/rc.c:912 -#, fuzzy +#: modules/control/rc.c:910 msgid "| @name marq-color # . . . . . . . . . . font color, RGB" -msgstr "| marq-color # . . . . . . couleur du texte, RGB" +msgstr "| @name marq-color # . . . . . . couleur du texte, RGB" -#: modules/control/rc.c:913 -#, fuzzy +#: modules/control/rc.c:911 msgid "| @name marq-opacity # . . . . . . . . . . . . . opacity" -msgstr "| marq_opacity #. . . . . opacit? du texte" +msgstr "| @name marq_opacity #. . . . . . . . opacit? du texte" -#: modules/control/rc.c:914 -#, fuzzy +#: modules/control/rc.c:912 msgid "| @name marq-timeout T. . . . . . . . . . timeout, in ms" -msgstr "| marq-timeout T . . . . .disparition du texte, en ms" +msgstr "| @name marq-timeout T . . disparition du texte, en ms" -#: modules/control/rc.c:915 -#, fuzzy +#: modules/control/rc.c:913 msgid "| @name marq-size # . . . . . . . . font size, in pixels" -msgstr "| marq-size # . . . . . . . .taille du texte, en pixels" +msgstr "| @name marq-size # . . . . taille du texte, en pixels" -#: modules/control/rc.c:917 -#, fuzzy +#: modules/control/rc.c:915 msgid "| @name logo-file STRING . . .the overlay file path/name" -msgstr "| logo-file CHA?NE. . . fichier de logo ? incruster" +msgstr "| @name logo-file CHA?NE. fichier de logo ? incruster" -#: modules/control/rc.c:918 -#, fuzzy +#: modules/control/rc.c:916 msgid "| @name logo-x X . . . . . . . . . . . .offset from left" -msgstr "| logo-x X . . . . . . . . . .d?calage du logo depuis la gauche" +msgstr "| @name logo-x X . . . . . . d?calage du logo ? gauche" -#: modules/control/rc.c:919 -#, fuzzy +#: modules/control/rc.c:917 msgid "| @name logo-y Y . . . . . . . . . . . . offset from top" -msgstr "| logo-y Y . . . . . . . . . d?calage du logo depuis le haut" +msgstr "| @name logo-y Y . . . . . . d?calage du logo en haut" -#: modules/control/rc.c:920 -#, fuzzy +#: modules/control/rc.c:918 msgid "| @name logo-position #. . . . . . . . relative position" -msgstr "| logo-position # . . . . . position relative du logo" +msgstr "| @name logo-position # . . position relative du logo" -#: modules/control/rc.c:921 -#, fuzzy +#: modules/control/rc.c:919 msgid "| @name logo-transparency #. . . . . . . . .transparency" -msgstr "| logo-transparency #. .transparence du logo" +msgstr "| @name logo-transparency #. . . transparence du logo" -#: modules/control/rc.c:923 -#, fuzzy +#: modules/control/rc.c:921 msgid "| @name mosaic-alpha # . . . . . . . . . . . . . . alpha" -msgstr "| mosaic-alpha # . . . . . transparence mosa?que" +msgstr "| @name mosaic-alpha # . . . . . transparence mosa?que" -#: modules/control/rc.c:924 -#, fuzzy +#: modules/control/rc.c:922 msgid "| @name mosaic-height #. . . . . . . . . . . . . .height" -msgstr "| mosaic-height #. . . . .hauteur mosa?que" +msgstr "| @name mosaic-height #. . . . . . . hauteur mosa?que" -#: modules/control/rc.c:925 -#, fuzzy +#: modules/control/rc.c:923 msgid "| @name mosaic-width # . . . . . . . . . . . . . . width" -msgstr "| mosaic-width # . . . . largeur mosa?que" +msgstr "| @name mosaic-width # . . . . . . . largeur mosa?que" -#: modules/control/rc.c:926 -#, fuzzy +#: modules/control/rc.c:924 msgid "| @name mosaic-xoffset # . . . .top left corner position" -msgstr "| mosaic-xoffset # . . . .d?calage de la mosa?que depuis la gauche" +msgstr "| @name mosaic-xoffset # . d?calage mosa?que ? gauche" -#: modules/control/rc.c:927 -#, fuzzy +#: modules/control/rc.c:925 msgid "| @name mosaic-yoffset # . . . .top left corner position" -msgstr "| mosaic-yoffset # . . . .d?calage de la mosa?que depuis le haut" +msgstr "| @name mosaic-yoffset # . . d?calage mosa?que en haut" -#: modules/control/rc.c:928 -#, fuzzy +#: modules/control/rc.c:926 msgid "| @name mosaic-offsets x,y(,x,y)*. . . . list of offsets" -msgstr "| mosaic-xoffset # . . . .d?calage de la mosa?que depuis la gauche" +msgstr "| @name mosaic-offset x,y(,x,y)*. . d?calages mosa?que" -#: modules/control/rc.c:929 -#, fuzzy +#: modules/control/rc.c:927 msgid "| @name mosaic-align 0..2,4..6,8..10. . .mosaic alignment" -msgstr "| mosaic-align 0.2,4.6,8.10. .alignement de la mosa?que" +msgstr "| @name mosaic-align 0-2,4-6,8-10 alignement mosa?que" -#: modules/control/rc.c:930 -#, fuzzy +#: modules/control/rc.c:928 msgid "| @name mosaic-vborder # . . . . . . . . vertical border" -msgstr "| mosaic-vborder # . . . .limite verticale" +msgstr "| @name mosaic-vborder # . . . . . . bordure verticale" -#: modules/control/rc.c:931 -#, fuzzy +#: modules/control/rc.c:929 msgid "| @name mosaic-hborder # . . . . . . . horizontal border" -msgstr "| mosaic-hborder # . . . .limite horizontale" +msgstr "| @name mosaic-hborder # . . . . . bordure horizontale" -#: modules/control/rc.c:932 -#, fuzzy +#: modules/control/rc.c:930 msgid "| @name mosaic-position {0=auto,1=fixed} . . . .position" -msgstr "| mosaic-position {0=auto,1=fixe} . . . .position" +msgstr "| @name mosaic-position {0=auto,1=fixe} . . . position" -#: modules/control/rc.c:933 -#, fuzzy +#: modules/control/rc.c:931 msgid "| @name mosaic-rows #. . . . . . . . . . .number of rows" -msgstr "| mosaic-rows # . . . nombre de rang?es" +msgstr "| @name mosaic-rows # . . . . . . . nombre de rang?es" -#: modules/control/rc.c:934 -#, fuzzy +#: modules/control/rc.c:932 msgid "| @name mosaic-cols #. . . . . . . . . . .number of cols" -msgstr "| mosaic-cols # . . .. . nombre de colonnes" +msgstr "| @name mosaic-cols # . . . . . . . nombre de colonnes" -#: modules/control/rc.c:935 -#, fuzzy +#: modules/control/rc.c:933 msgid "| @name mosaic-order id(,id)* . . . . order of pictures " -msgstr "| mosaic-hborder # . . . .limite horizontale" +msgstr "| @name mosaic-order id(,id)* . . . . ordre des images" -#: modules/control/rc.c:936 -#, fuzzy +#: modules/control/rc.c:934 msgid "| @name mosaic-keep-aspect-ratio {0,1} . . .aspect ratio" -msgstr "| mosaic-keep-aspect-ratio {0,1} . . . .?tirement" +msgstr "| @name mosaic-keep-aspect-ratio {0,1} . . . . aspect" -#: modules/control/rc.c:939 +#: modules/control/rc.c:937 msgid "| help . . . . . . . . . . . . . . . this help message" -msgstr "| help . . . . . . . . . . . . . ce message d?aide" +msgstr "| help . . . . . . . . . . . . . . . ce message d?aide" -#: modules/control/rc.c:940 +#: modules/control/rc.c:938 msgid "| longhelp . . . . . . . . . . . a longer help message" -msgstr "| longhelp . . . . . . . . .message d?aide plus long" +msgstr "| longhelp . . . . . . . . . message d?aide plus long" -#: modules/control/rc.c:941 -#, fuzzy +#: modules/control/rc.c:939 msgid "| logout . . . . . . . exit (if in socket connection)" -msgstr "| logout . . . . . . . . . . . quitte l?interface sans fermer vlc" +msgstr "| logout . . . . . quitte l?interface sans fermer VLC" -#: modules/control/rc.c:942 +#: modules/control/rc.c:940 msgid "| quit . . . . . . . . . . . . . . . . . . . quit vlc" -msgstr "| quit . . . . . . . . . . . . quitte VLC" +msgstr "| quit . . . . . . . . . . . . . . . . . . quitte VLC" -#: modules/control/rc.c:944 +#: modules/control/rc.c:942 msgid "+----[ end of help ]" msgstr "+----[ fin de l?aide ]" -#: modules/control/rc.c:1059 +#: modules/control/rc.c:1057 msgid "Press menu select or pause to continue." msgstr "Appuyez sur menu select ou pause pour continuer." -#: modules/control/rc.c:1315 modules/control/rc.c:1575 -#: modules/control/rc.c:1646 modules/control/rc.c:1826 -#: modules/control/rc.c:1924 +#: modules/control/rc.c:1333 modules/control/rc.c:1588 +#: modules/control/rc.c:1659 modules/control/rc.c:1843 +#: modules/control/rc.c:1944 msgid "Type 'menu select' or 'pause' to continue." -msgstr "Tapez \"menu select\" ou \"pause\" pour continuer." +msgstr "Tapez ??menu select?? ou ??pause?? pour continuer." -#: modules/control/rc.c:1410 +#: modules/control/rc.c:1426 msgid "Error: `goto' needs an argument greater than zero." -msgstr "" +msgstr "Erreur?: ??goto?? a besoin d'un argument sup?rieur ? z?ro." -#: modules/control/rc.c:1421 +#: modules/control/rc.c:1437 #, c-format msgid "Playlist has only %d elements" msgstr "La liste de lecture n'a que %d ?l?ments" -#: modules/control/rc.c:1911 modules/control/rc.c:1951 +#: modules/control/rc.c:1928 modules/control/rc.c:1971 msgid "Please provide one of the following parameters:" -msgstr "Veuillez fournir l?un des param?tres suivants :" +msgstr "Veuillez fournir l?un des param?tres suivants?:" -#: modules/control/rc.c:1983 +#: modules/control/rc.c:2003 msgid "Unknown command!" -msgstr "Commande inconnue!" +msgstr "Commande inconnue !" -#: modules/control/rc.c:1999 modules/gui/ncurses.c:2039 -#, fuzzy +#: modules/control/rc.c:2019 modules/gui/ncurses.c:2016 msgid "+-[Incoming]" -msgstr "Encodage" +msgstr "+-[Entr?e]" -#: modules/control/rc.c:2000 modules/gui/ncurses.c:2042 +#: modules/control/rc.c:2020 modules/gui/ncurses.c:2019 #, c-format msgid "| input bytes read : %8.0f kB" -msgstr "" +msgstr "| octets lus en entr?e?: %8.0f kO" -#: modules/control/rc.c:2002 modules/gui/ncurses.c:2045 +#: modules/control/rc.c:2022 modules/gui/ncurses.c:2022 #, c-format msgid "| input bitrate : %6.0f kb/s" -msgstr "" +msgstr "| d?bit en entr?e : %6.0f kO/s" -#: modules/control/rc.c:2004 modules/gui/ncurses.c:2047 +#: modules/control/rc.c:2024 modules/gui/ncurses.c:2024 #, c-format msgid "| demux bytes read : %8.0f kB" -msgstr "" +msgstr "| octets lus en demux : %8.0f kO" -#: modules/control/rc.c:2006 modules/gui/ncurses.c:2050 +#: modules/control/rc.c:2026 modules/gui/ncurses.c:2027 #, c-format msgid "| demux bitrate : %6.0f kb/s" -msgstr "" +msgstr "| debit en demux : %6.0f kO/s" -#: modules/control/rc.c:2010 modules/gui/ncurses.c:2058 -#, fuzzy +#: modules/control/rc.c:2030 modules/gui/ncurses.c:2035 msgid "+-[Video Decoding]" -msgstr "Rognage" +msgstr "+-[D?codage vid?o]" -#: modules/control/rc.c:2011 modules/gui/ncurses.c:2061 +#: modules/control/rc.c:2031 modules/gui/ncurses.c:2038 #, c-format msgid "| video decoded : %5i" -msgstr "" +msgstr "| vid?o d?cod?e : %5i" -#: modules/control/rc.c:2013 modules/gui/ncurses.c:2064 +#: modules/control/rc.c:2033 modules/gui/ncurses.c:2041 #, c-format msgid "| frames displayed : %5i" -msgstr "" +msgstr "| trames affich?es : %5i" -#: modules/control/rc.c:2015 modules/gui/ncurses.c:2067 +#: modules/control/rc.c:2035 modules/gui/ncurses.c:2044 #, c-format msgid "| frames lost : %5i" -msgstr "" +msgstr "| trames perdues : %5i" -#: modules/control/rc.c:2019 modules/gui/ncurses.c:2075 -#, fuzzy +#: modules/control/rc.c:2039 modules/gui/ncurses.c:2052 msgid "+-[Audio Decoding]" -msgstr "Encodeur audio" +msgstr "+-[D?codage audio]" -#: modules/control/rc.c:2020 modules/gui/ncurses.c:2078 +#: modules/control/rc.c:2040 modules/gui/ncurses.c:2055 #, c-format msgid "| audio decoded : %5i" -msgstr "" +msgstr "| audio d?cod? : %5i" -#: modules/control/rc.c:2022 modules/gui/ncurses.c:2081 +#: modules/control/rc.c:2042 modules/gui/ncurses.c:2058 #, c-format msgid "| buffers played : %5i" -msgstr "" +msgstr "| buffers jou?s : %5i" -#: modules/control/rc.c:2024 modules/gui/ncurses.c:2084 +#: modules/control/rc.c:2044 modules/gui/ncurses.c:2061 #, c-format msgid "| buffers lost : %5i" -msgstr "" +msgstr "| buffers perdus : %5i" -#: modules/control/rc.c:2028 modules/gui/ncurses.c:2090 -#, fuzzy +#: modules/control/rc.c:2048 modules/gui/ncurses.c:2067 msgid "+-[Streaming]" -msgstr "Diffusion" +msgstr "+-[Diffusion]" -#: modules/control/rc.c:2029 modules/gui/ncurses.c:2093 +#: modules/control/rc.c:2049 modules/gui/ncurses.c:2070 #, c-format msgid "| packets sent : %5i" -msgstr "" +msgstr "| paquets envoy?s : %5i" -#: modules/control/rc.c:2030 modules/gui/ncurses.c:2095 +#: modules/control/rc.c:2050 modules/gui/ncurses.c:2072 #, c-format msgid "| bytes sent : %8.0f kB" -msgstr "" +msgstr "| octets envoy?s : %8.0f kO" -#: modules/control/rc.c:2032 +#: modules/control/rc.c:2052 #, c-format msgid "| sending bitrate : %6.0f kb/s" -msgstr "" +msgstr "| d?bit ?mission : %6.0f kO/s" #: modules/control/showintf.c:66 msgid "Threshold" @@ -11760,16 +12048,15 @@ msgstr "Seuil" msgid "Height of the zone triggering the interface." msgstr "Hauteur de la zone d?clenchant l?apparition de l?interface" -#: modules/control/signals.c:39 +#: modules/control/signals.c:37 msgid "Signals" msgstr "Signaux" -#: modules/control/signals.c:42 -#, fuzzy +#: modules/control/signals.c:40 msgid "POSIX signals handling interface" -msgstr "Fichier journal de l?interface" +msgstr "Interface POSIX de gestion des signaux" -#: modules/control/telnet.c:78 +#: modules/control/telnet.c:78 modules/stream_out/raop.c:140 msgid "Host" msgstr "H?te" @@ -11783,10 +12070,10 @@ msgstr "" "sur toutes les interfaces r?seau. Si vous souhaitez que l?interface telnet " "ne soit disponible que pour la machine locale, utilisez 127.0.0.1" -#: modules/control/telnet.c:83 modules/gui/macosx/open.m:189 -#: modules/gui/macosx/open.m:191 modules/gui/macosx/output.m:147 -#: modules/gui/qt4/ui/open_net.ui:75 modules/gui/qt4/ui/sout.ui:297 -#: modules/stream_out/rtp.c:108 +#: modules/control/telnet.c:83 modules/gui/macosx/open.m:188 +#: modules/gui/macosx/open.m:190 modules/gui/macosx/output.m:147 +#: modules/gui/qt4/ui/open_net.ui:75 modules/gui/qt4/ui/sout.ui:238 +#: modules/stream_out/rtp.c:109 msgid "Port" msgstr "Port" @@ -11802,16 +12089,12 @@ msgid "" "default value is \"admin\"." msgstr "" "Mot de passe d?administration utilis? pour prot?ger l?interface. La valeur " -"par d?faut est \"admin\"." +"par d?faut est ??admin??." #: modules/control/telnet.c:102 msgid "VLM remote control interface" msgstr "Interface de commande ? distance VLM" -#: modules/demux/a52.c:49 -msgid "Raw A/52 demuxer" -msgstr "D?multiplexeur A/52 brut" - #: modules/demux/aiff.c:49 msgid "AIFF demuxer" msgstr "D?multiplexeur AIFF" @@ -11836,7 +12119,11 @@ msgstr "D?multiplexeur AU" msgid "FFmpeg demuxer" msgstr "D?multiplexeur ffmpeg" -#: modules/demux/avformat/avformat.c:59 +#: modules/demux/avformat/avformat.c:53 +msgid "Avformat" +msgstr "Format AV" + +#: modules/demux/avformat/avformat.c:60 msgid "FFmpeg muxer" msgstr "Multiplexeur FFmpeg" @@ -11865,7 +12152,7 @@ msgid "" "Recreate a index for the AVI file. Use this if your AVI file is damaged or " "incomplete (not seekable)." msgstr "" -"Recr?er un index pour le fichier AVI. A utiliser si votre fichier AVI est " +"Recr?er un index pour le fichier AVI. ? utiliser si votre fichier AVI est " "endommag? ou incomplet, et qu?il est impossible de se d?placer dedans." #: modules/demux/avi/avi.c:60 @@ -11884,11 +12171,11 @@ msgstr "Ne Jamais r?parer" msgid "AVI demuxer" msgstr "D?multiplexeur AVI" -#: modules/demux/avi/avi.c:674 +#: modules/demux/avi/avi.c:679 msgid "AVI Index" msgstr "Index AVI" -#: modules/demux/avi/avi.c:675 +#: modules/demux/avi/avi.c:680 msgid "" "This AVI file is broken. Seeking will not work correctly.\n" "Do you want to try to repair it?\n" @@ -11901,15 +12188,15 @@ msgstr "" "\n" "Cette op?ration peut ?tre longue." -#: modules/demux/avi/avi.c:678 +#: modules/demux/avi/avi.c:683 msgid "Repair" msgstr "R?parer" -#: modules/demux/avi/avi.c:678 +#: modules/demux/avi/avi.c:683 msgid "Don't repair" msgstr "Ne pas r?parer" -#: modules/demux/avi/avi.c:2395 modules/demux/avi/avi.c:2413 +#: modules/demux/avi/avi.c:2405 modules/demux/avi/avi.c:2423 msgid "Fixing AVI Index..." msgstr "R?paration de l?index AVI..." @@ -11939,19 +12226,15 @@ msgstr "" msgid "File dumper" msgstr "Enregistreur sur fichier" -#: modules/demux/dts.c:45 -msgid "Raw DTS demuxer" -msgstr "D?multiplexeur DTS brut" - -#: modules/demux/flac.c:48 +#: modules/demux/flac.c:49 msgid "FLAC demuxer" msgstr "D?multiplexeur FLAC" #: modules/demux/gme.cpp:55 msgid "GME demuxer (Game_Music_Emu)" -msgstr "" +msgstr "D?multiplexeur GME (Game Music Emu)" -#: modules/demux/live555.cpp:76 +#: modules/demux/live555.cpp:77 msgid "" "Allows you to modify the default caching value for RTSP streams. This value " "should be set in millisecond units." @@ -11959,11 +12242,11 @@ msgstr "" "Cette option permet de modifier la taille du cache par d?faut pour les flux " "RTSP. Cette valeur est en millisecondes." -#: modules/demux/live555.cpp:79 +#: modules/demux/live555.cpp:80 msgid "Kasenna RTSP dialect" msgstr "Dialecte RTSP Kasenna" -#: modules/demux/live555.cpp:80 +#: modules/demux/live555.cpp:81 msgid "" "Kasenna servers use an old and unstandard dialect of RTSP. When you set this " "parameter, VLC will try this dialect for communication. In this mode you " @@ -11974,76 +12257,72 @@ msgstr "" "communication. Dans ce mode, VLC ne peut pas se connecter aux autres " "serveurs RTSP." -#: modules/demux/live555.cpp:84 +#: modules/demux/live555.cpp:85 msgid "RTSP user name" msgstr "Nom d?utilisateur RTSP" -#: modules/demux/live555.cpp:85 -#, fuzzy +#: modules/demux/live555.cpp:86 msgid "" "Allows you to modify the user name that will be used for authenticating the " "connection." -msgstr "Mot de passer ? utiliser pour la connexion." +msgstr "Nom ? utiliser pour la connexion." -#: modules/demux/live555.cpp:87 +#: modules/demux/live555.cpp:88 msgid "RTSP password" msgstr "Mot de passe RTSP" -#: modules/demux/live555.cpp:88 -#, fuzzy +#: modules/demux/live555.cpp:89 msgid "Allows you to modify the password that will be used for the connection." msgstr "Mot de passer ? utiliser pour la connexion." -#: modules/demux/live555.cpp:92 -#, fuzzy +#: modules/demux/live555.cpp:93 msgid "RTP/RTSP/SDP demuxer (using Live555)" msgstr "D?multiplexeur RTP/RTSP/SDP (utilisant Live555)" -#: modules/demux/live555.cpp:102 +#: modules/demux/live555.cpp:103 msgid "RTSP/RTP access and demux" msgstr "Access/D?multiplexeur RTSP/RTP" -#: modules/demux/live555.cpp:108 modules/demux/live555.cpp:109 -#: modules/gui/macosx/simple_prefs.m:258 +#: modules/demux/live555.cpp:109 modules/demux/live555.cpp:110 +#: modules/gui/macosx/simple_prefs.m:254 #: modules/gui/qt4/ui/sprefs_input.ui:171 msgid "Use RTP over RTSP (TCP)" msgstr "Utilise le RTP sur RTSP (TCP)" -#: modules/demux/live555.cpp:111 +#: modules/demux/live555.cpp:112 msgid "Client port" msgstr "Port client" -#: modules/demux/live555.cpp:112 +#: modules/demux/live555.cpp:113 msgid "Port to use for the RTP source of the session" msgstr "Port ? utiliser pour la source RTP de la session" -#: modules/demux/live555.cpp:114 modules/demux/live555.cpp:115 +#: modules/demux/live555.cpp:115 modules/demux/live555.cpp:116 msgid "Force multicast RTP via RTSP" -msgstr "" +msgstr "Forcer des RTP multicast via RTSP" -#: modules/demux/live555.cpp:117 modules/demux/live555.cpp:118 +#: modules/demux/live555.cpp:118 modules/demux/live555.cpp:119 msgid "Tunnel RTSP and RTP over HTTP" msgstr "Faire passer le RTSP et le RTP par HTTP" -#: modules/demux/live555.cpp:120 +#: modules/demux/live555.cpp:121 msgid "HTTP tunnel port" msgstr "Port du tunnel HTTP" -#: modules/demux/live555.cpp:121 -#, fuzzy +#: modules/demux/live555.cpp:122 msgid "Port to use for tunneling the RTSP/RTP over HTTP." msgstr "Port ? utiliser pour la tunnelisation du RTSP/RTP par HTTP." -#: modules/demux/live555.cpp:591 +#: modules/demux/live555.cpp:614 msgid "RTSP authentication" msgstr "Authentification RTSP" -#: modules/demux/live555.cpp:592 +#: modules/demux/live555.cpp:615 msgid "Please enter a valid login name and a password." msgstr "S?il vous plait entrez un identifiant et un mot de passe valides." #: modules/demux/mjpeg.c:47 modules/demux/mpeg/h264.c:43 -#: modules/demux/mpeg/m4v.c:43 modules/demux/rawvid.c:44 +#: modules/demux/mpeg/m4v.c:43 modules/demux/rawvid.c:45 #: modules/demux/vc1.c:43 modules/gui/macosx/playlistinfo.m:103 msgid "Frames per Second" msgstr "Images par seconde" @@ -12060,152 +12339,149 @@ msgstr "" msgid "M-JPEG camera demuxer" msgstr "D?multiplexeur MJPEG" -#: modules/demux/mkv.cpp:118 +#: modules/demux/mkv/chapter_command.cpp:146 +msgid "--- DVD Menu" +msgstr "--- Menu DVD" + +#: modules/demux/mkv/chapter_command.cpp:152 +msgid "First Played" +msgstr "Premier Lu" + +#: modules/demux/mkv/chapter_command.cpp:154 +msgid "Video Manager" +msgstr "Gestionaire vid?o" + +#: modules/demux/mkv/chapter_command.cpp:160 +msgid "----- Title" +msgstr "----- Titre" + +#: modules/demux/mkv/mkv.cpp:44 msgid "Matroska stream demuxer" msgstr "D?multiplexeur de flux Matroska" -#: modules/demux/mkv.cpp:125 +#: modules/demux/mkv/mkv.cpp:51 msgid "Ordered chapters" msgstr "Chapitres ordonn?s" -#: modules/demux/mkv.cpp:126 +#: modules/demux/mkv/mkv.cpp:52 msgid "Play ordered chapters as specified in the segment." msgstr "Jouer les chapitres ordonn?s selon le segment." -#: modules/demux/mkv.cpp:129 +#: modules/demux/mkv/mkv.cpp:55 msgid "Chapter codecs" msgstr "Codecs des chapitres" -#: modules/demux/mkv.cpp:130 +#: modules/demux/mkv/mkv.cpp:56 msgid "Use chapter codecs found in the segment." msgstr "Utiliser les codecs de chapitre du segment." -#: modules/demux/mkv.cpp:133 +#: modules/demux/mkv/mkv.cpp:59 msgid "Preload Directory" -msgstr "R?pertoire de pr?chargement" +msgstr "Dossier de pr?chargement" -#: modules/demux/mkv.cpp:134 +#: modules/demux/mkv/mkv.cpp:60 msgid "" "Preload matroska files from the same family in the same directory (not good " "for broken files)." msgstr "" -"Pr?charge les fichiers Matroska de la m?me famille dans le m?me r?pertoire. " -"Ne pas utiliser avec des fichiers corrompus." +"Pr?charge les fichiers Matroska de la m?me famille dans le m?me dossier. Ne " +"pas utiliser avec des fichiers corrompus." -#: modules/demux/mkv.cpp:137 +#: modules/demux/mkv/mkv.cpp:63 msgid "Seek based on percent not time" msgstr "D?placements bas?s sur le pourcentage et non le temps" -#: modules/demux/mkv.cpp:138 +#: modules/demux/mkv/mkv.cpp:64 msgid "Seek based on percent not time." msgstr "D?placements bas?s sur le pourcentage et non le temps" -#: modules/demux/mkv.cpp:141 +#: modules/demux/mkv/mkv.cpp:67 msgid "Dummy Elements" msgstr "El?ments inconnus" -#: modules/demux/mkv.cpp:142 +#: modules/demux/mkv/mkv.cpp:68 msgid "Read and discard unknown EBML elements (not good for broken files)." msgstr "" "Lis et ignore les ?l?ments EBML inconnus (mauvais pour les fichiers " "endommag?s)" -#: modules/demux/mkv.cpp:3352 -msgid "--- DVD Menu" -msgstr "--- Menu DVD" - -#: modules/demux/mkv.cpp:3358 -msgid "First Played" -msgstr "Premier Lu" - -#: modules/demux/mkv.cpp:3360 -msgid "Video Manager" -msgstr "Gestionaire vid?o" - -#: modules/demux/mkv.cpp:3366 -msgid "----- Title" -msgstr "----- Titre" - -#: modules/demux/mod.c:51 +#: modules/demux/mod.c:53 msgid "Enable noise reduction algorithm." msgstr "Activer l?algorithme de r?duction du bruit." -#: modules/demux/mod.c:52 +#: modules/demux/mod.c:54 msgid "Enable reverberation" msgstr "Activer la r?verberation." -#: modules/demux/mod.c:53 +#: modules/demux/mod.c:55 msgid "Reverberation level (from 0 to 100, default value is 0)." msgstr "Niveau de r?verb?ration (0-100, d?faut ? 0)." -#: modules/demux/mod.c:55 +#: modules/demux/mod.c:57 msgid "Reverberation delay, in ms. Usual values are from to 40 to 200ms." msgstr "D?lai de r?verb?ration en millisecondes (g?n?ralement 40-200ms)." -#: modules/demux/mod.c:57 +#: modules/demux/mod.c:59 msgid "Enable megabass mode" msgstr "Mode M?ga Bass" -#: modules/demux/mod.c:58 +#: modules/demux/mod.c:60 msgid "Megabass mode level (from 0 to 100, default value is 0)." msgstr "Niveau de M?ga Bass (0-100, d?faut ? 0)." -#: modules/demux/mod.c:60 -#, fuzzy +#: modules/demux/mod.c:62 msgid "" "Megabass mode cutoff frequency, in Hz. This is the maximum frequency for " "which the megabass effect applies. Valid values are from 10 to 100 Hz." msgstr "" "Fr?quence de coupure pour le mode M?ga Basse, en Hz. Ceci est la fr?quence " -"maximale pour laquelle l?effet M?ga Bass s?applique. Les valeurs vont de 10 " -"? 100Hz." +"maximale pour laquelle l?effet M?ga Bass s?applique. Valeurs de 10 ? 100Hz." -#: modules/demux/mod.c:63 +#: modules/demux/mod.c:65 msgid "Surround effect level (from 0 to 100, default value is 0)." msgstr "Niveau d?effet Surround (0-100, d?faut ? 0)." -#: modules/demux/mod.c:65 -#, fuzzy +#: modules/demux/mod.c:67 msgid "Surround delay, in ms. Usual values are from 5 to 40 ms." msgstr "D?lai de Surround en ms (g?n?ralement 5-40ms)." -#: modules/demux/mod.c:70 +#: modules/demux/mod.c:72 msgid "MOD demuxer (libmodplug)" msgstr "D?multiplexeur MOD (libmodplug)" -#: modules/demux/mod.c:78 +#: modules/demux/mod.c:80 msgid "Reverb" msgstr "R?verb?ration" -#: modules/demux/mod.c:81 +#: modules/demux/mod.c:83 msgid "Reverberation level" msgstr "Niveau de r?verb?ration" -#: modules/demux/mod.c:83 +#: modules/demux/mod.c:85 msgid "Reverberation delay" msgstr "D?lai de r?verb?ration" -#: modules/demux/mod.c:85 +#: modules/demux/mod.c:87 msgid "Mega bass" msgstr "M?ga Bass" -#: modules/demux/mod.c:88 +#: modules/demux/mod.c:90 msgid "Mega bass level" msgstr "Niveau de M?ga Bass" -#: modules/demux/mod.c:90 +#: modules/demux/mod.c:92 msgid "Mega bass cutoff" msgstr "Fr?quence de coupure de M?ga Bass" -#: modules/demux/mod.c:92 +#: modules/demux/mod.c:94 msgid "Surround" msgstr "Effet Surround" -#: modules/demux/mod.c:95 +#: modules/demux/mod.c:97 msgid "Surround level" msgstr "Niveau d?effet Surround" -#: modules/demux/mod.c:97 +#: modules/demux/mod.c:99 msgid "Surround delay (ms)" msgstr "D?lai de Surround (ms)" @@ -12213,10 +12489,18 @@ msgstr "D?lai de Surround (ms)" msgid "MP4 stream demuxer" msgstr "D?multiplexeur de flux MP4" +#: modules/demux/mp4/mp4.c:59 modules/gui/pda/pda_interface.c:1053 +msgid "MP4" +msgstr "MP4" + #: modules/demux/mpc.c:58 msgid "MusePack demuxer" msgstr "D?multiplexeur MPC" +#: modules/demux/mpeg/es.c:48 +msgid "MPEG-I/II/4 / A52 / DTS / MLP audio" +msgstr "" + #: modules/demux/mpeg/h264.c:44 msgid "Desired frame rate for the H264 stream." msgstr "D?bit d?images pour le flux H264." @@ -12225,25 +12509,20 @@ msgstr "D?bit d?images pour le flux H264." msgid "H264 video demuxer" msgstr "D?multiplexeur vid?o H264" -#: modules/demux/mpeg/m4a.c:47 -msgid "MPEG-4 audio demuxer" -msgstr "D?multiplexeur de flux audio MPEG-4" - #: modules/demux/mpeg/m4v.c:44 -#, fuzzy msgid "" "This is the desired frame rate when playing MPEG4 video elementary streams." msgstr "" -"D?bit d?images d?sir? pour la lecture depuis des fichiers, utilisez 0 pour " -"une diffusion en temps r?el (depuis une cam?ra)." +"D?bit d?images d?sir? pour la lecture depuis des flux vid?os ?l?mentaires " +"MPEG4" #: modules/demux/mpeg/m4v.c:50 msgid "MPEG-4 video demuxer" msgstr "D?multiplexeur de flux vid?o MPEG-4" -#: modules/demux/mpeg/mpga.c:50 -msgid "MPEG audio / MP3 demuxer" -msgstr "D?multiplexeur MPEG audio / MP3" +#: modules/demux/mpeg/m4v.c:51 +msgid "MPEG-4 V" +msgstr "MPEG-4 V" #: modules/demux/mpeg/mpgv.c:46 msgid "MPEG-I/II video demuxer" @@ -12257,11 +12536,11 @@ msgstr "D?multiplexeur Windows Media NSC" msgid "NullSoft demuxer" msgstr "D?multiplexeur NullSoft" -#: modules/demux/nuv.c:51 +#: modules/demux/nuv.c:49 msgid "Nuv demuxer" msgstr "D?multiplexeur Nuv" -#: modules/demux/ogg.c:51 +#: modules/demux/ogg.c:54 msgid "OGG demuxer" msgstr "D?multiplexeur Ogg" @@ -12274,9 +12553,8 @@ msgid "Auto start" msgstr "Lecture automatique" #: modules/demux/playlist/playlist.c:41 -#, fuzzy msgid "Automatically start playing the playlist content once it's loaded." -msgstr "D?marrer automatiquement la playlist lorsqu?elle est charg?e.\n" +msgstr "D?marrer automatiquement la liste de lecture lorsqu?elle est charg?e." #: modules/demux/playlist/playlist.c:44 msgid "Show shoutcast adult content" @@ -12285,6 +12563,8 @@ msgstr "Afficher le contenu pour adultes sur shoutcast" #: modules/demux/playlist/playlist.c:45 msgid "Show NC17 rated video streams when using shoutcast video playlists." msgstr "" +"Montrer des flux vid?os not?s ??NC17?? lors de l'utilisation des listes de " +"lectures shoutcast." #: modules/demux/playlist/playlist.c:48 msgid "Skip ads" @@ -12322,7 +12602,7 @@ msgstr "Import de liste de lecture XPSF" #: modules/demux/playlist/playlist.c:100 msgid "New winamp 5.2 shoutcast import" -msgstr "" +msgstr "Nouvel import shoutcast winamp 5.2" #: modules/demux/playlist/playlist.c:107 msgid "ASX playlist import" @@ -12334,42 +12614,40 @@ msgstr "D?multiplexeur Kasenna MediaBase" #: modules/demux/playlist/playlist.c:117 msgid "QuickTime Media Link importer" -msgstr "" +msgstr "Importeur de liens de m?dias Quicktime" #: modules/demux/playlist/playlist.c:122 msgid "Google Video Playlist importer" msgstr "Importeur de playlist Google Video " #: modules/demux/playlist/playlist.c:127 -#, fuzzy msgid "Dummy ifo demux" -msgstr "D?multipl?xeur de CD Audio" +msgstr "D?multipl?xeur ifo" #: modules/demux/playlist/playlist.c:131 msgid "iTunes Music Library importer" -msgstr "" +msgstr "Importateur de librairie iTunes" -#: modules/demux/playlist/podcast.c:241 modules/demux/playlist/podcast.c:255 -#: modules/demux/playlist/podcast.c:285 modules/demux/playlist/podcast.c:297 +#: modules/demux/playlist/podcast.c:254 modules/demux/playlist/podcast.c:268 +#: modules/demux/playlist/podcast.c:298 modules/demux/playlist/podcast.c:311 msgid "Podcast Info" msgstr "Informations Podcast" -#: modules/demux/playlist/podcast.c:255 +#: modules/demux/playlist/podcast.c:268 msgid "Podcast Summary" msgstr "R?sum? Podcast" -#: modules/demux/playlist/podcast.c:298 +#: modules/demux/playlist/podcast.c:312 msgid "Podcast Size" msgstr "Taille du Podcast" -#: modules/demux/playlist/shoutcast.c:413 +#: modules/demux/playlist/shoutcast.c:406 msgid "Shoutcast" msgstr "Shoutcast" #: modules/demux/ps.c:43 -#, fuzzy msgid "Trust MPEG timestamps" -msgstr "Horodatage" +msgstr "Faire confiance aux indicateurs de temps MPEG" #: modules/demux/ps.c:44 msgid "" @@ -12378,222 +12656,146 @@ msgid "" "calculate from the bitrate instead." msgstr "" -#: modules/demux/ps.c:56 modules/demux/ps.c:67 +#: modules/demux/ps.c:56 modules/demux/ps.c:68 msgid "MPEG-PS demuxer" msgstr "D?multiplexeur MPEG-PS" +#: modules/demux/ps.c:57 modules/gui/pda/pda_interface.c:1048 +msgid "PS" +msgstr "PS" + #: modules/demux/pva.c:43 msgid "PVA demuxer" msgstr "D?multiplexeur PVA" #: modules/demux/rawdv.c:41 -#, fuzzy msgid "" "The demuxer will advance timestamps if the input can't keep up with the rate." msgstr "" -"Autoriser le VLC ? sauter des images si la CPU ne peut suivre le taux " +"Autoriser VLC ? sauter des images si la CPU ne peut suivre le taux " "d?encodage." #: modules/demux/rawdv.c:49 msgid "DV (Digital Video) demuxer" msgstr "D?multiplexeur DV (Digital Video)" -#: modules/demux/rawvid.c:45 -#, fuzzy -msgid "This is the desired frame rate when playing raw video streams." +#: modules/demux/rawvid.c:46 +msgid "" +"This is the desired frame rate when playing raw video streams. In the form " +"30000/1001 or 29.97" msgstr "" -"D?bit d?images d?sir? pour la lecture depuis des fichiers, utilisez 0 pour " -"une diffusion en temps r?el (depuis une cam?ra)." +"D?bit d?images d?sir? pour la lecture depuis des flux vid?os bruts. De la forme " +"30000/1001 ou 29.97" -#: modules/demux/rawvid.c:49 -#, fuzzy +#: modules/demux/rawvid.c:50 msgid "This specifies the width in pixels of the raw video stream." -msgstr "Coefficient modifiant la hauteur des bandes" +msgstr "Largeur en pixels pour les flux vid?o bruts." -#: modules/demux/rawvid.c:53 -#, fuzzy +#: modules/demux/rawvid.c:54 msgid "This specifies the height in pixels of the raw video stream." -msgstr "Coefficient modifiant la hauteur des bandes" +msgstr "Hauteur en pixels pour les flux vid?o bruts." -#: modules/demux/rawvid.c:56 +#: modules/demux/rawvid.c:57 msgid "Force chroma (Use carefully)" -msgstr "" +msgstr "Forcer la chroma (? utiliser avec pr?caution)" -#: modules/demux/rawvid.c:57 +#: modules/demux/rawvid.c:58 msgid "Force chroma. This is a four character string." -msgstr "" +msgstr "Forcer la chroma. Ceci est une chaine de 4 caract?res." -#: modules/demux/rawvid.c:59 modules/stream_out/switcher.c:92 +#: modules/demux/rawvid.c:60 modules/stream_out/switcher.c:94 #: modules/video_filter/canvas.c:53 msgid "Aspect ratio" msgstr "Format d??cran" -#: modules/demux/rawvid.c:61 -#, fuzzy -msgid "Aspect ratio (4:3, 16:9). Default is square pixels." -msgstr "" -"Proportions du fichier image (4:3, 16:9). Le d?faut est 1:1 (pixels carr?s)" +#: modules/demux/rawvid.c:62 +msgid "Aspect ratio (4:3, 16:9). Default assumes square pixels." +msgstr "Proportions (4:3, 16:9). Le d?faut est 1:1 (pixels carr?s)" -#: modules/demux/rawvid.c:65 +#: modules/demux/rawvid.c:66 msgid "Raw video demuxer" msgstr "D?multiplexeur vid?o Raw" -#: modules/demux/real.c:68 +#: modules/demux/real.c:70 msgid "Real demuxer" msgstr "D?multiplexeur Real" -#: modules/demux/rtp.c:44 -#, fuzzy -msgid "RTP de-jitter buffer length (msec)" -msgstr "Filtres" - -#: modules/demux/rtp.c:46 -msgid "How long to wait for late RTP packets (and delay the performance)." -msgstr "" - -#: modules/demux/rtp.c:48 modules/stream_out/rtp.c:133 -msgid "SRTP key (hexadecimal)" -msgstr "" - -#: modules/demux/rtp.c:50 -msgid "" -"RTP packets will be authenticated and deciphered with this Secure RTP master " -"shared secret key." -msgstr "" - -#: modules/demux/rtp.c:53 modules/stream_out/rtp.c:138 -msgid "SRTP salt (hexadecimal)" -msgstr "" - -#: modules/demux/rtp.c:55 modules/stream_out/rtp.c:140 -msgid "Secure RTP requires a (non-secret) master salt value." -msgstr "" - -#: modules/demux/rtp.c:57 -#, fuzzy -msgid "Maximum RTP sources" -msgstr "Taille maximale du GOP" - -#: modules/demux/rtp.c:59 -msgid "How many distinct active RTP sources are allowed at a time." -msgstr "" - -#: modules/demux/rtp.c:61 -#, fuzzy -msgid "RTP source timeout (sec)" -msgstr "Temps d?expiration SAP (en secondes)" - -#: modules/demux/rtp.c:63 -msgid "How long to wait for any packet before a source is expired." -msgstr "" - -#: modules/demux/rtp.c:65 -msgid "Maximum RTP sequence number dropout" -msgstr "" - -#: modules/demux/rtp.c:67 -msgid "" -"RTP packets will be discarded if they are too much ahead (i.e. in the " -"future) by this many packets from the last received packet." -msgstr "" - -#: modules/demux/rtp.c:70 -msgid "Maximum RTP sequence number misordering" -msgstr "" - -#: modules/demux/rtp.c:72 -msgid "" -"RTP packets will be discarded if they are too far behind (i.e. in the past) " -"by this many packets from the last received packet." -msgstr "" - -#: modules/demux/rtp.c:82 modules/stream_out/rtp.c:161 -msgid "RTP" -msgstr "RTP" - -#: modules/demux/rtp.c:83 -msgid "(Experimental) Real-Time Protocol demuxer" -msgstr "" - #: modules/demux/smf.c:43 msgid "SMF demuxer" msgstr "D?multiplexeur SMF" -#: modules/demux/subtitle_asa.c:56 modules/demux/subtitle.c:54 +#: modules/demux/subtitle.c:54 modules/demux/subtitle_asa.c:56 msgid "Apply a delay to all subtitles (in 1/10s, eg 100 means 10s)." msgstr "Ajouter un d?lai ? tous les sous-titres (en 1/10s, 100 = 10 secondes)." -#: modules/demux/subtitle_asa.c:58 -#, fuzzy +#: modules/demux/subtitle.c:56 msgid "" -"Override the normal frames per second settings. This will only affect frame-" -"based subtitle formats without a fixed value." +"Override the normal frames per second settings. This will only work with " +"MicroDVD and SubRIP (SRT) subtitles." msgstr "" "Remplacer le nombre d?images par seconde. Ne fonctionne qu?avec les sous-" -"titres MicroDVD et SubRIP." +"titres MicroDVD et SubRIP (SRT)." -#: modules/demux/subtitle_asa.c:61 +#: modules/demux/subtitle.c:59 msgid "" -"Force the subtiles format. Use \"auto\", the set of supported values varies." +"Force the subtiles format. Valid values are : \"microdvd\", \"subrip\", " +"\"subviewer\", \"ssa1\", \"ssa2-4\", \"ass\", \"vplayer\", \"sami\", " +"\"dvdsubtitle\", \"mpl2\", \"aqt\", \"pjs\", \"mpsub\", \"jacosub\", \"psb" +"\", \"realtext\", \"dks\", \"subviewer1\", and \"auto\" (meaning " +"autodetection, this should always work)." msgstr "" +"Force le format des sous-titres. Les valeurs valides sont?: ??microdvd??, " +"??subrip??, ??subviewer??, ??ssa1??, ??ssa2-4??, ??ass??, ??vplayer??, ??sami??, " +"??dvdsubtitle??, ??mpl2??, ??aqt??, ??pjs??, ??mpsub??, ??jacosub??, ??psb??, " +"??realtext??, ??dks??, ??subviewer1??, et ??auto?? (autodetection du format)." -#: modules/demux/subtitle_asa.c:64 -#, fuzzy -msgid "Subtitles (asa demuxer)" -msgstr "Param?tres de sous-titres" - -#: modules/demux/subtitle_asa.c:65 modules/demux/subtitle.c:75 +#: modules/demux/subtitle.c:75 modules/demux/subtitle_asa.c:65 msgid "Text subtitles parser" msgstr "Lecteur de sous-titres texte" -#: modules/demux/subtitle_asa.c:70 modules/demux/subtitle.c:80 +#: modules/demux/subtitle.c:80 modules/demux/subtitle_asa.c:70 msgid "Frames per second" msgstr "Images par seconde" -#: modules/demux/subtitle_asa.c:73 modules/demux/subtitle.c:83 +#: modules/demux/subtitle.c:83 modules/demux/subtitle_asa.c:73 msgid "Subtitles delay" msgstr "Retard des sous-titres" -#: modules/demux/subtitle_asa.c:75 modules/demux/subtitle.c:85 +#: modules/demux/subtitle.c:85 modules/demux/subtitle_asa.c:75 msgid "Subtitles format" msgstr "Format de sous-titres" -#: modules/demux/subtitle.c:56 -#, fuzzy +#: modules/demux/subtitle_asa.c:58 msgid "" -"Override the normal frames per second settings. This will only work with " -"MicroDVD and SubRIP (SRT) subtitles." +"Override the normal frames per second settings. This will only affect frame-" +"based subtitle formats without a fixed value." msgstr "" "Remplacer le nombre d?images par seconde. Ne fonctionne qu?avec les sous-" -"titres MicroDVD et SubRIP." +"titres bas?s sur la trame sans valeur fixe." -#: modules/demux/subtitle.c:59 -#, fuzzy +#: modules/demux/subtitle_asa.c:61 msgid "" -"Force the subtiles format. Valid values are : \"microdvd\", \"subrip\", " -"\"subviewer\", \"ssa1\", \"ssa2-4\", \"ass\", \"vplayer\", \"sami\", " -"\"dvdsubtitle\", \"mpl2\", \"aqt\", \"pjs\", \"mpsub\", \"jacosub\", \"psb" -"\", \"realtext\", \"dks\", \"subviewer1\", and \"auto\" (meaning " -"autodetection, this should always work)." -msgstr "" -"Force le format des sous-titres. Les valeurs valides sont?: \"microdvd\", " -"\"subrip\", \"ssa1\", \"ssa2-4\", \"ass\", \"vplayer\", \"sami\", " -"\"dvdsubtitle\" et \"auto\" (autodetection du format)." +"Force the subtiles format. Use \"auto\", the set of supported values varies." +msgstr "Forcer le format des sous-titre. Utilisez ??auto??." -#: modules/demux/ts.c:110 +#: modules/demux/subtitle_asa.c:64 +msgid "Subtitles (asa demuxer)" +msgstr "Sous-titres (d?multiplexeur asa)" + +#: modules/demux/ts.c:111 msgid "Extra PMT" msgstr "PMT suppl?mentaire" -#: modules/demux/ts.c:112 +#: modules/demux/ts.c:113 msgid "Allows a user to specify an extra pmt (pmt_pid=pid:stream_type[,...])." msgstr "" -"Permet de sp?cifier une PMT suppl?mentaire (pmt_pid=pid:type_flux[,..])." +"Permet de sp?cifier une PMT suppl?mentaire (pmt_pid=pid:type_flux[,?])." -#: modules/demux/ts.c:114 +#: modules/demux/ts.c:115 msgid "Set id of ES to PID" msgstr "S?lectionner l?id de l?ES pour le PID" -#: modules/demux/ts.c:115 +#: modules/demux/ts.c:116 msgid "" "Set the internal ID of each elementary stream handled by VLC to the same " "value as the PID in the TS stream, instead of 1, 2, 3, etc. Useful to do " @@ -12601,68 +12803,67 @@ msgid "" msgstr "" "R?gle l?identifiant interne de chaque flux ?l?mentaire ? la valeur du PID " "dans le flux TS, au lieu de 1,2,3. Ceci est utile pour rep?rer les flux, " -"dans duplicate par exemple ('#duplicate{...,select=\"es=\"}')." +"dans duplicate par exemple ('#duplicate{?,select=\"es=\"}')." -#: modules/demux/ts.c:120 +#: modules/demux/ts.c:121 msgid "Fast udp streaming" msgstr "Diffusion UDP rapide" -#: modules/demux/ts.c:122 +#: modules/demux/ts.c:123 msgid "Sends TS to specific ip:port by udp (you must know what you are doing)." msgstr "" "Envoie le flux TS par UDP ? l?ip:port sp?cifi?e (? n?utiliser que si vous " "savez ce que vous faites)." -#: modules/demux/ts.c:124 +#: modules/demux/ts.c:125 msgid "MTU for out mode" msgstr "MTU pour le mode de sortie" -#: modules/demux/ts.c:125 +#: modules/demux/ts.c:126 msgid "MTU for out mode." msgstr "MTU pour le mode de sortie" -#: modules/demux/ts.c:127 +#: modules/demux/ts.c:128 msgid "CSA ck" msgstr "Cl? CSA" -#: modules/demux/ts.c:128 +#: modules/demux/ts.c:129 msgid "Control word for the CSA encryption algorithm" msgstr "Mot de contr?le pour lCSA" -#: modules/demux/ts.c:130 modules/mux/mpeg/ts.c:170 +#: modules/demux/ts.c:131 modules/mux/mpeg/ts.c:172 msgid "Second CSA Key" msgstr "Deuxi?me Cl? CSA" -#: modules/demux/ts.c:131 modules/mux/mpeg/ts.c:171 -#, fuzzy +#: modules/demux/ts.c:132 modules/mux/mpeg/ts.c:173 msgid "" "The even CSA encryption key. This must be a 16 char string (8 hexadecimal " "bytes)." msgstr "" -"Cl? de chiffrement CSA. Celle-ci doit ?tre une cha?ne de 16 caract?res (8 " -"octets hexad?cimaux)." +"Cl? de chiffrement CSA paire. Celle-ci doit ?tre une cha?ne de 16 caract?res " +"(8 octets hexad?cimaux)." -#: modules/demux/ts.c:134 +#: modules/demux/ts.c:135 msgid "Silent mode" msgstr "Mode silencieux" -#: modules/demux/ts.c:135 +#: modules/demux/ts.c:136 msgid "Do not complain on encrypted PES." msgstr "Ne pas afficher d?avertissement pour les flux encrypt?s." -#: modules/demux/ts.c:137 +#: modules/demux/ts.c:138 msgid "CAPMT System ID" msgstr "System ID du CAPMT" -#: modules/demux/ts.c:138 +#: modules/demux/ts.c:139 msgid "Only forward descriptors from this SysID to the CAM." msgstr "Transmettre les descripteurs de ce SysID uniquement au module CAM." -#: modules/demux/ts.c:140 +#: modules/demux/ts.c:141 msgid "Packet size in bytes to decrypt" msgstr "Taille de paquet ? d?chiffrer, en octets" -#: modules/demux/ts.c:141 +#: modules/demux/ts.c:142 msgid "" "Specify the size of the TS packet to decrypt. The decryption routines " "subtract the TS-header from the value before decrypting. " @@ -12670,19 +12871,19 @@ msgstr "" "Ceci permet de sp?cifier la taille du paquet TS ? d?chiffrer. Les routines " "de descriptions enl?vent l?en-t?te TS avant de d?chiffrer. " -#: modules/demux/ts.c:145 +#: modules/demux/ts.c:146 msgid "Filename of dump" msgstr "Nom de fichier du dump" -#: modules/demux/ts.c:146 +#: modules/demux/ts.c:147 msgid "Specify a filename where to dump the TS in." msgstr "Nom du fichier dans lequel sera enregistr? le flux TS." -#: modules/demux/ts.c:148 +#: modules/demux/ts.c:149 msgid "Append" msgstr "Ajouter" -#: modules/demux/ts.c:150 +#: modules/demux/ts.c:151 msgid "" "If the file exists and this option is selected, the existing file will not " "be overwritten." @@ -12690,11 +12891,11 @@ msgstr "" "Si le fichier sp?cifi? existe d?j? et que cette option est activ?e, les " "nouvelles donn?es seront ajout?es au fichier." -#: modules/demux/ts.c:153 +#: modules/demux/ts.c:154 msgid "Dump buffer size" msgstr "Taille du tampon de dump" -#: modules/demux/ts.c:155 +#: modules/demux/ts.c:156 msgid "" "Tweak the buffer size for reading and writing an integer number of packets." "Specify the size of the buffer here and not the number of packets." @@ -12703,58 +12904,44 @@ msgstr "" "nombre de paquets. Veuillez sp?cifier la taille du tampon, et non le nombre " "de paquets" -#: modules/demux/ts.c:159 +#: modules/demux/ts.c:160 msgid "MPEG Transport Stream demuxer" msgstr "D?multiplexeur MPEG Transport Stream" -#: modules/demux/ts.c:3421 +#: modules/demux/ts.c:190 modules/gui/macosx/controls.m:1043 +#: modules/gui/macosx/intf.m:595 +msgid "Teletext" +msgstr "T?l?texte" + +#: modules/demux/ts.c:191 msgid "Teletext subtitles" -msgstr "Sous-titres t?l?texte" +msgstr "Sous-titres T?l?texte" -#: modules/demux/ts.c:3431 -msgid "Teletext hearing impaired subtitles" -msgstr "Sous-titres pour Malentendants" +#: modules/demux/ts.c:192 +msgid "Teletext: additional information" +msgstr "Informations suppl?mentaires T?l?texte." -#: modules/demux/ts.c:3526 -msgid "subtitles" -msgstr "Sous-titres" +#: modules/demux/ts.c:193 +msgid "Teletext: program schedule" +msgstr "Progammes T?l?texte" -#: modules/demux/ts.c:3530 -msgid "4:3 subtitles" -msgstr "Sous-titres 4:3" +#: modules/demux/ts.c:194 +msgid "Teletext subtitles: hearing impaired" +msgstr "Sous-titres T?l?texte pour malentendants" -#: modules/demux/ts.c:3534 -msgid "16:9 subtitles" -msgstr "Sous-titres 16:9" +#: modules/demux/ts.c:3562 +msgid "DVB subtitles: hearing impaired" +msgstr "Sous-titres DVD pour malentendants" -#: modules/demux/ts.c:3538 -msgid "2.21:1 subtitles" -msgstr "Sous-titres 2.21:1" +#: modules/demux/ts.c:3762 modules/demux/ts.c:3803 +msgid "clean effects" +msgstr "Nettoyer les effets" -#: modules/demux/ts.c:3542 modules/demux/ts.c:3723 modules/demux/ts.c:3764 +#: modules/demux/ts.c:3766 modules/demux/ts.c:3807 msgid "hearing impaired" msgstr "Malentendants" -#: modules/demux/ts.c:3546 -#, fuzzy -msgid "4:3 hearing impaired" -msgstr "Malentendants" - -#: modules/demux/ts.c:3550 -#, fuzzy -msgid "16:9 hearing impaired" -msgstr "Malentendants" - -#: modules/demux/ts.c:3554 -#, fuzzy -msgid "2.21:1 hearing impaired" -msgstr "Malentendants" - -#: modules/demux/ts.c:3719 modules/demux/ts.c:3760 -msgid "clean effects" -msgstr "Nettoyer les effets" - -#: modules/demux/ts.c:3727 modules/demux/ts.c:3768 +#: modules/demux/ts.c:3770 modules/demux/ts.c:3811 msgid "visual impaired commentary" msgstr "Commentaire pour les malvoyants" @@ -12770,16 +12957,31 @@ msgstr "TY" msgid "TY Stream audio/video demux" msgstr "D?codeur de flux TY audio/vid?o" +#: modules/demux/ty.c:771 +msgid "Closed captions 1" +msgstr "Sous-titrage cod? 1" + +#: modules/demux/ty.c:772 +msgid "Closed captions 2" +msgstr "Sous-titrage cod? 2" + +#: modules/demux/ty.c:773 +msgid "Closed captions 3" +msgstr "Sous-titrage cod? 3" + +#: modules/demux/ty.c:774 +msgid "Closed captions 4" +msgstr "Sous-titrage cod? 4" + #: modules/demux/vc1.c:44 -#, fuzzy msgid "Desired frame rate for the VC-1 stream." -msgstr "D?bit d?images pour le flux H264." +msgstr "D?bit d?images pour le flux VC-1." #: modules/demux/vc1.c:50 msgid "VC1 video demuxer" msgstr "D?multiplexeur vid?o VC1" -#: modules/demux/vobsub.c:52 +#: modules/demux/vobsub.c:53 msgid "Vobsub subtitles parser" msgstr "D?multiplexeur de sous-titres Vobsub" @@ -12805,32 +13007,31 @@ msgstr "Interface BeOS" #: modules/gui/beos/InterfaceWindow.cpp:160 msgid "Open files from all sub-folders as well?" -msgstr "Ouvrir aussi les fichiers des sous-r?pertoires ?" +msgstr "Ouvrir aussi les fichiers des sous-dossiers ?" -#: modules/gui/beos/InterfaceWindow.cpp:161 modules/gui/macosx/open.m:500 -#: modules/gui/macosx/open.m:691 modules/gui/macosx/open.m:804 -#: modules/gui/macosx/open.m:1028 modules/gui/qt4/dialogs/open.cpp:78 -#: modules/gui/qt4/menus.cpp:676 +#: modules/gui/beos/InterfaceWindow.cpp:161 modules/gui/macosx/open.m:516 +#: modules/gui/macosx/open.m:707 modules/gui/macosx/open.m:819 +#: modules/gui/macosx/open.m:1049 msgid "Open" msgstr "Ouvrir" #: modules/gui/beos/InterfaceWindow.cpp:226 -#: modules/gui/beos/InterfaceWindow.cpp:331 modules/gui/macosx/prefs.m:124 -#: modules/gui/macosx/simple_prefs.m:303 -#: modules/gui/qt4/dialogs/preferences.cpp:51 +#: modules/gui/beos/InterfaceWindow.cpp:331 modules/gui/macosx/prefs.m:183 +#: modules/gui/macosx/simple_prefs.m:298 +#: modules/gui/qt4/dialogs/preferences.cpp:48 msgid "Preferences" msgstr "Pr?f?rences" #: modules/gui/beos/InterfaceWindow.cpp:238 -#: modules/gui/beos/InterfaceWindow.cpp:329 modules/gui/macosx/intf.m:497 -#: modules/gui/qt4/dialogs/messages.cpp:48 -#: modules/gui/qt4/dialogs/messages.cpp:66 +#: modules/gui/beos/InterfaceWindow.cpp:329 modules/gui/macosx/intf.m:507 +#: modules/gui/qt4/dialogs/messages.cpp:75 +#: modules/gui/qt4/dialogs/messages.cpp:94 msgid "Messages" msgstr "Messages" #: modules/gui/beos/InterfaceWindow.cpp:266 -#: modules/gui/beos/PlayListWindow.cpp:90 modules/gui/macosx/open.m:499 -#: modules/gui/macosx/open.m:803 modules/gui/macosx/open.m:1027 +#: modules/gui/beos/PlayListWindow.cpp:90 modules/gui/macosx/open.m:515 +#: modules/gui/macosx/open.m:818 modules/gui/macosx/open.m:1048 #: modules/gui/qt4/ui/open_file.ui:20 msgid "Open File" msgstr "Ouvrir un &fichier" @@ -12846,8 +13047,8 @@ msgstr "Ouvrir sous-titres" #: modules/gui/beos/InterfaceWindow.cpp:273 #: modules/gui/pda/pda_interface.c:298 modules/gui/pda/pda_interface.c:299 -#: modules/gui/pda/pda_interface.c:1360 modules/gui/qt4/dialogs/help.cpp:90 -#: modules/gui/qt4/dialogs/help.cpp:167 +#: modules/gui/pda/pda_interface.c:1360 modules/gui/qt4/dialogs/help.cpp:87 +#: modules/gui/qt4/dialogs/help.cpp:164 msgid "About" msgstr "? propos" @@ -12871,7 +13072,7 @@ msgstr "Chapitre" msgid "Speed" msgstr "Vitesse" -#: modules/gui/beos/InterfaceWindow.cpp:324 modules/gui/macosx/intf.m:586 +#: modules/gui/beos/InterfaceWindow.cpp:324 modules/gui/macosx/intf.m:603 msgid "Window" msgstr "Fen?tre" @@ -12881,7 +13082,7 @@ msgstr "Ouvrir des fichiers de m?dia" #: modules/gui/beos/InterfaceWindow.cpp:417 msgid "VLC media player: Open Subtitle File" -msgstr "VLC media player : Ouvrir un fichier de sous-titres" +msgstr "VLC media player?: Ouvrir un fichier de sous-titres" #: modules/gui/beos/MediaControlView.cpp:70 msgid "Drop files to play" @@ -12896,12 +13097,12 @@ msgid "Close" msgstr "Fermer" #: modules/gui/beos/PlayListWindow.cpp:104 modules/gui/macosx/bookmarks.m:90 -#: modules/gui/macosx/intf.m:523 +#: modules/gui/macosx/intf.m:533 msgid "Edit" msgstr "?dition" -#: modules/gui/beos/PlayListWindow.cpp:106 modules/gui/macosx/intf.m:528 -#: modules/gui/macosx/playlist.m:442 +#: modules/gui/beos/PlayListWindow.cpp:106 modules/gui/macosx/intf.m:538 +#: modules/gui/macosx/playlist.m:446 msgid "Select All" msgstr "Tout s?lectionner" @@ -12942,7 +13143,7 @@ msgid "Path" msgstr "Chemin d?acc?s" #: modules/gui/beos/PlayListWindow.cpp:150 modules/gui/macosx/bookmarks.m:103 -#: modules/gui/macosx/playlist.m:126 +#: modules/gui/macosx/playlist.m:128 modules/gui/qt4/dialogs/plugins.cpp:60 msgid "Name" msgstr "Nom" @@ -12951,8 +13152,8 @@ msgid "Apply" msgstr "Appliquer" #: modules/gui/beos/PreferencesWindow.cpp:257 modules/gui/macosx/output.m:526 -#: modules/gui/macosx/playlist.m:679 modules/gui/macosx/prefs.m:125 -#: modules/gui/macosx/simple_prefs.m:302 modules/gui/qt4/ui/vlm.ui:209 +#: modules/gui/macosx/playlist.m:713 modules/gui/macosx/prefs.m:184 +#: modules/gui/macosx/simple_prefs.m:297 modules/gui/qt4/ui/vlm.ui:209 msgid "Save" msgstr "Enregistrer" @@ -12992,104 +13193,102 @@ msgstr "Toujours au-dessus" msgid "Take Screen Shot" msgstr "Copie d??cran" -#: modules/gui/fbosd.c:103 modules/video_output/fb.c:78 +#: modules/gui/fbosd.c:101 modules/video_output/fb.c:79 msgid "Framebuffer device" msgstr "P?riph?rique du framebuffer" -#: modules/gui/fbosd.c:105 modules/video_output/fb.c:80 +#: modules/gui/fbosd.c:103 modules/video_output/fb.c:81 msgid "Framebuffer device to use for rendering (usually /dev/fb0)." msgstr "" "P?riph?rique de framebuffer ? utiliser pour le rendu (g?n?ralement /dev/fb0)." -#: modules/gui/fbosd.c:107 modules/video_output/fb.c:91 +#: modules/gui/fbosd.c:105 modules/video_output/fb.c:92 msgid "Video aspect ratio" msgstr "Proportions de la vid?o" -#: modules/gui/fbosd.c:109 modules/video_output/fb.c:93 +#: modules/gui/fbosd.c:107 modules/video_output/fb.c:94 msgid "Aspect ratio of the video image (4:3, 16:9). Default is square pixels." msgstr "" "Proportions de l'image vid?o (4:3, 16:9). Le d?faut est 1:1 (pixels carr?s)" -#: modules/gui/fbosd.c:113 +#: modules/gui/fbosd.c:111 msgid "Filename of image file to use on the overlay framebuffer." -msgstr "" +msgstr "Nom du fichier pour l'image ? utiliser en superposition." -#: modules/gui/fbosd.c:115 +#: modules/gui/fbosd.c:113 msgid "Transparency of the image" msgstr "Transparence de l'image" -#: modules/gui/fbosd.c:116 -#, fuzzy +#: modules/gui/fbosd.c:114 msgid "" "Transparency value of the new image used in blending. By default it set to " "fully opaque (255). (from 0 for full transparency to 255 for full opacity)" -msgstr "Transparence du logo (255 = opaque, 0 = transparent)." +msgstr "" +"Transparence de l'image. Par d?faut compl?tement opaque (255 = opaque, 0 = " +"transparent)." -#: modules/gui/fbosd.c:120 modules/gui/qt4/ui/video_effects.ui:738 -#: modules/misc/logger.c:119 modules/video_filter/marq.c:86 +#: modules/gui/fbosd.c:118 modules/gui/qt4/ui/video_effects.ui:744 +#: modules/misc/logger.c:124 modules/video_filter/marq.c:86 msgid "Text" msgstr "Texte" -#: modules/gui/fbosd.c:121 +#: modules/gui/fbosd.c:119 msgid "Text to display on the overlay framebuffer." -msgstr "" +msgstr "Texte ? afficher en superposition" -#: modules/gui/fbosd.c:123 modules/video_filter/erase.c:58 +#: modules/gui/fbosd.c:121 modules/video_filter/erase.c:58 #: modules/video_filter/logo.c:81 modules/video_filter/osdmenu.c:51 msgid "X coordinate" msgstr "Position X" -#: modules/gui/fbosd.c:124 -#, fuzzy +#: modules/gui/fbosd.c:122 msgid "X coordinate of the rendered image" -msgstr "Position X de l?incrustation encod?e" +msgstr "Position X de l?image" -#: modules/gui/fbosd.c:126 modules/video_filter/erase.c:60 +#: modules/gui/fbosd.c:124 modules/video_filter/erase.c:60 #: modules/video_filter/logo.c:84 modules/video_filter/osdmenu.c:54 msgid "Y coordinate" msgstr "Position Y" -#: modules/gui/fbosd.c:127 -#, fuzzy +#: modules/gui/fbosd.c:125 msgid "Y coordinate of the rendered image" -msgstr "Position Y de l?incrustation encod?e" +msgstr "Position Y de l?image" -#: modules/gui/fbosd.c:131 -#, fuzzy +#: modules/gui/fbosd.c:129 msgid "" "You can enforce the picture position on the overlay (0=center, 1=left, " "2=right, 4=top, 8=bottom, you can also use combinations of these values, e." "g. 6=top-right)." msgstr "" -"Forcer la position du sous-titre sur la video (0=centr?, 1=gauche, 2=droite, " +"Forcer la position de l'image sur la video (0=centr?, 1=gauche, 2=droite, " "4=haut, 8=bas, et vous pouvez utiliser une combinaison de ces valeurs, comme " "par exemple 6 = haut-droite)." -#: modules/gui/fbosd.c:135 modules/misc/freetype.c:91 +#: modules/gui/fbosd.c:133 modules/misc/freetype.c:90 #: modules/misc/win32text.c:64 modules/video_filter/marq.c:115 #: modules/video_filter/rss.c:146 msgid "Opacity" msgstr "Opacit?" -#: modules/gui/fbosd.c:136 modules/video_filter/marq.c:116 +#: modules/gui/fbosd.c:134 modules/video_filter/marq.c:116 msgid "" "Opacity (inverse of transparency) of overlayed text. 0 = transparent, 255 = " "totally opaque. " msgstr "Opacit? du texte affich? (0 = transparent, 255 = opaque). " -#: modules/gui/fbosd.c:139 modules/video_filter/marq.c:118 +#: modules/gui/fbosd.c:137 modules/video_filter/marq.c:118 #: modules/video_filter/rss.c:150 msgid "Font size, pixels" msgstr "Taille de la police en pixels" -#: modules/gui/fbosd.c:140 modules/video_filter/marq.c:119 +#: modules/gui/fbosd.c:138 modules/video_filter/marq.c:119 #: modules/video_filter/rss.c:151 msgid "Font size, in pixels. Default is -1 (use default font size)." msgstr "" "Taille de la police, en pixels. La valeur par d?faut est -1 (utiliser la " "taille par d?faut)." -#: modules/gui/fbosd.c:144 modules/video_filter/marq.c:123 +#: modules/gui/fbosd.c:142 modules/video_filter/marq.c:123 #: modules/video_filter/rss.c:155 msgid "" "Color of the text that will be rendered on the video. This must be an " @@ -13102,156 +13301,51 @@ msgstr "" "vert puis bleu. #000000 = noir, #FF0000 = rouge, #00FF00 = vert, #FFFF00 = " "jaune (rouge + bleu), #FFFFFF = blanc." -#: modules/gui/fbosd.c:149 +#: modules/gui/fbosd.c:147 msgid "Clear overlay framebuffer" -msgstr "" +msgstr "Effacer le tampon de superposition" -#: modules/gui/fbosd.c:150 +#: modules/gui/fbosd.c:148 msgid "" "The displayed overlay images is cleared by making the overlay completely " "transparent. All previously rendered images and text will be cleared from " "the cache." msgstr "" -#: modules/gui/fbosd.c:154 -#, fuzzy +#: modules/gui/fbosd.c:152 msgid "Render text or image" -msgstr "Permet de cloner l?image" +msgstr "Afficher du texte ou une image" -#: modules/gui/fbosd.c:155 +#: modules/gui/fbosd.c:153 msgid "Render the image or text in current overlay buffer." msgstr "" -#: modules/gui/fbosd.c:158 -#, fuzzy +#: modules/gui/fbosd.c:156 msgid "Display on overlay framebuffer" -msgstr "Images affich?es" +msgstr "Afficher en superposition" -#: modules/gui/fbosd.c:159 +#: modules/gui/fbosd.c:157 msgid "" "All rendered images and text will be displayed on the overlay framebuffer." msgstr "" -#: modules/gui/fbosd.c:173 modules/misc/freetype.c:128 -#: modules/misc/quartztext.c:102 modules/misc/win32text.c:87 -#: modules/video_filter/marq.c:61 modules/video_filter/rss.c:70 -msgid "Black" -msgstr "Noir" - -#: modules/gui/fbosd.c:174 modules/misc/freetype.c:128 -#: modules/misc/quartztext.c:102 modules/misc/win32text.c:87 -#: modules/video_filter/marq.c:61 modules/video_filter/rss.c:71 -msgid "Gray" -msgstr "Gris" - -#: modules/gui/fbosd.c:174 modules/misc/freetype.c:128 -#: modules/misc/quartztext.c:102 modules/misc/win32text.c:87 -#: modules/video_filter/marq.c:62 modules/video_filter/rss.c:71 -msgid "Silver" -msgstr "Argent" - -#: modules/gui/fbosd.c:174 modules/misc/freetype.c:128 -#: modules/misc/quartztext.c:102 modules/misc/win32text.c:87 -#: modules/video_filter/marq.c:62 modules/video_filter/rss.c:71 -msgid "White" -msgstr "Blanc" - -#: modules/gui/fbosd.c:174 modules/misc/freetype.c:128 -#: modules/misc/quartztext.c:102 modules/misc/win32text.c:87 -#: modules/video_filter/marq.c:62 modules/video_filter/rss.c:71 -msgid "Maroon" -msgstr "Marron" - -#: modules/gui/fbosd.c:174 modules/misc/freetype.c:129 -#: modules/misc/quartztext.c:103 modules/misc/win32text.c:88 -#: modules/video_filter/colorthres.c:63 modules/video_filter/marq.c:62 -#: modules/video_filter/rss.c:71 -msgid "Red" -msgstr "Rouge" - -#: modules/gui/fbosd.c:175 modules/misc/freetype.c:129 -#: modules/misc/quartztext.c:103 modules/misc/win32text.c:88 -#: modules/video_filter/colorthres.c:63 modules/video_filter/marq.c:63 -#: modules/video_filter/rss.c:72 -msgid "Fuchsia" -msgstr "Fuchsia" - -#: modules/gui/fbosd.c:175 modules/misc/freetype.c:129 -#: modules/misc/quartztext.c:103 modules/misc/win32text.c:88 -#: modules/video_filter/colorthres.c:63 modules/video_filter/marq.c:63 -#: modules/video_filter/rss.c:72 -msgid "Yellow" -msgstr "Jaune" - -#: modules/gui/fbosd.c:175 modules/misc/freetype.c:129 -#: modules/misc/quartztext.c:103 modules/misc/win32text.c:88 -#: modules/video_filter/marq.c:63 modules/video_filter/rss.c:72 -msgid "Olive" -msgstr "Olive" - -#: modules/gui/fbosd.c:175 modules/misc/freetype.c:129 -#: modules/misc/quartztext.c:103 modules/misc/win32text.c:88 -#: modules/video_filter/marq.c:63 modules/video_filter/rss.c:72 -msgid "Green" -msgstr "Vert" - -#: modules/gui/fbosd.c:176 modules/misc/freetype.c:129 -#: modules/misc/quartztext.c:103 modules/misc/win32text.c:88 -#: modules/video_filter/marq.c:64 modules/video_filter/rss.c:73 -msgid "Teal" -msgstr "Emeraude" - -#: modules/gui/fbosd.c:176 modules/misc/freetype.c:130 -#: modules/misc/quartztext.c:104 modules/misc/win32text.c:89 -#: modules/video_filter/colorthres.c:63 modules/video_filter/marq.c:64 -#: modules/video_filter/rss.c:73 -msgid "Lime" -msgstr "Citron vert" - -#: modules/gui/fbosd.c:176 modules/misc/freetype.c:130 -#: modules/misc/quartztext.c:104 modules/misc/win32text.c:89 -#: modules/video_filter/marq.c:64 modules/video_filter/rss.c:73 -msgid "Purple" -msgstr "Violet" - -#: modules/gui/fbosd.c:176 modules/misc/freetype.c:130 -#: modules/misc/quartztext.c:104 modules/misc/win32text.c:89 -#: modules/video_filter/marq.c:64 modules/video_filter/rss.c:73 -msgid "Navy" -msgstr "Marine" - -#: modules/gui/fbosd.c:176 modules/misc/freetype.c:130 -#: modules/misc/quartztext.c:104 modules/misc/win32text.c:89 -#: modules/video_filter/colorthres.c:63 modules/video_filter/marq.c:64 -#: modules/video_filter/rss.c:73 -msgid "Blue" -msgstr "Bleu" - -#: modules/gui/fbosd.c:177 modules/misc/freetype.c:130 -#: modules/misc/quartztext.c:104 modules/misc/win32text.c:89 -#: modules/video_filter/colorthres.c:63 modules/video_filter/marq.c:65 -#: modules/video_filter/rss.c:74 -msgid "Aqua" -msgstr "Eau" - -#: modules/gui/fbosd.c:205 modules/gui/macosx/simple_prefs.m:275 -#: modules/gui/qt4/ui/sprefs_subtitles.ui:147 modules/misc/freetype.c:84 -#: modules/misc/notify/xosd.c:81 modules/misc/quartztext.c:84 +#: modules/gui/fbosd.c:203 modules/gui/macosx/simple_prefs.m:270 +#: modules/gui/qt4/ui/sprefs_subtitles.ui:145 modules/misc/freetype.c:83 +#: modules/misc/notify/xosd.c:81 modules/misc/quartztext.c:85 #: modules/misc/win32text.c:57 modules/video_filter/marq.c:159 #: modules/video_filter/rss.c:203 msgid "Font" msgstr "Police" -#: modules/gui/fbosd.c:214 +#: modules/gui/fbosd.c:212 msgid "Commands" msgstr "Commandes" -#: modules/gui/fbosd.c:219 -#, fuzzy +#: modules/gui/fbosd.c:217 msgid "GNU/Linux osd/overlay framebuffer interface" msgstr "Sortie vid?o pour le framebuffer de GNU/Linux" -#: modules/gui/macosx/about.m:86 modules/gui/macosx/intf.m:501 +#: modules/gui/macosx/about.m:86 modules/gui/macosx/intf.m:511 msgid "About VLC media player" msgstr "? propos du lecteur multim?dia VLC" @@ -13267,10 +13361,10 @@ msgstr "Compil? par %s" #: modules/gui/macosx/about.m:103 msgid "VLC was brought to you by:" -msgstr "VLC vous a ?t? amen? par :" +msgstr "VLC vous a ?t? amen? par?:" #: modules/gui/macosx/about.m:113 modules/gui/macosx/about.m:176 -#: modules/gui/macosx/intf.m:603 modules/gui/qt4/dialogs/help.cpp:170 +#: modules/gui/macosx/intf.m:620 modules/gui/qt4/dialogs/help.cpp:167 msgid "License" msgstr "Licence" @@ -13278,7 +13372,8 @@ msgstr "Licence" msgid "VLC media player Help" msgstr "Aide du Lecteur multim?dia VLC" -#: modules/gui/macosx/about.m:192 modules/gui/pda/pda.c:285 +#: modules/gui/macosx/about.m:192 modules/gui/macosx/controls.m:541 +#: modules/gui/macosx/intf.m:597 modules/gui/pda/pda.c:283 msgid "Index" msgstr "Index" @@ -13292,11 +13387,11 @@ msgstr "Signets" msgid "Add" msgstr "Ajouter" -#: modules/gui/macosx/bookmarks.m:89 modules/gui/macosx/intf.m:527 +#: modules/gui/macosx/bookmarks.m:89 modules/gui/macosx/intf.m:537 #: modules/gui/macosx/simple_prefs.m:239 -#: modules/gui/qt4/components/playlist/standardpanel.cpp:162 -#: modules/gui/qt4/components/preferences_widgets.cpp:1133 +#: modules/gui/qt4/components/preferences_widgets.cpp:1153 #: modules/gui/qt4/dialogs/bookmarks.cpp:48 modules/gui/qt4/ui/vlm.ui:202 +#: modules/gui/qt4/util/customwidgets.cpp:136 msgid "Clear" msgstr "Effacer" @@ -13306,149 +13401,149 @@ msgid "Extract" msgstr "Extraire" #: modules/gui/macosx/bookmarks.m:98 modules/gui/macosx/bookmarks.m:104 -#: modules/gui/pda/pda.c:278 modules/gui/qt4/dialogs/bookmarks.cpp:68 +#: modules/gui/pda/pda.c:276 modules/gui/qt4/dialogs/bookmarks.cpp:68 msgid "Time" msgstr "Temps" -#: modules/gui/macosx/bookmarks.m:129 modules/gui/macosx/playlist.m:675 +#: modules/gui/macosx/bookmarks.m:126 modules/gui/macosx/playlist.m:709 msgid "Untitled" msgstr "Sans titre" -#: modules/gui/macosx/bookmarks.m:218 +#: modules/gui/macosx/bookmarks.m:213 msgid "No input" msgstr "Pas d?entr?e" -#: modules/gui/macosx/bookmarks.m:219 +#: modules/gui/macosx/bookmarks.m:214 msgid "" "No input found. A stream must be playing or paused for bookmarks to work." msgstr "" "Aucune entr?e trouv?e. Le flux doit ?tre en cours de lecture ou en pause " "pour que les signets fonctionnent." -#: modules/gui/macosx/bookmarks.m:226 +#: modules/gui/macosx/bookmarks.m:221 msgid "Input has changed" msgstr "L?entr?e a chang?" -#: modules/gui/macosx/bookmarks.m:227 +#: modules/gui/macosx/bookmarks.m:222 msgid "" "Input has changed, unable to save bookmark. Suspending playback with \"Pause" "\" while editing bookmarks to ensure to keep the same input." msgstr "" -"L?entr?e a chang?, impossible de sauvegarder les signets. Utilisez ? pause ? " +"L?entr?e a chang?, impossible de sauvegarder les signets. Utilisez ??pause?? " "pendant l??dition des signets pour garder la m?me entr?e." -#: modules/gui/macosx/bookmarks.m:271 modules/gui/macosx/wizard.m:1055 +#: modules/gui/macosx/bookmarks.m:266 modules/gui/macosx/wizard.m:1063 msgid "Invalid selection" msgstr "S?lection invalide" -#: modules/gui/macosx/bookmarks.m:273 +#: modules/gui/macosx/bookmarks.m:268 msgid "Two bookmarks have to be selected." msgstr "Vous devez s?lectionner deux signets." -#: modules/gui/macosx/bookmarks.m:279 +#: modules/gui/macosx/bookmarks.m:274 msgid "No input found" msgstr "Aucune entr?e trouv?e" -#: modules/gui/macosx/bookmarks.m:281 +#: modules/gui/macosx/bookmarks.m:276 msgid "The stream must be playing or paused for bookmarks to work." msgstr "" "Le flux doit ?tre en cours de lecture ou en pause pour que les signets " "fonctionnent." -#: modules/gui/macosx/controls.m:57 modules/gui/macosx/controls.m:919 +#: modules/gui/macosx/controls.m:82 modules/gui/macosx/controls.m:981 msgid "Jump To Time" msgstr "Aller ?" -#: modules/gui/macosx/controls.m:60 +#: modules/gui/macosx/controls.m:85 msgid "sec." msgstr "sec." -#: modules/gui/macosx/controls.m:61 +#: modules/gui/macosx/controls.m:86 msgid "Jump to time" msgstr "Aller ?" -#: modules/gui/macosx/controls.m:208 +#: modules/gui/macosx/controls.m:227 msgid "Random On" -msgstr "Al?atoire On" +msgstr "Al?atoire Oui" -#: modules/gui/macosx/controls.m:213 +#: modules/gui/macosx/controls.m:232 msgid "Random Off" -msgstr "Al?atoire Off" +msgstr "Al?atoire Non" -#: modules/gui/macosx/controls.m:270 modules/gui/macosx/controls.m:330 -#: modules/gui/macosx/controls.m:903 modules/gui/macosx/intf.m:538 +#: modules/gui/macosx/controls.m:289 modules/gui/macosx/controls.m:349 +#: modules/gui/macosx/controls.m:965 modules/gui/macosx/intf.m:548 msgid "Repeat One" msgstr "R?p?ter un" -#: modules/gui/macosx/controls.m:286 modules/gui/macosx/controls.m:359 -#: modules/gui/macosx/controls.m:910 modules/gui/macosx/intf.m:539 +#: modules/gui/macosx/controls.m:305 modules/gui/macosx/controls.m:378 +#: modules/gui/macosx/controls.m:972 modules/gui/macosx/intf.m:549 msgid "Repeat All" msgstr "Tout r?p?ter" -#: modules/gui/macosx/controls.m:302 modules/gui/macosx/controls.m:335 -#: modules/gui/macosx/controls.m:364 +#: modules/gui/macosx/controls.m:321 modules/gui/macosx/controls.m:354 +#: modules/gui/macosx/controls.m:383 msgid "Repeat Off" -msgstr "R?p?tition Off" +msgstr "Sans r?p?tition" -#: modules/gui/macosx/controls.m:459 modules/gui/macosx/controls.m:933 -#: modules/gui/macosx/intf.m:564 +#: modules/gui/macosx/controls.m:478 modules/gui/macosx/controls.m:995 +#: modules/gui/macosx/intf.m:574 msgid "Half Size" -msgstr "Taille 50 %" +msgstr "Taille moiti?e" -#: modules/gui/macosx/controls.m:461 modules/gui/macosx/controls.m:934 -#: modules/gui/macosx/intf.m:565 +#: modules/gui/macosx/controls.m:480 modules/gui/macosx/controls.m:996 +#: modules/gui/macosx/controls.m:1041 modules/gui/macosx/intf.m:575 msgid "Normal Size" msgstr "Taille normale" -#: modules/gui/macosx/controls.m:463 modules/gui/macosx/controls.m:935 -#: modules/gui/macosx/intf.m:566 +#: modules/gui/macosx/controls.m:482 modules/gui/macosx/controls.m:997 +#: modules/gui/macosx/intf.m:576 msgid "Double Size" msgstr "Taille double" -#: modules/gui/macosx/controls.m:465 modules/gui/macosx/controls.m:939 -#: modules/gui/macosx/controls.m:950 modules/gui/macosx/intf.m:569 +#: modules/gui/macosx/controls.m:484 modules/gui/macosx/controls.m:1001 +#: modules/gui/macosx/controls.m:1012 modules/gui/macosx/intf.m:579 msgid "Float on Top" msgstr "Flotter au-dessus" -#: modules/gui/macosx/controls.m:467 modules/gui/macosx/controls.m:936 -#: modules/gui/macosx/intf.m:567 +#: modules/gui/macosx/controls.m:486 modules/gui/macosx/controls.m:998 +#: modules/gui/macosx/intf.m:577 msgid "Fit to Screen" msgstr "Ajuster ? l??cran" -#: modules/gui/macosx/controls.m:917 modules/gui/macosx/intf.m:540 +#: modules/gui/macosx/controls.m:979 modules/gui/macosx/intf.m:550 msgid "Step Forward" msgstr "Avancer" -#: modules/gui/macosx/controls.m:918 modules/gui/macosx/intf.m:541 +#: modules/gui/macosx/controls.m:980 modules/gui/macosx/intf.m:551 msgid "Step Backward" msgstr "Reculer" -#: modules/gui/macosx/embeddedwindow.m:64 modules/gui/macosx/intf.m:486 +#: modules/gui/macosx/embeddedwindow.m:48 modules/gui/macosx/intf.m:496 #: modules/gui/pda/pda_interface.c:236 modules/gui/pda/pda_interface.c:237 msgid "Rewind" msgstr "Retour arri?re" -#: modules/gui/macosx/embeddedwindow.m:65 modules/gui/macosx/intf.m:489 +#: modules/gui/macosx/embeddedwindow.m:49 modules/gui/macosx/intf.m:499 msgid "Fast Forward" msgstr "Avance rapide" -#: modules/gui/macosx/equalizer.m:157 modules/gui/qt4/ui/equalizer.ui:34 +#: modules/gui/macosx/equalizer.m:154 modules/gui/qt4/ui/equalizer.ui:34 msgid "2 Pass" msgstr "2 Passes" -#: modules/gui/macosx/equalizer.m:158 +#: modules/gui/macosx/equalizer.m:155 msgid "Apply the equalizer filter twice. The effect will be sharper." msgstr "" "Si vous appliquez ce r?glage, le filtrage par l??galiseur sera fait deux " "fois, produisant un effet plus accentu?." -#: modules/gui/macosx/equalizer.m:161 +#: modules/gui/macosx/equalizer.m:158 msgid "Enable the equalizer. Bands can be set manually or using a preset." msgstr "" "Activer l??galiseur. Vous pouvez soit changer manuellement les bandes soit " "utiliser un pr?r?glage." -#: modules/gui/macosx/equalizer.m:163 modules/gui/qt4/ui/equalizer.ui:78 +#: modules/gui/macosx/equalizer.m:160 modules/gui/qt4/ui/equalizer.ui:78 msgid "Preamp" msgstr "Pr?amp" @@ -13458,7 +13553,7 @@ msgstr "Contr?les ?tendus" #: modules/gui/macosx/extended.m:68 msgid "Shows more information about the available video filters." -msgstr "" +msgstr "Montre plus d'information sur les filtres vid?os disponibles." #: modules/gui/macosx/extended.m:69 modules/video_filter/wave.c:55 msgid "Wave" @@ -13468,25 +13563,23 @@ msgstr "Onde" msgid "Ripple" msgstr "Surface" -#: modules/gui/macosx/extended.m:71 modules/gui/qt4/ui/video_effects.ui:559 +#: modules/gui/macosx/extended.m:71 modules/gui/qt4/ui/video_effects.ui:565 #: modules/meta_engine/id3genres.h:95 modules/video_filter/psychedelic.c:55 msgid "Psychedelic" msgstr "Psych?d?lique" -#: modules/gui/macosx/extended.m:72 modules/gui/qt4/ui/video_effects.ui:624 +#: modules/gui/macosx/extended.m:72 modules/gui/qt4/ui/video_effects.ui:630 #: modules/video_filter/gradient.c:75 modules/video_filter/gradient.c:81 msgid "Gradient" msgstr "Gradient" #: modules/gui/macosx/extended.m:73 -#, fuzzy msgid "General editing filters" -msgstr "Param?tres audio g?n?raux" +msgstr "Param?tres g?n?raux des filtres" #: modules/gui/macosx/extended.m:74 -#, fuzzy msgid "Distortion filters" -msgstr "Filtre de distorsion vid?o" +msgstr "Filtres de distorsion" #: modules/gui/macosx/extended.m:75 msgid "Blur" @@ -13530,7 +13623,7 @@ msgstr "Zoom interactif" #: modules/gui/macosx/extended.m:87 msgid "Enables an interactive Zoom feature" -msgstr "" +msgstr "Active le zoom interactif" #: modules/gui/macosx/extended.m:88 msgid "Volume normalization" @@ -13557,7 +13650,7 @@ msgstr "Niveau maximal" msgid "Restore Defaults" msgstr "R?initialiser" -#: modules/gui/macosx/extended.m:102 modules/gui/macosx/macosx.m:60 +#: modules/gui/macosx/extended.m:102 modules/gui/macosx/macosx.m:57 msgid "Opaqueness" msgstr "Opacit?" @@ -13574,12 +13667,10 @@ msgid "Audio Filter" msgstr "Filtre audio" #: modules/gui/macosx/extended.m:518 -#, fuzzy msgid "About the video filters" -msgstr "? propos des filtres vid?os" +msgstr "? propos des filtres vid?o" #: modules/gui/macosx/extended.m:527 -#, fuzzy msgid "" "This panel allows on-the-fly selection of various video effects.\n" "These filters can be configured individually in the Preferences, in the " @@ -13589,22 +13680,21 @@ msgid "" msgstr "" "Ce panneau permet de r?gler les filtres vid?o ? appliquer.\n" "Ces filtres peuvent ?tre configur?s individuellement dans les pr?f?rences, " -"dans les sous-sections de Video/Filters.\n" +"dans les sous-sections de Vid?o/Filtres.\n" "Pour choisir l?ordre d?application, une cha?ne d?option peut ?tre indiqu?e ? " "ce m?me endroit." -#: modules/gui/macosx/fspanel.m:406 -#, fuzzy +#: modules/gui/macosx/fspanel.m:409 msgid "(no item is being played)" -msgstr "%i ?lements dans la liste de lecture" +msgstr "(pas d'?l?ment ? jouer)" #: modules/gui/macosx/interaction.m:131 msgid "Login:" -msgstr "Nom d'utilisateur :" +msgstr "Nom d'utilisateur?:" #: modules/gui/macosx/interaction.m:132 msgid "Password:" -msgstr "Mot de passe :" +msgstr "Mot de passe?:" #: modules/gui/macosx/interaction.m:220 modules/gui/macosx/interaction.m:286 #, c-format @@ -13616,214 +13706,213 @@ msgid "Errors and Warnings" msgstr "Erreurs et avertissements" #: modules/gui/macosx/interaction.m:400 -#, fuzzy msgid "Clean up" -msgstr " Effacer" +msgstr "Effacer" #: modules/gui/macosx/interaction.m:401 msgid "Show Details" msgstr "Montre les d?tails" -#: modules/gui/macosx/intf.m:448 +#: modules/gui/macosx/intf.m:456 msgid "Your version of Mac OS X is not supported" -msgstr "" +msgstr "Votre version de Mac Os X n'est pas support?e" -#: modules/gui/macosx/intf.m:452 +#: modules/gui/macosx/intf.m:460 msgid "VLC media player requires Mac OS X 10.4 or higher." -msgstr "" +msgstr "VLC a besoin de Mac OS X 10.4 ou plus." -#: modules/gui/macosx/intf.m:498 -#, fuzzy +#: modules/gui/macosx/intf.m:508 msgid "Open CrashLog..." -msgstr "Ouvrir le ? CrashLog ?" +msgstr "Ouvrir le ??CrashLog???" -#: modules/gui/macosx/intf.m:503 +#: modules/gui/macosx/intf.m:513 msgid "Check for Update..." -msgstr "Chercher des mises ? jour..." +msgstr "Chercher des mises ? jour?" -#: modules/gui/macosx/intf.m:504 +#: modules/gui/macosx/intf.m:514 msgid "Preferences..." msgstr "Pr?f?rences?" -#: modules/gui/macosx/intf.m:507 +#: modules/gui/macosx/intf.m:517 msgid "Services" msgstr "Services" -#: modules/gui/macosx/intf.m:508 +#: modules/gui/macosx/intf.m:518 msgid "Hide VLC" msgstr "Masquer VLC" -#: modules/gui/macosx/intf.m:509 +#: modules/gui/macosx/intf.m:519 msgid "Hide Others" msgstr "Masquer les autres" -#: modules/gui/macosx/intf.m:510 +#: modules/gui/macosx/intf.m:520 msgid "Show All" msgstr "Tout afficher" -#: modules/gui/macosx/intf.m:511 +#: modules/gui/macosx/intf.m:521 msgid "Quit VLC" msgstr "Quitter VLC" -#: modules/gui/macosx/intf.m:513 +#: modules/gui/macosx/intf.m:523 msgid "1:File" msgstr "1:Fichier" -#: modules/gui/macosx/intf.m:514 -msgid "Open File..." -msgstr "Ouvrir un fichier?" +#: modules/gui/macosx/intf.m:524 modules/gui/qt4/menus.cpp:317 +msgid "Advanced Open File..." +msgstr "Ouvrir un fichier en mode avanc??" -#: modules/gui/macosx/intf.m:515 -msgid "Quick Open File..." +#: modules/gui/macosx/intf.m:525 modules/gui/qt4/menus.cpp:555 +msgid "Open File..." msgstr "Ouvrir un fichier?" -#: modules/gui/macosx/intf.m:516 +#: modules/gui/macosx/intf.m:526 msgid "Open Disc..." msgstr "Ouvrir un disque?" -#: modules/gui/macosx/intf.m:517 +#: modules/gui/macosx/intf.m:527 msgid "Open Network..." msgstr "Ouvrir un flux r?seau?" -#: modules/gui/macosx/intf.m:518 -#, fuzzy +#: modules/gui/macosx/intf.m:528 msgid "Open Capture Device..." msgstr "Ouvrir un p?riph?rique de capture?" -#: modules/gui/macosx/intf.m:519 +#: modules/gui/macosx/intf.m:529 msgid "Open Recent" msgstr "Ouvrir un flux r?cent" -#: modules/gui/macosx/intf.m:520 modules/gui/macosx/intf.m:2460 +#: modules/gui/macosx/intf.m:530 modules/gui/macosx/intf.m:2574 msgid "Clear Menu" msgstr "Tout effacer" -#: modules/gui/macosx/intf.m:521 +#: modules/gui/macosx/intf.m:531 msgid "Streaming/Exporting Wizard..." msgstr "Assistant de diffusion/trancodage?" -#: modules/gui/macosx/intf.m:524 +#: modules/gui/macosx/intf.m:534 msgid "Cut" msgstr "Couper" -#: modules/gui/macosx/intf.m:525 +#: modules/gui/macosx/intf.m:535 msgid "Copy" msgstr "Copier" -#: modules/gui/macosx/intf.m:526 +#: modules/gui/macosx/intf.m:536 msgid "Paste" msgstr "Coller" -#: modules/gui/macosx/intf.m:530 +#: modules/gui/macosx/intf.m:540 msgid "Playback" msgstr "Lecture" -#: modules/gui/macosx/intf.m:551 modules/gui/macosx/intf.m:621 +#: modules/gui/macosx/intf.m:561 modules/gui/macosx/intf.m:638 msgid "Volume Up" msgstr "Augmenter le volume" -#: modules/gui/macosx/intf.m:552 modules/gui/macosx/intf.m:622 +#: modules/gui/macosx/intf.m:562 modules/gui/macosx/intf.m:639 msgid "Volume Down" msgstr "Baisser le volume" -#: modules/gui/macosx/intf.m:577 modules/gui/macosx/intf.m:578 -#: modules/gui/macosx/simple_prefs.m:283 modules/gui/macosx/vout.m:197 -#, fuzzy +#: modules/gui/macosx/intf.m:587 modules/gui/macosx/intf.m:588 +#: modules/gui/macosx/simple_prefs.m:278 modules/gui/macosx/vout.m:205 msgid "Fullscreen Video Device" msgstr "Sortie vid?o en plein ?cran" -#: modules/gui/macosx/intf.m:583 modules/gui/macosx/intf.m:584 -#: modules/video_filter/postproc.c:186 +#: modules/gui/macosx/intf.m:593 modules/gui/macosx/intf.m:594 +#: modules/gui/qt4/menus.cpp:569 modules/video_filter/postproc.c:188 msgid "Post processing" msgstr "Post-traitement" -#: modules/gui/macosx/intf.m:587 +#: modules/gui/macosx/intf.m:596 +msgid "Transparent" +msgstr "Transparent" + +#: modules/gui/macosx/intf.m:604 msgid "Minimize Window" msgstr "R?duire/agrandir la fen?tre" -#: modules/gui/macosx/intf.m:588 +#: modules/gui/macosx/intf.m:605 msgid "Close Window" msgstr "Fermer la fen?tre" -#: modules/gui/macosx/intf.m:589 +#: modules/gui/macosx/intf.m:606 msgid "Controller..." -msgstr "Contr?leur..." +msgstr "Contr?leur?" -#: modules/gui/macosx/intf.m:590 +#: modules/gui/macosx/intf.m:607 msgid "Equalizer..." -msgstr "?galiseur..." +msgstr "?galiseur?" -#: modules/gui/macosx/intf.m:591 +#: modules/gui/macosx/intf.m:608 msgid "Extended Controls..." -msgstr "Contr?les ?tendus..." +msgstr "Contr?les ?tendus?" -#: modules/gui/macosx/intf.m:592 +#: modules/gui/macosx/intf.m:609 msgid "Bookmarks..." -msgstr "Signets" +msgstr "Signets?" -#: modules/gui/macosx/intf.m:593 +#: modules/gui/macosx/intf.m:610 msgid "Playlist..." msgstr "Liste de lecture?" -#: modules/gui/macosx/intf.m:594 +#: modules/gui/macosx/intf.m:611 modules/gui/macosx/playlist.m:447 msgid "Media Information..." msgstr "Informations sur le m?dia?" -#: modules/gui/macosx/intf.m:595 +#: modules/gui/macosx/intf.m:612 msgid "Messages..." msgstr "Messages?" -#: modules/gui/macosx/intf.m:596 +#: modules/gui/macosx/intf.m:613 msgid "Errors and Warnings..." -msgstr "Erreurs et avertissements..." +msgstr "Erreurs et avertissements?Aide u " -#: modules/gui/macosx/intf.m:598 +#: modules/gui/macosx/intf.m:615 msgid "Bring All to Front" msgstr "Tout ramener au premier plan" -#: modules/gui/macosx/intf.m:600 modules/gui/qt4/dialogs/help.cpp:58 -#: modules/gui/qt4/menus.cpp:692 +#: modules/gui/macosx/intf.m:617 modules/gui/qt4/dialogs/help.cpp:55 +#: modules/gui/qt4/menus.cpp:749 msgid "Help" msgstr "Aide" -#: modules/gui/macosx/intf.m:601 -#, fuzzy +#: modules/gui/macosx/intf.m:618 msgid "VLC media player Help..." -msgstr "Lecteur multim?dia VLC" +msgstr "Aide du lecteur multim?dia VLC?" -#: modules/gui/macosx/intf.m:602 +#: modules/gui/macosx/intf.m:619 msgid "ReadMe / FAQ..." msgstr "Lisez-moi?" -#: modules/gui/macosx/intf.m:604 +#: modules/gui/macosx/intf.m:621 msgid "Online Documentation..." msgstr "Documentation en ligne..." -#: modules/gui/macosx/intf.m:605 +#: modules/gui/macosx/intf.m:622 msgid "VideoLAN Website..." -msgstr "Site web de VideoLAN..." +msgstr "Site web de VideoLAN?" -#: modules/gui/macosx/intf.m:606 +#: modules/gui/macosx/intf.m:623 msgid "Make a donation..." -msgstr "Faire un don..." +msgstr "Faire un don?" -#: modules/gui/macosx/intf.m:607 +#: modules/gui/macosx/intf.m:624 msgid "Online Forum..." -msgstr "Forum en ligne..." +msgstr "Forum en ligne?" -#: modules/gui/macosx/intf.m:628 +#: modules/gui/macosx/intf.m:645 msgid "Send" msgstr "Envoyer" -#: modules/gui/macosx/intf.m:629 +#: modules/gui/macosx/intf.m:646 msgid "Don't Send" msgstr "Ne pas envoyer" -#: modules/gui/macosx/intf.m:630 modules/gui/macosx/intf.m:631 +#: modules/gui/macosx/intf.m:647 modules/gui/macosx/intf.m:648 msgid "VLC crashed previously" -msgstr "" +msgstr "Crash ant?rieur de VLC" -#: modules/gui/macosx/intf.m:632 +#: modules/gui/macosx/intf.m:649 msgid "" "Do you want to send details on the crash to VLC's development team?\n" "\n" @@ -13832,51 +13921,77 @@ msgid "" "URL of a network stream, ..." msgstr "" -#: modules/gui/macosx/intf.m:1617 +#: modules/gui/macosx/intf.m:650 +msgid "I agree to be possibly contacted about this bugreport." +msgstr "" + +#: modules/gui/macosx/intf.m:651 +msgid "" +"Only your default E-Mail address will be submitted, including no further " +"information." +msgstr "" + +#: modules/gui/macosx/intf.m:1665 #, c-format msgid "Volume: %d%%" -msgstr "Volume : %d%%" +msgstr "Volume?: %d%%" -#: modules/gui/macosx/intf.m:2005 +#: modules/gui/macosx/intf.m:2060 msgid "Update check failed" -msgstr "" +msgstr "Impossible de v?rifier les mises ? jour" -#: modules/gui/macosx/intf.m:2005 +#: modules/gui/macosx/intf.m:2060 msgid "Checking for updates was not enabled in this build." msgstr "" +"La v?rification des mises ? jour n'est pas possible dans cette version de " +"VLC." -#: modules/gui/macosx/intf.m:2107 +#: modules/gui/macosx/intf.m:2167 msgid "Crash Report successfully sent" -msgstr "" +msgstr "?mission r?ussi du rapport de plantage" -#: modules/gui/macosx/intf.m:2108 +#: modules/gui/macosx/intf.m:2168 msgid "Thanks for your report!" -msgstr "" +msgstr "Merci pour votre rapport?!" -#: modules/gui/macosx/intf.m:2116 +#: modules/gui/macosx/intf.m:2176 msgid "Error when sending the Crash Report" -msgstr "" +msgstr "Erreur ? l'?misiion du rapport de plantage" -#: modules/gui/macosx/intf.m:2207 +#: modules/gui/macosx/intf.m:2267 msgid "No CrashLog found" -msgstr "Aucun CrashLog trouv?" +msgstr "Aucun fichier CrashLog trouv?" -#: modules/gui/macosx/intf.m:2207 modules/gui/macosx/prefs.m:148 -#: modules/gui/macosx/simple_prefs.m:628 +#: modules/gui/macosx/intf.m:2267 modules/gui/macosx/prefs.m:207 +#: modules/gui/macosx/simple_prefs.m:617 msgid "Continue" msgstr "Continuer" -#: modules/gui/macosx/intf.m:2207 -#, fuzzy +#: modules/gui/macosx/intf.m:2267 msgid "Couldn't find any trace of a previous crash." -msgstr "Impossible de trouver un plantage pr?cdent." +msgstr "Impossible de trouver un plantage pr?c?dent." + +#: modules/gui/macosx/intf.m:2294 +msgid "Remove old preferences?" +msgstr "Effacer les anciennes pr?f?rences??" -#: modules/gui/macosx/macosx.m:55 +#: modules/gui/macosx/intf.m:2295 +msgid "We just found an older version of VLC's preferences files." +msgstr "" + +#: modules/gui/macosx/intf.m:2296 +msgid "Move To Trash and Relaunch VLC" +msgstr "" + +#: modules/gui/macosx/intf.m:2296 +msgid "Ignore" +msgstr "Ignorer" + +#: modules/gui/macosx/macosx.m:52 msgid "Video device" msgstr "P?riph?rique vid?o" -#: modules/gui/macosx/macosx.m:56 -#, fuzzy +#: modules/gui/macosx/macosx.m:53 msgid "" "Number of the screen to use by default to display videos in 'fullscreen'. " "The screen number correspondance can be found in the video device selection " @@ -13886,7 +14001,7 @@ msgstr "" "?cran. La correspondance des num?ros d??crans se trouve dans le menu de " "s?lection du p?riph?rique vid?o." -#: modules/gui/macosx/macosx.m:61 +#: modules/gui/macosx/macosx.m:58 msgid "" "Set the transparency of the video output. 1 is non-transparent (default) 0 " "is fully transparent." @@ -13894,11 +14009,11 @@ msgstr "" "R?gle la transparence de la sortie vid?o. 1 correspond ? opaque (par " "d?faut), 0 ? transparent" -#: modules/gui/macosx/macosx.m:64 +#: modules/gui/macosx/macosx.m:61 msgid "Stretch video to fill window" msgstr "Etirer la vid?o pour remplir la fen?tre" -#: modules/gui/macosx/macosx.m:65 +#: modules/gui/macosx/macosx.m:62 msgid "" "Stretch the video to fill the entire window when resizing the video instead " "of keeping the aspect ratio and displaying black borders." @@ -13906,20 +14021,20 @@ msgstr "" "Etirer la vid?o pour remplir la fen?tre enti?re lors des redimensionnements, " "au lieu de garder le ratio et d?afficher des bordures noires." -#: modules/gui/macosx/macosx.m:69 +#: modules/gui/macosx/macosx.m:66 msgid "Black screens in fullscreen" msgstr "Passer au noir en plein ?cran" -#: modules/gui/macosx/macosx.m:70 +#: modules/gui/macosx/macosx.m:67 msgid "In fullscreen mode, keep screen where there is no video displayed black" msgstr "" "Passer au noir les ?crans n?affichant pas de vid?o, en mode plein ?cran." -#: modules/gui/macosx/macosx.m:73 +#: modules/gui/macosx/macosx.m:70 msgid "Use as Desktop Background" msgstr "Utiliser en tant que fond d??cran" -#: modules/gui/macosx/macosx.m:74 +#: modules/gui/macosx/macosx.m:71 msgid "" "Use the video as the Desktop Background Desktop icons cannot be interacted " "with in this mode." @@ -13927,57 +14042,49 @@ msgstr "" "Ceci permet d?utiliser la vid?o comme fond d??cran du Finder. Lorsque vous " "utilisez ce mode, vous ne pouvez pas utiliser les ic?nes du bureau." -#: modules/gui/macosx/macosx.m:77 +#: modules/gui/macosx/macosx.m:74 msgid "Show Fullscreen controller" msgstr "Afficher le contr?leur plein ?cran" -#: modules/gui/macosx/macosx.m:78 -#, fuzzy +#: modules/gui/macosx/macosx.m:75 msgid "Shows a lucent controller when moving the mouse in fullscreen mode." -msgstr "Choisissez l??cran ? utiliser pour le mode plein ?cran" +msgstr "" -#: modules/gui/macosx/macosx.m:81 +#: modules/gui/macosx/macosx.m:78 msgid "Auto-playback of new items" msgstr "" -#: modules/gui/macosx/macosx.m:82 +#: modules/gui/macosx/macosx.m:79 msgid "Start playback of new items immediately once they were added." msgstr "" -#: modules/gui/macosx/macosx.m:85 -#, fuzzy +#: modules/gui/macosx/macosx.m:82 msgid "Keep Recent Items" -msgstr "R?p?ter l??l?ment actuel" +msgstr "" -#: modules/gui/macosx/macosx.m:86 +#: modules/gui/macosx/macosx.m:83 msgid "" "By default, VLC keeps a list of the last 10 items. This feature can be " "disabled here." msgstr "" -#: modules/gui/macosx/macosx.m:89 -#, fuzzy +#: modules/gui/macosx/macosx.m:86 msgid "Keep current Equalizer settings" -msgstr "Param?tres vid?o g?n?raux" +msgstr "" -#: modules/gui/macosx/macosx.m:90 +#: modules/gui/macosx/macosx.m:87 msgid "" "By default, VLC keeps the last equalizer settings before termination. This " "feature can be disabled here." msgstr "" -#: modules/gui/macosx/macosx.m:94 +#: modules/gui/macosx/macosx.m:91 msgid "Mac OS X interface" msgstr "Interface Mac OS X" -#: modules/gui/macosx/macosx.m:109 -msgid "Quartz video" -msgstr "Vid?o Quartz" - #: modules/gui/macosx/open.m:49 -#, fuzzy msgid "No device connected" -msgstr "Aucun fichier s?lectionn?" +msgstr "Aucun p?riph?rique connect?" #: modules/gui/macosx/open.m:50 msgid "" @@ -13987,180 +14094,197 @@ msgid "" "installed and try again." msgstr "" -#: modules/gui/macosx/open.m:164 +#: modules/gui/macosx/open.m:163 msgid "Open Source" msgstr "Ouvrir un flux" -#: modules/gui/macosx/open.m:165 modules/gui/wince/open.cpp:131 +#: modules/gui/macosx/open.m:164 modules/gui/wince/open.cpp:132 msgid "Media Resource Locator (MRL)" msgstr "Media Resource Locator (MRL)" -#: modules/gui/macosx/open.m:173 modules/gui/macosx/open.m:432 +#: modules/gui/macosx/open.m:172 modules/gui/macosx/open.m:409 +#: modules/gui/macosx/open.m:448 msgid "Capture" msgstr "Capture" -#: modules/gui/macosx/open.m:175 modules/gui/macosx/open.m:181 -#: modules/gui/macosx/open.m:288 modules/gui/macosx/output.m:145 -#: modules/gui/macosx/prefs_widgets.m:1174 -#: modules/gui/macosx/simple_prefs.m:272 modules/gui/macosx/simple_prefs.m:291 -#: modules/gui/qt4/components/preferences_widgets.cpp:260 -#: modules/gui/qt4/components/simple_preferences.cpp:238 -#: modules/gui/qt4/ui/open_disk.ui:141 modules/gui/qt4/ui/open_file.ui:181 -#: modules/gui/qt4/ui/open.ui:155 modules/gui/qt4/ui/sout.ui:71 -#: modules/gui/qt4/ui/sprefs_audio.ui:237 +#: modules/gui/macosx/open.m:174 modules/gui/macosx/open.m:180 +#: modules/gui/macosx/open.m:290 modules/gui/macosx/output.m:145 +#: modules/gui/macosx/prefs_widgets.m:1149 +#: modules/gui/macosx/simple_prefs.m:286 +#: modules/gui/qt4/components/preferences_widgets.cpp:264 +#: modules/gui/qt4/components/simple_preferences.cpp:243 +#: modules/gui/qt4/ui/open.ui:155 modules/gui/qt4/ui/open_disk.ui:175 +#: modules/gui/qt4/ui/open_file.ui:75 modules/gui/qt4/ui/open_file.ui:210 +#: modules/gui/qt4/ui/sout.ui:61 modules/gui/qt4/ui/sprefs_audio.ui:237 #: modules/gui/qt4/ui/sprefs_input.ui:39 -#: modules/gui/qt4/ui/sprefs_interface.ui:184 -#: modules/gui/qt4/ui/sprefs_subtitles.ui:137 -#: modules/gui/qt4/ui/sprefs_video.ui:164 -#: modules/gui/wince/preferences_widgets.cpp:509 +#: modules/gui/qt4/ui/sprefs_interface.ui:202 +#: modules/gui/qt4/ui/sprefs_subtitles.ui:135 +#: modules/gui/qt4/ui/sprefs_video.ui:194 +#: modules/gui/wince/preferences_widgets.cpp:510 msgid "Browse..." msgstr "Parcourir?" -#: modules/gui/macosx/open.m:176 +#: modules/gui/macosx/open.m:175 msgid "Treat as a pipe rather than as a file" msgstr "Consid?rer comme un tuyau plut?t que comme un fichier" -#: modules/gui/macosx/open.m:182 modules/gui/qt4/ui/open_disk.ui:94 +#: modules/gui/macosx/open.m:177 +#: modules/gui/qt4/components/open_panels.cpp:883 +msgid "Device name" +msgstr "Nom du p?riph?rique" + +#: modules/gui/macosx/open.m:181 modules/gui/qt4/ui/open_disk.ui:120 msgid "No DVD menus" msgstr "Pas de menus DVD" -#: modules/gui/macosx/open.m:184 modules/gui/macosx/open.m:538 +#: modules/gui/macosx/open.m:183 modules/gui/macosx/open.m:554 msgid "VIDEO_TS directory" msgstr "Dossier VIDEO_TS" -#: modules/gui/macosx/open.m:185 modules/gui/macosx/open.m:651 +#: modules/gui/macosx/open.m:184 modules/gui/macosx/open.m:667 msgid "DVD" msgstr "DVD" -#: modules/gui/macosx/open.m:190 modules/gui/macosx/output.m:146 -#: modules/gui/qt4/ui/open_net.ui:65 modules/gui/qt4/ui/sout.ui:98 -#: modules/gui/qt4/ui/sout.ui:163 modules/gui/qt4/ui/sout.ui:225 -#: modules/gui/qt4/ui/sout.ui:280 modules/gui/qt4/ui/sout.ui:383 +#: modules/gui/macosx/open.m:189 modules/gui/macosx/output.m:146 +#: modules/gui/qt4/ui/open_net.ui:65 modules/gui/qt4/ui/sout.ui:82 +#: modules/gui/qt4/ui/sout.ui:134 modules/gui/qt4/ui/sout.ui:183 +#: modules/gui/qt4/ui/sout.ui:228 modules/gui/qt4/ui/sout.ui:312 msgid "Address" msgstr "Adresse" -#: modules/gui/macosx/open.m:194 modules/gui/macosx/open.m:757 +#: modules/gui/macosx/open.m:193 modules/gui/macosx/open.m:772 msgid "UDP/RTP" msgstr "UDP/RTP" -#: modules/gui/macosx/open.m:195 modules/gui/macosx/open.m:769 +#: modules/gui/macosx/open.m:194 modules/gui/macosx/open.m:784 msgid "UDP/RTP Multicast" msgstr "Multidiff. UDP/RTP" -#: modules/gui/macosx/open.m:196 modules/gui/macosx/open.m:782 +#: modules/gui/macosx/open.m:195 modules/gui/macosx/open.m:797 msgid "HTTP/FTP/MMS/RTSP" msgstr "HTTP/FTP/MMS/RTSP" -#: modules/gui/macosx/open.m:197 modules/gui/qt4/ui/open_net.ui:110 -#: modules/services_discovery/sap.c:116 +#: modules/gui/macosx/open.m:196 msgid "Allow timeshifting" -msgstr "Permettre le d?calage temporel ?" +msgstr "Permettre le d?calage temporel??" -#: modules/gui/macosx/open.m:209 -#, fuzzy +#: modules/gui/macosx/open.m:208 msgid "Screen Capture Input" -msgstr "Module de capture d??cran" +msgstr "" -#: modules/gui/macosx/open.m:210 +#: modules/gui/macosx/open.m:209 msgid "This facility allows you to process your screen's output." msgstr "" -#: modules/gui/macosx/open.m:211 -#, fuzzy +#: modules/gui/macosx/open.m:210 msgid "Frames per Second:" -msgstr "Images par seconde" +msgstr "Images par seconde?:" + +#: modules/gui/macosx/open.m:211 +msgid "Subscreen left:" +msgstr "? gauche sous-?cran?:" #: modules/gui/macosx/open.m:212 -msgid "Current channel:" -msgstr "Canal courant :" +msgid "Subscreen top:" +msgstr "En haut sous-?cran?:" #: modules/gui/macosx/open.m:213 +msgid "Subscreen width:" +msgstr "Largeur sous-?cran?:" + +#: modules/gui/macosx/open.m:214 +msgid "Subscreen height:" +msgstr "Hauteur sous-?cran?:" + +#: modules/gui/macosx/open.m:215 +msgid "Current channel:" +msgstr "Canal courant?:" + +#: modules/gui/macosx/open.m:216 msgid "Previous Channel" msgstr "Canal pr?c?dent" -#: modules/gui/macosx/open.m:214 +#: modules/gui/macosx/open.m:217 msgid "Next Channel" msgstr "Canal suivant" -#: modules/gui/macosx/open.m:215 modules/gui/macosx/open.m:968 +#: modules/gui/macosx/open.m:218 modules/gui/macosx/open.m:989 msgid "Retrieving Channel Info..." msgstr "" -#: modules/gui/macosx/open.m:216 +#: modules/gui/macosx/open.m:219 msgid "EyeTV is not launched" msgstr "EyeTV n'est pas lanc?" -#: modules/gui/macosx/open.m:217 +#: modules/gui/macosx/open.m:220 msgid "" "VLC could not connect to EyeTV.\n" "Make sure that you installed VLC's EyeTV plugin." msgstr "" -#: modules/gui/macosx/open.m:218 +#: modules/gui/macosx/open.m:221 msgid "Launch EyeTV now" msgstr "Lancer EyeTV maintenatn" -#: modules/gui/macosx/open.m:219 -#, fuzzy +#: modules/gui/macosx/open.m:222 msgid "Download Plugin" msgstr "T?l?charger" -#: modules/gui/macosx/open.m:286 +#: modules/gui/macosx/open.m:288 msgid "Load subtitles file:" -msgstr "Fichier de sous-titres :" +msgstr "Fichier de sous-titres?:" -#: modules/gui/macosx/open.m:287 modules/gui/macosx/output.m:137 +#: modules/gui/macosx/open.m:289 modules/gui/macosx/output.m:137 msgid "Settings..." msgstr "Param?tres?" -#: modules/gui/macosx/open.m:289 +#: modules/gui/macosx/open.m:291 msgid "Override parametters" msgstr "Outrepasser les param?tres" -#: modules/gui/macosx/open.m:290 modules/stream_out/bridge.c:45 +#: modules/gui/macosx/open.m:292 modules/stream_out/bridge.c:51 #: modules/stream_out/display.c:45 modules/video_filter/mosaic.c:156 msgid "Delay" msgstr "Retard" -#: modules/gui/macosx/open.m:292 -#: modules/gui/qt4/components/info_panels.cpp:541 +#: modules/gui/macosx/open.m:294 msgid "FPS" msgstr "FPS" -#: modules/gui/macosx/open.m:294 +#: modules/gui/macosx/open.m:296 msgid "Subtitles encoding" msgstr "Encodage des sous-titres" -#: modules/gui/macosx/open.m:296 modules/gui/qt4/ui/sprefs_subtitles.ui:127 +#: modules/gui/macosx/open.m:298 modules/gui/qt4/ui/sprefs_subtitles.ui:125 msgid "Font size" msgstr "Taille" -#: modules/gui/macosx/open.m:298 +#: modules/gui/macosx/open.m:300 msgid "Subtitles alignment" msgstr "Alignement des sous-titres" -#: modules/gui/macosx/open.m:301 +#: modules/gui/macosx/open.m:303 msgid "Font Properties" msgstr "Propri?t?s de police" -#: modules/gui/macosx/open.m:302 +#: modules/gui/macosx/open.m:304 msgid "Subtitle File" msgstr "Fichier de sous-titres" -#: modules/gui/macosx/open.m:586 modules/gui/macosx/open.m:638 -#: modules/gui/macosx/open.m:646 modules/gui/macosx/open.m:654 +#: modules/gui/macosx/open.m:602 modules/gui/macosx/open.m:654 +#: modules/gui/macosx/open.m:662 modules/gui/macosx/open.m:670 msgid "No %@s found" msgstr "Aucun %@s trouv?" -#: modules/gui/macosx/open.m:690 +#: modules/gui/macosx/open.m:706 msgid "Open VIDEO_TS Directory" msgstr "Ouvrir un dossier VIDEO_TS" -#: modules/gui/macosx/open.m:871 +#: modules/gui/macosx/open.m:892 msgid "iSight Capture Input" msgstr "Capture iSight" -#: modules/gui/macosx/open.m:872 +#: modules/gui/macosx/open.m:893 msgid "" "This facility allows you to process your iSight's input signal.\n" "\n" @@ -14170,19 +14294,17 @@ msgid "" "Live Audio input is not supported." msgstr "" -#: modules/gui/macosx/open.m:974 -#, fuzzy +#: modules/gui/macosx/open.m:995 msgid "Composite input" -msgstr "Choisir l?entr?e" +msgstr "Entr?e composite" -#: modules/gui/macosx/open.m:977 -#, fuzzy +#: modules/gui/macosx/open.m:998 msgid "S-Video input" -msgstr "Patte d?entr?e vid?o" +msgstr "Entr?e S-vid?o" #: modules/gui/macosx/output.m:136 msgid "Streaming/Saving:" -msgstr "Diffusion/Sauvegarde :" +msgstr "Diffusion/Enregistrement?:" #: modules/gui/macosx/output.m:140 msgid "Streaming and Transcoding Options" @@ -14197,7 +14319,7 @@ msgstr "Afficher pendant la diffusion" msgid "Stream" msgstr "Flux" -#: modules/gui/macosx/output.m:144 modules/gui/qt4/ui/sout.ui:81 +#: modules/gui/macosx/output.m:144 modules/gui/qt4/ui/sout.ui:68 msgid "Dump raw input" msgstr "Dumpe le flux brut" @@ -14210,12 +14332,11 @@ msgid "Transcoding options" msgstr "Options de transcodage" #: modules/gui/macosx/output.m:163 modules/gui/macosx/output.m:173 -#: modules/gui/macosx/wizard.m:382 modules/gui/qt4/ui/sout.ui:681 -#: modules/gui/qt4/ui/sout.ui:775 +#: modules/gui/macosx/wizard.m:384 msgid "Bitrate (kb/s)" msgstr "D?bit (kbps)" -#: modules/gui/macosx/output.m:166 modules/gui/qt4/ui/sout.ui:716 +#: modules/gui/macosx/output.m:166 msgid "Scale" msgstr "Echelle" @@ -14223,7 +14344,7 @@ msgstr "Echelle" msgid "Stream Announcing" msgstr "Annonce des flux" -#: modules/gui/macosx/output.m:181 modules/gui/qt4/ui/sout.ui:894 +#: modules/gui/macosx/output.m:181 modules/gui/qt4/ui/sout.ui:448 msgid "SAP announce" msgstr "Annonce SAP" @@ -14251,9 +14372,96 @@ msgstr "URL du SDP" msgid "Save File" msgstr "Enregistrer le fichier" +#: modules/gui/macosx/playlist.m:129 modules/gui/macosx/wizard.m:350 +#: modules/gui/wince/playlist.cpp:678 modules/mux/asf.c:54 +msgid "Author" +msgstr "Auteur" + +#: modules/gui/macosx/playlist.m:442 +msgid "Save Playlist..." +msgstr "&Enregistrer la liste de lecture?" + +#: modules/gui/macosx/playlist.m:445 +msgid "Expand Node" +msgstr "D?plier" + +#: modules/gui/macosx/playlist.m:448 +msgid "Download Cover Art" +msgstr "T?l?charger la jaquette" + +#: modules/gui/macosx/playlist.m:449 +msgid "Fetch Meta Data" +msgstr "R?cup?rer les m?ta-donn?es" + +#: modules/gui/macosx/playlist.m:450 modules/gui/macosx/playlist.m:451 +msgid "Reveal in Finder" +msgstr "" + +#: modules/gui/macosx/playlist.m:453 +msgid "Sort Node by Name" +msgstr "Trier le n?ud par Nom" + +#: modules/gui/macosx/playlist.m:454 +msgid "Sort Node by Author" +msgstr "Trier le n?ud par Auteur" + +#: modules/gui/macosx/playlist.m:457 modules/gui/macosx/playlist.m:496 +#: modules/gui/macosx/playlist.m:1497 +msgid "No items in the playlist" +msgstr "Aucun ?lement dans la liste de lecture" + +#: modules/gui/macosx/playlist.m:459 +msgid "Search in Playlist" +msgstr "Chercher dans la liste de lecture" + +#: modules/gui/macosx/playlist.m:460 +msgid "Add Folder to Playlist" +msgstr "Ajouter un dossier" + +#: modules/gui/macosx/playlist.m:462 +msgid "File Format:" +msgstr "Format de fichier?:" + +#: modules/gui/macosx/playlist.m:463 +msgid "Extended M3U" +msgstr "M3U ?tendu" + +#: modules/gui/macosx/playlist.m:464 +msgid "XML Shareable Playlist Format (XSPF)" +msgstr "XSPF (Format de Liste de Lecture ?changeable XML)" + +#: modules/gui/macosx/playlist.m:490 modules/gui/macosx/playlist.m:1490 +#: modules/gui/macosx/wizard.m:1368 +#, c-format +msgid "%i items" +msgstr "%i ?l?ments" + +#: modules/gui/macosx/playlist.m:498 modules/gui/macosx/playlist.m:1501 +msgid "1 item" +msgstr "1 ?l?ment" + +#: modules/gui/macosx/playlist.m:712 +msgid "Save Playlist" +msgstr "Enregistrer la liste de lecture" + +#: modules/gui/macosx/playlist.m:1208 modules/gui/ncurses.c:1781 +msgid "Meta-information" +msgstr "M?ta-donn?es" + +#: modules/gui/macosx/playlist.m:1455 +msgid "New Node" +msgstr "Nouvelle branche" + +#: modules/gui/macosx/playlist.m:1456 +msgid "Please enter a name for the new node." +msgstr "Nom de la branche" + +#: modules/gui/macosx/playlist.m:1467 +msgid "Empty Folder" +msgstr "Dossier vide" + #: modules/gui/macosx/playlistinfo.m:70 -#: modules/gui/qt4/dialogs/mediainfo.cpp:55 -#, fuzzy +#: modules/gui/qt4/dialogs/mediainfo.cpp:50 msgid "Media Information" msgstr "M?ta-donn?es" @@ -14262,64 +14470,68 @@ msgid "Location" msgstr "Emplacement" #: modules/gui/macosx/playlistinfo.m:74 -#, fuzzy msgid "Save Metadata" -msgstr "?crire les m?ta-donn?e&s" +msgstr "Enregistrer les m?ta-donn?e&s" + +#: modules/gui/macosx/playlistinfo.m:76 modules/gui/wince/playlist.cpp:678 +#: modules/visualization/visual/visual.c:116 +msgid "General" +msgstr "G?n?ral" #: modules/gui/macosx/playlistinfo.m:77 -#, fuzzy msgid "Codec Details" -msgstr "D?tails des &codecs" +msgstr "D?tails des codecs" #: modules/gui/macosx/playlistinfo.m:94 -#: modules/gui/qt4/components/info_panels.cpp:527 +#: modules/gui/qt4/components/info_panels.cpp:522 msgid "Read at media" msgstr "Lu ? la source" #: modules/gui/macosx/playlistinfo.m:95 -#: modules/gui/qt4/components/info_panels.cpp:529 +#: modules/gui/qt4/components/info_panels.cpp:524 msgid "Input bitrate" msgstr "D?bit d?entr?e" #: modules/gui/macosx/playlistinfo.m:96 -#: modules/gui/qt4/components/info_panels.cpp:531 +#: modules/gui/qt4/components/info_panels.cpp:526 msgid "Demuxed" msgstr "D?multiplex?" #: modules/gui/macosx/playlistinfo.m:97 -#: modules/gui/qt4/components/info_panels.cpp:532 +#: modules/gui/qt4/components/info_panels.cpp:527 msgid "Stream bitrate" msgstr "D?bit du flux" #: modules/gui/macosx/playlistinfo.m:100 modules/gui/macosx/playlistinfo.m:111 -#: modules/gui/qt4/components/info_panels.cpp:535 -#: modules/gui/qt4/components/info_panels.cpp:549 +#: modules/gui/qt4/components/info_panels.cpp:530 +#: modules/gui/qt4/components/info_panels.cpp:543 msgid "Decoded blocks" msgstr "Blocs d?cod?s" #: modules/gui/macosx/playlistinfo.m:101 -#: modules/gui/qt4/components/info_panels.cpp:537 +#: modules/gui/qt4/components/info_panels.cpp:532 msgid "Displayed frames" msgstr "Images affich?es" #: modules/gui/macosx/playlistinfo.m:102 -#: modules/gui/qt4/components/info_panels.cpp:539 +#: modules/gui/qt4/components/info_panels.cpp:534 msgid "Lost frames" msgstr "Images perdues" -#: modules/gui/macosx/playlistinfo.m:105 modules/gui/macosx/wizard.m:361 -#: modules/gui/qt4/components/info_panels.cpp:525 +#: modules/gui/macosx/playlistinfo.m:105 modules/gui/macosx/wizard.m:363 +#: modules/gui/qt4/components/info_panels.cpp:520 +#: modules/gui/qt4/dialogs_provider.cpp:576 #: modules/video_filter/deinterlace.c:142 msgid "Streaming" msgstr "Diffusion" #: modules/gui/macosx/playlistinfo.m:106 -#: modules/gui/qt4/components/info_panels.cpp:543 +#: modules/gui/qt4/components/info_panels.cpp:537 msgid "Sent packets" msgstr "Paquets envoy?s" #: modules/gui/macosx/playlistinfo.m:107 -#: modules/gui/qt4/components/info_panels.cpp:544 +#: modules/gui/qt4/components/info_panels.cpp:538 msgid "Sent bytes" msgstr "Octets envoy?s" @@ -14328,12 +14540,12 @@ msgid "Send rate" msgstr "D?bit d?envoi" #: modules/gui/macosx/playlistinfo.m:112 -#: modules/gui/qt4/components/info_panels.cpp:551 +#: modules/gui/qt4/components/info_panels.cpp:545 msgid "Played buffers" -msgstr "Buffers jou?s" +msgstr "Tampons jou?s" #: modules/gui/macosx/playlistinfo.m:113 -#: modules/gui/qt4/components/info_panels.cpp:553 +#: modules/gui/qt4/components/info_panels.cpp:547 msgid "Lost buffers" msgstr "Tampons perdus" @@ -14345,110 +14557,25 @@ msgstr "" msgid "VLC was unable to save the meta data." msgstr "" -#: modules/gui/macosx/playlistinfo.m:442 +#: modules/gui/macosx/playlistinfo.m:449 msgid "Information" msgstr "Informations" -#: modules/gui/macosx/playlist.m:127 modules/gui/macosx/wizard.m:350 -#: modules/gui/wince/playlist.cpp:671 modules/mux/asf.c:54 -msgid "Author" -msgstr "Auteur" - -#: modules/gui/macosx/playlist.m:438 -msgid "Save Playlist..." -msgstr "Enregistrer la liste de lecture?" - -#: modules/gui/macosx/playlist.m:441 -msgid "Expand Node" -msgstr "D?plier" - -#: modules/gui/macosx/playlist.m:444 -#, fuzzy -msgid "Fetch Meta Data" -msgstr "Titre" - -#: modules/gui/macosx/playlist.m:445 -msgid "Sort Node by Name" -msgstr "Trier le n?ud par Nom" - -#: modules/gui/macosx/playlist.m:446 -msgid "Sort Node by Author" -msgstr "Trier le n?ud par Auteur" - -#: modules/gui/macosx/playlist.m:449 modules/gui/macosx/playlist.m:487 -#: modules/gui/macosx/playlist.m:1409 -msgid "No items in the playlist" -msgstr "Aucun ?lement dans la liste de lecture" - -#: modules/gui/macosx/playlist.m:451 -msgid "Search in Playlist" -msgstr "Chercher dans la liste de lecture" - -#: modules/gui/macosx/playlist.m:452 -msgid "Add Folder to Playlist" -msgstr "Ajouter un r?pertoire" - -#: modules/gui/macosx/playlist.m:454 -#, fuzzy -msgid "File Format:" -msgstr "Format de sous-titres" - -#: modules/gui/macosx/playlist.m:455 -msgid "Extended M3U" -msgstr "M3U ?tendu" - -#: modules/gui/macosx/playlist.m:456 -msgid "XML Shareable Playlist Format (XSPF)" -msgstr "XSPF (Format de Liste de Lecture ?changeable XML)" - -#: modules/gui/macosx/playlist.m:481 modules/gui/macosx/playlist.m:1402 -#: modules/gui/macosx/wizard.m:1356 -#, c-format -msgid "%i items" -msgstr "%i ?l?ments" - -#: modules/gui/macosx/playlist.m:489 modules/gui/macosx/playlist.m:1413 -#, fuzzy -msgid "1 item" -msgstr "%i ?l?ments" - -#: modules/gui/macosx/playlist.m:678 -msgid "Save Playlist" -msgstr "Enregistrer la liste de lecture" - -#: modules/gui/macosx/playlist.m:1121 modules/gui/ncurses.c:1808 -msgid "Meta-information" -msgstr "M?ta-donn?es" - -#: modules/gui/macosx/playlist.m:1368 -#, fuzzy -msgid "New Node" -msgstr "Nouvelle branche" - -#: modules/gui/macosx/playlist.m:1369 -#, fuzzy -msgid "Please enter a name for the new node." -msgstr "Nom de la branche" - -#: modules/gui/macosx/playlist.m:1380 -msgid "Empty Folder" -msgstr "R?pertoire vide" - -#: modules/gui/macosx/prefs.m:127 modules/gui/macosx/simple_prefs.m:301 +#: modules/gui/macosx/prefs.m:186 modules/gui/macosx/simple_prefs.m:296 msgid "Reset All" msgstr "Tout r?tablir" -#: modules/gui/macosx/prefs.m:128 modules/gui/macosx/simple_prefs.m:298 +#: modules/gui/macosx/prefs.m:187 modules/gui/macosx/simple_prefs.m:293 #: modules/gui/qt4/ui/video_effects.ui:17 msgid "Basic" msgstr "Basique" -#: modules/gui/macosx/prefs.m:147 modules/gui/macosx/simple_prefs.m:627 -#: modules/gui/qt4/dialogs/preferences.cpp:352 +#: modules/gui/macosx/prefs.m:206 modules/gui/macosx/simple_prefs.m:616 +#: modules/gui/qt4/dialogs/preferences.cpp:353 msgid "Reset Preferences" msgstr "R?tablir" -#: modules/gui/macosx/prefs.m:150 modules/gui/macosx/simple_prefs.m:630 +#: modules/gui/macosx/prefs.m:209 modules/gui/macosx/simple_prefs.m:619 msgid "" "Beware this will reset the VLC media player preferences.\n" "Are you sure you want to continue?" @@ -14456,49 +14583,41 @@ msgstr "" "Attention, ceci va r?initialiser le fichier de configuration de VLC.\n" "D?sirez-vous vraiment continuer ?" -#: modules/gui/macosx/prefs_widgets.m:1209 +#: modules/gui/macosx/prefs_widgets.m:1184 msgid "Select a directory" -msgstr "S?lectionnez un r?pertoire" +msgstr "S?lectionnez un dossier" -#: modules/gui/macosx/prefs_widgets.m:1209 +#: modules/gui/macosx/prefs_widgets.m:1184 msgid "Select a file" msgstr "S?lectionner un fichier" -#: modules/gui/macosx/prefs_widgets.m:1210 +#: modules/gui/macosx/prefs_widgets.m:1185 msgid "Select" msgstr "S?lectionner" #: modules/gui/macosx/simple_prefs.m:89 -#, fuzzy msgid "Not Set" -msgstr "Note:" +msgstr "" #: modules/gui/macosx/simple_prefs.m:173 -#: modules/gui/qt4/components/simple_preferences.cpp:457 -#, fuzzy +#: modules/gui/qt4/components/simple_preferences.cpp:451 msgid "Interface Settings" msgstr "R?glages de l?interface" #: modules/gui/macosx/simple_prefs.m:177 -#: modules/gui/qt4/components/simple_preferences.cpp:213 -#, fuzzy msgid "General Audio Settings" msgstr "Param?tres audio g?n?raux" #: modules/gui/macosx/simple_prefs.m:181 -#: modules/gui/qt4/components/simple_preferences.cpp:183 -#, fuzzy msgid "General Video Settings" msgstr "Param?tres vid?o g?n?raux" #: modules/gui/macosx/simple_prefs.m:185 -#, fuzzy msgid "Subtitles & OSD" -msgstr "Sous-titres/OSD" +msgstr "Sous-titres & OSD" #: modules/gui/macosx/simple_prefs.m:185 -#: modules/gui/qt4/components/simple_preferences.cpp:516 -#, fuzzy +#: modules/gui/qt4/components/simple_preferences.cpp:521 msgid "Subtitles & On Screen Display Settings" msgstr "Param?tres de sous-titres et d?incrustation vid?o" @@ -14508,7 +14627,7 @@ msgstr "Lecture / Codecs" #: modules/gui/macosx/simple_prefs.m:189 msgid "Input & Codec settings" -msgstr "R?glages de Lecture / Codecs" +msgstr "R?glages de lecture / codecs" #: modules/gui/macosx/simple_prefs.m:221 #: modules/gui/qt4/ui/sprefs_audio.ui:250 @@ -14526,7 +14645,7 @@ msgstr "G?n?ral Audio" #: modules/gui/macosx/simple_prefs.m:224 #: modules/gui/qt4/ui/sprefs_audio.ui:259 msgid "Headphone surround effect" -msgstr "Effet casque" +msgstr "Effet surround pour casque" #: modules/gui/macosx/simple_prefs.m:225 msgid "Preferred Audio language" @@ -14554,7 +14673,6 @@ msgid "Change" msgstr "Change" #: modules/gui/macosx/simple_prefs.m:236 -#, fuzzy msgid "Change Hotkey" msgstr "Configurer les raccourcis claviers" @@ -14563,255 +14681,240 @@ msgid "Select an action to change the associated hotkey:" msgstr "" #: modules/gui/macosx/simple_prefs.m:241 -#: modules/gui/qt4/components/preferences_widgets.cpp:1127 +#: modules/gui/qt4/components/preferences_widgets.cpp:1147 msgid "Action" msgstr "Action" #: modules/gui/macosx/simple_prefs.m:242 -#: modules/gui/qt4/components/preferences_widgets.cpp:1128 +#: modules/gui/qt4/components/preferences_widgets.cpp:1148 msgid "Shortcut" msgstr "Raccourci" #: modules/gui/macosx/simple_prefs.m:245 -#: modules/gui/qt4/ui/sprefs_input.ui:181 -msgid "Access Filter" -msgstr "Filtres d?acc?s" - -#: modules/gui/macosx/simple_prefs.m:246 -#, fuzzy msgid "Repair AVI Files" msgstr "R?parer les fichiers AVI" -#: modules/gui/macosx/simple_prefs.m:248 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:246 msgid "Default Caching Level" -msgstr "Angle DVD par d?faut." +msgstr "" -#: modules/gui/macosx/simple_prefs.m:249 modules/gui/qt4/ui/open.ui:51 +#: modules/gui/macosx/simple_prefs.m:247 modules/gui/qt4/ui/open.ui:51 #: modules/gui/qt4/ui/sprefs_input.ui:97 msgid "Caching" msgstr "Mise en cache" -#: modules/gui/macosx/simple_prefs.m:250 +#: modules/gui/macosx/simple_prefs.m:248 msgid "" "Use the complete preferences to configure custom caching values for each " "access module." msgstr "" -#: modules/gui/macosx/simple_prefs.m:252 +#: modules/gui/macosx/simple_prefs.m:249 msgid "HTTP Proxy" msgstr "Serveur proxy HTTP" -#: modules/gui/macosx/simple_prefs.m:253 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:250 msgid "Password for HTTP Proxy" -msgstr "Serveur proxy HTTP" +msgstr "Mot de passe du serveur proxy HTTP" -#: modules/gui/macosx/simple_prefs.m:254 +#: modules/gui/macosx/simple_prefs.m:251 #: modules/gui/qt4/ui/sprefs_input.ui:119 msgid "Codecs / Muxers" -msgstr "" +msgstr "Codecs / Multiplexeurs" -#: modules/gui/macosx/simple_prefs.m:256 +#: modules/gui/macosx/simple_prefs.m:253 msgid "Post-Processing Quality" msgstr "Qualit? de post-traitement" -#: modules/gui/macosx/simple_prefs.m:259 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:255 msgid "Default Server Port" -msgstr "P?riph?riques par d?faut" +msgstr "Port du serveur par d?faut" -#: modules/gui/macosx/simple_prefs.m:263 -#: modules/gui/qt4/ui/sprefs_interface.ui:250 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:258 +#: modules/gui/qt4/ui/sprefs_interface.ui:282 msgid "Album art download policy" -msgstr "Politique de t?l?chargement des couvertures" +msgstr "Politique de t?l?chargement des jaquettes" -#: modules/gui/macosx/simple_prefs.m:264 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:259 msgid "Add controls to the video window" -msgstr "Contraste de la vid?o" +msgstr "Ajouter des contr?les ? la fen?tre vid?o" -#: modules/gui/macosx/simple_prefs.m:265 +#: modules/gui/macosx/simple_prefs.m:260 msgid "Show Fullscreen Controller" msgstr "Afficher le contr?leur plein ?cran" -#: modules/gui/macosx/simple_prefs.m:267 -#: modules/gui/qt4/ui/sprefs_interface.ui:244 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:262 +#: modules/gui/qt4/ui/sprefs_interface.ui:276 msgid "Privacy / Network Interaction" -msgstr "Interaction avec l?utilisateur" +msgstr "Interraction Vie priv?e / R?seau" -#: modules/gui/macosx/simple_prefs.m:270 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:265 msgid "Default Encoding" -msgstr "Decodage" +msgstr "Encodage par d?faut" -#: modules/gui/macosx/simple_prefs.m:271 -#: modules/gui/qt4/ui/sprefs_subtitles.ui:92 +#: modules/gui/macosx/simple_prefs.m:266 +#: modules/gui/qt4/ui/sprefs_subtitles.ui:90 msgid "Display Settings" msgstr "Pr?f?rences d?affichage" -#: modules/gui/macosx/simple_prefs.m:273 +#: modules/gui/macosx/simple_prefs.m:267 modules/gui/macosx/wizard.m:346 +#: modules/gui/macosx/wizard.m:414 +msgid "Choose..." +msgstr "Choisir?" + +#: modules/gui/macosx/simple_prefs.m:268 msgid "Font Color" msgstr "Couleur de la police" -#: modules/gui/macosx/simple_prefs.m:274 +#: modules/gui/macosx/simple_prefs.m:269 msgid "Font Size" msgstr "Taille de la police" -#: modules/gui/macosx/simple_prefs.m:276 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:271 msgid "Subtitle Languages" msgstr "Langue des sous-titres" -#: modules/gui/macosx/simple_prefs.m:277 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:272 msgid "Preferred Subtitle Language" -msgstr "Langue audio pr?f?r?e" +msgstr "Langue sous-titres pr?f?r?e" -#: modules/gui/macosx/simple_prefs.m:279 +#: modules/gui/macosx/simple_prefs.m:274 #: modules/gui/qt4/ui/sprefs_subtitles.ui:28 msgid "Enable OSD" msgstr "Activer OSD" -#: modules/gui/macosx/simple_prefs.m:282 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:277 msgid "Black screens in Fullscreen mode" msgstr "Passer au noir en plein ?cran" -#: modules/gui/macosx/simple_prefs.m:284 modules/gui/qt4/ui/sprefs_video.ui:36 +#: modules/gui/macosx/simple_prefs.m:279 modules/gui/qt4/ui/sprefs_video.ui:36 #: modules/stream_out/display.c:54 modules/video_filter/deinterlace.c:132 msgid "Display" msgstr "Affichage" -#: modules/gui/macosx/simple_prefs.m:285 +#: modules/gui/macosx/simple_prefs.m:280 msgid "Enable Video" msgstr "Activer la vid?o" -#: modules/gui/macosx/simple_prefs.m:288 +#: modules/gui/macosx/simple_prefs.m:283 msgid "Output module" msgstr "Modules de sortie" -#: modules/gui/macosx/simple_prefs.m:290 -#: modules/gui/qt4/ui/sprefs_video.ui:149 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:285 +#: modules/gui/qt4/ui/sprefs_video.ui:179 msgid "Video snapshots" -msgstr "Format des captures d??cran" +msgstr "Captures d??cran" -#: modules/gui/macosx/simple_prefs.m:292 modules/meta_engine/folder.c:58 +#: modules/gui/macosx/simple_prefs.m:287 modules/meta_engine/folder.c:55 msgid "Folder" -msgstr "R?pertoire" +msgstr "Dossier" -#: modules/gui/macosx/simple_prefs.m:293 -#: modules/gui/qt4/ui/sprefs_video.ui:198 +#: modules/gui/macosx/simple_prefs.m:288 +#: modules/gui/qt4/ui/sprefs_video.ui:228 msgid "Format" msgstr "Format" -#: modules/gui/macosx/simple_prefs.m:294 -#: modules/gui/qt4/ui/sprefs_video.ui:181 +#: modules/gui/macosx/simple_prefs.m:289 +#: modules/gui/qt4/ui/sprefs_video.ui:211 msgid "Prefix" msgstr "Pr?fixe" -#: modules/gui/macosx/simple_prefs.m:295 -#: modules/gui/qt4/ui/sprefs_video.ui:211 +#: modules/gui/macosx/simple_prefs.m:290 +#: modules/gui/qt4/ui/sprefs_video.ui:241 msgid "Sequential numbering" -msgstr "" +msgstr "Num?rotation s?quentielle" -#: modules/gui/macosx/simple_prefs.m:516 modules/gui/macosx/simple_prefs.m:560 -#: modules/gui/macosx/simple_prefs.m:1128 +#: modules/gui/macosx/simple_prefs.m:505 modules/gui/macosx/simple_prefs.m:549 +#: modules/gui/macosx/simple_prefs.m:1114 +#: modules/gui/qt4/components/simple_preferences.cpp:401 msgid "Custom" msgstr "Personnalis?" -#: modules/gui/macosx/simple_prefs.m:516 +#: modules/gui/macosx/simple_prefs.m:505 +#: modules/gui/qt4/components/simple_preferences.cpp:402 msgid "Lowest latency" msgstr "" -#: modules/gui/macosx/simple_prefs.m:516 +#: modules/gui/macosx/simple_prefs.m:505 +#: modules/gui/qt4/components/simple_preferences.cpp:403 msgid "Low latency" msgstr "" -#: modules/gui/macosx/simple_prefs.m:516 modules/misc/freetype.c:107 -#: modules/misc/quartztext.c:108 modules/misc/win32text.c:80 +#: modules/gui/macosx/simple_prefs.m:505 +#: modules/gui/qt4/components/simple_preferences.cpp:404 +#: modules/misc/freetype.c:106 modules/misc/quartztext.c:109 +#: modules/misc/win32text.c:80 msgid "Normal" msgstr "Normal" -#: modules/gui/macosx/simple_prefs.m:517 +#: modules/gui/macosx/simple_prefs.m:506 +#: modules/gui/qt4/components/simple_preferences.cpp:405 msgid "High latency" msgstr "" -#: modules/gui/macosx/simple_prefs.m:517 +#: modules/gui/macosx/simple_prefs.m:506 +#: modules/gui/qt4/components/simple_preferences.cpp:406 msgid "Higher latency" msgstr "" -#: modules/gui/macosx/simple_prefs.m:732 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:720 msgid "Interface Settings not saved" -msgstr "R?glages de l?interface" +msgstr "R?glages de l?interface non enregistr?s" -#: modules/gui/macosx/simple_prefs.m:733 modules/gui/macosx/simple_prefs.m:798 -#: modules/gui/macosx/simple_prefs.m:831 modules/gui/macosx/simple_prefs.m:916 -#: modules/gui/macosx/simple_prefs.m:944 modules/gui/macosx/simple_prefs.m:969 +#: modules/gui/macosx/simple_prefs.m:721 modules/gui/macosx/simple_prefs.m:793 +#: modules/gui/macosx/simple_prefs.m:826 modules/gui/macosx/simple_prefs.m:890 +#: modules/gui/macosx/simple_prefs.m:918 modules/gui/macosx/simple_prefs.m:943 #, c-format msgid "An error occured while saving your settings via SimplePrefs (%i)." msgstr "" -#: modules/gui/macosx/simple_prefs.m:797 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:792 msgid "Audio Settings not saved" -msgstr "Param?tres audio" +msgstr "Param?tres audio nopn enregistr?s" -#: modules/gui/macosx/simple_prefs.m:830 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:825 msgid "Video Settings not saved" -msgstr "Param?tres vid?o" +msgstr "Param?tres vid?o non enregsitr?s" -#: modules/gui/macosx/simple_prefs.m:915 +#: modules/gui/macosx/simple_prefs.m:889 msgid "Input Settings not saved" -msgstr "" +msgstr "Param?tres d'entr?e non enregistr?s" -#: modules/gui/macosx/simple_prefs.m:943 +#: modules/gui/macosx/simple_prefs.m:917 msgid "On Screen Display/Subtitle Settings not saved" -msgstr "" +msgstr "Param?tres OSD/sous-titres non enregistr?s" -#: modules/gui/macosx/simple_prefs.m:968 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:942 msgid "Hotkeys not saved" -msgstr "Raccourci pour " +msgstr "Raccourcis clavier non enregistr?s" -#: modules/gui/macosx/simple_prefs.m:1061 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:1041 msgid "Choose the folder to save your video snapshots to." -msgstr "Choisissez ici votre flux d?entr?e." +msgstr "Choisissez le dossier pour enregister les captures d'?cran." -#: modules/gui/macosx/simple_prefs.m:1063 -#: modules/gui/macosx/simple_prefs.m:1108 +#: modules/gui/macosx/simple_prefs.m:1043 msgid "Choose" msgstr "Choisir" -#: modules/gui/macosx/simple_prefs.m:1106 -msgid "Choose the font to display your Subtitles with." -msgstr "" - -#: modules/gui/macosx/simple_prefs.m:1146 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:1132 msgid "" "Press new keys for\n" "\"%@\"" -msgstr "Appuyez sur la nouvelle combinaison pour " +msgstr "" +"Appuyez sur la nouvelle combinaison pour\n" +"??%@??" -#: modules/gui/macosx/simple_prefs.m:1220 -#, fuzzy +#: modules/gui/macosx/simple_prefs.m:1206 msgid "Invalid combination" -msgstr "S?lection invalide" +msgstr "Combinaison invalide" -#: modules/gui/macosx/simple_prefs.m:1221 +#: modules/gui/macosx/simple_prefs.m:1207 msgid "Regrettably, these keys cannot be assigned as hotkey shortcuts." -msgstr "" +msgstr "D?sol?, mais cette combinaison de touches ne peut pas ?tre utilis?e." -#: modules/gui/macosx/simple_prefs.m:1239 +#: modules/gui/macosx/simple_prefs.m:1225 msgid "This combination is already taken by \"%@\"." -msgstr "" +msgstr "Cette combinaison est d?j? utilis?e par ??%@??." #: modules/gui/macosx/update.m:63 msgid "Check for Updates" @@ -14825,34 +14928,46 @@ msgstr "T?l?charger" msgid "Automatically check for updates" msgstr "Chercher des mises ? jour" -#: modules/gui/macosx/update.m:93 +#: modules/gui/macosx/update.m:101 msgid "Do you want VLC to check for updates automatically?" msgstr "Voulez vous que VLC cherche des mises ? jour automatiquement ?" -#: modules/gui/macosx/update.m:94 +#: modules/gui/macosx/update.m:102 msgid "You can change this option in VLC's update window later on." msgstr "" -#: modules/gui/macosx/update.m:94 +#: modules/gui/macosx/update.m:102 msgid "Yes" msgstr "Oui" -#: modules/gui/macosx/update.m:94 +#: modules/gui/macosx/update.m:102 msgid "No" msgstr "Non" -#: modules/gui/macosx/update.m:176 +#: modules/gui/macosx/update.m:184 msgid "This version of VLC is the latest available." msgstr "Cette version de VLC est ? jour." -#: modules/gui/macosx/update.m:183 +#: modules/gui/macosx/update.m:191 msgid "This version of VLC is outdated." msgstr "Cette version de VLC n?est pas ? jour." -#: modules/gui/macosx/update.m:185 +#: modules/gui/macosx/update.m:193 #, c-format msgid "The current release is %d.%d.%d%c." -msgstr "" +msgstr "La version actuelle est %d.%d.%d%c." + +#: modules/gui/macosx/vlm.m:98 +msgid "Video On Demand" +msgstr "Vid?o ? la demande (VOD)" + +#: modules/gui/macosx/vlm.m:102 modules/gui/qt4/dialogs/vlm.cpp:76 +msgid "Schedule" +msgstr "Planification" + +#: modules/gui/macosx/vlm.m:106 modules/gui/qt4/dialogs/vlm.cpp:75 +msgid "Broadcast" +msgstr "Diffusion" #: modules/gui/macosx/wizard.m:113 msgid "MPEG-1 Video codec (usable with MPEG PS, MPEG TS, MPEG1, OGG and RAW)" @@ -15025,7 +15140,7 @@ msgstr "" msgid "Enter the address of the computer to stream to." msgstr "Veuillez entre l?adresse vers laquelle diffuser." -#: modules/gui/macosx/wizard.m:274 modules/gui/macosx/wizard.m:370 +#: modules/gui/macosx/wizard.m:274 modules/gui/macosx/wizard.m:372 msgid "Use this to stream to a single computer." msgstr "Utilisez ceci pour diffuser vers un seul ordinateur." @@ -15040,7 +15155,6 @@ msgstr "" "priv?, utilisez une adresse commen?ant par 239.255" #: modules/gui/macosx/wizard.m:279 -#, fuzzy msgid "" "Use this to stream to a dynamic group of computers on a multicast-enabled " "network. This is the most efficient method to stream to several computers, " @@ -15060,7 +15174,6 @@ msgstr "" "ajout?s." #: modules/gui/macosx/wizard.m:289 -#, fuzzy msgid "" "Use this to stream to a dynamic group of computers on a multicast-enabled " "network. This is the most efficient method to stream to several computers, " @@ -15076,7 +15189,7 @@ msgid "Back" msgstr "Retour" #: modules/gui/macosx/wizard.m:322 modules/gui/macosx/wizard.m:325 -#: modules/gui/macosx/wizard.m:1266 +#: modules/gui/macosx/wizard.m:1274 msgid "Streaming/Transcoding Wizard" msgstr "Assistant de diffusion/trancodage?" @@ -15087,8 +15200,8 @@ msgstr "" "transcodages." #: modules/gui/macosx/wizard.m:328 modules/gui/macosx/wizard.m:329 -#: modules/gui/macosx/wizard.m:400 modules/gui/macosx/wizard.m:402 -#: modules/gui/macosx/wizard.m:404 modules/gui/macosx/wizard.m:419 +#: modules/gui/macosx/wizard.m:402 modules/gui/macosx/wizard.m:404 +#: modules/gui/macosx/wizard.m:406 modules/gui/macosx/wizard.m:421 msgid "More Info" msgstr "D?tails" @@ -15099,15 +15212,15 @@ msgid "" "access to more features." msgstr "" "Cet assistant ne vous donne acc?s qu?? une petite partie des capacit?s de " -"diffusion et de transcodage de VLC. Utilisez les boites de dialogue ? Ouvrir " -"? et ? Flux de sortie ? pour avoir toutes les options." +"diffusion et de transcodage de VLC. Utilisez les boites de dialogue ??Ouvrir " +"? et ??Flux de sortie?? pour avoir toutes les options." -#: modules/gui/macosx/wizard.m:335 modules/gui/macosx/wizard.m:491 -#: modules/gui/macosx/wizard.m:1675 +#: modules/gui/macosx/wizard.m:335 modules/gui/macosx/wizard.m:493 +#: modules/gui/macosx/wizard.m:1680 msgid "Stream to network" msgstr "Diffuser vers un r?seau" -#: modules/gui/macosx/wizard.m:337 modules/gui/macosx/wizard.m:1683 +#: modules/gui/macosx/wizard.m:337 modules/gui/macosx/wizard.m:1688 msgid "Transcode/Save to file" msgstr "Transcoder/Sauvegarder" @@ -15119,8 +15232,8 @@ msgstr "Choisir l?entr?e" msgid "Choose here your input stream." msgstr "Choisissez ici votre flux d?entr?e." -#: modules/gui/macosx/wizard.m:343 modules/gui/macosx/wizard.m:529 -#: modules/gui/macosx/wizard.m:1717 +#: modules/gui/macosx/wizard.m:343 modules/gui/macosx/wizard.m:531 +#: modules/gui/macosx/wizard.m:1722 msgid "Select a stream" msgstr "S?lectionnez un flux" @@ -15128,15 +15241,11 @@ msgstr "S?lectionnez un flux" msgid "Existing playlist item" msgstr "?lement de la liste de lecture" -#: modules/gui/macosx/wizard.m:346 modules/gui/macosx/wizard.m:412 -msgid "Choose..." -msgstr "Choisir?" - -#: modules/gui/macosx/wizard.m:351 modules/gui/macosx/wizard.m:431 +#: modules/gui/macosx/wizard.m:353 modules/gui/macosx/wizard.m:433 msgid "Partial Extract" msgstr "Extraction partielle" -#: modules/gui/macosx/wizard.m:353 +#: modules/gui/macosx/wizard.m:355 msgid "" "This can be used to read only a part of the stream. It must be possible to " "control the incoming stream (for example, a file or a disc, but not an UDP " @@ -15147,47 +15256,47 @@ msgstr "" "pas pour un flux r?seau UDP). Veuillez entrer les temps de d?but et de fin, " "en secondes." -#: modules/gui/macosx/wizard.m:357 +#: modules/gui/macosx/wizard.m:359 msgid "From" msgstr "De" -#: modules/gui/macosx/wizard.m:358 +#: modules/gui/macosx/wizard.m:360 msgid "To" msgstr "?" -#: modules/gui/macosx/wizard.m:362 +#: modules/gui/macosx/wizard.m:364 msgid "This page allows to select how the input stream will be sent." msgstr "" "Dans cette page, vous pouvez s?lectionner la fa?on dont votre flux sera " "envoy?." -#: modules/gui/macosx/wizard.m:364 modules/gui/macosx/wizard.m:425 -#: modules/stream_out/rtp.c:70 +#: modules/gui/macosx/wizard.m:366 modules/gui/macosx/wizard.m:427 +#: modules/stream_out/rtp.c:71 msgid "Destination" msgstr "Destination" -#: modules/gui/macosx/wizard.m:365 modules/gui/macosx/wizard.m:437 +#: modules/gui/macosx/wizard.m:367 modules/gui/macosx/wizard.m:439 msgid "Streaming method" msgstr "M?thode de diffusion" -#: modules/gui/macosx/wizard.m:366 +#: modules/gui/macosx/wizard.m:368 msgid "Address of the computer to stream to." msgstr "Veuillez entrer l?adresse vers laquelle diffuser." -#: modules/gui/macosx/wizard.m:368 +#: modules/gui/macosx/wizard.m:370 msgid "UDP Unicast" msgstr "Unicast UDP" -#: modules/gui/macosx/wizard.m:369 +#: modules/gui/macosx/wizard.m:371 msgid "UDP Multicast" msgstr "Multidiffusion UDP" -#: modules/gui/macosx/wizard.m:374 modules/gui/pda/pda_interface.c:1219 -#: modules/stream_out/transcode.c:161 +#: modules/gui/macosx/wizard.m:376 modules/gui/pda/pda_interface.c:1219 +#: modules/stream_out/transcode.c:162 msgid "Transcode" msgstr "Transcode" -#: modules/gui/macosx/wizard.m:375 +#: modules/gui/macosx/wizard.m:377 msgid "" "This page allows to change the compression format of the audio or video " "tracks. To change only the container format, proceed to next page." @@ -15196,32 +15305,31 @@ msgstr "" "remplissez cette page. Si vous ne d?sirez changer que le format " "d?encapsulation, passez ? la page suivante." -#: modules/gui/macosx/wizard.m:380 modules/gui/macosx/wizard.m:439 +#: modules/gui/macosx/wizard.m:382 modules/gui/macosx/wizard.m:441 msgid "Transcode audio" msgstr "Transcoder l?audio" -#: modules/gui/macosx/wizard.m:381 modules/gui/macosx/wizard.m:441 +#: modules/gui/macosx/wizard.m:383 modules/gui/macosx/wizard.m:443 msgid "Transcode video" msgstr "Transcoder la vid?o" -#: modules/gui/macosx/wizard.m:384 modules/gui/macosx/wizard.m:1819 +#: modules/gui/macosx/wizard.m:386 modules/gui/macosx/wizard.m:1824 msgid "" "Enabling this allows to transcode the audio track if one is present in the " "stream." msgstr "Transcoder l?audio, s?il est pr?sent." -#: modules/gui/macosx/wizard.m:386 modules/gui/macosx/wizard.m:1836 +#: modules/gui/macosx/wizard.m:388 modules/gui/macosx/wizard.m:1841 msgid "" "Enabling this allows to transcode the video track if one is present in the " "stream." msgstr "Transcoder la vid?o, s?il est pr?sente." -#: modules/gui/macosx/wizard.m:390 +#: modules/gui/macosx/wizard.m:392 msgid "Encapsulation format" msgstr "M?thode d?encapsulation" -#: modules/gui/macosx/wizard.m:391 -#, fuzzy +#: modules/gui/macosx/wizard.m:393 msgid "" "This page allows to select how the stream will be encapsulated. Depending on " "previously chosen settings all formats won't be available." @@ -15229,90 +15337,88 @@ msgstr "" "Dans cette page, vous devez choisir comment le flux sera encapsul?. Selon " "vos choix pr?c?dents, tous les formats ne seront pas disponibles." -#: modules/gui/macosx/wizard.m:396 +#: modules/gui/macosx/wizard.m:398 msgid "Additional streaming options" msgstr "Options de diffusion suppl?mentaires" -#: modules/gui/macosx/wizard.m:397 +#: modules/gui/macosx/wizard.m:399 msgid "In this page, a few additional streaming parameters can be set." msgstr "" "Dans cette page, vous pouvez d?finir quelques param?tres additionnels pour " "votre diffusion." -#: modules/gui/macosx/wizard.m:399 modules/gui/macosx/wizard.m:1864 -#: modules/gui/qt4/ui/sout.ui:945 +#: modules/gui/macosx/wizard.m:401 modules/gui/macosx/wizard.m:1869 +#: modules/gui/qt4/ui/sout.ui:488 msgid "Time-To-Live (TTL)" msgstr "Temps de vie (TTL)" -#: modules/gui/macosx/wizard.m:401 modules/gui/macosx/wizard.m:433 -#: modules/gui/macosx/wizard.m:1875 +#: modules/gui/macosx/wizard.m:403 modules/gui/macosx/wizard.m:435 +#: modules/gui/macosx/wizard.m:1880 msgid "SAP Announce" msgstr "Annonce SAP" -#: modules/gui/macosx/wizard.m:403 modules/gui/macosx/wizard.m:413 -#: modules/gui/macosx/wizard.m:445 modules/gui/macosx/wizard.m:1888 +#: modules/gui/macosx/wizard.m:405 modules/gui/macosx/wizard.m:415 +#: modules/gui/macosx/wizard.m:447 modules/gui/macosx/wizard.m:1893 msgid "Local playback" msgstr "Lecture locale" -#: modules/gui/macosx/wizard.m:405 modules/gui/macosx/wizard.m:414 -#, fuzzy +#: modules/gui/macosx/wizard.m:407 modules/gui/macosx/wizard.m:416 msgid "Add Subtitles to transcoded video" -msgstr "Options de transcodage suppl?mentaires" +msgstr "Ajouters des sous-titres ? la vid?o transcod?e" -#: modules/gui/macosx/wizard.m:408 +#: modules/gui/macosx/wizard.m:410 msgid "Additional transcode options" msgstr "Options de transcodage suppl?mentaires" -#: modules/gui/macosx/wizard.m:409 +#: modules/gui/macosx/wizard.m:411 msgid "In this page, a few additional transcoding parameters can be set." msgstr "" "Dans cette page, vous pouvez d?finir quelques param?tres additionnels pour " "votre transcodage." -#: modules/gui/macosx/wizard.m:411 modules/gui/macosx/wizard.m:1088 +#: modules/gui/macosx/wizard.m:413 modules/gui/macosx/wizard.m:1096 msgid "Select the file to save to" msgstr "S?lectionnez le fichier de destination." -#: modules/gui/macosx/wizard.m:415 +#: modules/gui/macosx/wizard.m:417 msgid "" "Adds available subtitles directly to the video. These cannot be disabled by " "the receiving user as they become part of the image." msgstr "" -#: modules/gui/macosx/wizard.m:422 +#: modules/gui/macosx/wizard.m:424 msgid "" -"This page lists all the settings.Click \"Finish\" to start streaming or " +"This page lists all the settings. Click \"Finish\" to start streaming or " "transcoding." msgstr "" -"Cette page r?sume vos choix. Cliquez sur \"Terminer\" pour commencer votre " +"Cette page r?sume vos choix. Cliquez sur ??Terminer?? pour commencer votre " "diffusion ou transcodage." -#: modules/gui/macosx/wizard.m:424 +#: modules/gui/macosx/wizard.m:426 msgid "Summary" msgstr "R?sum?" -#: modules/gui/macosx/wizard.m:427 +#: modules/gui/macosx/wizard.m:429 msgid "Encap. format" msgstr "M?thode d?encapsulation" -#: modules/gui/macosx/wizard.m:429 +#: modules/gui/macosx/wizard.m:431 msgid "Input stream" msgstr "Flux d?entr?e" -#: modules/gui/macosx/wizard.m:435 +#: modules/gui/macosx/wizard.m:437 msgid "Save file to" msgstr "Enregistrer vers" -#: modules/gui/macosx/wizard.m:443 -#, fuzzy +#: modules/gui/macosx/wizard.m:445 msgid "Include subtitles" -msgstr "Tous les sous-titres" +msgstr "Inclure les sous-titres" -#: modules/gui/macosx/wizard.m:598 +#: modules/gui/macosx/wizard.m:599 msgid "No input selected" msgstr "Aucune entr?e s?lectionn?e" -#: modules/gui/macosx/wizard.m:600 +#: modules/gui/macosx/wizard.m:601 msgid "" "No new stream or valid playlist item has been selected.\n" "\n" @@ -15323,12 +15429,11 @@ msgstr "" "\n" "Veuillez choisir un flux valide avant de passer ? la page suivante" -#: modules/gui/macosx/wizard.m:662 +#: modules/gui/macosx/wizard.m:663 msgid "No valid destination" msgstr "Pas de destination valide" -#: modules/gui/macosx/wizard.m:664 -#, fuzzy +#: modules/gui/macosx/wizard.m:665 msgid "" "A valid destination has to be selected Enter either a Unicast-IP or a " "Multicast-IP.\n" @@ -15340,9 +15445,9 @@ msgstr "" "une adresse IP Unicast ou Multicast.\n" "\n" "Si vous ne comprenez pas la signification de ceci, merci de bien vouloir " -"lire le \"Streaming HOWTO\" et les champs d?aide de cette fen?tre." +"lire le ??Streaming HOWTO?? et les champs d?aide de cette fen?tre." -#: modules/gui/macosx/wizard.m:1056 +#: modules/gui/macosx/wizard.m:1064 msgid "" "The chosen codecs are not compatible with each other. For example: It is " "impossibleto mix uncompressed audio with any video codec.\n" @@ -15350,74 +15455,74 @@ msgid "" "Correct your selection and try again." msgstr "" "Les codecs que vous avez choisi ne sont pas compatibles entre eux. Par " -"example: il n?est pas possible de mixer de l?audio non compress?e avec un " +"example?: il n?est pas possible de mixer de l?audio non compress?e avec un " "codec vid?o.\n" "\n" "Veuillez corriger votre s?lection et r?essayer." -#: modules/gui/macosx/wizard.m:1083 +#: modules/gui/macosx/wizard.m:1091 msgid "Select the directory to save to" msgstr "Dossier de destination" -#: modules/gui/macosx/wizard.m:1139 +#: modules/gui/macosx/wizard.m:1147 msgid "No folder selected" msgstr "Aucun dossier s?lectionn?" -#: modules/gui/macosx/wizard.m:1141 +#: modules/gui/macosx/wizard.m:1149 msgid "A directory where to save the files has to be selected." -msgstr "Vous devez s?lectionner un r?pertoire o? sauvegarder les fichiers." +msgstr "Vous devez s?lectionner un dossier o? sauvegarder les fichiers." -#: modules/gui/macosx/wizard.m:1143 +#: modules/gui/macosx/wizard.m:1151 msgid "" "Enter either a valid path or use the \"Choose...\" button to select a " "location." msgstr "" -"Entrez un chemin valide ou utilisez le bouton \"Choisir...\" pour choisir un " +"Entrez un chemin valide ou utilisez le bouton ??Choisir??? pour choisir un " "emplacement." -#: modules/gui/macosx/wizard.m:1146 +#: modules/gui/macosx/wizard.m:1154 msgid "No file selected" msgstr "Aucun fichier s?lectionn?" -#: modules/gui/macosx/wizard.m:1148 +#: modules/gui/macosx/wizard.m:1156 msgid "A file where to save the stream has to be selected." msgstr "Vous devez s?lectionner un fichier vers lequel sauvegarder" -#: modules/gui/macosx/wizard.m:1150 +#: modules/gui/macosx/wizard.m:1158 msgid "" "Enter either a valid path or use the \"Choose\" button to select a location." msgstr "" -"Entrez un chemin valide ou utilisez le bouton \"Choisir...\" pour choisir un " +"Entrez un chemin valide ou utilisez le bouton ??Choisir??? pour choisir un " "emplacement." -#: modules/gui/macosx/wizard.m:1351 +#: modules/gui/macosx/wizard.m:1363 msgid "Finish" msgstr "Terminer" -#: modules/gui/macosx/wizard.m:1364 modules/gui/macosx/wizard.m:1393 -#: modules/gui/macosx/wizard.m:1423 +#: modules/gui/macosx/wizard.m:1376 modules/gui/macosx/wizard.m:1405 +#: modules/gui/macosx/wizard.m:1435 msgid "yes" msgstr "oui" -#: modules/gui/macosx/wizard.m:1366 modules/gui/macosx/wizard.m:1376 -#: modules/gui/macosx/wizard.m:1389 modules/gui/macosx/wizard.m:1395 -#: modules/gui/macosx/wizard.m:1407 modules/gui/macosx/wizard.m:1426 +#: modules/gui/macosx/wizard.m:1378 modules/gui/macosx/wizard.m:1388 +#: modules/gui/macosx/wizard.m:1401 modules/gui/macosx/wizard.m:1407 +#: modules/gui/macosx/wizard.m:1419 modules/gui/macosx/wizard.m:1438 msgid "no" msgstr "non" -#: modules/gui/macosx/wizard.m:1372 +#: modules/gui/macosx/wizard.m:1384 msgid "yes: from %@ to %@ secs" -msgstr "oui : de %@ ? %@ secondes" +msgstr "oui?: de %@ ? %@ secondes" -#: modules/gui/macosx/wizard.m:1382 modules/gui/macosx/wizard.m:1400 +#: modules/gui/macosx/wizard.m:1394 modules/gui/macosx/wizard.m:1412 msgid "yes: %@ @ %@ kb/s" -msgstr "oui : %@ @ %@ kb/s" +msgstr "oui?: %@ @ %@ kb/s" -#: modules/gui/macosx/wizard.m:1677 +#: modules/gui/macosx/wizard.m:1682 msgid "This allows to stream on a network." msgstr "Diffuser par le r?seau" -#: modules/gui/macosx/wizard.m:1685 +#: modules/gui/macosx/wizard.m:1690 msgid "" "This allows to save a stream to a file. The can be reencoded on the fly. " "Whatever VLC can read can be saved.\n" @@ -15431,20 +15536,19 @@ msgstr "" "fichier vers fichier. Vous devriez plut?t utiliser ses possibilit?s de " "transcodage pour sauvegarder un flux r?seau, par exemple." -#: modules/gui/macosx/wizard.m:1814 +#: modules/gui/macosx/wizard.m:1819 msgid "Select your audio codec. Click one to get more information." msgstr "" "Choisissez votre format de compression audio. Choisissez en un pour avoir " "plus d?information." -#: modules/gui/macosx/wizard.m:1831 +#: modules/gui/macosx/wizard.m:1836 msgid "Select your video codec. Click one to get more information." msgstr "" "Choisissez votre format de compression video. Choisissez en un pour avoir " "plus d?information." -#: modules/gui/macosx/wizard.m:1866 -#, fuzzy +#: modules/gui/macosx/wizard.m:1871 msgid "" "This allows to define the TTL (Time-To-Live) of the stream. This parameter " "is the maximum number of routers your stream can go through. If you don't " @@ -15456,8 +15560,7 @@ msgstr "" "ce r?glage, ou si vous ne d?sirez diffuser que sur votre r?seau local, il " "est conseill? de laisser la valeur par d?faut de 1." -#: modules/gui/macosx/wizard.m:1877 -#, fuzzy +#: modules/gui/macosx/wizard.m:1882 msgid "" "When streaming using UDP, the streams can be announced using the SAP/SDP " "announcing protocol. This way, the clients won't have to type in the " @@ -15473,7 +15576,7 @@ msgstr "" "Si vous d?sirez donner un nom ? votre flux, entrez-le ici. Dans le cas " "contraire, un nom par d?faut sera utilis?." -#: modules/gui/macosx/wizard.m:1890 +#: modules/gui/macosx/wizard.m:1895 msgid "" "When this option is enabled, the stream will be both played and transcoded/" "streamed.\n" @@ -15487,354 +15590,348 @@ msgstr "" "Veuillez noter que ceci n?cessite plus de puissance que le simple " "transcodage / diffusion" +#: modules/gui/maemo/maemo.c:65 +msgid "Maemo hildon interface" +msgstr "Interface Maemo hildon" + #: modules/gui/minimal_macosx/macosx.c:58 msgid "Minimal Mac OS X interface" msgstr "Interface Mac OS X minimale" #: modules/gui/minimal_macosx/macosx.c:66 msgid "Minimal Mac OS X OpenGL video output (opens a borderless window)" -msgstr "" +msgstr "Interface Mac OS X OpenGL minimale (fen?tre sans bordure)" #: modules/gui/ncurses.c:119 msgid "Filebrowser starting point" -msgstr "R?pertoire de d?marrage du navigateur" +msgstr "Dossier de d?marrage du navigateur" #: modules/gui/ncurses.c:121 msgid "" "This option allows you to specify the directory the ncurses filebrowser will " "show you initially." msgstr "" -"Cette option permet de choisir le r?pertoire que le navigateur de fichiers " +"Cette option permet de choisir le dossier que le navigateur de fichiers " "ncurses montrera au lancement." #: modules/gui/ncurses.c:126 msgid "Ncurses interface" msgstr "Interface ncurses" -#: modules/gui/ncurses.c:1542 +#: modules/gui/ncurses.c:1523 msgid "[Repeat] " msgstr "[R?p?ter] " -#: modules/gui/ncurses.c:1543 +#: modules/gui/ncurses.c:1524 msgid "[Random] " msgstr "[Al?atoire] " -#: modules/gui/ncurses.c:1544 +#: modules/gui/ncurses.c:1525 msgid "[Loop]" msgstr "[Boucler]" -#: modules/gui/ncurses.c:1556 +#: modules/gui/ncurses.c:1537 #, c-format msgid " Source : %s" msgstr " Source : %s" -#: modules/gui/ncurses.c:1563 +#: modules/gui/ncurses.c:1544 #, c-format msgid " State : Playing %s" msgstr " Statut : ? Lecture ? %s" -#: modules/gui/ncurses.c:1567 -#, fuzzy, c-format -msgid " State : Stopped %s" -msgstr " Statut : Pause %s" - -#: modules/gui/ncurses.c:1571 +#: modules/gui/ncurses.c:1548 #, c-format msgid " State : Opening/Connecting %s" msgstr " Statut : Ouverture/Connection %s" -#: modules/gui/ncurses.c:1575 -#, c-format -msgid " State : Buffering %s" -msgstr " Statut : Mise en tampon %s" - -#: modules/gui/ncurses.c:1579 +#: modules/gui/ncurses.c:1552 #, c-format msgid " State : Paused %s" msgstr " Statut : Pause %s" -#: modules/gui/ncurses.c:1593 +#: modules/gui/ncurses.c:1566 #, c-format msgid " Position : %s/%s (%.2f%%)" msgstr " Position : %s/%s (%.2f%%)" -#: modules/gui/ncurses.c:1597 +#: modules/gui/ncurses.c:1570 #, c-format msgid " Volume : %i%%" msgstr " Volume : %i%%" -#: modules/gui/ncurses.c:1605 +#: modules/gui/ncurses.c:1578 #, c-format msgid " Title : %d/%d" msgstr " Titre : %d/%d" -#: modules/gui/ncurses.c:1616 +#: modules/gui/ncurses.c:1589 #, c-format msgid " Chapter : %d/%d" msgstr " Chapitre : %d/%d" -#: modules/gui/ncurses.c:1628 +#: modules/gui/ncurses.c:1601 #, c-format msgid " Source: %s" msgstr " Source: %s" -#: modules/gui/ncurses.c:1630 +#: modules/gui/ncurses.c:1603 msgid " [ h for help ]" msgstr " [ h pour l?aide ]" -#: modules/gui/ncurses.c:1652 +#: modules/gui/ncurses.c:1625 msgid " Help " msgstr " Aide " -#: modules/gui/ncurses.c:1656 +#: modules/gui/ncurses.c:1629 msgid "[Display]" msgstr "[Affichage]" -#: modules/gui/ncurses.c:1659 +#: modules/gui/ncurses.c:1632 msgid " h,H Show/Hide help box" msgstr " h,H Afficher/Cacher l?aide" -#: modules/gui/ncurses.c:1660 +#: modules/gui/ncurses.c:1633 msgid " i Show/Hide info box" msgstr " i Afficher/Cacher les informations" -#: modules/gui/ncurses.c:1661 +#: modules/gui/ncurses.c:1634 msgid " m Show/Hide metadata box" msgstr " m Afficher/Cacher les m?ta informations" -#: modules/gui/ncurses.c:1662 +#: modules/gui/ncurses.c:1635 msgid " L Show/Hide messages box" msgstr " L Afficher/Cacher les messages" -#: modules/gui/ncurses.c:1663 +#: modules/gui/ncurses.c:1636 msgid " P Show/Hide playlist box" msgstr " P Afficher/Cacher la liste de lecture" -#: modules/gui/ncurses.c:1664 +#: modules/gui/ncurses.c:1637 msgid " B Show/Hide filebrowser" msgstr " B Afficher/Cacher le navigateur de fichiers" -#: modules/gui/ncurses.c:1665 -#, fuzzy +#: modules/gui/ncurses.c:1638 msgid " x Show/Hide objects box" -msgstr " i Afficher/Cacher les informations" +msgstr " x Afficher/Cacher les objets" -#: modules/gui/ncurses.c:1666 -#, fuzzy +#: modules/gui/ncurses.c:1639 msgid " S Show/Hide statistics box" -msgstr " P Afficher/Cacher la liste de lecture" +msgstr " P Afficher/Cacher les statistiques" -#: modules/gui/ncurses.c:1667 +#: modules/gui/ncurses.c:1640 msgid " c Switch color on/off" msgstr " c Basculer l?affichage des couleurs" -#: modules/gui/ncurses.c:1668 +#: modules/gui/ncurses.c:1641 msgid " Esc Close Add/Search entry" -msgstr " ? Fermer le dialogue Ajouter/Chercher" +msgstr " Echap Fermer le dialogue Ajouter/Chercher" -#: modules/gui/ncurses.c:1673 +#: modules/gui/ncurses.c:1646 msgid "[Global]" msgstr "[Global]" -#: modules/gui/ncurses.c:1676 +#: modules/gui/ncurses.c:1649 msgid " q, Q, Esc Quit" -msgstr " q, Q, ? Quitter" +msgstr " q, Q, Esc Quitter" -#: modules/gui/ncurses.c:1677 +#: modules/gui/ncurses.c:1650 msgid " s Stop" msgstr " s Stop" -#: modules/gui/ncurses.c:1678 +#: modules/gui/ncurses.c:1651 msgid " Pause/Play" -msgstr " ? Suspendre/Lire" +msgstr " [Espace] Suspendre/Lire" -#: modules/gui/ncurses.c:1679 +#: modules/gui/ncurses.c:1652 msgid " f Toggle Fullscreen" -msgstr " f Basculer le mode plein-?cran" +msgstr " f Basculer le mode plein ?cran" -#: modules/gui/ncurses.c:1680 +#: modules/gui/ncurses.c:1653 msgid " n, p Next/Previous playlist item" msgstr " n, p Suivant/Pr?c?dent" -#: modules/gui/ncurses.c:1681 +#: modules/gui/ncurses.c:1654 msgid " [, ] Next/Previous title" msgstr " [, ] Titre Suivant/Pr?c?dent" -#: modules/gui/ncurses.c:1682 +#: modules/gui/ncurses.c:1655 msgid " <, > Next/Previous chapter" msgstr " <, > Chapitre Suivant/Pr?c?dent" -#: modules/gui/ncurses.c:1683 +#: modules/gui/ncurses.c:1656 #, c-format msgid " Seek +1%%" msgstr " ? Sauter +1%%" -#: modules/gui/ncurses.c:1684 +#: modules/gui/ncurses.c:1657 #, c-format msgid " Seek -1%%" msgstr " ? Sauter -1%%" -#: modules/gui/ncurses.c:1685 +#: modules/gui/ncurses.c:1658 msgid " a Volume Up" msgstr " a Augmenter le volume" -#: modules/gui/ncurses.c:1686 +#: modules/gui/ncurses.c:1659 msgid " z Volume Down" msgstr " z Baisser le volume" -#: modules/gui/ncurses.c:1691 +#: modules/gui/ncurses.c:1664 msgid "[Playlist]" msgstr "[Liste de lecture]" -#: modules/gui/ncurses.c:1694 +#: modules/gui/ncurses.c:1667 msgid " r Toggle Random playing" msgstr " r Basculer le mode al?atoire" -#: modules/gui/ncurses.c:1695 +#: modules/gui/ncurses.c:1668 msgid " l Toggle Loop Playlist" msgstr " l Basculer le mode boucler" -#: modules/gui/ncurses.c:1696 +#: modules/gui/ncurses.c:1669 msgid " R Toggle Repeat item" msgstr " R Basculer le mode r?p?ter" -#: modules/gui/ncurses.c:1697 +#: modules/gui/ncurses.c:1670 msgid " o Order Playlist by title" msgstr " o Trier la liste de lecture par titre" -#: modules/gui/ncurses.c:1698 +#: modules/gui/ncurses.c:1671 msgid " O Reverse order Playlist by title" msgstr " O Trier la liste de lecture par titre (invers?)" -#: modules/gui/ncurses.c:1699 +#: modules/gui/ncurses.c:1672 msgid " g Go to the current playing item" msgstr " g Aller ? l??l?ment courant" -#: modules/gui/ncurses.c:1700 +#: modules/gui/ncurses.c:1673 msgid " / Look for an item" msgstr " / Rechercher" -#: modules/gui/ncurses.c:1701 +#: modules/gui/ncurses.c:1674 msgid " A Add an entry" msgstr " A Ajouter" -#: modules/gui/ncurses.c:1702 +#: modules/gui/ncurses.c:1675 msgid " D, Delete an entry" -msgstr " D,? Effacer" +msgstr " D,[Suppr] Effacer" -#: modules/gui/ncurses.c:1703 +#: modules/gui/ncurses.c:1676 msgid " Delete an entry" -msgstr " ? Effacer" +msgstr " [<-] Effacer" -#: modules/gui/ncurses.c:1704 +#: modules/gui/ncurses.c:1677 msgid " e Eject (if stopped)" msgstr " e ?jecter (si stopp?)" -#: modules/gui/ncurses.c:1709 +#: modules/gui/ncurses.c:1682 msgid "[Filebrowser]" msgstr "[Navigateur de fichiers]" -#: modules/gui/ncurses.c:1712 +#: modules/gui/ncurses.c:1685 msgid " Add the selected file to the playlist" -msgstr " ? Ajouter le fichier s?lectionn? ? la liste de lecture" +msgstr "" +" [Entr?e] Ajouter le fichier s?lectionn? ? la liste de lecture" -#: modules/gui/ncurses.c:1713 +#: modules/gui/ncurses.c:1686 msgid " Add the selected directory to the playlist" -msgstr " ? Ajouter le dossier s?lectionn? ? la liste de lecture" +msgstr "" +" [Espace] Ajouter le dossier s?lectionn? ? la liste de lecture" -#: modules/gui/ncurses.c:1714 +#: modules/gui/ncurses.c:1687 msgid " . Show/Hide hidden files" msgstr " . Afficher/Cacher les fichiers cach?s" -#: modules/gui/ncurses.c:1719 +#: modules/gui/ncurses.c:1692 msgid "[Boxes]" msgstr "[Boites]" -#: modules/gui/ncurses.c:1722 +#: modules/gui/ncurses.c:1695 msgid " , Navigate through the box line by line" msgstr " ?,? Naviguer ligne par ligne" -#: modules/gui/ncurses.c:1723 +#: modules/gui/ncurses.c:1696 msgid " , Navigate through the box page by page" -msgstr " ?,? Naviguer page par page" +msgstr " [P.Prec],[P.Suiv] Naviguer page par page" -#: modules/gui/ncurses.c:1728 +#: modules/gui/ncurses.c:1701 msgid "[Player]" msgstr "[Lecteur]" -#: modules/gui/ncurses.c:1731 +#: modules/gui/ncurses.c:1704 #, c-format msgid " , Seek +/-5%%" -msgstr " ?,? Sauter ?5%%" +msgstr " ?,? Sauter +/-5%%" -#: modules/gui/ncurses.c:1736 +#: modules/gui/ncurses.c:1709 msgid "[Miscellaneous]" msgstr "[Divers]" -#: modules/gui/ncurses.c:1739 +#: modules/gui/ncurses.c:1712 msgid " Ctrl-l Refresh the screen" -msgstr " Ctrl+l Rafraichir l??cran" +msgstr " Ctrl+l Rafra?chir l??cran" -#: modules/gui/ncurses.c:1760 +#: modules/gui/ncurses.c:1733 msgid " Information " msgstr " Information " -#: modules/gui/ncurses.c:1772 +#: modules/gui/ncurses.c:1745 #, c-format msgid " [%s]" msgstr " [%s]" -#: modules/gui/ncurses.c:1779 +#: modules/gui/ncurses.c:1752 #, c-format msgid " %s: %s" -msgstr " %s: %s" +msgstr " %s?: %s" -#: modules/gui/ncurses.c:1786 modules/gui/ncurses.c:1874 +#: modules/gui/ncurses.c:1759 modules/gui/ncurses.c:1847 msgid "No item currently playing" msgstr "Aucun ?lement dans la liste de lecture" -#: modules/gui/ncurses.c:1897 +#: modules/gui/ncurses.c:1872 msgid " Logs " msgstr " Messages " -#: modules/gui/ncurses.c:1940 +#: modules/gui/ncurses.c:1917 msgid " Browse " msgstr " Parcourir " -#: modules/gui/ncurses.c:1995 +#: modules/gui/ncurses.c:1972 msgid " Objects " msgstr " Objets" -#: modules/gui/ncurses.c:2009 +#: modules/gui/ncurses.c:1986 msgid " Stats " msgstr "Statistiques" -#: modules/gui/ncurses.c:2098 +#: modules/gui/ncurses.c:2075 #, c-format msgid "\\ sending bitrate : %6.0f kb/s" msgstr "" -#: modules/gui/ncurses.c:2131 +#: modules/gui/ncurses.c:2108 msgid " Playlist (All, one level) " -msgstr " Liste de lecture (Plate) " +msgstr " Liste de lecture (? plat) " -#: modules/gui/ncurses.c:2134 +#: modules/gui/ncurses.c:2111 msgid " Playlist (By category) " msgstr " Liste de lecture (Hi?rarchique) " -#: modules/gui/ncurses.c:2137 +#: modules/gui/ncurses.c:2114 msgid " Playlist (Manually added) " msgstr " Liste de lecture (Vue manuelle) " -#: modules/gui/ncurses.c:2225 modules/gui/ncurses.c:2229 +#: modules/gui/ncurses.c:2202 modules/gui/ncurses.c:2206 #, c-format msgid "Find: %s" -msgstr "Chercher: %s" +msgstr "Chercher?: %s" -#: modules/gui/ncurses.c:2238 +#: modules/gui/ncurses.c:2215 #, c-format msgid "Open: %s" -msgstr "Ouvrir: %s" +msgstr "Ouvrir?: %s" #: modules/gui/pda/pda.c:62 msgid "Autoplay selected file" @@ -15848,27 +15945,31 @@ msgstr "Lire automatiquement un fichier lorsque celui-ci est s?lectionn?" msgid "PDA Linux Gtk2+ interface" msgstr "Interface Gtk2+ Linux pour PDA" -#: modules/gui/pda/pda.c:217 modules/gui/pda/pda.c:272 -#: modules/gui/qt4/ui/sout.ui:48 +#: modules/gui/pda/pda.c:215 modules/gui/pda/pda.c:270 +#: modules/gui/qt4/ui/sout.ui:45 msgid "Filename" msgstr "Nom de fichier" -#: modules/gui/pda/pda.c:223 +#: modules/gui/pda/pda.c:221 msgid "Permissions" msgstr "Permissions" -#: modules/gui/pda/pda.c:229 +#: modules/gui/pda/pda.c:227 msgid "Size" msgstr "Taille" -#: modules/gui/pda/pda.c:235 +#: modules/gui/pda/pda.c:233 msgid "Owner" msgstr "Propri?taire" -#: modules/gui/pda/pda.c:241 +#: modules/gui/pda/pda.c:239 msgid "Group" msgstr "Groupe" +#: modules/gui/pda/pda_interface.c:284 modules/gui/pda/pda_interface.c:285 +msgid "Forward" +msgstr "En avant" + #: modules/gui/pda/pda_interface.c:306 msgid "00:00:00" msgstr "00:00:00" @@ -15880,17 +15981,17 @@ msgstr "Ajouter ? la liste de lecture" #: modules/gui/pda/pda_interface.c:382 msgid "MRL:" -msgstr "MRL :" +msgstr "MRL?:" -#: modules/gui/pda/pda_interface.c:421 modules/gui/qt4/dialogs/sout.cpp:329 -#: modules/gui/qt4/ui/sout.ui:115 modules/gui/qt4/ui/sout.ui:180 -#: modules/gui/qt4/ui/sout.ui:242 modules/gui/qt4/ui/sout.ui:400 +#: modules/gui/pda/pda_interface.c:421 modules/gui/qt4/dialogs/sout.cpp:263 +#: modules/gui/qt4/ui/sout.ui:92 modules/gui/qt4/ui/sout.ui:144 +#: modules/gui/qt4/ui/sout.ui:193 modules/gui/qt4/ui/sout.ui:322 msgid "Port:" -msgstr "Port :" +msgstr "Port?:" #: modules/gui/pda/pda_interface.c:430 msgid "Address:" -msgstr "Adresse :" +msgstr "Adresse?:" #: modules/gui/pda/pda_interface.c:469 msgid "unicast" @@ -15902,7 +16003,7 @@ msgstr "Multicast" #: modules/gui/pda/pda_interface.c:479 msgid "Network: " -msgstr "R?seau : " +msgstr "R?seau?: " #: modules/gui/pda/pda_interface.c:496 msgid "udp" @@ -15938,11 +16039,11 @@ msgstr "mms" #: modules/gui/pda/pda_interface.c:511 msgid "Protocol:" -msgstr "Protocole :" +msgstr "Protocole?:" #: modules/gui/pda/pda_interface.c:520 modules/gui/pda/pda_interface.c:846 msgid "Transcode:" -msgstr "Transcode :" +msgstr "Transcode?:" #: modules/gui/pda/pda_interface.c:529 modules/gui/pda/pda_interface.c:831 #: modules/gui/pda/pda_interface.c:855 modules/gui/pda/pda_interface.c:1096 @@ -15952,51 +16053,51 @@ msgstr "Activer" #: modules/gui/pda/pda_interface.c:573 msgid "Video:" -msgstr "Vid?o :" +msgstr "Vid?o?:" #: modules/gui/pda/pda_interface.c:582 msgid "Audio:" -msgstr "Audio :" +msgstr "Audio?:" #: modules/gui/pda/pda_interface.c:591 msgid "Channel:" -msgstr "Canal :" +msgstr "Canal?:" #: modules/gui/pda/pda_interface.c:600 msgid "Norm:" -msgstr "Norme :" +msgstr "Norme?:" -#: modules/gui/pda/pda_interface.c:609 modules/gui/qt4/ui/open_file.ui:90 +#: modules/gui/pda/pda_interface.c:609 modules/gui/qt4/ui/open_file.ui:152 msgid "Size:" -msgstr "Taille :" +msgstr "Taille?:" #: modules/gui/pda/pda_interface.c:618 msgid "Frequency:" -msgstr "Fr?quence :" +msgstr "Fr?quence?:" #: modules/gui/pda/pda_interface.c:627 msgid "Samplerate:" -msgstr "D?bit :" +msgstr "D?bit?:" #: modules/gui/pda/pda_interface.c:636 msgid "Quality:" -msgstr "Qualit? :" +msgstr "Qualit??:" #: modules/gui/pda/pda_interface.c:645 msgid "Tuner:" -msgstr "Tuner :" +msgstr "Tuner?:" #: modules/gui/pda/pda_interface.c:654 msgid "Sound:" -msgstr "Son :" +msgstr "Son?:" #: modules/gui/pda/pda_interface.c:663 msgid "MJPEG:" -msgstr "MJPEG :" +msgstr "MJPEG?:" #: modules/gui/pda/pda_interface.c:672 msgid "Decimation:" -msgstr "D?cimation :" +msgstr "D?cimation?:" #: modules/gui/pda/pda_interface.c:738 msgid "pal" @@ -16060,7 +16161,7 @@ msgstr "Cam?ra" #: modules/gui/pda/pda_interface.c:899 msgid "Video Codec:" -msgstr "Codec vid?o :" +msgstr "Codec vid?o?:" #: modules/gui/pda/pda_interface.c:916 msgid "huffyuv" @@ -16092,39 +16193,39 @@ msgstr "WMV2" #: modules/gui/pda/pda_interface.c:931 msgid "Video Bitrate:" -msgstr "D?bit vid?o :" +msgstr "D?bit vid?o?:" #: modules/gui/pda/pda_interface.c:940 msgid "Bitrate Tolerance:" -msgstr "Tol?rance de d?bit :" +msgstr "Tol?rance de d?bit?:" #: modules/gui/pda/pda_interface.c:949 msgid "Keyframe Interval:" -msgstr "Intervalle d?images-cl? :" +msgstr "Intervalle d?images-cl??:" #: modules/gui/pda/pda_interface.c:958 msgid "Audio Codec:" -msgstr "Codec audio :" +msgstr "Codec audio?:" #: modules/gui/pda/pda_interface.c:967 msgid "Deinterlace:" -msgstr "D?sentrelacer :" +msgstr "D?sentrelacer?:" #: modules/gui/pda/pda_interface.c:976 msgid "Access:" -msgstr "Acc?s :" +msgstr "Acc?s?:" #: modules/gui/pda/pda_interface.c:985 msgid "Muxer:" -msgstr "Multiplexeur :" +msgstr "Multiplexeur?:" #: modules/gui/pda/pda_interface.c:994 msgid "URL:" -msgstr "URL :" +msgstr "URL?:" #: modules/gui/pda/pda_interface.c:1003 msgid "Time To Live (TTL):" -msgstr "Temps de vie (TTL) :" +msgstr "Temps de vie (TTL)?:" #: modules/gui/pda/pda_interface.c:1028 msgid "127.0.0.1" @@ -16142,10 +16243,6 @@ msgstr "localhost.localdomain" msgid "239.0.0.42" msgstr "239.0.0.42" -#: modules/gui/pda/pda_interface.c:1048 -msgid "PS" -msgstr "PS" - #: modules/gui/pda/pda_interface.c:1049 msgid "TS" msgstr "TS" @@ -16162,10 +16259,6 @@ msgstr "AVI" msgid "OGG" msgstr "OGG" -#: modules/gui/pda/pda_interface.c:1053 -msgid "MP4" -msgstr "MP4" - #: modules/gui/pda/pda_interface.c:1054 msgid "MOV" msgstr "MOV" @@ -16208,22 +16301,22 @@ msgstr "bits/s" #: modules/gui/pda/pda_interface.c:1132 msgid "Audio Bitrate :" -msgstr "D?bit audio :" +msgstr "D?bit audio?:" #: modules/gui/pda/pda_interface.c:1155 msgid "SAP Announce:" -msgstr "Annonce SAP :" +msgstr "Annonce SAP?:" #: modules/gui/pda/pda_interface.c:1178 msgid "SLP Announce:" -msgstr "Annonce SLP :" +msgstr "Annonce SLP?:" #: modules/gui/pda/pda_interface.c:1187 msgid "Announce Channel:" -msgstr "Canal d?annonce :" +msgstr "Canal d?annonce?:" #: modules/gui/pda/pda_interface.c:1247 -#: modules/gui/qt4/ui/video_effects.ui:996 +#: modules/gui/qt4/ui/video_effects.ui:1002 msgid "Update" msgstr "Mettre ? jour" @@ -16259,7 +16352,7 @@ msgstr "" #: modules/gui/pda/pda_interface.c:1339 msgid "Authors: the VideoLAN Team, http://www.videolan.org/team/" -msgstr "Auteurs : l??quipe VideoLAN, http://www.videolan.org/team/" +msgstr "Auteurs?: l??quipe VideoLAN, http://www.videolan.org/team/" #: modules/gui/pda/pda_interface.c:1347 msgid "(c) 1996-2004 the the VideoLAN team team" @@ -16268,35 +16361,120 @@ msgstr "? 1996-2004 l??quipe VideoLAN" #: modules/gui/pda/pda_support.c:88 modules/gui/pda/pda_support.c:112 #, c-format msgid "Couldn't find pixmap file: %s" -msgstr "Impossible de trouver le fichier pixmap: %s" +msgstr "Impossible de trouver le fichier pixmap?: %s" #: modules/gui/qnx/qnx.c:47 msgid "QNX RTOS video and audio output" msgstr "Sortie vid?o et audio QNX RTOS" -#: modules/gui/qt4/components/extended_panels.cpp:956 -#: modules/gui/qt4/components/extended_panels.cpp:1021 +#: modules/gui/qt4/components/controller.cpp:447 +msgid "Previous Chapter/Title" +msgstr "Chapitre/titre pr?c?dent" + +#: modules/gui/qt4/components/controller.cpp:453 +msgid "Menu" +msgstr "Menu" + +#: modules/gui/qt4/components/controller.cpp:459 +msgid "Next Chapter/Title" +msgstr "Chapitre/titre suivant" + +#: modules/gui/qt4/components/controller.cpp:493 +msgid "Teletext Activation" +msgstr "T?l?texte" + +#: modules/gui/qt4/components/controller.cpp:508 +msgid "Toggle Transparency " +msgstr "Transparence" + +#: modules/gui/qt4/components/controller.hpp:36 +msgid "" +"Play\n" +"If the playlist is empty, open a media" +msgstr "" +"Lecture\n" +"Si la liste de lecture est vide, ouvrir un m?dia" + +#: modules/gui/qt4/components/controller.hpp:107 +msgid "Stop playback" +msgstr "Arr?ter la lecture" + +#: modules/gui/qt4/components/controller.hpp:107 +msgid "Open a media" +msgstr "Ouvrir un m?dia" + +#: modules/gui/qt4/components/controller.hpp:108 +msgid "Previous media in the playlist" +msgstr "?l?ment pr?c?dent dans la liste de lecture" + +#: modules/gui/qt4/components/controller.hpp:109 +msgid "Next media in the playlist" +msgstr "?l?ment suivant dans la liste de lecture" + +#: modules/gui/qt4/components/controller.hpp:110 +msgid "Toggle the video in fullscreen" +msgstr "Basculer la vid?o en plein ?cran" + +#: modules/gui/qt4/components/controller.hpp:110 +msgid "Toggle the video out fullscreen" +msgstr "Basculer la vid?o en plein ?cran" + +#: modules/gui/qt4/components/controller.hpp:111 +msgid "Show extended settings" +msgstr "Afficher les options ?tendues" + +#: modules/gui/qt4/components/controller.hpp:111 +msgid "Show playlist" +msgstr "Afficher la liste de lecture" + +#: modules/gui/qt4/components/controller.hpp:111 +msgid "Take a snapshot" +msgstr "Prendre une capture d??cran" + +#: modules/gui/qt4/components/controller.hpp:112 +msgid "Loop from point A to point B continuously." +msgstr "" +"Boucle entre les points A et B de fa?on continue." + +#: modules/gui/qt4/components/controller.hpp:113 +msgid "Frame by frame" +msgstr "Image par Image" + +#: modules/gui/qt4/components/controller.hpp:113 +msgid "Reverse" +msgstr "En arri?re" + +#: modules/gui/qt4/components/controller.hpp:113 +msgid "Skip backward" +msgstr "Reculer" + +#: modules/gui/qt4/components/controller.hpp:113 +msgid "Skip forward" +msgstr "Avancer" + +#: modules/gui/qt4/components/extended_panels.cpp:963 +#: modules/gui/qt4/components/extended_panels.cpp:1027 msgid "Preamp\n" msgstr "Pr?amp\n" -#: modules/gui/qt4/components/extended_panels.cpp:957 -#: modules/gui/qt4/components/extended_panels.cpp:1022 +#: modules/gui/qt4/components/extended_panels.cpp:964 +#: modules/gui/qt4/components/extended_panels.cpp:1028 msgid "dB" msgstr "dB" -#: modules/gui/qt4/components/extended_panels.cpp:1110 +#: modules/gui/qt4/components/extended_panels.cpp:1116 msgid "Enable spatializer" msgstr "Activer le spatialiseur" -#: modules/gui/qt4/components/extended_panels.cpp:1251 +#: modules/gui/qt4/components/extended_panels.cpp:1257 msgid "Audio/Video" msgstr "Audio/Vid?o" -#: modules/gui/qt4/components/extended_panels.cpp:1267 +#: modules/gui/qt4/components/extended_panels.cpp:1273 msgid "Advance of audio over video:" -msgstr "Avance de l'audio sur la vid?o" +msgstr "Avance de l'audio sur la vid?o?:" -#: modules/gui/qt4/components/extended_panels.cpp:1276 +#: modules/gui/qt4/components/extended_panels.cpp:1282 msgid "" "A positive value means that\n" "the audio is ahead of the video" @@ -16304,15 +16482,15 @@ msgstr "" "Une valeur positive veut dire\n" "que l'audio est en avance sur la vid?o" -#: modules/gui/qt4/components/extended_panels.cpp:1284 +#: modules/gui/qt4/components/extended_panels.cpp:1290 msgid "Subtitles/Video" msgstr "Sous-titres/Vid?o" -#: modules/gui/qt4/components/extended_panels.cpp:1300 +#: modules/gui/qt4/components/extended_panels.cpp:1306 msgid "Advance of subtitles over video:" -msgstr "Avance des sous-titres sur la vid?o :" +msgstr "Avance des sous-titres sur la vid?o?:" -#: modules/gui/qt4/components/extended_panels.cpp:1309 +#: modules/gui/qt4/components/extended_panels.cpp:1315 msgid "" "A positive value means that\n" "the subtitles are ahead of the video" @@ -16320,262 +16498,204 @@ msgstr "" "Une valeur positive veut dire\n" "que les sous-titres sont en avance sur la vid?o" -#: modules/gui/qt4/components/extended_panels.cpp:1328 +#: modules/gui/qt4/components/extended_panels.cpp:1334 msgid "Speed of the subtitles:" -msgstr "Vitesse des sous-titres :" +msgstr "Vitesse des sous-titres?:" -#: modules/gui/qt4/components/extended_panels.cpp:1358 +#: modules/gui/qt4/components/extended_panels.cpp:1367 msgid "Force update of this dialog's values" -msgstr "Forcez l'actualisation des valeur de la fen?tre" +msgstr "Forcer l'actualisation des valeurs de la fen?tre" -#: modules/gui/qt4/components/info_panels.cpp:349 +#: modules/gui/qt4/components/info_panels.cpp:129 +msgid "Comments" +msgstr "Commentaires" + +#: modules/gui/qt4/components/info_panels.cpp:336 msgid "Extra metadata and other information are shown in this panel.\n" msgstr "" "Les m?ta-donn?es suppl?mentaires et les autres informations sont affich?es " "ci-dessous.\n" -#: modules/gui/qt4/components/info_panels.cpp:424 +#: modules/gui/qt4/components/info_panels.cpp:417 msgid "" "Information about what your media or stream is made of.\n" "Muxer, Audio and Video Codecs, Subtitles are shown." msgstr "" -"Informations divers sur la composition de votre m?dia ou de votre flux.\n" -"Containeur, Codecs audio et vid?o, et sous-titres sont affich?s;" +"Informations diverses sur la composition de votre m?dia ou de votre flux.\n" +"Multiplexeur, codecs audio et vid?o, et sous-titres sont affich?s." -#: modules/gui/qt4/components/info_panels.cpp:498 +#: modules/gui/qt4/components/info_panels.cpp:493 msgid "Statistics about the currently playing media or stream." msgstr "Statistiques sur le m?dia courant." -#: modules/gui/qt4/components/info_panels.cpp:546 +#: modules/gui/qt4/components/info_panels.cpp:540 msgid "Sent bitrate" msgstr "D?bit d?envoi" -#: modules/gui/qt4/components/interface_widgets.cpp:59 -msgid "" -"Play\n" -"If the playlist is empty, open a media" -msgstr "" -"Lecture\n" -"Si la liste de lecture est vide, ouvrir un m?dia" - -#: modules/gui/qt4/components/interface_widgets.cpp:266 +#: modules/gui/qt4/components/interface_widgets.cpp:247 msgid "Current visualization" -msgstr "Visualisation actuelle :" - -#: modules/gui/qt4/components/interface_widgets.cpp:328 -msgid "" -"Loop from point A to point B continuously.\n" -"Click to set point A" -msgstr "" -"Boucle entre les points A et B de fa?on continue.\n" -"Cliquez pour d?finir le point A" - -#: modules/gui/qt4/components/interface_widgets.cpp:346 -msgid "Frame by frame" -msgstr "Image par Image" - -#: modules/gui/qt4/components/interface_widgets.cpp:361 -msgid "Take a snapshot" -msgstr "Prendre une capture d??cran" +msgstr "Visualisation actuelle" -#: modules/gui/qt4/components/interface_widgets.cpp:436 +#: modules/gui/qt4/components/interface_widgets.cpp:286 msgid "" -"Loop from point A to point B continuously\n" -"Click to set point A" +"Current playback speed.\n" +"Right click to adjust" msgstr "" -"Boucle entre les points A et B de fa?on continue.\n" -"Cliquez pour d?finir le point A" - -#: modules/gui/qt4/components/interface_widgets.cpp:441 -msgid "Click to set point B" -msgstr "Cliquez pour d?finir le point B" - -#: modules/gui/qt4/components/interface_widgets.cpp:446 -msgid "Stop the A to B loop" -msgstr "Arr?ter le bouclage A/B" - -#: modules/gui/qt4/components/interface_widgets.cpp:552 -msgid "Menu" -msgstr "Menu" - -#: modules/gui/qt4/components/interface_widgets.cpp:601 -msgid "Teletext on" -msgstr "T?l?texte on" - -#: modules/gui/qt4/components/interface_widgets.cpp:613 -#: modules/gui/qt4/components/interface_widgets.cpp:806 -msgid "Teletext" -msgstr "T?l?texte" - -#: modules/gui/qt4/components/interface_widgets.cpp:663 -msgid "Previous media in the playlist" -msgstr "?l?ment pr?c?dent dans la liste de lecture" - -#: modules/gui/qt4/components/interface_widgets.cpp:665 -msgid "Next media in the playlist" -msgstr "?l?ment suivant dans la liste de lecture" - -#: modules/gui/qt4/components/interface_widgets.cpp:666 -msgid "Stop playback" -msgstr "Arr?ter la lecture" - -#: modules/gui/qt4/components/interface_widgets.cpp:674 -msgid "Toggle the video in fullscreen" -msgstr "Basculer la vid?o en plein-?cran" - -#: modules/gui/qt4/components/interface_widgets.cpp:682 -msgid "Show playlist" -msgstr "Afficher la liste de lecture" - -#: modules/gui/qt4/components/interface_widgets.cpp:688 -msgid "Show extended settings" -msgstr "Afficher les options ?tendues" - -#: modules/gui/qt4/components/interface_widgets.cpp:812 -msgid "Transparent" -msgstr "Transparent" - -#: modules/gui/qt4/components/interface_widgets.cpp:877 -msgid "Unmute" -msgstr "Enlever le mode muet" - -#: modules/gui/qt4/components/interface_widgets.cpp:917 -msgid "Pause the playback" -msgstr "Pauser la lecture" +"Vitesse de lecture actuelle.\n" +"Faites un clic droit pour ajuster" -#: modules/gui/qt4/components/interface_widgets.cpp:1386 +#: modules/gui/qt4/components/interface_widgets.cpp:355 msgid "Revert to normal play speed" msgstr "Retourner ? la vitesse de lecture normale" -#: modules/gui/qt4/components/open_panels.cpp:48 +#: modules/gui/qt4/components/interface_widgets.cpp:426 +msgid "Download cover art" +msgstr "T?l?charger la jaquette" + +#: modules/gui/qt4/components/interface_widgets.cpp:463 +msgid "Toggle between elapsed and remaining time" +msgstr "Basculer entre le temps ?coul? et le temps restant" + +#: modules/gui/qt4/components/open_panels.cpp:50 msgid "Select the device or the VIDEO_TS directory" msgstr "Ouvrir un p?riph?rique ou un dossier VIDEO_TS" -#: modules/gui/qt4/components/open_panels.cpp:88 +#: modules/gui/qt4/components/open_panels.cpp:92 msgid "Select one or multiple files" msgstr "S?lectionnez un ou plusieurs fichiers" #: modules/gui/qt4/components/open_panels.cpp:107 msgid "File names:" -msgstr "Noms de fichier :" +msgstr "Noms de fichier?:" #: modules/gui/qt4/components/open_panels.cpp:109 msgid "Filter:" -msgstr "Filtre:" +msgstr "Filtre?:" -#: modules/gui/qt4/components/open_panels.cpp:155 -#: modules/gui/qt4/dialogs_provider.cpp:622 +#: modules/gui/qt4/components/open_panels.cpp:168 msgid "Open subtitles file" msgstr "Ouvrir un fichier de sous-titres" -#: modules/gui/qt4/components/open_panels.cpp:267 +#: modules/gui/qt4/components/open_panels.cpp:272 msgid "Eject the disc" msgstr "?jecter le disque" -#: modules/gui/qt4/components/open_panels.cpp:627 -#: modules/gui/qt4/components/open_panels.cpp:883 +#: modules/gui/qt4/components/open_panels.cpp:680 +#: modules/gui/qt4/components/open_panels.cpp:940 msgid "DVB Type:" -msgstr "Type de DVB :" +msgstr "Type de DVB?:" -#: modules/gui/qt4/components/open_panels.cpp:651 -#: modules/gui/qt4/components/open_panels.cpp:913 +#: modules/gui/qt4/components/open_panels.cpp:706 +#: modules/gui/qt4/components/open_panels.cpp:970 msgid "Transponder symbol rate" msgstr "D?bit de symboles du transpondeur" -#: modules/gui/qt4/components/open_panels.cpp:773 +#: modules/gui/qt4/components/open_panels.cpp:830 msgid "Channels:" -msgstr "Canaux :" +msgstr "Canaux?:" -#: modules/gui/qt4/components/open_panels.cpp:786 +#: modules/gui/qt4/components/open_panels.cpp:841 msgid "Selected ports:" msgstr "Ports s?lectionn?s?:" -#: modules/gui/qt4/components/open_panels.cpp:789 +#: modules/gui/qt4/components/open_panels.cpp:844 msgid ".*" msgstr ".*" -#: modules/gui/qt4/components/open_panels.cpp:794 +#: modules/gui/qt4/components/open_panels.cpp:851 msgid "Input caching:" -msgstr "Taille du cache de l?entr?e: " +msgstr "Taille du cache de l?entr?e?:" -#: modules/gui/qt4/components/open_panels.cpp:804 +#: modules/gui/qt4/components/open_panels.cpp:861 msgid "Use VLC pace" msgstr "Mettre VLC au pas" -#: modules/gui/qt4/components/open_panels.cpp:808 +#: modules/gui/qt4/components/open_panels.cpp:865 msgid "Auto connnection" msgstr "Connexion automatique" -#: modules/gui/qt4/components/open_panels.cpp:832 +#: modules/gui/qt4/components/open_panels.cpp:889 msgid "Radio device name" msgstr "Nom du p?riph?rique radio" -#: modules/gui/qt4/components/open_panels.cpp:1118 +#: modules/gui/qt4/components/open_panels.cpp:1191 msgid "Advanced Options" msgstr "Options avanc?es" -#: modules/gui/qt4/components/playlist/playlist.cpp:74 +#: modules/gui/qt4/components/playlist/playlist.cpp:68 msgid "Double click to get media information" msgstr "Double-cliquez pour avoir les informations sur le m?dia" -#: modules/gui/qt4/components/playlist/standardpanel.cpp:145 +#: modules/gui/qt4/components/playlist/sorting.h:57 +msgid "URI" +msgstr "URI" + +#: modules/gui/qt4/components/playlist/standardpanel.cpp:157 msgid "Show the current item" msgstr "Montrer l'?l?ment actuel" -#: modules/gui/qt4/components/preferences_widgets.cpp:305 +#: modules/gui/qt4/components/preferences_widgets.cpp:309 msgid "Select File" msgstr "S?lectionner le fichier" -#: modules/gui/qt4/components/preferences_widgets.cpp:334 +#: modules/gui/qt4/components/preferences_widgets.cpp:341 msgid "Select Directory" -msgstr "S?lectionnez un r?pertoire" +msgstr "S?lectionnez un dossier" -#: modules/gui/qt4/components/preferences_widgets.cpp:1119 +#: modules/gui/qt4/components/preferences_widgets.cpp:1139 msgid "Select an action to change the associated hotkey" msgstr "S?lectionnez une action pour changer la touche associ?e" -#: modules/gui/qt4/components/preferences_widgets.cpp:1134 +#: modules/gui/qt4/components/preferences_widgets.cpp:1154 msgid "Set" msgstr "R?gler" -#: modules/gui/qt4/components/preferences_widgets.cpp:1248 +#: modules/gui/qt4/components/preferences_widgets.cpp:1268 msgid "Unset" msgstr "Effacer" -#: modules/gui/qt4/components/preferences_widgets.cpp:1286 +#: modules/gui/qt4/components/preferences_widgets.cpp:1306 msgid "Hotkey for " msgstr "Raccourci pour " -#: modules/gui/qt4/components/preferences_widgets.cpp:1289 +#: modules/gui/qt4/components/preferences_widgets.cpp:1309 msgid "Press the new keys for " msgstr "Appuyez sur la nouvelle combinaison pour " -#: modules/gui/qt4/components/preferences_widgets.cpp:1314 +#: modules/gui/qt4/components/preferences_widgets.cpp:1334 msgid "Warning: the key is already assigned to \"" -msgstr "Attention: la combinaison est d?j? assign?e ? \"" +msgstr "Attention?: la combinaison est d?j? assign?e ? ??" -#: modules/gui/qt4/components/preferences_widgets.cpp:1334 -#: modules/gui/qt4/components/preferences_widgets.cpp:1342 +#: modules/gui/qt4/components/preferences_widgets.cpp:1354 +#: modules/gui/qt4/components/preferences_widgets.cpp:1362 msgid "Key: " -msgstr "Touche:" +msgstr "Touche?:" -#: modules/gui/qt4/components/simple_preferences.cpp:80 +#: modules/gui/qt4/components/simple_preferences.cpp:81 msgid "Subtitles && OSD" msgstr "Sous-titres && OSD" -#: modules/gui/qt4/components/simple_preferences.cpp:82 +#: modules/gui/qt4/components/simple_preferences.cpp:83 msgid "Input && Codecs" msgstr "Lecture && Codecs" -#: modules/gui/qt4/components/simple_preferences.cpp:222 +#: modules/gui/qt4/components/simple_preferences.cpp:183 +msgid "Video Settings" +msgstr "Param?tres vid?o" + +#: modules/gui/qt4/components/simple_preferences.cpp:218 +msgid "Audio Settings" +msgstr "Param?tres audio" + +#: modules/gui/qt4/components/simple_preferences.cpp:227 msgid "Device:" -msgstr "P?riph?rique :" +msgstr "P?riph?rique?:" -#: modules/gui/qt4/components/simple_preferences.cpp:354 +#: modules/gui/qt4/components/simple_preferences.cpp:359 msgid "Input & Codecs Settings" msgstr "R?glages de l?entr?e et des codecs" -#: modules/gui/qt4/components/simple_preferences.cpp:359 +#: modules/gui/qt4/components/simple_preferences.cpp:364 msgid "" "If this property is blank, different values\n" "for DVD, VCD, and CDDA are set.\n" @@ -16585,43 +16705,43 @@ msgstr "" "Si cette propri?t? est vide, des valeurs diff?rentes\n" "pour DVD, VCD et CD-Audio sont d?j? d?finies.\n" "Vous pouvez en d?finir une unique ou les configurer\n" -"dans les pr?f?rences avanc?es" +"dans les pr?f?rences avanc?es." -#: modules/gui/qt4/components/simple_preferences.cpp:541 +#: modules/gui/qt4/components/simple_preferences.cpp:553 msgid "Configure Hotkeys" msgstr "Configurer les raccourcis claviers" -#: modules/gui/qt4/components/simple_preferences.cpp:756 -#: modules/gui/qt4/dialogs_provider.hpp:55 +#: modules/gui/qt4/components/simple_preferences.cpp:753 +#: modules/gui/qt4/dialogs_provider.hpp:49 msgid "Audio Files" -msgstr "Fichiers Audio" +msgstr "Fichiers audio" -#: modules/gui/qt4/components/simple_preferences.cpp:757 -#: modules/gui/qt4/dialogs_provider.hpp:50 +#: modules/gui/qt4/components/simple_preferences.cpp:754 +#: modules/gui/qt4/dialogs_provider.hpp:44 msgid "Video Files" -msgstr "Fichiers Vid?o" +msgstr "Fichiers vid?o" -#: modules/gui/qt4/components/simple_preferences.cpp:758 -#: modules/gui/qt4/dialogs_provider.hpp:60 +#: modules/gui/qt4/components/simple_preferences.cpp:755 +#: modules/gui/qt4/dialogs_provider.hpp:54 msgid "Playlist Files" msgstr "Fichiers de liste de lecture" -#: modules/gui/qt4/components/simple_preferences.cpp:805 +#: modules/gui/qt4/components/simple_preferences.cpp:803 msgid "&Apply" msgstr "&Appliquer" -#: modules/gui/qt4/components/simple_preferences.cpp:806 -#: modules/gui/qt4/dialogs/gototime.cpp:52 -#: modules/gui/qt4/dialogs/help.cpp:211 modules/gui/qt4/dialogs/open.cpp:105 +#: modules/gui/qt4/components/simple_preferences.cpp:804 +#: modules/gui/qt4/dialogs/gototime.cpp:49 +#: modules/gui/qt4/dialogs/help.cpp:208 modules/gui/qt4/dialogs/open.cpp:113 #: modules/gui/qt4/dialogs/podcast_configuration.cpp:39 -#: modules/gui/qt4/dialogs/preferences.cpp:87 -#: modules/gui/qt4/dialogs/sout.cpp:193 +#: modules/gui/qt4/dialogs/preferences.cpp:84 +#: modules/gui/qt4/dialogs/sout.cpp:143 msgid "&Cancel" msgstr "&Annuler" #: modules/gui/qt4/dialogs/bookmarks.cpp:40 msgid "Edit Bookmarks" -msgstr "Editer les signets" +msgstr "?diter les signets" #: modules/gui/qt4/dialogs/bookmarks.cpp:44 msgid "Create" @@ -16632,7 +16752,6 @@ msgid "Create a new bookmark" msgstr "Cr?er un nouveau signet" #: modules/gui/qt4/dialogs/bookmarks.cpp:47 -#: modules/gui/qt4/dialogs/podcast_configuration.cpp:37 msgid "Delete the selected item" msgstr "Effacer l'?l?ment s?lectionn?" @@ -16642,15 +16761,16 @@ msgstr "Effacer tous les signets" #: modules/gui/qt4/dialogs/bookmarks.cpp:54 #: modules/gui/qt4/dialogs/errors.cpp:50 -#: modules/gui/qt4/dialogs/extended.cpp:87 modules/gui/qt4/dialogs/help.cpp:65 -#: modules/gui/qt4/dialogs/help.cpp:97 -#: modules/gui/qt4/dialogs/interaction.cpp:211 -#: modules/gui/qt4/dialogs/mediainfo.cpp:76 -#: modules/gui/qt4/dialogs/messages.cpp:82 +#: modules/gui/qt4/dialogs/extended.cpp:86 modules/gui/qt4/dialogs/help.cpp:62 +#: modules/gui/qt4/dialogs/help.cpp:94 +#: modules/gui/qt4/dialogs/interaction.cpp:219 +#: modules/gui/qt4/dialogs/mediainfo.cpp:72 +#: modules/gui/qt4/dialogs/messages.cpp:109 +#: modules/gui/qt4/dialogs/plugins.cpp:83 #: modules/gui/qt4/dialogs/podcast_configuration.cpp:38 -#: modules/gui/qt4/dialogs/vlm.cpp:139 +#: modules/gui/qt4/dialogs/vlm.cpp:138 msgid "&Close" -msgstr "Fermer" +msgstr "&Fermer" #: modules/gui/qt4/dialogs/bookmarks.cpp:67 msgid "Bytes" @@ -16661,60 +16781,55 @@ msgid "Errors" msgstr "Erreurs" #: modules/gui/qt4/dialogs/errors.cpp:51 -#: modules/gui/qt4/dialogs/messages.cpp:84 -#: modules/gui/qt4/dialogs/messages.cpp:130 +#: modules/gui/qt4/dialogs/messages.cpp:170 modules/gui/qt4/menus.cpp:1353 msgid "&Clear" -msgstr "Effacer" +msgstr "Effa&cer" #: modules/gui/qt4/dialogs/errors.cpp:58 msgid "Hide future errors" msgstr "Cacher les erreurs suivantes" -#: modules/gui/qt4/dialogs/extended.cpp:43 +#: modules/gui/qt4/dialogs/extended.cpp:42 msgid "Adjustments and Effects" msgstr "Ajustements et effets" -#: modules/gui/qt4/dialogs/extended.cpp:57 +#: modules/gui/qt4/dialogs/extended.cpp:56 msgid "Graphic Equalizer" msgstr "?galiseur graphique" -#: modules/gui/qt4/dialogs/extended.cpp:60 -msgid "Spatializer" -msgstr "Spatialiseur" - -#: modules/gui/qt4/dialogs/extended.cpp:63 +#: modules/gui/qt4/dialogs/extended.cpp:62 msgid "Audio Effects" msgstr "Effets audio" -#: modules/gui/qt4/dialogs/extended.cpp:74 +#: modules/gui/qt4/dialogs/extended.cpp:73 msgid "Video Effects" msgstr "Effets vid?o" -#: modules/gui/qt4/dialogs/extended.cpp:77 +#: modules/gui/qt4/dialogs/extended.cpp:76 msgid "Synchronization" msgstr "Synchronisation" -#: modules/gui/qt4/dialogs/extended.cpp:82 +#: modules/gui/qt4/dialogs/extended.cpp:81 msgid "v4l2 controls" msgstr "Contr?les v4l2" -#: modules/gui/qt4/dialogs/gototime.cpp:46 +#: modules/gui/qt4/dialogs/gototime.cpp:43 msgid "Go to Time" msgstr "Aller au Temps" -#: modules/gui/qt4/dialogs/gototime.cpp:51 +#: modules/gui/qt4/dialogs/gototime.cpp:48 msgid "&Go" msgstr "&Aller" -#: modules/gui/qt4/dialogs/gototime.cpp:62 +#: modules/gui/qt4/dialogs/gototime.cpp:59 msgid "Go to time" -msgstr "Aller ?" +msgstr "Aller au temps" -#: modules/gui/qt4/dialogs/help.cpp:102 +#: modules/gui/qt4/dialogs/help.cpp:99 msgid "VLC media player " -msgstr "Lecteur multim?dia VLC" +msgstr "Lecteur multim?dia VLC " -#: modules/gui/qt4/dialogs/help.cpp:117 +#: modules/gui/qt4/dialogs/help.cpp:114 msgid "" "VLC media player is a free media player, encoder and streamer that can read " "from files, CDs, DVDs, network streams, capture cards and even more!\n" @@ -16722,26 +16837,30 @@ msgid "" "platform.\n" "\n" msgstr "" -"VLC media player est un lecteur, un encodeur et un streameur multim?dia " -"libre et gratuit, qui peut lire des fichiers, des disques, des flux r?seaux, " -"des cartes d'acquistion et encore plus!\n" +"Le lecteur multim?dia VLC est un lecteur, un encodeur et un diffuseur " +"multim?dia libre et gratuit, qui peut lire des fichiers, des disques, des " +"flux r?seaux, des cartes d'acquisition et encore plus?!\n" "VLC utilise ses propres codecs et fonctionne sur presque toutes les " "plateformes.\n" "\n" -#: modules/gui/qt4/dialogs/help.cpp:122 +#: modules/gui/qt4/dialogs/help.cpp:119 msgid "" "This version of VLC was compiled by:\n" " " msgstr "" -"Cette version de VLC a ?t? compil?e par:\n" +"Cette version de VLC a ?t? compil?e par?:\n" " " -#: modules/gui/qt4/dialogs/help.cpp:126 modules/gui/wince/interface.cpp:508 +#: modules/gui/qt4/dialogs/help.cpp:122 modules/gui/wince/interface.cpp:510 +msgid "Compiler: " +msgstr "Compilateur?: " + +#: modules/gui/qt4/dialogs/help.cpp:123 modules/gui/wince/interface.cpp:511 msgid "Based on Git commit: " -msgstr "Bas? sur le commit Git:" +msgstr "Bas? sur le commit Git?:" -#: modules/gui/qt4/dialogs/help.cpp:127 +#: modules/gui/qt4/dialogs/help.cpp:124 msgid "" "You are using the Qt4 Interface.\n" "\n" @@ -16749,347 +16868,389 @@ msgstr "" "Vous utilisez l'Interface Qt4.\n" "\n" -#: modules/gui/qt4/dialogs/help.cpp:128 +#: modules/gui/qt4/dialogs/help.cpp:125 msgid "Copyright (C) " msgstr "Copyright ?" -#: modules/gui/qt4/dialogs/help.cpp:129 +#: modules/gui/qt4/dialogs/help.cpp:126 msgid " by the VideoLAN Team.\n" -msgstr "par l'?quipe VideoLAN.\n" +msgstr "" +" par l'?quipe VideoLAN.\n" +"Traductions ? 2008 ?ric Lassauge.\n" -#: modules/gui/qt4/dialogs/help.cpp:150 +#: modules/gui/qt4/dialogs/help.cpp:147 msgid "" "We would like to thank the whole VLC community, the testers, our users and " "the following people (and the missing ones...) for their collaboration to " "create the best free software." msgstr "" "Nous voudrions remercier toute la communaut? de VLC, les testeurs, nos " -"utilisateurs ainsi que les personnes suivantes (et celles oubli?es...) pour " +"utilisateurs ainsi que les personnes suivantes (et celles oubli?es?) pour " "leur aide ? la cr?ation de VLC." -#: modules/gui/qt4/dialogs/help.cpp:168 +#: modules/gui/qt4/dialogs/help.cpp:165 msgid "Authors" msgstr "Auteurs" -#: modules/gui/qt4/dialogs/help.cpp:169 +#: modules/gui/qt4/dialogs/help.cpp:166 msgid "Thanks" msgstr "Remerciements" -#: modules/gui/qt4/dialogs/help.cpp:207 +#: modules/gui/qt4/dialogs/help.cpp:204 msgid "VLC media player updates" msgstr "Mises-?-jour de VLC media player" -#: modules/gui/qt4/dialogs/help.cpp:212 +#: modules/gui/qt4/dialogs/help.cpp:209 msgid "&Recheck version" msgstr "&Rev?rifier la version" -#: modules/gui/qt4/dialogs/help.cpp:219 +#: modules/gui/qt4/dialogs/help.cpp:216 msgid "Checking for an update..." msgstr "Recherche d'une mise ? jour?" -#: modules/gui/qt4/dialogs/help.cpp:223 +#: modules/gui/qt4/dialogs/help.cpp:220 msgid "" "\n" "Do you want to download it?\n" msgstr "" "\n" -"Voulez-vous la t?l?charger?\n" +"Voulez-vous la t?l?charger??\n" -#: modules/gui/qt4/dialogs/help.cpp:271 +#: modules/gui/qt4/dialogs/help.cpp:268 msgid "Launching an update request..." msgstr "Lancement d'une requ?te de mises ? jour?" -#: modules/gui/qt4/dialogs/help.cpp:277 +#: modules/gui/qt4/dialogs/help.cpp:274 msgid "Select a directory..." -msgstr "S?lectionnez un r?pertoire?" +msgstr "S?lectionnez un dossier?" -#: modules/gui/qt4/dialogs/help.cpp:315 +#: modules/gui/qt4/dialogs/help.cpp:307 msgid "&Yes" msgstr "&Oui" -#: modules/gui/qt4/dialogs/help.cpp:316 +#: modules/gui/qt4/dialogs/help.cpp:308 msgid "A new version of VLC(" msgstr "Une nouvelle version de VLC media player (" -#: modules/gui/qt4/dialogs/help.cpp:322 +#: modules/gui/qt4/dialogs/help.cpp:314 msgid ") is available." msgstr ") est disponible" -#: modules/gui/qt4/dialogs/help.cpp:335 +#: modules/gui/qt4/dialogs/help.cpp:327 msgid "You have the latest version of VLC media player." msgstr "Vous avez la derni?re version de VLC media player." -#: modules/gui/qt4/dialogs/help.cpp:339 +#: modules/gui/qt4/dialogs/help.cpp:331 msgid "An error occurred while checking for updates..." -msgstr "Une erreur est survenue lors de la recherche de mises ? jour..." +msgstr "Une erreur est survenue lors de la recherche de mises ? jour?" -#: modules/gui/qt4/dialogs/interaction.cpp:95 +#: modules/gui/qt4/dialogs/interaction.cpp:105 msgid "Login" msgstr "Utilisateur" -#: modules/gui/qt4/dialogs/mediainfo.cpp:60 +#: modules/gui/qt4/dialogs/mediainfo.cpp:56 msgid "&General" msgstr "&G?n?ral" -#: modules/gui/qt4/dialogs/mediainfo.cpp:62 +#: modules/gui/qt4/dialogs/mediainfo.cpp:58 msgid "&Extra Metadata" msgstr "M?ta-donn?es suppl?mentair&es" -#: modules/gui/qt4/dialogs/mediainfo.cpp:64 +#: modules/gui/qt4/dialogs/mediainfo.cpp:60 msgid "&Codec Details" msgstr "D?tails des &codecs" -#: modules/gui/qt4/dialogs/mediainfo.cpp:68 +#: modules/gui/qt4/dialogs/mediainfo.cpp:64 msgid "&Statistics" msgstr "&Statistiques" -#: modules/gui/qt4/dialogs/mediainfo.cpp:74 +#: modules/gui/qt4/dialogs/mediainfo.cpp:70 msgid "&Save Metadata" msgstr "?crire les m?ta-donn?e&s" -#: modules/gui/qt4/dialogs/mediainfo.cpp:80 +#: modules/gui/qt4/dialogs/mediainfo.cpp:75 msgid "Location:" -msgstr "Emplacement :" +msgstr "Emplacement?:" -#: modules/gui/qt4/dialogs/messages.cpp:78 +#: modules/gui/qt4/dialogs/messages.cpp:105 msgid "Modules tree" msgstr "Arbres des modules" -#: modules/gui/qt4/dialogs/messages.cpp:85 +#: modules/gui/qt4/dialogs/messages.cpp:111 +msgid "C&lear" +msgstr "Ef&facer" + +#: modules/gui/qt4/dialogs/messages.cpp:112 msgid "&Save as..." msgstr "Enregistrer &sous?" -#: modules/gui/qt4/dialogs/messages.cpp:86 -msgid "Save all the displayed logs to a file" -msgstr "Sauvez tous les logs affich?s vers un fichier" +#: modules/gui/qt4/dialogs/messages.cpp:113 +msgid "Saves all the displayed logs to a file" +msgstr "Enregistrez tous les logs affich?s dans un fichier" -#: modules/gui/qt4/dialogs/messages.cpp:94 +#: modules/gui/qt4/dialogs/messages.cpp:121 msgid "Verbosity Level" msgstr "Niveau de verbosit?" -#: modules/gui/qt4/dialogs/messages.cpp:121 +#: modules/gui/qt4/dialogs/messages.cpp:161 msgid "&Update" -msgstr "Mise ? Jo&ur" +msgstr "Mise ? jo&ur" -#: modules/gui/qt4/dialogs/messages.cpp:249 -msgid "Select a name for the logs file" -msgstr "Choisissez un nom pour le fichier de logs" +#: modules/gui/qt4/dialogs/messages.cpp:247 +msgid "Save log file as..." +msgstr "Enregistrer les logs sous?" -#: modules/gui/qt4/dialogs/messages.cpp:251 +#: modules/gui/qt4/dialogs/messages.cpp:249 msgid "Texts / Logs (*.log *.txt);; All (*.*) " -msgstr "Texts / Logs (*.log *.txt);; All (*.*) " +msgstr "Textes / Logs (*.log *.txt);; Tous (*.*) " -#: modules/gui/qt4/dialogs/messages.cpp:258 +#: modules/gui/qt4/dialogs/messages.cpp:256 msgid "" -"Cannot write file %1:\n" +"Cannot write to file %1:\n" "%2." msgstr "" -"Impossible d??crire le fichier %1:\n" +"Impossible d??crire le fichier %1?:\n" "%2." -#: modules/gui/qt4/dialogs/open.cpp:89 +#: modules/gui/qt4/dialogs/open.cpp:88 +msgid "Open a Media" +msgstr "Ouvrir un m?dia" + +#: modules/gui/qt4/dialogs/open.cpp:97 msgid "&File" msgstr "&Fichier" -#: modules/gui/qt4/dialogs/open.cpp:90 +#: modules/gui/qt4/dialogs/open.cpp:98 msgid "&Disc" msgstr "&Disque" -#: modules/gui/qt4/dialogs/open.cpp:91 +#: modules/gui/qt4/dialogs/open.cpp:99 msgid "&Network" msgstr "&R?seau" -#: modules/gui/qt4/dialogs/open.cpp:93 +#: modules/gui/qt4/dialogs/open.cpp:101 msgid "Capture &Device" -msgstr "P?riph?rique de capture" +msgstr "P?riph?rique de cap&ture" -#: modules/gui/qt4/dialogs/open.cpp:108 +#: modules/gui/qt4/dialogs/open.cpp:116 msgid "&Select" msgstr "&S?lectionner" -#: modules/gui/qt4/dialogs/open.cpp:112 modules/gui/qt4/dialogs/open.cpp:197 +#: modules/gui/qt4/dialogs/open.cpp:120 modules/gui/qt4/dialogs/open.cpp:218 msgid "&Enqueue" msgstr "Mettre ? la &file" -#: modules/gui/qt4/dialogs/open.cpp:114 modules/gui/qt4/dialogs/open.cpp:201 +#: modules/gui/qt4/dialogs/open.cpp:122 modules/gui/qt4/dialogs/open.cpp:222 msgid "&Play" msgstr "&Lire" -#: modules/gui/qt4/dialogs/open.cpp:116 modules/gui/qt4/dialogs/open.cpp:191 -#: modules/gui/qt4/dialogs/sout.cpp:192 +#: modules/gui/qt4/dialogs/open.cpp:124 modules/gui/qt4/dialogs/open.cpp:212 +#: modules/gui/qt4/dialogs/sout.cpp:142 msgid "&Stream" msgstr "&Diffuser" -#: modules/gui/qt4/dialogs/open.cpp:118 +#: modules/gui/qt4/dialogs/open.cpp:126 msgid "&Convert" msgstr "&Convertir" -#: modules/gui/qt4/dialogs/open.cpp:194 +#: modules/gui/qt4/dialogs/open.cpp:215 msgid "&Convert / Save" msgstr "&Convertir / Sauvegarder" -#: modules/gui/qt4/dialogs/preferences.cpp:66 +#: modules/gui/qt4/dialogs/plugins.cpp:45 +msgid "Plugins and extensions" +msgstr "Extensions et greffons" + +#: modules/gui/qt4/dialogs/plugins.cpp:60 +msgid "Capability" +msgstr "" + +#: modules/gui/qt4/dialogs/plugins.cpp:60 +msgid "Score" +msgstr "Score" + +#: modules/gui/qt4/dialogs/plugins.cpp:73 +msgid "&Search:" +msgstr "Che&rcher?:" + +#: modules/gui/qt4/dialogs/podcast_configuration.cpp:37 +msgid "Deletes the selected item" +msgstr "Effacer l'?l?ment s?lectionn?" + +#: modules/gui/qt4/dialogs/preferences.cpp:63 msgid "Show settings" msgstr "Param?tres" -#: modules/gui/qt4/dialogs/preferences.cpp:70 +#: modules/gui/qt4/dialogs/preferences.cpp:67 msgid "Simple" msgstr "Simple" -#: modules/gui/qt4/dialogs/preferences.cpp:71 -msgid "Switch to simple preferences" +#: modules/gui/qt4/dialogs/preferences.cpp:68 +msgid "Switch to simple preferences view" msgstr "Montrer les pr?f?rences simplifi?es" -#: modules/gui/qt4/dialogs/preferences.cpp:74 -msgid "Switch to complete preferences" -msgstr "Passez au pr?f?rences compl?tes" +#: modules/gui/qt4/dialogs/preferences.cpp:71 +msgid "Switch to full preferences view" +msgstr "Montrer les pr?f?rences ?tendues" -#: modules/gui/qt4/dialogs/preferences.cpp:86 +#: modules/gui/qt4/dialogs/preferences.cpp:83 msgid "&Save" msgstr "&Enregistrer" -#: modules/gui/qt4/dialogs/preferences.cpp:88 +#: modules/gui/qt4/dialogs/preferences.cpp:85 msgid "&Reset Preferences" msgstr "&R?tablir les pr?f?rences" -#: modules/gui/qt4/dialogs/preferences.cpp:353 -msgid "" -"This will reset your VLC media player preferences.\n" -"Are you sure you want to continue?" -msgstr "" -"Attention, ceci va r?initialiser le fichier de configuration de VLC.\n" -"D?sirez-vous vraiment continuer ?" - -#: modules/gui/qt4/dialogs_provider.cpp:415 -msgid "Open Directory" -msgstr "Ouvrir un r?pertoire" - -#: modules/gui/qt4/dialogs_provider.cpp:451 -msgid "Open playlist file" -msgstr "Ouvre la liste de lecture" - -#: modules/gui/qt4/dialogs_provider.cpp:462 -msgid "Choose a filename to save playlist" -msgstr "Vous devez choisir un fichier de destination pour la liste de lecture" - -#: modules/gui/qt4/dialogs_provider.cpp:464 -msgid "XSPF playlist (*.xspf);; " -msgstr "Liste de lecture XSPF (*.xspf);; " - -#: modules/gui/qt4/dialogs_provider.cpp:465 -msgid "M3U playlist (*.m3u);; Any (*.*) " -msgstr "Liste de lecture M3U (*.m3u);; Tout (*.*) " - -#: modules/gui/qt4/dialogs_provider.hpp:45 -msgid "Media Files" -msgstr "Fichiers multim?dias" +#: modules/gui/qt4/dialogs/preferences.cpp:354 +msgid "Are you sure you want to reset your VLC media player preferences?" +msgstr "Voulez-vous vraiment effacer vos pr?f?rences VLC??" -#: modules/gui/qt4/dialogs_provider.hpp:65 -msgid "Subtitles Files" -msgstr "Fichiers de sous-titres" - -#: modules/gui/qt4/dialogs_provider.hpp:70 -msgid "All Files" -msgstr "Tous les fichiers" - -#: modules/gui/qt4/dialogs/sout.cpp:102 modules/gui/qt4/ui/sout.ui:14 +#: modules/gui/qt4/dialogs/sout.cpp:94 modules/gui/qt4/ui/sout.ui:14 msgid "Stream Output" msgstr "Flux de sortie" -#: modules/gui/qt4/dialogs/sout.cpp:155 +#: modules/gui/qt4/dialogs/sout.cpp:119 msgid "" "Stream output string.\n" "This is automatically generated when you change the above settings,\n" -"but you can update it manually." +"but you can change it manually." msgstr "" +"Chaine pour le flux de sortie.\n" +"Ceci est g?n?r? automatiquement quand vous changez les param?tres ci-" +"dessus,\n" +"mais est modifiable manuellement." -#: modules/gui/qt4/dialogs/sout.cpp:210 -msgid "Save file" -msgstr "Enregistrer le fichier" +#: modules/gui/qt4/dialogs/sout.cpp:160 +msgid "Save file..." +msgstr "Enregistrer le fichier?" -#: modules/gui/qt4/dialogs/sout.cpp:211 +#: modules/gui/qt4/dialogs/sout.cpp:161 msgid "Containers (*.ps *.ts *.mpg *.ogg *.asf *.mp4 *.mov *.wav *.raw *.flv)" msgstr "Conteneurs (*.ps *.ts *.mpg *.ogg *.asf *.mp4 *.mov *.wav *.raw *.flv)" -#: modules/gui/qt4/dialogs/sout.cpp:329 +#: modules/gui/qt4/dialogs/sout.cpp:263 msgid "Audio Port:" -msgstr "Port audio :" +msgstr "Port audio?:" + +#: modules/gui/qt4/dialogs/vlm.cpp:77 +msgid "Video On Demand ( VOD )" +msgstr "Vid?o ? la demande (VOD)" -#: modules/gui/qt4/dialogs/vlm.cpp:83 +#: modules/gui/qt4/dialogs/vlm.cpp:82 msgid "Hours / Minutes / Seconds:" -msgstr "Heures / Minutes / Seconds:" +msgstr "Heures / Minutes / Secondes?:" -#: modules/gui/qt4/dialogs/vlm.cpp:85 +#: modules/gui/qt4/dialogs/vlm.cpp:84 msgid "Day / Month / Year:" -msgstr "Jour / Mois / Ann?e:" +msgstr "Jour / Mois / Ann?e?:" -#: modules/gui/qt4/dialogs/vlm.cpp:87 +#: modules/gui/qt4/dialogs/vlm.cpp:86 msgid "Repeat:" -msgstr "R?p?ter:" +msgstr "R?p?ter?:" -#: modules/gui/qt4/dialogs/vlm.cpp:89 +#: modules/gui/qt4/dialogs/vlm.cpp:88 msgid "Repeat delay:" -msgstr "D?lai de r?p?tition:" +msgstr "D?lai de r?p?tition?:" -#: modules/gui/qt4/dialogs/vlm.cpp:114 +#: modules/gui/qt4/dialogs/vlm.cpp:113 msgid " days" msgstr " jours" -#: modules/gui/qt4/dialogs/vlm.cpp:133 -msgid "Import" -msgstr "Importer" +#: modules/gui/qt4/dialogs/vlm.cpp:132 +msgid "I&mport" +msgstr "I&mporter" -#: modules/gui/qt4/dialogs/vlm.cpp:136 -msgid "Export" -msgstr "Exporter" +#: modules/gui/qt4/dialogs/vlm.cpp:135 +msgid "E&xport" +msgstr "E&xporter" -#: modules/gui/qt4/dialogs/vlm.cpp:266 -msgid "Choose a filename to save the VLM configuration..." -msgstr "Choisissez un nom de fichier pour sauvegarder la configuration VLM..." +#: modules/gui/qt4/dialogs/vlm.cpp:268 +msgid "Save VLM configuration as..." +msgstr "Enregistrer la configuration de VLM sous?" -#: modules/gui/qt4/dialogs/vlm.cpp:268 modules/gui/qt4/dialogs/vlm.cpp:338 -msgid "VLM conf (*.vlm) ;; All (*.*)" -msgstr "VLM conf (*.vlm) ;; All (*.*)" +#: modules/gui/qt4/dialogs/vlm.cpp:270 modules/gui/qt4/dialogs/vlm.cpp:340 +msgid "VLM conf (*.vlm);;All (*)" +msgstr "conf VLM (*.vlm);;Tous (*.*)" -#: modules/gui/qt4/dialogs/vlm.cpp:336 -msgid "Open a VLM Configuration File" -msgstr "Ouvrir un fichier de configuration VLM" +#: modules/gui/qt4/dialogs/vlm.cpp:338 +msgid "Open VLM configuration..." +msgstr "Ouvrir une configuration de VLM?" -#: modules/gui/qt4/main_interface.cpp:293 -msgid "Toggle between elapsed and remaining time" -msgstr "Basculer entre le temps ?coul? et le temps restant" +#: modules/gui/qt4/dialogs/vlm.cpp:531 +msgid "Broadcast: " +msgstr "Diffusion?:" -#: modules/gui/qt4/main_interface.cpp:299 -msgid "" -"Current playback speed.\n" -"Right click to adjust" -msgstr "" -"Vitesse de lecture actuelle.\n" -"Faites un clic droit pour ajuster" +#: modules/gui/qt4/dialogs/vlm.cpp:599 +msgid "Schedule: " +msgstr "Planification?:" + +#: modules/gui/qt4/dialogs/vlm.cpp:621 +msgid "VOD: " +msgstr "VOD?:" + +#: modules/gui/qt4/dialogs_provider.cpp:459 +msgid "Open Directory" +msgstr "Ouvrir un dossier" + +#: modules/gui/qt4/dialogs_provider.cpp:498 +msgid "Open playlist..." +msgstr "Ouvre la liste de lecture?" + +#: modules/gui/qt4/dialogs_provider.cpp:509 +msgid "Save playlist as..." +msgstr "Enregistrer la liste de lecture sous?" + +#: modules/gui/qt4/dialogs_provider.cpp:511 +msgid "XSPF playlist (*.xspf);; " +msgstr "Liste de lecture XSPF (*.xspf);; " -#: modules/gui/qt4/main_interface.cpp:469 +#: modules/gui/qt4/dialogs_provider.cpp:512 +msgid "M3U playlist (*.m3u);; " +msgstr "Liste de lecture M3U (*.m3u);; " + +#: modules/gui/qt4/dialogs_provider.cpp:513 +msgid "HTML playlist (*.html)" +msgstr "Liste de lecture HTML (*.html)" + +#: modules/gui/qt4/dialogs_provider.cpp:609 +msgid "Open subtitles..." +msgstr "Ouvrir sous-titres?" + +#: modules/gui/qt4/dialogs_provider.hpp:39 +msgid "Media Files" +msgstr "Fichiers multim?dias" + +#: modules/gui/qt4/dialogs_provider.hpp:59 +msgid "Subtitles Files" +msgstr "Fichiers de sous-titres" + +#: modules/gui/qt4/dialogs_provider.hpp:64 +msgid "All Files" +msgstr "Tous les fichiers" + +#: modules/gui/qt4/main_interface.cpp:471 msgid "Privacy and Network Policies" msgstr "Politiques sur la vie priv?e et le r?seau" -#: modules/gui/qt4/main_interface.cpp:473 +#: modules/gui/qt4/main_interface.cpp:475 msgid "Privacy and Network Warning" msgstr "Avertissement sur la vie priv?e et le r?seau" -#: modules/gui/qt4/main_interface.cpp:476 +#: modules/gui/qt4/main_interface.cpp:478 msgid "" "

The VideoLAN Team doesn't like when an application goes online " "without authorization.

\n" -"

VLC media player can request limited information on the Internet, " -"especially to get CD covers or to know if updates are available.

\n" +"

VLC media player can retreive limited information from the " +"Internet in order to get CD covers or to check for available updates.

\n" "

VLC media player DOES NOT send or collect ANY " "information, even anonymously, about your usage.

\n" -"

Therefore please check the following options, the default being almost no " -"access on the web.

\n" +"

Therefore please select from the following options, the default being " +"almost no access to the web.

\n" msgstr "" "

L??quipe VideoLAN n?aime pas quand un programme se connecte ? " "Internet sans autorisation pr?alable.

\n" "

Le Lecteur multim?dia VLC peut rechercher quelques informations " -"sur Internet, en particulier pour obtenir des couvertures de CD et des " +"sur Internet, en particulier pour obtenir des jaquettes de CD et des " "informations sur les chansons, ou encore pour savoir si des mises ? jour " "sont disponibles.

\n" "

Le Lecteur multim?dia VLC N?ENVOIE PAS ni ne collecte " @@ -17097,249 +17258,267 @@ msgstr "" "

Veuillez donc v?rifier les options suivantes, le d?faut ?tant de ne pas " "acc?der ? Internet.

\n" -#: modules/gui/qt4/main_interface.cpp:1001 +#: modules/gui/qt4/main_interface.cpp:960 msgid "Control menu for the player" msgstr "Menu de contr?le pour le lecteur" -#: modules/gui/qt4/main_interface.cpp:1050 +#: modules/gui/qt4/main_interface.cpp:1013 msgid "Paused" msgstr "En Pause" -#: modules/gui/qt4/menus.cpp:266 +#: modules/gui/qt4/menus.cpp:292 msgid "&Media" msgstr "&M?dia" -#: modules/gui/qt4/menus.cpp:268 modules/gui/qt4/menus.cpp:813 +#: modules/gui/qt4/menus.cpp:294 modules/gui/qt4/menus.cpp:868 msgid "&Audio" msgstr "&Audio" -#: modules/gui/qt4/menus.cpp:269 modules/gui/qt4/menus.cpp:819 +#: modules/gui/qt4/menus.cpp:295 modules/gui/qt4/menus.cpp:875 msgid "&Video" msgstr "&Vid?o" -#: modules/gui/qt4/menus.cpp:270 +#: modules/gui/qt4/menus.cpp:296 msgid "P&layback" msgstr "&Lecture" -#: modules/gui/qt4/menus.cpp:272 -msgid "&Playlist" -msgstr "&Liste de lecture" - -#: modules/gui/qt4/menus.cpp:274 +#: modules/gui/qt4/menus.cpp:298 msgid "&Tools" msgstr "&Outils" -#: modules/gui/qt4/menus.cpp:276 +#: modules/gui/qt4/menus.cpp:300 +msgid "V&iew" +msgstr "Vu&e" + +#: modules/gui/qt4/menus.cpp:302 msgid "&Help" msgstr "A&ide" -#: modules/gui/qt4/menus.cpp:289 modules/gui/qt4/menus.cpp:677 +#: modules/gui/qt4/menus.cpp:315 modules/gui/qt4/menus.cpp:734 msgid "&Open File..." msgstr "&Ouvrir un fichier?" -#: modules/gui/qt4/menus.cpp:293 modules/gui/qt4/menus.cpp:681 +#: modules/gui/qt4/menus.cpp:321 modules/gui/qt4/menus.cpp:738 msgid "Open &Disc..." msgstr "Ouvrir un &disque?" -#: modules/gui/qt4/menus.cpp:295 modules/gui/qt4/menus.cpp:683 +#: modules/gui/qt4/menus.cpp:323 modules/gui/qt4/menus.cpp:740 msgid "Open &Network..." msgstr "Ouvrir un fl&ux r?seau?" -#: modules/gui/qt4/menus.cpp:297 modules/gui/qt4/menus.cpp:685 +#: modules/gui/qt4/menus.cpp:325 modules/gui/qt4/menus.cpp:742 msgid "Open &Capture Device..." msgstr "Ouvrir un p?riph?rique de &capture?" -#: modules/gui/qt4/menus.cpp:302 +#: modules/gui/qt4/menus.cpp:330 +msgid "Paste &MRL" +msgstr "Coller &MRL" + +#: modules/gui/qt4/menus.cpp:340 +msgid "Recently &Played" +msgstr "Jou?s &r?cemment" + +#: modules/gui/qt4/menus.cpp:345 msgid "Conve&rt / Save..." -msgstr "Conve&rtir / Sauvegarder..." +msgstr "&Convertir / Enregistrer?" -#: modules/gui/qt4/menus.cpp:304 +#: modules/gui/qt4/menus.cpp:347 msgid "&Streaming..." msgstr "Diffu&sion?" -#: modules/gui/qt4/menus.cpp:309 modules/gui/qt4/menus.cpp:927 +#: modules/gui/qt4/menus.cpp:352 modules/gui/qt4/menus.cpp:981 msgid "&Quit" msgstr "&Quitter" -#: modules/gui/qt4/menus.cpp:320 -msgid "Show P&laylist" -msgstr "Montrer la &liste de lecture" +#: modules/gui/qt4/menus.cpp:384 +msgid "Plu&gins and extensions" +msgstr "Gre&ffons et extensions" -#: modules/gui/qt4/menus.cpp:349 -msgid "Play&list..." -msgstr "&Liste de lecture?" +#: modules/gui/qt4/menus.cpp:388 +msgid "&Preferences" +msgstr "&Pr?f?rences" -#: modules/gui/qt4/menus.cpp:350 +#: modules/gui/qt4/menus.cpp:409 +msgid "Play&list" +msgstr "Liste de &lecture" + +#: modules/gui/qt4/menus.cpp:410 msgid "Ctrl+L" msgstr "Ctrl+L" -#: modules/gui/qt4/menus.cpp:369 -#, fuzzy -msgid "Mi&nimal View..." -msgstr "Interface mi&nimale..." +#: modules/gui/qt4/menus.cpp:433 +msgid "Mi&nimal View" +msgstr "Interface mi&nimale" -#: modules/gui/qt4/menus.cpp:370 +#: modules/gui/qt4/menus.cpp:434 msgid "Ctrl+H" msgstr "Ctrl+H" -#: modules/gui/qt4/menus.cpp:378 +#: modules/gui/qt4/menus.cpp:442 msgid "&Fullscreen Interface" -msgstr "Interface Plein ?cran" +msgstr "Inter&face plein ?cran" -#: modules/gui/qt4/menus.cpp:384 +#: modules/gui/qt4/menus.cpp:449 msgid "&Advanced Controls" msgstr "Contr?les &avanc?s" -#: modules/gui/qt4/menus.cpp:391 +#: modules/gui/qt4/menus.cpp:456 msgid "Visualizations selector" msgstr "S?lecteur de visualisations" -#: modules/gui/qt4/menus.cpp:415 -msgid "&Preferences..." -msgstr "&Pr?f?rences?" +#: modules/gui/qt4/menus.cpp:464 +msgid "Customi&ze Interface..." +msgstr "Person&naliser l'interface ?" + +#: modules/gui/qt4/menus.cpp:499 +msgid "&Visualizations" +msgstr "&Visualisations" -#: modules/gui/qt4/menus.cpp:448 +#: modules/gui/qt4/menus.cpp:501 msgid "Audio &Track" msgstr "&Piste audio" -#: modules/gui/qt4/menus.cpp:449 +#: modules/gui/qt4/menus.cpp:502 msgid "Audio &Device" msgstr "P?&riph?rique audio" -#: modules/gui/qt4/menus.cpp:450 +#: modules/gui/qt4/menus.cpp:503 msgid "Audio &Channels" msgstr "&Canaux audio" -#: modules/gui/qt4/menus.cpp:452 -msgid "&Visualizations" -msgstr "&Visualisations" +#: modules/gui/qt4/menus.cpp:507 +msgid "Mute Audio" +msgstr "Silence" + +#: modules/gui/qt4/menus.cpp:510 +msgid "Increase Volume" +msgstr "Augmenter le volume" + +#: modules/gui/qt4/menus.cpp:513 +msgid "Decrease Volume" +msgstr "Diminuer le volume" -#: modules/gui/qt4/menus.cpp:487 +#: modules/gui/qt4/menus.cpp:549 msgid "Video &Track" msgstr "&Piste vid?o" -#: modules/gui/qt4/menus.cpp:490 +#: modules/gui/qt4/menus.cpp:552 msgid "&Subtitles Track" msgstr "Piste de &sous-titres" -#: modules/gui/qt4/menus.cpp:493 -msgid "Load File..." -msgstr "Charger un fichier..." - -#: modules/gui/qt4/menus.cpp:497 +#: modules/gui/qt4/menus.cpp:559 msgid "&Fullscreen" msgstr "P&lein ?cran" -#: modules/gui/qt4/menus.cpp:498 +#: modules/gui/qt4/menus.cpp:560 msgid "&Zoom" msgstr "&Zoom" -#: modules/gui/qt4/menus.cpp:499 +#: modules/gui/qt4/menus.cpp:561 msgid "&Deinterlace" msgstr "&D?sentrelacer" -#: modules/gui/qt4/menus.cpp:500 +#: modules/gui/qt4/menus.cpp:562 msgid "&Aspect Ratio" msgstr "Propor&tions" -#: modules/gui/qt4/menus.cpp:501 +#: modules/gui/qt4/menus.cpp:563 msgid "&Crop" msgstr "&Rogner" -#: modules/gui/qt4/menus.cpp:502 +#: modules/gui/qt4/menus.cpp:564 msgid "Always &On Top" msgstr "Touj&ours au-dessus" -#: modules/gui/qt4/menus.cpp:504 +#: modules/gui/qt4/menus.cpp:566 msgid "DirectX Wallpaper" msgstr "Papier peint DirectX" -#: modules/gui/qt4/menus.cpp:506 +#: modules/gui/qt4/menus.cpp:568 msgid "Sna&pshot" msgstr "&Capture d??cran" -#: modules/gui/qt4/menus.cpp:544 -msgid "&Bookmarks" -msgstr "&Signets" - -#: modules/gui/qt4/menus.cpp:545 +#: modules/gui/qt4/menus.cpp:604 msgid "T&itle" msgstr "T&itre" -#: modules/gui/qt4/menus.cpp:546 +#: modules/gui/qt4/menus.cpp:605 msgid "&Chapter" msgstr "&Chapitre" -#: modules/gui/qt4/menus.cpp:547 +#: modules/gui/qt4/menus.cpp:606 msgid "&Program" msgstr "&Programme" -#: modules/gui/qt4/menus.cpp:548 +#: modules/gui/qt4/menus.cpp:607 msgid "&Navigation" msgstr "&Navigation" -#: modules/gui/qt4/menus.cpp:592 +#: modules/gui/qt4/menus.cpp:655 msgid "Configure podcasts..." -msgstr "Configurer les podcasts..." +msgstr "Configurer les podcasts?" -#: modules/gui/qt4/menus.cpp:610 +#: modules/gui/qt4/menus.cpp:673 msgid "&Help..." msgstr "&Aide?" -#: modules/gui/qt4/menus.cpp:613 +#: modules/gui/qt4/menus.cpp:676 msgid "Check for &Updates..." msgstr "Chercher des &mises ? jour?" -#: modules/gui/qt4/menus.cpp:672 -msgid "Tools" -msgstr "Outils" +#: modules/gui/qt4/menus.cpp:733 +msgid "Open Media" +msgstr "Ouvrir un m?dia" -#: modules/gui/qt4/menus.cpp:799 +#: modules/gui/qt4/menus.cpp:852 msgid "Leave Fullscreen" msgstr "Quitter le plein ?cran" -#: modules/gui/qt4/menus.cpp:825 +#: modules/gui/qt4/menus.cpp:882 msgid "&Playback" msgstr "&Lecture" -#: modules/gui/qt4/menus.cpp:839 +#: modules/gui/qt4/menus.cpp:896 msgid "Show Playlist" -msgstr "Montrer la liste de lecture" +msgstr "&Montrer la liste de lecture" -#: modules/gui/qt4/menus.cpp:846 -#, fuzzy -msgid "Minimal View..." -msgstr "Interface minimale..." +#: modules/gui/qt4/menus.cpp:898 +msgid "Minimal View" +msgstr "Interface minimale" -#: modules/gui/qt4/menus.cpp:851 -msgid "Toggle Fullscreen Interface" -msgstr "Interface Plein ?cran" +#: modules/gui/qt4/menus.cpp:903 +msgid "Fullscreen Interface" +msgstr "Interface plein ?cran" -#: modules/gui/qt4/menus.cpp:911 +#: modules/gui/qt4/menus.cpp:965 msgid "Hide VLC media player in taskbar" msgstr "Cacher le lecteur multim?dia VLC dans la barre des t?ches" -#: modules/gui/qt4/menus.cpp:917 +#: modules/gui/qt4/menus.cpp:971 msgid "Show VLC media player" msgstr "Afficher le lecteur multim?dia VLC" -#: modules/gui/qt4/menus.cpp:925 +#: modules/gui/qt4/menus.cpp:979 msgid "&Open Media" msgstr "&Ouvrir un m?dia" +#: modules/gui/qt4/menus.cpp:1338 +msgid " - Empty - " +msgstr "" + #: modules/gui/qt4/menus.hpp:36 msgid "Open &Folder..." -msgstr "Ouvrir un &r?pertoire?" +msgstr "Ouvrir un &dossier?" #: modules/gui/qt4/menus.hpp:38 msgid "Open D&irectory..." -msgstr "Ouvrir un r?p&ertoire?" +msgstr "Ouvrir un doss&ier?" -#: modules/gui/qt4/qt4.cpp:66 +#: modules/gui/qt4/qt4.cpp:73 msgid "Show advanced preferences over simple ones" msgstr "Afficher les pr?f?rences avanc?es plut?t que les simplifi?es" -#: modules/gui/qt4/qt4.cpp:67 +#: modules/gui/qt4/qt4.cpp:74 msgid "" "Show advanced preferences and not simple preferences when opening the " "preferences dialog." @@ -17347,11 +17526,12 @@ msgstr "" "Afficher les pr?f?rences avanc?es ? la place des simples ? l?ouverture du " "dialogue de pr?f?rences." -#: modules/gui/qt4/qt4.cpp:71 modules/gui/skins2/src/skin_main.cpp:437 +#: modules/gui/qt4/qt4.cpp:78 modules/gui/qt4/ui/sprefs_interface.ui:216 +#: modules/gui/skins2/src/skin_main.cpp:470 msgid "Systray icon" msgstr "Ic?ne dans la barre syst?me" -#: modules/gui/qt4/qt4.cpp:72 +#: modules/gui/qt4/qt4.cpp:79 msgid "" "Show an icon in the systray allowing you to control VLC media player for " "basic actions." @@ -17359,35 +17539,47 @@ msgstr "" "Afficher une ic?ne de notification dans la barre des t?ches pour contr?ler " "les actions de base de VLC" -#: modules/gui/qt4/qt4.cpp:76 +#: modules/gui/qt4/qt4.cpp:83 msgid "Start VLC with only a systray icon" -msgstr "D?marrer VLC seulement avec une icone de notification" +msgstr "D?marrer VLC avec uniquement une ic?ne de notification" -#: modules/gui/qt4/qt4.cpp:77 +#: modules/gui/qt4/qt4.cpp:84 msgid "VLC will start with just an icon in your taskbar" msgstr "" -"Quand vous lancez VLC avec cette option, VLC d?marrera seulement avec une " +"Quand vous lancez VLC avec cette option, VLC d?marrera uniquement avec une " "ic?ne dans votre barre des t?ches" -#: modules/gui/qt4/qt4.cpp:80 +#: modules/gui/qt4/qt4.cpp:87 +msgid "Resize interface to the native video size" +msgstr "Redimensionnment interactif" + +#: modules/gui/qt4/qt4.cpp:88 +msgid "" +"You have two choices:\n" +" - The interface will resize to the native video size\n" +" - The video will fit to the interface size\n" +" By default, interface resize to the native video size." +msgstr "" + +#: modules/gui/qt4/qt4.cpp:93 msgid "Show playing item name in window title" msgstr "Montre le titre dans le titre de la fen?tre" -#: modules/gui/qt4/qt4.cpp:81 +#: modules/gui/qt4/qt4.cpp:94 msgid "Show the name of the song or video in the controler window title." msgstr "" "Montre le titre de la chanson ou de la vid?o dans le titre de la fen?tre de " "contr?le." -#: modules/gui/qt4/qt4.cpp:84 +#: modules/gui/qt4/qt4.cpp:97 msgid "Path to use in openfile dialog" msgstr "Chemin ? utiliser dans le dialogue d?ouverture de fichiers" -#: modules/gui/qt4/qt4.cpp:86 +#: modules/gui/qt4/qt4.cpp:99 msgid "Show notification popup on track change" msgstr "Notifie lorsqu'on change de chanson" -#: modules/gui/qt4/qt4.cpp:88 +#: modules/gui/qt4/qt4.cpp:101 msgid "" "Show a notification popup with the artist and track name when the current " "playlist item changes, when VLC is minimized or hidden." @@ -17395,36 +17587,36 @@ msgstr "" "Montre une popup avec le nom de l'artiste et de la chanson lorsque le m?dia " "change, lorsque VLC est minimis? ou cach?." -#: modules/gui/qt4/qt4.cpp:91 +#: modules/gui/qt4/qt4.cpp:104 msgid "Advanced options" msgstr "Options avanc?es" -#: modules/gui/qt4/qt4.cpp:92 +#: modules/gui/qt4/qt4.cpp:105 msgid "Show all the advanced options in the dialogs." msgstr "Afficher toutes les options avanc?es dans les dialogues." -#: modules/gui/qt4/qt4.cpp:95 +#: modules/gui/qt4/qt4.cpp:108 msgid "Windows opacity between 0.1 and 1." msgstr "Facteur d?opacit? entre 0,1 et 1." -#: modules/gui/qt4/qt4.cpp:96 +#: modules/gui/qt4/qt4.cpp:109 msgid "" "Sets the windows opacity between 0.1 and 1 for main interface, playlist and " "extended panel. This option only works with Windows and X11 with composite " "extensions." msgstr "" -"D?finie l'opacit? de la fen?tre principale. Cette option ne fonctionne que " +"D?finis l'opacit? de la fen?tre principale. Cette option ne fonctionne que " "sous Windows et X11 avec le composite activ?." -#: modules/gui/qt4/qt4.cpp:101 +#: modules/gui/qt4/qt4.cpp:114 msgid "Show unimportant error and warnings dialogs" msgstr "Afficher les erreurs non importantes et les avertissements" -#: modules/gui/qt4/qt4.cpp:103 +#: modules/gui/qt4/qt4.cpp:116 msgid "Activate the updates availability notification" msgstr "Activer la notification en cas de mises ? jour disponible" -#: modules/gui/qt4/qt4.cpp:104 +#: modules/gui/qt4/qt4.cpp:117 msgid "" "Activate the automatic notification of new versions of the software. It runs " "once every two weeks." @@ -17432,15 +17624,15 @@ msgstr "" "Activez les notification automatiques de nouvelles version. Il se lance " "toutes les deux semaines." -#: modules/gui/qt4/qt4.cpp:107 +#: modules/gui/qt4/qt4.cpp:120 msgid "Number of days between two update checks" msgstr "Nombre de jours entre deux v?rifications de mises ? jour" -#: modules/gui/qt4/qt4.cpp:109 +#: modules/gui/qt4/qt4.cpp:122 msgid "Allow the volume to be set to 400%" msgstr "Permettre au volume de montez jusque 400%" -#: modules/gui/qt4/qt4.cpp:110 +#: modules/gui/qt4/qt4.cpp:123 msgid "" "Allow the volume to have range from 0% to 400%, instead of 0% to 200%. This " "option can distort the audio, since it uses software amplification." @@ -17448,64 +17640,77 @@ msgstr "" "Permettre au volume d'aller de 0% ? 400%, au lieu de 0% ? 200%. Cette option " "peut d?former la sortie audio." -#: modules/gui/qt4/qt4.cpp:115 +#: modules/gui/qt4/qt4.cpp:128 msgid "Automatically save the volume on exit" msgstr "Sauvez automatiquement le volume en sortie." -#: modules/gui/qt4/qt4.cpp:117 -msgid "Use non native buttons and volume slider" -msgstr "Utilise des boutons et sliders non-natifs" - -#: modules/gui/qt4/qt4.cpp:119 +#: modules/gui/qt4/qt4.cpp:130 msgid "Ask for network policy at start" msgstr "Demande sur les politiques r?seaux au d?marrage" -#: modules/gui/qt4/qt4.cpp:121 +#: modules/gui/qt4/qt4.cpp:132 +msgid "Save the recently played items in the menu" +msgstr "" +"Enregistre les ?l?ments r?cemment jou?s dans le menu" + +#: modules/gui/qt4/qt4.cpp:134 +msgid "List of words separated by | to filter" +msgstr "Liste de mots ? filtrer separ?s par ??|??" + +#: modules/gui/qt4/qt4.cpp:135 +msgid "Regular expression used to filter the recent items played in the player" +msgstr "Expression r?guli?re pour filtrer les ?l?ments r?cemment jou?s" + +#: modules/gui/qt4/qt4.cpp:138 msgid "Define the colors of the volume slider " -msgstr "D?finir les couleurs du volume" +msgstr "D?finir les couleurs du curseur de volume" -#: modules/gui/qt4/qt4.cpp:122 +#: modules/gui/qt4/qt4.cpp:139 msgid "" "Define the colors of the volume slider\n" "By specifying the 12 numbers separated by a ';'\n" "Default is '255;255;255;20;226;20;255;176;15;235;30;20'\n" "An alternative can be '30;30;50;40;40;100;50;50;160;150;150;255' " msgstr "" +"D?finir la couleur du curseur de volume\n" +" en sp?cifiant 12 nombres s?par?s par ';'\n" +" Par d?fault on a '255;255;255;20;226;20;255;176;15;235;30;20'\n" +" Une alternative peut ?tre '30;30;50;40;40;100;50;50;160;150;150;255' " -#: modules/gui/qt4/qt4.cpp:127 +#: modules/gui/qt4/qt4.cpp:144 msgid "Selection of the starting mode and look " msgstr "S?lection du mode et du look de d?marrage" -#: modules/gui/qt4/qt4.cpp:128 +#: modules/gui/qt4/qt4.cpp:145 msgid "" "Start VLC with:\n" " - normal mode\n" " - a zone always present to show information as lyrics, album arts...\n" " - minimal mode with limited controls" msgstr "" -"Lance VLC avec:\n" +"Lance VLC avec?:\n" " - un mode classique\n" " - une zone toujours pr?sente qui montre des informations tels que les " -"albums arts...\n" +"jaquettes des albums?\n" " - un mode tr?s minimal avec des contr?les limit?s" -#: modules/gui/qt4/qt4.cpp:134 +#: modules/gui/qt4/qt4.cpp:151 msgid "Classic look" msgstr "Look classique" -#: modules/gui/qt4/qt4.cpp:135 +#: modules/gui/qt4/qt4.cpp:152 msgid "Complete look with information area" -msgstr "Look complets avec une zone d'information" +msgstr "Look complet avec une zone d'information" -#: modules/gui/qt4/qt4.cpp:136 +#: modules/gui/qt4/qt4.cpp:153 msgid "Minimal look with no menus" msgstr "Look minimal sans menus" -#: modules/gui/qt4/qt4.cpp:138 +#: modules/gui/qt4/qt4.cpp:155 msgid "Show a controller in fullscreen mode" msgstr "Affiche un contr?leur en mode plein ?cran" -#: modules/gui/qt4/qt4.cpp:147 +#: modules/gui/qt4/qt4.cpp:164 msgid "Qt interface" msgstr "Interface Qt" @@ -17513,6 +17718,51 @@ msgstr "Interface Qt" msgid "Preset" msgstr "Pr?r?glages" +#: modules/gui/qt4/ui/open.ui:38 +msgid "Show extended options" +msgstr "Afficher les options ?tendues" + +#: modules/gui/qt4/ui/open.ui:41 +msgid "Show &more options" +msgstr "Afficher plus &d?options" + +#: modules/gui/qt4/ui/open.ui:61 +msgid "Change the caching for the media" +msgstr "Changer le cache pour le m?dia" + +#: modules/gui/qt4/ui/open.ui:90 +msgid "Start Time" +msgstr "Temps de d?but" + +#: modules/gui/qt4/ui/open.ui:100 +msgid "Change the start time for the media" +msgstr "Changer le temps de d?but pour le m?dia" + +#: modules/gui/qt4/ui/open.ui:132 +msgid "Play another media synchronously (extra audio file, ...)" +msgstr "" +"Joue un autre m?dia de fa?on synchrone (fichier audio suppl?mentaire, ?)" + +#: modules/gui/qt4/ui/open.ui:139 +msgid "Extra media" +msgstr "M?dia suppl?mentaire" + +#: modules/gui/qt4/ui/open.ui:152 +msgid "Select the file" +msgstr "S?lectionner un fichier" + +#: modules/gui/qt4/ui/open.ui:182 +msgid "Complete MRL for VLC internal" +msgstr "MRL compl?te pour le c?ur de VLC." + +#: modules/gui/qt4/ui/open.ui:189 +msgid "Edit Options" +msgstr "Options" + +#: modules/gui/qt4/ui/open.ui:230 +msgid "Select play mode" +msgstr "S?lectionnez le mode de lecture" + #: modules/gui/qt4/ui/open_capture.ui:17 msgid "Capture mode" msgstr "Mode de capture" @@ -17525,7 +17775,7 @@ msgstr "Type du p?riph?rique de capture" msgid "Card Selection" msgstr "S?lection de la carte" -#: modules/gui/qt4/ui/open_capture.ui:51 modules/gui/qt4/ui/open_net.ui:101 +#: modules/gui/qt4/ui/open_capture.ui:51 msgid "Options" msgstr "Options" @@ -17537,23 +17787,23 @@ msgstr "Acc?der aux options avanc?es pour le param?trage du p?riph?rique" msgid "Advanced options..." msgstr "Options avanc?es?" -#: modules/gui/qt4/ui/open_disk.ui:20 -msgid "Disc Selection" +#: modules/gui/qt4/ui/open_disk.ui:32 +msgid "Disc Type Selection" msgstr "S?lection du disque" -#: modules/gui/qt4/ui/open_disk.ui:91 +#: modules/gui/qt4/ui/open_disk.ui:117 msgid "Disable DVD Menus (for compatibility)" -msgstr "D?sactiver les menus DVD (pour compatible)" +msgstr "D?sactiver les menus DVD (pour la compatibilit?)" -#: modules/gui/qt4/ui/open_disk.ui:108 +#: modules/gui/qt4/ui/open_disk.ui:136 msgid "Disc device" msgstr "P?riph?rique du disque" -#: modules/gui/qt4/ui/open_disk.ui:165 +#: modules/gui/qt4/ui/open_disk.ui:187 msgid "Starting Position" msgstr "Position de d?part" -#: modules/gui/qt4/ui/open_disk.ui:232 +#: modules/gui/qt4/ui/open_disk.ui:264 msgid "Audio and Subtitles" msgstr "Audio et sous-titres" @@ -17561,21 +17811,25 @@ msgstr "Audio et sous-titres" msgid "Choose one or more media file to open" msgstr "S?lectionnez un ou plusieurs fichiers ? ouvrir" -#: modules/gui/qt4/ui/open_file.ui:49 +#: modules/gui/qt4/ui/open_file.ui:29 +msgid "Select one or more files" +msgstr "S?lectionnez un ou plusieurs fichiers ? ouvrir" + +#: modules/gui/qt4/ui/open_file.ui:72 modules/gui/qt4/ui/open_file.ui:207 +msgid "Select the subtitles file" +msgstr "S?lectionner un fichier de sous-titres" + +#: modules/gui/qt4/ui/open_file.ui:85 msgid "Add a subtitles file" msgstr "Ajouter un fichier de sous-titres" -#: modules/gui/qt4/ui/open_file.ui:52 +#: modules/gui/qt4/ui/open_file.ui:88 msgid "Use a sub&titles file" msgstr "Utiliser un fichier de sous-&titres" -#: modules/gui/qt4/ui/open_file.ui:126 -msgid "Alignment:" -msgstr "Alignement:" - #: modules/gui/qt4/ui/open_file.ui:178 -msgid "Select the subtitles file" -msgstr "S?lectionner un fichier de sous-titres" +msgid "Alignment:" +msgstr "Alignement?:" #: modules/gui/qt4/ui/open_net.ui:20 msgid "Network Protocol" @@ -17597,53 +17851,8 @@ msgstr "S?lectionnez le port utilis?" msgid "Enter the URL of the network stream here, with or without the protocol." msgstr "Entrez l'URL du flux r?seau ici, avec ou sans le protocole." -#: modules/gui/qt4/ui/open.ui:38 -msgid "Show extended options" -msgstr "Afficher les options ?tendues" - -#: modules/gui/qt4/ui/open.ui:41 -msgid "Show &more options" -msgstr "Afficher plus &d?options" - -#: modules/gui/qt4/ui/open.ui:61 -msgid "Change the caching for the media" -msgstr "Changer le cache pour le m?dia" - -#: modules/gui/qt4/ui/open.ui:90 -msgid "Start Time" -msgstr "Temps de d?but" - -#: modules/gui/qt4/ui/open.ui:100 -msgid "Change the start time for the media" -msgstr "Changer le temps de d?but pour le m?dia" - -#: modules/gui/qt4/ui/open.ui:132 -msgid "Play another media synchronously (extra audio file, ...)" -msgstr "" -"Joue un autre m?dia de fa?on synchrone (fichier audio suppl?mentaire, ...)" - -#: modules/gui/qt4/ui/open.ui:139 -msgid "Extra media" -msgstr "M?dia suppl?mentaire" - -#: modules/gui/qt4/ui/open.ui:152 -msgid "Select the file" -msgstr "S?lectionner un fichier" - -#: modules/gui/qt4/ui/open.ui:165 -msgid "Customize" -msgstr "Personnaliser" - -#: modules/gui/qt4/ui/open.ui:175 -msgid "Complete MRL for VLC internal" -msgstr "MRL compl?te pour le coeur de VLC." - -#: modules/gui/qt4/ui/open.ui:216 -msgid "Select play mode" -msgstr "S?lectionnez le mode de lecture" - #: modules/gui/qt4/ui/podcast_configuration.ui:19 -#: modules/services_discovery/podcast.c:58 +#: modules/services_discovery/podcast.c:61 msgid "Podcast URLs list" msgstr "Liste des URLs de podcast" @@ -17655,58 +17864,38 @@ msgstr "Sorties" msgid "Play locally" msgstr "Jouer en local" -#: modules/gui/qt4/ui/sout.ui:338 +#: modules/gui/qt4/ui/sout.ui:273 msgid "Video Port" msgstr "Port vid?o" -#: modules/gui/qt4/ui/sout.ui:435 +#: modules/gui/qt4/ui/sout.ui:351 msgid "Mount Point" msgstr "Point de montage" -#: modules/gui/qt4/ui/sout.ui:452 +#: modules/gui/qt4/ui/sout.ui:361 msgid "Login:pass:" msgstr "Utilisateur:mot de passe" -#: modules/gui/qt4/ui/sout.ui:481 +#: modules/gui/qt4/ui/sout.ui:386 msgid "Prefer UDP over RTP" msgstr "Pr?f?rer UDP sur RTP" -#: modules/gui/qt4/ui/sout.ui:500 +#: modules/gui/qt4/ui/sout.ui:411 msgid "Using this option is not recommended in most of the cases." msgstr "" "L'utilisation de cette option n'est pas recommand?e la plupart du temps." -#: modules/gui/qt4/ui/sout.ui:522 -msgid "Profile" -msgstr "Profil" - -#: modules/gui/qt4/ui/sout.ui:550 -msgid "Encapsulation" -msgstr "Encapsulation" - -#: modules/gui/qt4/ui/sout.ui:645 -msgid "Video codec" -msgstr "Codec vid?o" - -#: modules/gui/qt4/ui/sout.ui:742 -msgid "Audio codec" -msgstr "Codec audio" - -#: modules/gui/qt4/ui/sout.ui:865 -msgid "Overlay subtitles on the video" -msgstr "Ajouter les sous-titres ? la vid?o" - -#: modules/gui/qt4/ui/sout.ui:904 +#: modules/gui/qt4/ui/sout.ui:455 msgid "Group name" msgstr "Nom du groupe" -#: modules/gui/qt4/ui/sout.ui:938 +#: modules/gui/qt4/ui/sout.ui:481 msgid "Stream all elementary streams" -msgstr "Streame tous les flux ?l?mentaires" +msgstr "Diffuser tous les flux ?l?mentaires" -#: modules/gui/qt4/ui/sout.ui:957 +#: modules/gui/qt4/ui/sout.ui:507 msgid "Generated stream output string" -msgstr "MRL de stream g?n?r?e" +msgstr "MRL de diffusion g?n?r?e" #: modules/gui/qt4/ui/sprefs_audio.ui:36 msgid "Default volume" @@ -17718,7 +17907,7 @@ msgstr "256 correspond ? 100%, 1024 ? 400%" #: modules/gui/qt4/ui/sprefs_audio.ui:106 msgid "Save volume on exit" -msgstr "Sauve le volume audio en sortie" +msgstr "Enregistrer le volume en sortie" #: modules/gui/qt4/ui/sprefs_audio.ui:142 msgid "Preferred audio language" @@ -17746,7 +17935,7 @@ msgstr "Port du serveur par d?faut" #: modules/gui/qt4/ui/sprefs_input.ui:103 msgid "Default caching level" -msgstr "Niveau de caching par d?faut" +msgstr "Niveau de cache par d?faut" #: modules/gui/qt4/ui/sprefs_input.ui:125 msgid "Post-Processing quality" @@ -17764,107 +17953,139 @@ msgstr "Utiliser les codecs syst?mes si disponibles (meilleure qualit?)" msgid "Interface Type" msgstr "Type d'interface" -#: modules/gui/qt4/ui/sprefs_interface.ui:41 +#: modules/gui/qt4/ui/sprefs_interface.ui:47 msgid "Native" msgstr "Native" -#: modules/gui/qt4/ui/sprefs_interface.ui:51 +#: modules/gui/qt4/ui/sprefs_interface.ui:79 msgid "This is VLC's default interface, with a native look and feel." msgstr "Ceci est l'interface par d?faut de VLC, avec un look natif." -#: modules/gui/qt4/ui/sprefs_interface.ui:73 +#: modules/gui/qt4/ui/sprefs_interface.ui:101 msgid "Display mode" msgstr "Mode d'affichage" -#: modules/gui/qt4/ui/sprefs_interface.ui:90 +#: modules/gui/qt4/ui/sprefs_interface.ui:118 msgid "Integrate video in interface" msgstr "Int?grer la vid?o dans l?interface" -#: modules/gui/qt4/ui/sprefs_interface.ui:104 -#: modules/gui/skins2/src/skin_main.cpp:469 +#: modules/gui/qt4/ui/sprefs_interface.ui:125 +msgid "Show a controller in fullscreen" +msgstr "Affiche un contr?leur en mode plein ?cran" + +#: modules/gui/qt4/ui/sprefs_interface.ui:132 +#: modules/gui/skins2/src/skin_main.cpp:502 msgid "Skins" -msgstr "Skins" +msgstr "Th?mes" -#: modules/gui/qt4/ui/sprefs_interface.ui:158 +#: modules/gui/qt4/ui/sprefs_interface.ui:173 msgid "Skin file" msgstr "Fichier de th?me" -#: modules/gui/qt4/ui/sprefs_interface.ui:191 -msgid "Show a controller in fullscreen" -msgstr "Affiche un contr?leur en mode plein ?cran" +#: modules/gui/qt4/ui/sprefs_interface.ui:223 +msgid "Resize interface to video size" +msgstr "Redimensionner l'interface ? la taille de la vid?o" -#: modules/gui/qt4/ui/sprefs_interface.ui:201 +#: modules/gui/qt4/ui/sprefs_interface.ui:233 msgid "Instances" -msgstr "Interfaces" +msgstr "Instances" -#: modules/gui/qt4/ui/sprefs_interface.ui:207 +#: modules/gui/qt4/ui/sprefs_interface.ui:239 msgid "Allow only one instance" msgstr "N?autoriser qu?une seule instance" -#: modules/gui/qt4/ui/sprefs_interface.ui:214 -msgid "Enqueue files in playlist when in one instance mode" -msgstr "Mettre en queue les fichiers en mode unique instance" - -#: modules/gui/qt4/ui/sprefs_interface.ui:221 +#: modules/gui/qt4/ui/sprefs_interface.ui:246 msgid "File associations:" -msgstr "Associations des fichiers :" +msgstr "Associations des fichiers?:" + +#: modules/gui/qt4/ui/sprefs_interface.ui:253 +msgid "Enqueue files when in one instance mode" +msgstr "Mettre en file les fichiers en mode instance unique" -#: modules/gui/qt4/ui/sprefs_interface.ui:234 +#: modules/gui/qt4/ui/sprefs_interface.ui:266 msgid "Association Setup" msgstr "Param?trage des associations" -#: modules/gui/qt4/ui/sprefs_interface.ui:260 +#: modules/gui/qt4/ui/sprefs_interface.ui:289 msgid "Activate update notifier" msgstr "Activer la recherche des mises ? jour" -#: modules/gui/qt4/ui/sprefs_interface.ui:120 +#: modules/gui/qt4/ui/sprefs_interface.ui:306 +msgid "Save recently played items" +msgstr "" + +#: modules/gui/qt4/ui/sprefs_interface.ui:318 +msgid "Filter" +msgstr "Filtres" + +#: modules/gui/qt4/ui/sprefs_interface.ui:334 +msgid "Separate words by | (without space)" +msgstr "" + +#: modules/gui/qt4/ui/sprefs_interface.ui:148 +# WARNING: this has to be redone everytime 'cos make update-po removes the correct string msgid "" -"This is VLC's skinnable interface. You can download skins at <a href=" +"This is VLC's skinnable interface. You can download skins at http://www.videolan.org/vlc/" +"skins.php to customize your player." msgstr "" -"Ceci est l'interface skinnable de VLC. Vous pouvez t?l?charger des skins sur " -"<a href=" +"Ceci est l'interface ? th?mes de VLC. Vous pouvez t?l?charger des th?mes " +"sur http://www.videolan." +"org/vlc/skins.php pour habiller VLC." -#: modules/gui/qt4/ui/sprefs_subtitles.ui:50 +#: modules/gui/qt4/ui/sprefs_subtitles.ui:51 msgid "Subtitles Language" msgstr "Langue des sous-titres" -#: modules/gui/qt4/ui/sprefs_subtitles.ui:56 +#: modules/gui/qt4/ui/sprefs_subtitles.ui:57 msgid "Preferred subtitles language" msgstr "Langue des sous-titres pr?f?r?e" -#: modules/gui/qt4/ui/sprefs_subtitles.ui:79 +#: modules/gui/qt4/ui/sprefs_subtitles.ui:77 msgid "Default encoding" msgstr "Encodage par d?faut" -#: modules/gui/qt4/ui/sprefs_subtitles.ui:101 -#: modules/video_output/opengl.c:174 +#: modules/gui/qt4/ui/sprefs_subtitles.ui:99 msgid "Effect" msgstr "Effet" -#: modules/gui/qt4/ui/sprefs_subtitles.ui:114 +#: modules/gui/qt4/ui/sprefs_subtitles.ui:112 msgid "Font color" msgstr "Couleur de police" -#: modules/gui/qt4/ui/sprefs_video.ui:78 +#: modules/gui/qt4/ui/sprefs_video.ui:75 msgid "Output" msgstr "Sortie" -#: modules/gui/qt4/ui/sprefs_video.ui:88 -msgid "Accelerated video output" -msgstr "Sortie vid?o acc?l?r?e" +#: modules/gui/qt4/ui/sprefs_video.ui:85 +msgid "Accelerated video output (Overlay)" +msgstr "Sortie vid?o acc?l?r?e (Overlay)" + +#: modules/gui/qt4/ui/sprefs_video.ui:105 +#: modules/video_output/msw/directx.c:131 +msgid "Use hardware YUV->RGB conversions" +msgstr "Utiliser les conversions YUV->RGB mat?rielles" -#: modules/gui/qt4/ui/sprefs_video.ui:114 +#: modules/gui/qt4/ui/sprefs_video.ui:115 msgid "DirectX" msgstr "DirectX" -#: modules/gui/qt4/ui/sprefs_video.ui:129 +#: modules/gui/qt4/ui/sprefs_video.ui:130 msgid "Display device" -msgstr "P?riph?rique d?Affichage" +msgstr "P?riph?rique d'affichage" -#: modules/gui/qt4/ui/sprefs_video.ui:139 +#: modules/gui/qt4/ui/sprefs_video.ui:140 msgid "Enable wallpaper mode" msgstr "Activer le mode papier peint " +#: modules/gui/qt4/ui/sprefs_video.ui:159 +msgid "Deinterlacing Mode" +msgstr "Mode de d?sentrelacement" + +#: modules/gui/qt4/ui/sprefs_video.ui:166 +msgid "Force Aspect Ratio" +msgstr "Forcer le format d??cran" + #: modules/gui/qt4/ui/streampanel.ui:48 msgid "Edit settings" msgstr "Modifier les param?tres" @@ -17895,7 +18116,7 @@ msgstr "P/P" #: modules/gui/qt4/ui/streampanel.ui:115 msgid "Prev" -msgstr "Pr?c?" +msgstr "Pr?c." #: modules/gui/qt4/ui/streampanel.ui:132 msgid "Add Input" @@ -17903,7 +18124,7 @@ msgstr "Ajout d'entr?e" #: modules/gui/qt4/ui/streampanel.ui:139 msgid "Edit Input" -msgstr "Edition de l'entr?e" +msgstr "?dition de l'entr?e" #: modules/gui/qt4/ui/streampanel.ui:146 msgid "Clear List" @@ -17948,11 +18169,11 @@ msgstr "Similarit?" #: modules/gui/qt4/ui/video_effects.ui:403 msgid "Synchronize top and bottom" -msgstr "Synchroniser le haut et le bas" +msgstr "Synchroniser haut et bas" #: modules/gui/qt4/ui/video_effects.ui:410 msgid "Synchronize left and right" -msgstr "Synchroniser la gauche et la droite" +msgstr "Synchroniser gauche et droite" #: modules/gui/qt4/ui/video_effects.ui:434 msgid "Geometry" @@ -17960,129 +18181,127 @@ msgstr "G?om?trie" #: modules/gui/qt4/ui/video_effects.ui:447 msgid "Puzzle game" -msgstr "Jeu puzzle" +msgstr "Puzzle/Taquin" -#: modules/gui/qt4/ui/video_effects.ui:479 -#, fuzzy +#: modules/gui/qt4/ui/video_effects.ui:485 msgid "Black slot" -msgstr "Noir" +msgstr "Emplacement vide" -#: modules/gui/qt4/ui/video_effects.ui:486 -#: modules/gui/qt4/ui/video_effects.ui:689 -#: modules/gui/qt4/ui/video_effects.ui:783 +#: modules/gui/qt4/ui/video_effects.ui:492 +#: modules/gui/qt4/ui/video_effects.ui:695 +#: modules/gui/qt4/ui/video_effects.ui:789 msgid "Columns" msgstr "Colonne" -#: modules/gui/qt4/ui/video_effects.ui:493 -#: modules/gui/qt4/ui/video_effects.ui:682 -#: modules/gui/qt4/ui/video_effects.ui:766 +#: modules/gui/qt4/ui/video_effects.ui:499 +#: modules/gui/qt4/ui/video_effects.ui:688 +#: modules/gui/qt4/ui/video_effects.ui:772 msgid "Rows" msgstr "Lignes" -#: modules/gui/qt4/ui/video_effects.ui:503 modules/video_filter/rotate.c:68 +#: modules/gui/qt4/ui/video_effects.ui:509 modules/video_filter/rotate.c:68 msgid "Rotate" msgstr "Tourner" -#: modules/gui/qt4/ui/video_effects.ui:528 +#: modules/gui/qt4/ui/video_effects.ui:534 msgid "Angle" msgstr "Angle" -#: modules/gui/qt4/ui/video_effects.ui:539 +#: modules/gui/qt4/ui/video_effects.ui:545 msgid "Image modification" msgstr "Modification de l'image" -#: modules/gui/qt4/ui/video_effects.ui:552 +#: modules/gui/qt4/ui/video_effects.ui:558 msgid "Water effect" msgstr "Effet aquatique" -#: modules/gui/qt4/ui/video_effects.ui:566 modules/meta_engine/id3genres.h:67 +#: modules/gui/qt4/ui/video_effects.ui:572 modules/meta_engine/id3genres.h:67 #: modules/video_filter/noise.c:54 msgid "Noise" msgstr "Bruit" -#: modules/gui/qt4/ui/video_effects.ui:573 +#: modules/gui/qt4/ui/video_effects.ui:579 msgid "Motion detect" msgstr "D?tection de mouvement" -#: modules/gui/qt4/ui/video_effects.ui:580 +#: modules/gui/qt4/ui/video_effects.ui:586 #: modules/video_filter/motionblur.c:60 msgid "Motion blur" msgstr "Brouillage de mouvement" -#: modules/gui/qt4/ui/video_effects.ui:592 -#, fuzzy +#: modules/gui/qt4/ui/video_effects.ui:598 msgid "Factor" -msgstr "Avance rapide" +msgstr "Facteur" -#: modules/gui/qt4/ui/video_effects.ui:650 +#: modules/gui/qt4/ui/video_effects.ui:656 msgid "Cartoon" msgstr "Cartoon" -#: modules/gui/qt4/ui/video_effects.ui:664 +#: modules/gui/qt4/ui/video_effects.ui:670 msgid "Vout/Overlay" -msgstr "Vout/Surimpression" +msgstr "Sortie Vid?o/Surimpression" -#: modules/gui/qt4/ui/video_effects.ui:670 +#: modules/gui/qt4/ui/video_effects.ui:676 msgid "Wall" -msgstr "Mur d'image" +msgstr "Mur d'images" -#: modules/gui/qt4/ui/video_effects.ui:719 +#: modules/gui/qt4/ui/video_effects.ui:725 msgid "Add text" msgstr "Ajouter un texte" -#: modules/gui/qt4/ui/video_effects.ui:754 modules/video_filter/panoramix.c:97 +#: modules/gui/qt4/ui/video_effects.ui:760 modules/video_filter/panoramix.c:97 msgid "Panoramix" msgstr "Panoramix" -#: modules/gui/qt4/ui/video_effects.ui:803 modules/video_filter/clone.c:71 +#: modules/gui/qt4/ui/video_effects.ui:809 modules/video_filter/clone.c:71 msgid "Clone" msgstr "Clone" -#: modules/gui/qt4/ui/video_effects.ui:815 modules/video_filter/clone.c:58 +#: modules/gui/qt4/ui/video_effects.ui:821 modules/video_filter/clone.c:58 msgid "Number of clones" msgstr "Nombre de clones" -#: modules/gui/qt4/ui/video_effects.ui:836 -#: modules/gui/qt4/ui/video_effects.ui:897 +#: modules/gui/qt4/ui/video_effects.ui:842 +#: modules/gui/qt4/ui/video_effects.ui:903 msgid "Logo" msgstr "Logo" -#: modules/gui/qt4/ui/video_effects.ui:842 +#: modules/gui/qt4/ui/video_effects.ui:848 msgid "Add logo" msgstr "Ajouter un logo" -#: modules/gui/qt4/ui/video_effects.ui:854 -#: modules/stream_out/mosaic_bridge.c:156 modules/video_filter/mosaic.c:89 +#: modules/gui/qt4/ui/video_effects.ui:860 +#: modules/stream_out/mosaic_bridge.c:158 modules/video_filter/mosaic.c:89 msgid "Transparency" msgstr "Transparence" -#: modules/gui/qt4/ui/video_effects.ui:910 +#: modules/gui/qt4/ui/video_effects.ui:916 msgid "Logo erase" msgstr "Effacement d?un logo" -#: modules/gui/qt4/ui/video_effects.ui:945 +#: modules/gui/qt4/ui/video_effects.ui:951 msgid "Mask" msgstr "Masque" -#: modules/gui/qt4/ui/video_effects.ui:956 +#: modules/gui/qt4/ui/video_effects.ui:962 msgid "Advanced video filter controls" msgstr "Contr?les avanc?s des filtres vid?o" -#: modules/gui/qt4/ui/video_effects.ui:965 +#: modules/gui/qt4/ui/video_effects.ui:971 msgid "Subpicture filters" msgstr "Filtres de sous-image" -#: modules/gui/qt4/ui/video_effects.ui:975 +#: modules/gui/qt4/ui/video_effects.ui:981 msgid "Video filters" msgstr "Filtres vid?o" -#: modules/gui/qt4/ui/video_effects.ui:982 +#: modules/gui/qt4/ui/video_effects.ui:988 msgid "Vout filters" msgstr "Filtres vid?o" -#: modules/gui/qt4/ui/video_effects.ui:989 +#: modules/gui/qt4/ui/video_effects.ui:995 msgid "Reset" -msgstr "Remettre ? z?ro" +msgstr "Pr?r?glages" #: modules/gui/qt4/ui/vlm.ui:22 msgid "VLM configurator" @@ -18094,11 +18313,11 @@ msgstr "Edition du gestionnaire de m?dias" #: modules/gui/qt4/ui/vlm.ui:57 msgid "Name:" -msgstr "Nom :" +msgstr "Nom?:" #: modules/gui/qt4/ui/vlm.ui:80 msgid "Input:" -msgstr "Entr?e :" +msgstr "Entr?e?:" #: modules/gui/qt4/ui/vlm.ui:93 msgid "Select Input" @@ -18106,7 +18325,7 @@ msgstr "S?lectionnez l'entr?e" #: modules/gui/qt4/ui/vlm.ui:100 msgid "Output:" -msgstr "Sortie :" +msgstr "Sortie?:" #: modules/gui/qt4/ui/vlm.ui:113 msgid "Select Output" @@ -18128,69 +18347,65 @@ msgstr "Boucle" msgid "Media Manager List" msgstr "Liste du gestionnaire de m?dia" -#: modules/gui/skins2/src/dialogs.cpp:222 +#: modules/gui/skins2/src/dialogs.cpp:218 msgid "Open a skin file" -msgstr "Ouvre un fichier de skin" +msgstr "Ouvre un fichier de th?me" -#: modules/gui/skins2/src/dialogs.cpp:223 +#: modules/gui/skins2/src/dialogs.cpp:219 msgid "Skin files (*.vlt;*.wsz)|*.vlt;*.wsz|Skin files (*.xml)|*.xml" msgstr "" -"Fichiers de skins (*.vlt;*.wsz)|*.vlt;*.wsz|Fichiers de skins (*.xml)|*.xml" +"Fichiers de th?mes (*.vlt;*.wsz)|*.vlt;*.wsz|Fichiers de th?mes (*.xml)|*.xml" -#: modules/gui/skins2/src/dialogs.cpp:230 +#: modules/gui/skins2/src/dialogs.cpp:226 msgid "Open playlist" msgstr "Ouvre la liste de lecture" -#: modules/gui/skins2/src/dialogs.cpp:231 -msgid "" -"All playlists|*.pls;*.m3u;*.asx;*.b4s;*.xspf|M3U files|*.m3u|XSPF playlist|*." -"xspf" -msgstr "" -"Toutes listes|*.pls;*.m3u;*.asx;*.b4s;*.xspf|Fichiers M3U|*.m3u|Fichier XSPF|" -"*.xspf" +#: modules/gui/skins2/src/dialogs.cpp:227 +msgid "Playlist Files|" +msgstr "Fichiers de liste de lecture|" -#: modules/gui/skins2/src/dialogs.cpp:240 +#: modules/gui/skins2/src/dialogs.cpp:235 msgid "Save playlist" msgstr "Enregistrer la liste de lecture" -#: modules/gui/skins2/src/dialogs.cpp:240 -msgid "XSPF playlist|*.xspf|M3U file|*.m3u" -msgstr "Liste de lecture XSPF|*.xspf|M3U|*.m3u" +#: modules/gui/skins2/src/dialogs.cpp:235 +msgid "XSPF playlist|*.xspf|M3U file|*.m3u|HTML playlist|*.html" +msgstr "Liste de lecture XSPF|*.xspf|Fichier M3U|*.m3u|Liste de lecture HTML|*.html" -#: modules/gui/skins2/src/skin_main.cpp:432 +#: modules/gui/skins2/src/skin_main.cpp:465 msgid "Skin to use" -msgstr "Skin" +msgstr "Th?me" -#: modules/gui/skins2/src/skin_main.cpp:433 +#: modules/gui/skins2/src/skin_main.cpp:466 msgid "Path to the skin to use." -msgstr "Chemin du fichier de skin ? utiliser." +msgstr "Chemin du fichier de th?me ? utiliser." -#: modules/gui/skins2/src/skin_main.cpp:434 +#: modules/gui/skins2/src/skin_main.cpp:467 msgid "Config of last used skin" -msgstr "Configuration de la derni?re skin utilis?e" +msgstr "Configuration du dernier th?me utilis?" -#: modules/gui/skins2/src/skin_main.cpp:435 +#: modules/gui/skins2/src/skin_main.cpp:468 msgid "" "Windows configuration of the last skin used. This option is updated " "automatically, do not touch it." msgstr "" -"Configuration des fen?tres du dernier skin utilis?. Cette option est mise ? " +"Configuration des fen?tres du dernier th?me utilis?. Cette option est mise ? " "jour automatiquement." -#: modules/gui/skins2/src/skin_main.cpp:438 +#: modules/gui/skins2/src/skin_main.cpp:471 msgid "Show a systray icon for VLC" -msgstr "Montrer un ic?ne dans la barre syst?me" +msgstr "Montrer une ic?ne dans la barre syst?me" -#: modules/gui/skins2/src/skin_main.cpp:439 -#: modules/gui/skins2/src/skin_main.cpp:440 +#: modules/gui/skins2/src/skin_main.cpp:472 +#: modules/gui/skins2/src/skin_main.cpp:473 msgid "Show VLC on the taskbar" msgstr "Montrer VLC sur la barre des t?ches" -#: modules/gui/skins2/src/skin_main.cpp:441 +#: modules/gui/skins2/src/skin_main.cpp:474 msgid "Enable transparency effects" msgstr "Active les effets de transparence" -#: modules/gui/skins2/src/skin_main.cpp:442 +#: modules/gui/skins2/src/skin_main.cpp:475 msgid "" "You can disable all transparency effects if you want. This is mainly useful " "when moving windows does not behave correctly." @@ -18199,28 +18414,28 @@ msgstr "" "Ceci est principalement utile si vous rencontrez des erreurs lors du " "d?placement des fen?tres." -#: modules/gui/skins2/src/skin_main.cpp:445 -#: modules/gui/skins2/src/skin_main.cpp:446 +#: modules/gui/skins2/src/skin_main.cpp:478 +#: modules/gui/skins2/src/skin_main.cpp:479 msgid "Use a skinned playlist" -msgstr "Utiliser une playlist skinn?e" +msgstr "Utiliser une playlist avec th?me" -#: modules/gui/skins2/src/skin_main.cpp:470 +#: modules/gui/skins2/src/skin_main.cpp:503 msgid "Skinnable Interface" -msgstr "Interface skinnable" +msgstr "Interface th?mable" -#: modules/gui/skins2/src/skin_main.cpp:480 +#: modules/gui/skins2/src/skin_main.cpp:517 msgid "Skins loader demux" -msgstr "Demultiplexeur de chargement de skin" +msgstr "D?multiplexeur de chargement de th?me" #: modules/gui/skins2/src/theme_repository.cpp:69 msgid "Select skin" -msgstr "Skins" +msgstr "Th?me" #: modules/gui/skins2/src/theme_repository.cpp:83 msgid "Open skin..." -msgstr "Choisir une skin?" +msgstr "Choisir un th?me?" -#: modules/gui/wince/interface.cpp:503 +#: modules/gui/wince/interface.cpp:506 msgid "" "\n" "(WinCE interface)\n" @@ -18230,23 +18445,19 @@ msgstr "" "(Interface WinCE)\n" "\n" -#: modules/gui/wince/interface.cpp:504 +#: modules/gui/wince/interface.cpp:507 msgid "" -"(c) 1996-2006 - the VideoLAN Team\n" +"(c) 1996-2008 - the VideoLAN Team\n" "\n" msgstr "" -"(c) 1996-2006 - l??quipe VideoLAN\n" +"? 1996-2008 - l??quipe VideoLAN\n" "\n" -#: modules/gui/wince/interface.cpp:505 +#: modules/gui/wince/interface.cpp:508 msgid "Compiled by " msgstr "Compil? par " -#: modules/gui/wince/interface.cpp:507 -msgid "Compiler: " -msgstr "Compilateur : " - -#: modules/gui/wince/interface.cpp:509 +#: modules/gui/wince/interface.cpp:512 msgid "" "The VideoLAN team \n" "http://www.videolan.org/" @@ -18254,31 +18465,35 @@ msgstr "" "L??quipe VideoLAN \n" "http://www.videolan.org/" -#: modules/gui/wince/open.cpp:135 +#: modules/gui/wince/open.cpp:136 msgid "Open:" -msgstr "Ouvrir :" +msgstr "Ouvrir?:" -#: modules/gui/wince/open.cpp:147 +#: modules/gui/wince/open.cpp:148 msgid "" "Alternatively, you can build an MRL using one of the following predefined " "targets:" msgstr "" "Autrement, vous pouvez construire un MRL en utilisant une des cibles " -"pr?d?finies suivantes:" +"pr?d?finies suivantes?:" -#: modules/gui/wince/preferences_widgets.cpp:524 +#: modules/gui/wince/preferences.cpp:832 +msgid "Unknown" +msgstr "Inconnu" + +#: modules/gui/wince/preferences_widgets.cpp:525 msgid "Choose directory" -msgstr "Choisissez le r?pertoire" +msgstr "Choisissez un dossier" -#: modules/gui/wince/preferences_widgets.cpp:533 +#: modules/gui/wince/preferences_widgets.cpp:534 msgid "Choose file" -msgstr "Choisissez le fichier" +msgstr "Choisissez un fichier" -#: modules/gui/wince/wince.cpp:60 +#: modules/gui/wince/wince.cpp:61 msgid "Embed video in interface" msgstr "Int?grer la vid?o dans l?interface" -#: modules/gui/wince/wince.cpp:61 +#: modules/gui/wince/wince.cpp:62 msgid "" "Embed the video inside the interface instead of having it in a separate " "window." @@ -18286,15 +18501,15 @@ msgstr "" "Int?grer la vid?o dans l?interface plut?t que d?utiliser une nouvelle " "fen?tre." -#: modules/gui/wince/wince.cpp:65 -msgid "WinCE interface module" -msgstr "Module d?interface WinCE" +#: modules/gui/wince/wince.cpp:67 +msgid "WinCE interface" +msgstr "Interface WinCE" -#: modules/gui/wince/wince.cpp:74 +#: modules/gui/wince/wince.cpp:78 msgid "WinCE dialogs provider" msgstr "Fournisseur de dialogues WinCE" -#: modules/meta_engine/folder.c:59 +#: modules/meta_engine/folder.c:56 msgid "Folder meta data" msgstr "Dossier de m?ta-donn?es" @@ -18580,15 +18795,7 @@ msgstr "Hard rock" #: modules/meta_engine/id3tag.c:57 msgid "ID3v1/2 and APEv1/2 tags parser" -msgstr "Parseur de tags ID3v1/2 et APEv1/2" - -#: modules/meta_engine/musicbrainz.c:53 -msgid "MusicBrainz" -msgstr "MusicBrainz" - -#: modules/meta_engine/musicbrainz.c:54 -msgid "MusicBrainz meta data" -msgstr "M?ta-donn?es MusicBrainz" +msgstr "Parseur de balises ID3v1/2 et APEv1/2" #: modules/misc/audioscrobbler.c:133 msgid "The username of your last.fm account" @@ -18606,11 +18813,11 @@ msgstr "Audioscrobbler" msgid "Submission of played songs to last.fm" msgstr "Soumission des chansons ? last.fm" -#: modules/misc/audioscrobbler.c:297 +#: modules/misc/audioscrobbler.c:292 msgid "Last.fm username not set" msgstr "Nom d'utilisateur last.fm non d?fini." -#: modules/misc/audioscrobbler.c:298 +#: modules/misc/audioscrobbler.c:293 msgid "" "Please set a username or disable the audioscrobbler plugin, and restart " "VLC.\n" @@ -18620,11 +18827,11 @@ msgstr "" "relancez VLC.\n" "Allez sur http://www.last.fm/join/ pour cr?er un compte." -#: modules/misc/audioscrobbler.c:793 +#: modules/misc/audioscrobbler.c:811 msgid "last.fm: Authentication failed" msgstr "last.fm: ?chec de l'authentification" -#: modules/misc/audioscrobbler.c:794 +#: modules/misc/audioscrobbler.c:812 msgid "" "last.fm username or password is incorrect. Please verify your settings and " "relaunch VLC." @@ -18692,35 +18899,42 @@ msgid "Dummy decoder function" msgstr "Pseudo-d?codeur" #: modules/misc/dummy/dummy.c:86 +msgid "Dump decoder" +msgstr "Pseudo-d?codeur" + +#: modules/misc/dummy/dummy.c:87 +msgid "Dump decoder function" +msgstr "Pseudo-d?codeur" + +#: modules/misc/dummy/dummy.c:92 msgid "Dummy encoder function" msgstr "Pseudo-encoder" -#: modules/misc/dummy/dummy.c:90 +#: modules/misc/dummy/dummy.c:96 msgid "Dummy audio output function" msgstr "Pseudo-sortie audio" -#: modules/misc/dummy/dummy.c:94 +#: modules/misc/dummy/dummy.c:100 msgid "Dummy video output function" msgstr "Pseudo-sortie vid?o" -#: modules/misc/dummy/dummy.c:95 +#: modules/misc/dummy/dummy.c:101 msgid "Dummy Video output" msgstr "Pseudo-sortie vid?o" -#: modules/misc/dummy/dummy.c:101 +#: modules/misc/dummy/dummy.c:107 msgid "Dummy font renderer function" msgstr "Pseudo-rendu de polices" -#: modules/misc/freetype.c:85 modules/misc/win32text.c:58 +#: modules/misc/freetype.c:84 modules/misc/win32text.c:58 msgid "Filename for the font you want to use" -msgstr "Fichier de police ? utiliser." +msgstr "Fichier de police ? utiliser" -#: modules/misc/freetype.c:86 modules/misc/win32text.c:59 +#: modules/misc/freetype.c:85 modules/misc/win32text.c:59 msgid "Font size in pixels" msgstr "Taille de la police en pixels" -#: modules/misc/freetype.c:87 modules/misc/win32text.c:60 -#, fuzzy +#: modules/misc/freetype.c:86 modules/misc/win32text.c:60 msgid "" "This is the default size of the fonts that will be rendered on the video. If " "set to something different than 0 this option will override the relative " @@ -18729,18 +18943,18 @@ msgstr "" "Taille des polices ? afficher. Si le r?glage est diff?rent de 0, cette " "option outrepassera la taille de police relative. " -#: modules/misc/freetype.c:92 modules/misc/win32text.c:65 +#: modules/misc/freetype.c:91 modules/misc/win32text.c:65 msgid "" "The opacity (inverse of transparency) of the text that will be rendered on " "the video. 0 = transparent, 255 = totally opaque. " msgstr "Opacit? du texte affich? (0 = transparent, 255 = opaque). " -#: modules/misc/freetype.c:95 modules/misc/quartztext.c:90 +#: modules/misc/freetype.c:94 modules/misc/quartztext.c:91 #: modules/misc/win32text.c:68 msgid "Text default color" msgstr "Couleur par d?faut du texte" -#: modules/misc/freetype.c:96 modules/misc/quartztext.c:91 +#: modules/misc/freetype.c:95 modules/misc/quartztext.c:92 #: modules/misc/win32text.c:69 msgid "" "The color of the text that will be rendered on the video. This must be an " @@ -18753,12 +18967,12 @@ msgstr "" "rouge, puis le vert, puis le bleu. Par exemple, #000000 = noir, #FF0000 = " "rouge, #00FF00 = vert, #FFFF00 = jaune (rouge+vert), #FFFFFF = blanc." -#: modules/misc/freetype.c:100 modules/misc/quartztext.c:86 +#: modules/misc/freetype.c:99 modules/misc/quartztext.c:87 #: modules/misc/win32text.c:73 msgid "Relative font size" msgstr "Taille relative" -#: modules/misc/freetype.c:101 modules/misc/quartztext.c:87 +#: modules/misc/freetype.c:100 modules/misc/quartztext.c:88 #: modules/misc/win32text.c:74 msgid "" "This is the relative default size of the fonts that will be rendered on the " @@ -18767,31 +18981,31 @@ msgstr "" "Taille par d?faut relative des polices ? afficher. Si une taille absolue est " "sp?cifi?e, la taille relative sera outrepass?e." -#: modules/misc/freetype.c:107 modules/misc/quartztext.c:108 +#: modules/misc/freetype.c:106 modules/misc/quartztext.c:109 #: modules/misc/win32text.c:80 msgid "Smaller" msgstr "Plus petit" -#: modules/misc/freetype.c:107 modules/misc/quartztext.c:108 +#: modules/misc/freetype.c:106 modules/misc/quartztext.c:109 #: modules/misc/win32text.c:80 msgid "Small" msgstr "Petit" -#: modules/misc/freetype.c:107 modules/misc/quartztext.c:108 +#: modules/misc/freetype.c:106 modules/misc/quartztext.c:109 #: modules/misc/win32text.c:80 msgid "Large" msgstr "Grand" -#: modules/misc/freetype.c:107 modules/misc/quartztext.c:108 +#: modules/misc/freetype.c:106 modules/misc/quartztext.c:109 #: modules/misc/win32text.c:80 msgid "Larger" msgstr "Plus grand" -#: modules/misc/freetype.c:108 +#: modules/misc/freetype.c:107 msgid "Use YUVP renderer" msgstr "Rendu YUVP" -#: modules/misc/freetype.c:109 +#: modules/misc/freetype.c:108 msgid "" "This renders the font using \"paletized YUV\". This option is only needed if " "you want to encode into DVB subtitles" @@ -18799,12 +19013,11 @@ msgstr "" "Afficher la police en utilisant le YUV palettis?. Cette option n?est " "n?cessaire que pour encoder des sous-titres DVB." -#: modules/misc/freetype.c:111 +#: modules/misc/freetype.c:110 msgid "Font Effect" msgstr "Effet de police" -#: modules/misc/freetype.c:112 -#, fuzzy +#: modules/misc/freetype.c:111 msgid "" "It is possible to apply effects to the rendered text to improve its " "readability." @@ -18812,23 +19025,19 @@ msgstr "" "Il est possible d?appliquer des effets au texte afin d?am?liorer sa " "lisibilit?." -#: modules/misc/freetype.c:121 +#: modules/misc/freetype.c:120 msgid "Background" msgstr "Arri?re plan" -#: modules/misc/freetype.c:121 -msgid "Outline" -msgstr "Contour" - -#: modules/misc/freetype.c:121 +#: modules/misc/freetype.c:120 msgid "Fat Outline" msgstr "Contour ?pais" -#: modules/misc/freetype.c:133 modules/misc/win32text.c:92 +#: modules/misc/freetype.c:132 modules/misc/win32text.c:92 msgid "Text renderer" msgstr "Rendu du texte" -#: modules/misc/freetype.c:134 +#: modules/misc/freetype.c:133 msgid "Freetype2 font renderer" msgstr "Moteur de rendu freetype2" @@ -18867,50 +19076,53 @@ msgstr "Serveur GnuTLS" msgid "Gtk+ GUI helper" msgstr "Aide Gtk+" -#: modules/misc/inhibit.c:66 -#, fuzzy +#: modules/misc/inhibit.c:70 msgid "Power Management Inhibitor" -msgstr "Interface de combinaisons de touches" +msgstr "Inhibition gestion de la puissance" -#: modules/misc/logger.c:125 +#: modules/misc/inhibit.c:150 +msgid "Playing some media." +msgstr "" + +#: modules/misc/logger.c:130 msgid "Log format" msgstr "Format d?enregistrement" -#: modules/misc/logger.c:127 +#: modules/misc/logger.c:132 msgid "" "Specify the log format. Available choices are \"text\" (default), \"html\", " "and \"syslog\" (special mode to send to syslog instead of file." msgstr "" -"S?lectionner le format d?enregistrement, ? text ? (d?faut),? html ? ou ? syslog " +"S?lectionner le format d?enregistrement, ??text?? (d?faut),??html?? ou ??syslog " "? (pour envoyer dans le syslog au lieu d?un fichier)." -#: modules/misc/logger.c:131 +#: modules/misc/logger.c:136 msgid "" "Specify the log format. Available choices are \"text\" (default) and \"html" "\"." -msgstr "S?lectionner le format d?enregistrement, ? text ? (d?faut) ou ? html ?" +msgstr "S?lectionner le format d?enregistrement, ??text?? (d?faut) ou ??html??" -#: modules/misc/logger.c:136 +#: modules/misc/logger.c:141 msgid "Logging" msgstr "Journalisation" -#: modules/misc/logger.c:137 +#: modules/misc/logger.c:142 msgid "File logging" msgstr "Module de journalisation dans un fichier" -#: modules/misc/logger.c:143 +#: modules/misc/logger.c:148 msgid "Log filename" msgstr "Nom du fichier de journal" -#: modules/misc/logger.c:143 +#: modules/misc/logger.c:148 msgid "Specify the log filename." msgstr "Indiquez le nom du fichier pour le journal" -#: modules/misc/logger.c:149 +#: modules/misc/logger.c:153 msgid "RRD output file" msgstr "Fichier de sortie RRD" -#: modules/misc/logger.c:150 +#: modules/misc/logger.c:154 msgid "Output data for RRDTool in this file." msgstr "Faire sortir des donn?es pour RRDTool dans ce fichier." @@ -18919,14 +19131,12 @@ msgid "Lua interface" msgstr "Interface Lua" #: modules/misc/lua/vlc.c:55 -#, fuzzy msgid "Lua interface module to load" -msgstr "Module d?interface SAP" +msgstr "Module d?interface Lua ? charger" #: modules/misc/lua/vlc.c:57 -#, fuzzy msgid "Lua interface configuration" -msgstr "Charger une configuration" +msgstr "Configuration interface Lua" #: modules/misc/lua/vlc.c:58 msgid "" @@ -18951,13 +19161,8 @@ msgid "Lua Playlist Parser Interface" msgstr "" #: modules/misc/lua/vlc.c:85 -#, fuzzy msgid "Lua Interface Module" -msgstr "Module d?interface" - -#: modules/misc/memcpy/memcpyaltivec.c:59 -msgid "AltiVec memcpy" -msgstr "Module de memcpy optimis? AltiVec" +msgstr "Module d?interface Lua" #: modules/misc/memcpy/memcpy.c:82 msgid "libc memcpy" @@ -18975,6 +19180,10 @@ msgstr "Module de memcpy optimis? MMX" msgid "MMX EXT memcpy" msgstr "Module de memcpy optimis? MMMEXT" +#: modules/misc/memcpy/memcpyaltivec.c:59 +msgid "AltiVec memcpy" +msgstr "Module de memcpy optimis? AltiVec" + #: modules/misc/notify/growl.m:96 msgid "Growl Notification Plugin" msgstr "Plugin d?annonce Growl" @@ -18994,19 +19203,16 @@ msgid "" msgstr "H?te recevant les notifications Growl." #: modules/misc/notify/growl_udp.c:65 -#, fuzzy msgid "Growl password on the Growl server." msgstr "Mot de passe sur le serveur Growl." #: modules/misc/notify/growl_udp.c:67 -#, fuzzy msgid "Growl UDP port on the Growl server." msgstr "Port UDP du serveur Growl." #: modules/misc/notify/growl_udp.c:73 -#, fuzzy msgid "Growl UDP Notification Plugin" -msgstr "Plugin d?annonce Growl" +msgstr "Plugin d?annonce UDP Growl" #: modules/misc/notify/msn.c:67 modules/misc/notify/telepathy.c:67 msgid "Title format string" @@ -19053,7 +19259,7 @@ msgid "" msgstr "" #: modules/misc/notify/telepathy.c:81 -msgid "Telepathy \"Now Playing\" using MissionControl" +msgid "Telepathy \"Now Playing\" (MissionControl)" msgstr "" #: modules/misc/notify/xosd.c:68 @@ -19100,28 +19306,30 @@ msgid "XOSD interface" msgstr "Interface XOSD" #: modules/misc/osd/parser.c:60 -#, fuzzy msgid "OSD configuration importer" -msgstr "Fichier de configuration du menu OSD" +msgstr "Importer fichier de configuration du menu OSD" #: modules/misc/osd/parser.c:66 -#, fuzzy msgid "XML OSD configuration importer" -msgstr "Fichier de configuration du menu OSD" +msgstr "Importer fichier de configuration XML du menu OSD" -#: modules/misc/playlist/export.c:49 +#: modules/misc/playlist/export.c:50 msgid "M3U playlist exporter" msgstr "Export de liste de lecture M3U" -#: modules/misc/playlist/export.c:55 +#: modules/misc/playlist/export.c:56 msgid "Old playlist exporter" msgstr "Export de liste de lecture ancien format" -#: modules/misc/playlist/export.c:61 +#: modules/misc/playlist/export.c:62 msgid "XSPF playlist export" msgstr "Export de liste de lecture XSPF" -#: modules/misc/probe/hal.c:58 modules/services_discovery/hal.c:83 +#: modules/misc/playlist/export.c:68 +msgid "HTML playlist export" +msgstr "Export de liste de lecture HTML" + +#: modules/misc/probe/hal.c:58 modules/services_discovery/hal.c:84 msgid "HAL devices detection" msgstr "D?tection de p?riph?riques HAL" @@ -19141,20 +19349,19 @@ msgstr "" msgid "Qt Embedded GUI helper" msgstr "Aide d?interface Qt Embedded" -#: modules/misc/qte_main.cpp:181 +#: modules/misc/qte_main.cpp:180 msgid "video" msgstr "vid?o" -#: modules/misc/quartztext.c:85 -#, fuzzy +#: modules/misc/quartztext.c:86 msgid "Name for the font you want to use" -msgstr "Fichier de police ? utiliser." +msgstr "Nom de police ? utiliser" -#: modules/misc/quartztext.c:111 +#: modules/misc/quartztext.c:112 msgid "Mac Text renderer" msgstr "Rendu du texte Mac" -#: modules/misc/quartztext.c:112 +#: modules/misc/quartztext.c:113 msgid "Quartz font renderer" msgstr "Moteur de rendu Quartz" @@ -19163,7 +19370,6 @@ msgid "RTSP host address" msgstr "Adresse de l?h?te RTSP" #: modules/misc/rtsp.c:64 -#, fuzzy msgid "" "This defines the address, port and path the RTSP VOD server will listen on.\n" "Syntax is address:port/path. The default is to listen on all interfaces " @@ -19171,9 +19377,10 @@ msgid "" "To listen only on the local interface, use \"localhost\" as address." msgstr "" "Vous pouvez configurer l?adresse, le port et l?emplacement sur lequel " -"l?interface RTSP ?coutera...\n" +"l?interface RTSP ?coutera?\n" " La syntaxe est adresse:port/emplacement. Le comportement par d?faut est " -"d??couter sur l?h?te local (localhost) sur le port 554, sans emplacement.\n" +"d??couter sur l?h?te local sur toutes les interfaces (adresse 0.0.0.0), port " +"554, sans emplacement.\n" "Pour n??couter que sur l?interface locale, utilisez \"localhost\"." #: modules/misc/rtsp.c:69 @@ -19185,13 +19392,12 @@ msgid "" "This limits the maximum number of clients that can connect to the RTSP VOD. " "0 means no limit." msgstr "" -"Limiter le nombre maximal de clients pouvant se connecter ? al VOD. 0 " +"Limiter le nombre maximal de clients pouvant se connecter ? la VOD RTSP. 0 " "signifie que le nombre n?est pas limit?." #: modules/misc/rtsp.c:73 -#, fuzzy msgid "MUX for RAW RTSP transport" -msgstr "Entr?e TCP" +msgstr "" #: modules/misc/rtsp.c:75 msgid "Sets the timeout option in the RTSP session string" @@ -19222,39 +19428,32 @@ msgid "Stats" msgstr "Statistiques" #: modules/misc/stats/stats.c:49 -#, fuzzy msgid "Stats encoder function" -msgstr "Pseudo-encoder" +msgstr "Statistiques fonction encoder" #: modules/misc/stats/stats.c:54 -#, fuzzy msgid "Stats decoder" -msgstr "Encodeur de sous-titres" +msgstr "Statistiques d?codeur" #: modules/misc/stats/stats.c:55 -#, fuzzy msgid "Stats decoder function" -msgstr "Pseudo-d?codeur" +msgstr "Statistiques fonction d?codeur" #: modules/misc/stats/stats.c:59 -#, fuzzy msgid "Stats demux" -msgstr "&Param?tres" +msgstr "Statistiques d?multiplexeur" #: modules/misc/stats/stats.c:60 -#, fuzzy msgid "Stats demux function" -msgstr "Pseudo-d?multiplexeur" +msgstr "Statistiques fonction d?multiplexeur" #: modules/misc/stats/stats.c:64 -#, fuzzy msgid "Stats video output" -msgstr "Sortie vid?o en art ASCII" +msgstr "Statistiques sortie vid?o" #: modules/misc/stats/stats.c:65 -#, fuzzy msgid "Stats video output function" -msgstr "Pseudo-sortie vid?o" +msgstr "Statistiques fonction de sortie vid?o" #: modules/misc/svg.c:70 msgid "SVG template file" @@ -19309,7 +19508,7 @@ msgstr "Commentaire ? mettre dans les commentaires ASF." #: modules/mux/asf.c:61 msgid "\"Rating\" to put in ASF comments." -msgstr "\"Classement\" ? mettre dans les commentaires ASF." +msgstr "??Classement?? ? mettre dans les commentaires ASF." #: modules/mux/asf.c:62 msgid "Packet Size" @@ -19320,9 +19519,8 @@ msgid "ASF packet size -- default is 4096 bytes" msgstr "Taille du paquet ASF -- 4096 par d?faut" #: modules/mux/asf.c:64 -#, fuzzy msgid "Bitrate override" -msgstr "Mode de d?bit" +msgstr "Forcage d?bit" #: modules/mux/asf.c:65 msgid "" @@ -19349,7 +19547,7 @@ msgstr "Multiplexeur Dummy/Raw" #: modules/mux/mp4.c:48 msgid "Create \"Fast Start\" files" -msgstr "Cr?er des fichiers ? Fast start ?" +msgstr "Cr?er des fichiers ??Fast start??" #: modules/mux/mp4.c:50 msgid "" @@ -19357,15 +19555,15 @@ msgid "" "downloads and allow the user to start previewing the file while it is " "downloading." msgstr "" -"Lorsque cette option est activ?e, des fichiers ? Fast start ? sont cr??s. Ces " +"Lorsque cette option est activ?e, des fichiers ??Fast start?? sont cr??s. Ces " "fichiers sont optimis?s pour le t?l?chargement, ils permettent ? " "l?utilisateur de commencer ? lire le fichier pendant son t?l?chargement." #: modules/mux/mp4.c:60 msgid "MP4/MOV muxer" -msgstr "D?multiplexeur MP4/MOV" +msgstr "Multiplexeur MP4/MOV" -#: modules/mux/mpeg/ps.c:49 modules/mux/mpeg/ts.c:155 +#: modules/mux/mpeg/ps.c:49 modules/mux/mpeg/ts.c:157 msgid "DTS delay (ms)" msgstr "Retard DTS (ms)" @@ -19393,11 +19591,11 @@ msgstr "" msgid "PS muxer" msgstr "Multiplexeur PS" -#: modules/mux/mpeg/ts.c:95 +#: modules/mux/mpeg/ts.c:97 msgid "Video PID" msgstr "Vid?o PID" -#: modules/mux/mpeg/ts.c:96 +#: modules/mux/mpeg/ts.c:98 msgid "" "Assign a fixed PID to the video stream. The PCR PID will automatically be " "the video." @@ -19405,61 +19603,61 @@ msgstr "" "Affecte un PID d?termin? au flux vid?o. Le PID de la PCR sera " "automatiquement celui de la vid?o." -#: modules/mux/mpeg/ts.c:98 +#: modules/mux/mpeg/ts.c:100 msgid "Audio PID" msgstr "PID audio" -#: modules/mux/mpeg/ts.c:99 +#: modules/mux/mpeg/ts.c:101 msgid "Assign a fixed PID to the audio stream." msgstr "Affecte un PID d?termin? au flux audio." -#: modules/mux/mpeg/ts.c:100 +#: modules/mux/mpeg/ts.c:102 msgid "SPU PID" msgstr "PID SPU" -#: modules/mux/mpeg/ts.c:101 +#: modules/mux/mpeg/ts.c:103 msgid "Assign a fixed PID to the SPU." msgstr "Affecte un PID d?termin? au flux de sous-titres." -#: modules/mux/mpeg/ts.c:102 +#: modules/mux/mpeg/ts.c:104 msgid "PMT PID" msgstr "PID de la PMT" -#: modules/mux/mpeg/ts.c:103 +#: modules/mux/mpeg/ts.c:105 msgid "Assign a fixed PID to the PMT" msgstr "Affecter un PID ? la PMT" -#: modules/mux/mpeg/ts.c:104 +#: modules/mux/mpeg/ts.c:106 msgid "TS ID" msgstr "ID TS" -#: modules/mux/mpeg/ts.c:105 +#: modules/mux/mpeg/ts.c:107 msgid "Assign a fixed Transport Stream ID." msgstr "Affecter un ID de flux de transport" -#: modules/mux/mpeg/ts.c:106 +#: modules/mux/mpeg/ts.c:108 msgid "NET ID" msgstr "ID NET" -#: modules/mux/mpeg/ts.c:107 +#: modules/mux/mpeg/ts.c:109 msgid "Assign a fixed Network ID (for SDT table)" msgstr "Affecter un Network ID (pour la table SDT)" -#: modules/mux/mpeg/ts.c:109 +#: modules/mux/mpeg/ts.c:111 msgid "PMT Program numbers" msgstr "Num?ro du programme PMT" -#: modules/mux/mpeg/ts.c:110 +#: modules/mux/mpeg/ts.c:112 msgid "" "Assign a program number to each PMT. This requires \"Set PID to ID of ES\" " "to be enabled." msgstr "Assigner un programme ? chaque PMT." -#: modules/mux/mpeg/ts.c:113 +#: modules/mux/mpeg/ts.c:115 msgid "Mux PMT (requires --sout-ts-es-id-pid)" msgstr "Multiplexage PMT (n?cessite l?option sout-ts-es-id-pid)" -#: modules/mux/mpeg/ts.c:114 +#: modules/mux/mpeg/ts.c:116 msgid "" "Define the pids to add to each pmt. This requires \"Set PID to ID of ES\" to " "be enabled." @@ -19467,11 +19665,11 @@ msgstr "" "D?finit les PIDs ? ajouter ? chaque PMT. L?option \"R?gler le PID ? l?ID de " "l?ES\" doit ?tre activ?e." -#: modules/mux/mpeg/ts.c:117 +#: modules/mux/mpeg/ts.c:119 msgid "SDT Descriptors (requires --sout-ts-es-id-pid)" msgstr "Descripteurs SDT (n?cessite l?option sout-ts-es-id-pid)" -#: modules/mux/mpeg/ts.c:118 +#: modules/mux/mpeg/ts.c:120 msgid "" "Defines the descriptors of each SDT. Thisrequires \"Set PID to ID of ES\" to " "be enabled." @@ -19479,11 +19677,11 @@ msgstr "" "D?finit les descripteurs de chaque SDT. L?option \"R?gler le PID ? l?ID de " "l?ES\" doit ?tre activ?e." -#: modules/mux/mpeg/ts.c:121 +#: modules/mux/mpeg/ts.c:123 msgid "Set PID to ID of ES" msgstr "R?gler l?id du PID comme celui de l?ES" -#: modules/mux/mpeg/ts.c:122 +#: modules/mux/mpeg/ts.c:124 msgid "" "Sets PID to the ID if the incoming ES. This is for use with --ts-es-id-pid, " "and allows to have the same PIDs in the input and output streams." @@ -19492,23 +19690,22 @@ msgstr "" "avec --ts-es-id-pid, et permet d?avoir les m?mes PIDs dans les flux entrants " "et sortants." -#: modules/mux/mpeg/ts.c:126 +#: modules/mux/mpeg/ts.c:128 msgid "Data alignment" msgstr "Alignement des donn?es" -#: modules/mux/mpeg/ts.c:127 -#, fuzzy +#: modules/mux/mpeg/ts.c:129 msgid "" "Enforces alignment of all access units on PES boundaries. Disabling this " "might save some bandwidth but introduce incompatibilities." msgstr "" "Forcer l?alignement sur les limites de PES. Ceci g?che de la bande passante." -#: modules/mux/mpeg/ts.c:130 +#: modules/mux/mpeg/ts.c:132 msgid "Shaping delay (ms)" msgstr "Tampon du multiplexeur (ms)" -#: modules/mux/mpeg/ts.c:131 +#: modules/mux/mpeg/ts.c:133 msgid "" "Cut the stream in slices of the given duration, and ensure a constant " "bitrate between the two boundaries. This avoids having huge bitrate peaks, " @@ -19518,11 +19715,11 @@ msgstr "" "donn?e, et assurera un d?bit constant dans un intervalle. Ceci ?vite d?avoir " "de gros pics de d?bit pour les images de r?f?rence." -#: modules/mux/mpeg/ts.c:136 +#: modules/mux/mpeg/ts.c:138 msgid "Use keyframes" msgstr "Utiliser les images cl?s" -#: modules/mux/mpeg/ts.c:137 +#: modules/mux/mpeg/ts.c:139 msgid "" "If enabled, and shaping is specified, the TS muxer will place the boundaries " "at the end of I pictures. In that case, the shaping duration given by the " @@ -19530,18 +19727,18 @@ msgid "" "enhances the efficiency of the shaping algorithm, since I frames are usually " "the biggest frames in the stream." msgstr "" -"Si activ?, et si un ? shaping ? est pr?cis?, le multiplexeur TS placera les " +"Si activ?, et si un ??shaping?? est pr?cis?, le multiplexeur TS placera les " "limites de ses intervalles ? la fin des images I. Dans ce cas, la dur?e de " "shaping sp?cifi?e par l?utilisateur correspond au pire des cas, quand aucune " "image de r?f?rence n?est disponible. Ceci am?liore l?efficacit? de " "l?algorithme de shaping, ?tant donn? que les images I sont habituellement " "les images les plus volumineuses du flux." -#: modules/mux/mpeg/ts.c:144 +#: modules/mux/mpeg/ts.c:146 msgid "PCR delay (ms)" msgstr "Intervalle PCR (ms)" -#: modules/mux/mpeg/ts.c:145 +#: modules/mux/mpeg/ts.c:147 msgid "" "Set at which interval PCRs (Program Clock Reference) will be sent (in " "milliseconds). This value should be below 100ms. (default is 70ms)." @@ -19549,19 +19746,19 @@ msgstr "" "Fr?quence ? laquelle les PCRs (Program Clock Reference) seront envoy?es. " "Cette valeur devrait ?tre inf?rieure ? 100ms. (Par d?faut 70)" -#: modules/mux/mpeg/ts.c:149 +#: modules/mux/mpeg/ts.c:151 msgid "Minimum B (deprecated)" msgstr "B minimal (inutilis?)" -#: modules/mux/mpeg/ts.c:150 modules/mux/mpeg/ts.c:153 +#: modules/mux/mpeg/ts.c:152 modules/mux/mpeg/ts.c:155 msgid "This setting is deprecated and not used anymore" msgstr "Ce r?glage n?est plus utilis?" -#: modules/mux/mpeg/ts.c:152 +#: modules/mux/mpeg/ts.c:154 msgid "Maximum B (deprecated)" msgstr "B maximal (inutilis?)" -#: modules/mux/mpeg/ts.c:156 +#: modules/mux/mpeg/ts.c:158 msgid "" "Delay the DTS (decoding time stamps) and PTS (presentation timestamps) of " "the data in the stream, compared to the PCRs. This allows for some buffering " @@ -19572,50 +19769,48 @@ msgstr "" "rapport aux PCRs. Ceci permet d?obtenir un buffer ? l?int?rieur du cycle de " "d?codage." -#: modules/mux/mpeg/ts.c:161 +#: modules/mux/mpeg/ts.c:163 msgid "Crypt audio" msgstr "Cryptage audio" -#: modules/mux/mpeg/ts.c:162 +#: modules/mux/mpeg/ts.c:164 msgid "Crypt audio using CSA" msgstr "Cryptage CSA de l?audio" -#: modules/mux/mpeg/ts.c:163 +#: modules/mux/mpeg/ts.c:165 msgid "Crypt video" msgstr "Cryptage vid?o" -#: modules/mux/mpeg/ts.c:164 +#: modules/mux/mpeg/ts.c:166 msgid "Crypt video using CSA" msgstr "Cryptage CSA de la vid?o" -#: modules/mux/mpeg/ts.c:166 +#: modules/mux/mpeg/ts.c:168 msgid "CSA Key" msgstr "Cl? CSA" -#: modules/mux/mpeg/ts.c:167 +#: modules/mux/mpeg/ts.c:169 msgid "" "CSA encryption key. This must be a 16 char string (8 hexadecimal bytes)." msgstr "" "Cl? de chiffrement CSA. Celle-ci doit ?tre une cha?ne de 16 caract?res (8 " "octets hexad?cimaux)." -#: modules/mux/mpeg/ts.c:174 -#, fuzzy +#: modules/mux/mpeg/ts.c:176 msgid "CSA Key in use" msgstr "Cl? CSA" -#: modules/mux/mpeg/ts.c:175 +#: modules/mux/mpeg/ts.c:177 msgid "" "CSA encryption key used. It can be the odd/first/1 (default) or the even/" "second/2 one." msgstr "" -#: modules/mux/mpeg/ts.c:178 +#: modules/mux/mpeg/ts.c:180 msgid "Packet size in bytes to encrypt" msgstr "Taille en octets du paquet ? chiffrer" -#: modules/mux/mpeg/ts.c:179 -#, fuzzy +#: modules/mux/mpeg/ts.c:181 msgid "" "Size of the TS packet to encrypt. The encryption routines subtract the TS-" "header from the value before encrypting." @@ -19623,7 +19818,7 @@ msgstr "" "Taille du paquet TS ? chiffrer. La routine de chiffrage enl?ve l?en-t?te TS " "de la valeur avant le chiffrage. " -#: modules/mux/mpeg/ts.c:192 +#: modules/mux/mpeg/ts.c:194 msgid "TS muxer (libdvbpsi)" msgstr "Multiplexeur TS (libdvbpsi)" @@ -19641,17 +19836,21 @@ msgstr "Multiplexeur WAV" #: modules/packetizer/copy.c:47 msgid "Copy packetizer" -msgstr "Empaqueteur ? Copie ?" +msgstr "Empaqueteur ??Copie??" -#: modules/packetizer/h264.c:53 +#: modules/packetizer/h264.c:54 msgid "H.264 video packetizer" msgstr "Empaqueteur H264 vid?o" -#: modules/packetizer/mpeg4audio.c:185 +#: modules/packetizer/mlp.c:48 +msgid "MLP/TrueHD parser" +msgstr "Analyseur MLP/TrueHD" + +#: modules/packetizer/mpeg4audio.c:182 msgid "MPEG4 audio packetizer" msgstr "Empaqueteur MPEG4 audio" -#: modules/packetizer/mpeg4video.c:53 +#: modules/packetizer/mpeg4video.c:52 msgid "MPEG4 video packetizer" msgstr "Empaqueteur MPEG4 vid?o" @@ -19672,31 +19871,23 @@ msgstr "" msgid "MPEG-I/II video packetizer" msgstr "Empaqueteur vid?o MPEG-I/II" +#: modules/packetizer/mpegvideo.c:71 +msgid "MPEG Video" +msgstr "Vid?o MPEG" + #: modules/packetizer/vc1.c:50 -#, fuzzy msgid "VC-1 packetizer" -msgstr "Empaqueteur ? Copie ?" +msgstr "Empaqueteur ??VC-1??" -#: modules/services_discovery/bonjour.c:56 +#: modules/services_discovery/bonjour.c:55 msgid "Bonjour services" -msgstr "Services ? Bonjour ?" - -#: modules/services_discovery/bonjour.c:314 -msgid "Bonjour" -msgstr "Bonjour" - -#: modules/services_discovery/hal.c:150 -#: modules/services_discovery/upnp_cc.cpp:87 -#: modules/services_discovery/upnp_intel.cpp:299 -msgid "Devices" -msgstr "P?riph?riques" +msgstr "Services ??Bonjour??" -#: modules/services_discovery/podcast.c:59 +#: modules/services_discovery/podcast.c:62 msgid "Enter the list of podcasts to retrieve, separated by '|' (pipe)." -msgstr "Liste des podcasts ? utiliser, s?par?s par des \"|\"." +msgstr "Liste des podcasts ? utiliser, s?par?s par des ??|??." -#: modules/services_discovery/podcast.c:64 -#: modules/services_discovery/podcast.c:123 +#: modules/services_discovery/podcast.c:67 msgid "Podcasts" msgstr "Podcasts" @@ -19717,9 +19908,8 @@ msgid "IPv4 SAP" msgstr "SAP IPv4" #: modules/services_discovery/sap.c:91 -#, fuzzy msgid "Listen to IPv4 announcements on the standard addresses." -msgstr "Ecouter les annonces SAP sur les adresses IPv6 standard." +msgstr "Ecouter les annonces IPv4 sur les adresses standards." #: modules/services_discovery/sap.c:92 msgid "IPv6 SAP" @@ -19727,7 +19917,7 @@ msgstr "SAP IPv6" #: modules/services_discovery/sap.c:94 msgid "Listen to IPv6 announcements on the standard addresses." -msgstr "Ecouter les annonces SAP sur les adresses IPv6 standard." +msgstr "Ecouter les annonces IPv6 sur les adresses standards." #: modules/services_discovery/sap.c:95 msgid "IPv6 SAP scope" @@ -19753,13 +19943,12 @@ msgid "Try to parse the announce" msgstr "Essayer d?analyser l?annonce SAP" #: modules/services_discovery/sap.c:104 -#, fuzzy msgid "" "This enables actual parsing of the announces by the SAP module. Otherwise, " "all announcements are parsed by the \"live555\" (RTP/RTSP) module." msgstr "" "Analyser l?annonce avec le module SAP. Autrement, toutes les annonces sont " -"analys?es par le module \"livedotcom\" (RTP/RTSP)." +"analys?es par le module \"live555\" (RTP/RTSP)." #: modules/services_discovery/sap.c:107 msgid "SAP Strict mode" @@ -19786,30 +19975,23 @@ msgstr "" "pourriez vous retrouver avec des ?l?ments correspondant ? des flux " "inexistants." -#: modules/services_discovery/sap.c:117 -msgid "" -"This automatically enables timeshifting for streams discovered through SAP " -"announcements." -msgstr "Activer le d?calage temporel pour les flux re?us par SAP." - -#: modules/services_discovery/sap.c:128 +#: modules/services_discovery/sap.c:125 msgid "SAP Announcements" msgstr "Annonces SAP" -#: modules/services_discovery/sap.c:155 -#, fuzzy +#: modules/services_discovery/sap.c:151 msgid "SDP Descriptions parser" -msgstr "Fichier de description" +msgstr "" -#: modules/services_discovery/sap.c:875 modules/services_discovery/sap.c:879 +#: modules/services_discovery/sap.c:891 modules/services_discovery/sap.c:895 msgid "Session" msgstr "Session" -#: modules/services_discovery/sap.c:875 +#: modules/services_discovery/sap.c:891 msgid "Tool" msgstr "Outil" -#: modules/services_discovery/sap.c:879 +#: modules/services_discovery/sap.c:895 msgid "User" msgstr "Utilisateur" @@ -19836,7 +20018,7 @@ msgstr "Freebox TV" #: modules/services_discovery/shout.c:76 #: modules/services_discovery/shout.c:124 msgid "French TV" -msgstr "French TV" +msgstr "T?l?vision Fran?aise" #: modules/services_discovery/shout.c:110 msgid "Shoutcast radio listings" @@ -19850,34 +20032,51 @@ msgstr "Listes de cha?nes Shoutcast TV" msgid "Freebox TV listing (French ISP free.fr services)" msgstr "Cha?nes Freebox TV (free.fr)" -#: modules/services_discovery/upnp_cc.cpp:62 +#: modules/services_discovery/upnp_cc.cpp:63 +#: modules/services_discovery/upnp_intel.cpp:63 msgid "Universal Plug'n'Play discovery" msgstr "D?couverte Universal Plug'n'Play" -#: modules/services_discovery/upnp_intel.cpp:268 -msgid "Universal Plug'n'Play discovery ( Intel SDK )" -msgstr "D?couverte Universal Plug'n'Play (Intel)" +#: modules/stream_filter/decomp.c:52 +msgid "Decompression" +msgstr "D?compression" + +#: modules/stream_filter/rar.c:47 +msgid "Uncompressed RAR" +msgstr "RAR non compress?" + +#: modules/stream_filter/record.c:49 +msgid "Internal stream record" +msgstr "Enregistrement interne du flux" #: modules/stream_out/autodel.c:46 -#, fuzzy msgid "Autodel" -msgstr "Auto" +msgstr "Auto-effacement" #: modules/stream_out/autodel.c:47 -#, fuzzy msgid "Automatically add/delete input streams" -msgstr "Recherche des m?tadonn?es" +msgstr "Ajout/Effacement automatique des flux d'entr?e" -#: modules/stream_out/bridge.c:42 +#: modules/stream_out/bridge.c:43 msgid "" "Integer identifier for this elementary stream. This will be used to \"find\" " "this stream later." msgstr "" "Identifiant pour ce flux ?l?mentaire, qui pourra ?tre utilis? pour le " -"\"retrouver\" par la suite." +"??chercher?? par la suite." #: modules/stream_out/bridge.c:46 -#, fuzzy +msgid "Destination bridge-in name" +msgstr "Nom ??bridge-in?? de destination" + +#: modules/stream_out/bridge.c:48 +msgid "" +"Name of the destination bridge-in. If you do not need more than one bridge-" +"in at a time, you can discard this option." +msgstr "Nom du ??pont entrant?? de destination. Si vous n'avez pas besoin de plus" +"d'un ??pont entrant?? de destination, vous pouvez oublier cette option." + +#: modules/stream_out/bridge.c:52 msgid "" "Pictures coming from the picture video outputs will be delayed according to " "this value (in milliseconds, should be >= 100 ms). For high values, you will " @@ -19887,31 +20086,74 @@ msgstr "" "milisecondes, >= 100 ms). Pour utiliser des valeurs ?lev?es, augmenter le " "cache de fichier et les autres caches." -#: modules/stream_out/bridge.c:50 +#: modules/stream_out/bridge.c:56 msgid "ID Offset" msgstr "D?calage d?ID" -#: modules/stream_out/bridge.c:51 +#: modules/stream_out/bridge.c:57 msgid "" "Offset to add to the stream IDs specified in bridge_out to obtain the stream " "IDs bridge_in will register." msgstr "" -"Diff?rence ? ajouter aux identifiants des flux sp?cifi?s dans bridge_out " -"pour obtenir les identifiants des flux auxquels s?abonnera bridge_in." +"Diff?rence ? ajouter aux identifiants des flux sp?cifi?s dans ??bridge_out?? " +"pour obtenir les identifiants des flux auxquels s?abonnera ??bridge_in??." + +#: modules/stream_out/bridge.c:60 +msgid "Name of current instance" +msgstr "Nom de l'instance en cours" + +#: modules/stream_out/bridge.c:62 +msgid "" +"Name of this bridge-in instance. If you do not need more than one bridge-in " +"at a time, you can discard this option." +msgstr "Nom de cette instance de ??pont entrant??. Si vous n'avez pas besoin de plus" +"d'un ??pont entrant??, vous pouvez oublier cette option." + +#: modules/stream_out/bridge.c:65 +msgid "Fallback to placeholder stream when out of data" +msgstr "" -#: modules/stream_out/bridge.c:63 +#: modules/stream_out/bridge.c:67 +msgid "" +"If set to true, the bridge will discard all input elementary streams except " +"if it doesn't receive data from another bridge-in. This can be used to " +"configure a place holder stream when the real source breaks. Source and " +"placeholder streams should have the same format. " +msgstr "" + +#: modules/stream_out/bridge.c:72 +msgid "Placeholder delay" +msgstr "" + +#: modules/stream_out/bridge.c:74 +msgid "Delay (in ms) before the placeholder kicks in." +msgstr "" + +#: modules/stream_out/bridge.c:76 +msgid "Wait for I frame before toggling placholder" +msgstr "" + +#: modules/stream_out/bridge.c:78 +msgid "" +"If enabled, switching between the placeholder and the normal stream will " +"only occur on I frames. This will remove artifacts on stream switching at " +"the expense of a slightly longer delay, depending on the frequence of I " +"frames in the streams." +msgstr "" + +#: modules/stream_out/bridge.c:92 msgid "Bridge" msgstr "Pont" -#: modules/stream_out/bridge.c:64 +#: modules/stream_out/bridge.c:93 msgid "Bridge stream output" -msgstr "Flux de sortie de pont" +msgstr "Pont du flux de sortie" -#: modules/stream_out/bridge.c:66 +#: modules/stream_out/bridge.c:95 msgid "Bridge out" msgstr "Pont sortant" -#: modules/stream_out/bridge.c:77 +#: modules/stream_out/bridge.c:108 msgid "Bridge in" msgstr "Pont entrant" @@ -20015,111 +20257,141 @@ msgstr "Adresse de sortie pour la vid?o." msgid "Elementary stream output" msgstr "Flux de sortie ?l?mentaire" +#: modules/stream_out/es.c:85 +msgid "Generic" +msgstr "G?n?rique" + #: modules/stream_out/es.c:374 modules/stream_out/es.c:389 #, c-format msgid "There is no suitable stream-output access module for \"%s/%s://%s\"." -msgstr "" +msgstr "Il n'y a pas de module d'acc?s de flux sortant pour ??%s/%s://%s??." #: modules/stream_out/gather.c:44 msgid "Gathering stream output" msgstr "Flux de sortie assembl?" -#: modules/stream_out/mosaic_bridge.c:135 +#: modules/stream_out/mosaic_bridge.c:137 msgid "Specify an identifier string for this subpicture" msgstr "Sp?cifier un identifiant pour cette image" -#: modules/stream_out/mosaic_bridge.c:143 +#: modules/stream_out/mosaic_bridge.c:145 msgid "Sample aspect ratio" msgstr "Format d??cran de la source" -#: modules/stream_out/mosaic_bridge.c:145 +#: modules/stream_out/mosaic_bridge.c:147 msgid "Sample aspect ratio of the destination (1:1, 3:4, 2:3)." msgstr "Format d??cran de la destination (1:1, 3:4, 2:3)" -#: modules/stream_out/mosaic_bridge.c:147 modules/stream_out/transcode.c:88 +#: modules/stream_out/mosaic_bridge.c:149 modules/stream_out/transcode.c:89 msgid "Video filter" msgstr "Filtre vid?o" -#: modules/stream_out/mosaic_bridge.c:149 -#, fuzzy +#: modules/stream_out/mosaic_bridge.c:151 msgid "Video filters will be applied to the video stream." -msgstr "Les filtres vid?o permettrent de traiter le flux vid?o" +msgstr "Les filtres vid?o seront appliqu?s au flux vid?o" -#: modules/stream_out/mosaic_bridge.c:151 +#: modules/stream_out/mosaic_bridge.c:153 msgid "Image chroma" -msgstr "Format de l?image" +msgstr "Chroma de l?image" -#: modules/stream_out/mosaic_bridge.c:153 +#: modules/stream_out/mosaic_bridge.c:155 msgid "" "Force the use of a specific chroma. Use YUVA if you're planning to use the " "Alphamask or Bluescreen video filter." msgstr "" -#: modules/stream_out/mosaic_bridge.c:158 -#, fuzzy +#: modules/stream_out/mosaic_bridge.c:160 msgid "Transparency of the mosaic picture." -msgstr "Transparence du logo" +msgstr "Transparence de la mosa?que" -#: modules/stream_out/mosaic_bridge.c:160 modules/video_filter/marq.c:103 +#: modules/stream_out/mosaic_bridge.c:162 modules/video_filter/marq.c:103 #: modules/video_filter/rss.c:142 msgid "X offset" msgstr "D?calage horizontal" -#: modules/stream_out/mosaic_bridge.c:162 -#, fuzzy +#: modules/stream_out/mosaic_bridge.c:164 msgid "X coordinate of the upper left corner in the mosaic if non negative." -msgstr "Abscisse du coin en haut ? gauche de la mosa?que." +msgstr "Abscisse du coin haut gauche de la mosa?que." -#: modules/stream_out/mosaic_bridge.c:164 modules/video_filter/marq.c:105 +#: modules/stream_out/mosaic_bridge.c:166 modules/video_filter/marq.c:105 #: modules/video_filter/rss.c:144 msgid "Y offset" msgstr "D?calage vertical" -#: modules/stream_out/mosaic_bridge.c:166 -#, fuzzy +#: modules/stream_out/mosaic_bridge.c:168 msgid "Y coordinate of the upper left corner in the mosaic if non negative." -msgstr "Ordonn?e du coin en haut ? gauche de la mosa?que." +msgstr "Ordonn?e du coin haut gauche de la mosa?que." -#: modules/stream_out/mosaic_bridge.c:171 +#: modules/stream_out/mosaic_bridge.c:173 msgid "Mosaic bridge" msgstr "Mosa?que" -#: modules/stream_out/mosaic_bridge.c:172 +#: modules/stream_out/mosaic_bridge.c:174 msgid "Mosaic bridge stream output" msgstr "Flux de sortie de la mosa?que" -#: modules/stream_out/rtp.c:72 -msgid "This is the output URL that will be used." -msgstr "Adresse de sortie." +#: modules/stream_out/raop.c:141 +msgid "Hostname or IP address of target device" +msgstr "H?te ou adresse IP du p?riph?rque cible" + +#: modules/stream_out/raop.c:144 +msgid "" +"Output volume for analog output: 0 for silence, 1..255 from almost silent to " +"very loud." +msgstr "Volume pour une sortie analogique (0 = silence, 255 = tr?s fort)." + +#: modules/stream_out/raop.c:148 +msgid "RAOP" +msgstr "RAOP" + +#: modules/stream_out/raop.c:149 +msgid "Remote Audio Output Protocol stream output" +msgstr "Flux de sortie audio ??Remote Audio Output Protocol??" + +#: modules/stream_out/record.c:50 +msgid "Destination prefix" +msgstr "Pr?fixe de destination" + +#: modules/stream_out/record.c:52 +msgid "Prefix of the destination file automatically generated" +msgstr "Pr?fixe du nom de fichier destination automatiquement g?n?r?" + +#: modules/stream_out/record.c:57 +msgid "Record stream output" +msgstr "Enregistrer le flux de sortie" #: modules/stream_out/rtp.c:73 +msgid "This is the output URL that will be used." +msgstr "Adresse de sortie qui sera utilis?e." + +#: modules/stream_out/rtp.c:74 msgid "SDP" msgstr "SDP" -#: modules/stream_out/rtp.c:75 +#: modules/stream_out/rtp.c:76 msgid "" "This allows you to specify how the SDP (Session Descriptor) for this RTP " "session will be made available. You must use an url: http://location to " "access the SDP via HTTP, rtsp://location for RTSP access, and sap:// for the " "SDP to be announced via SAP." msgstr "" -"Ceci vous permet de sp?cifier comment le SDP g?n?r? sera rendu accessibe. " +"Ceci vous permet de sp?cifier comment le SDP g?n?r? sera rendu accessible. " "Vous devez utiliser une url : http://adresse pour acc?der au SDP via HTTP, " "rtsp://adresse pour un acc?s RTSP, et sap:// pour annoncer le SDP via SAP." -#: modules/stream_out/rtp.c:79 modules/stream_out/standard.c:91 +#: modules/stream_out/rtp.c:80 modules/stream_out/standard.c:91 msgid "SAP announcing" msgstr "Annonce SAP" -#: modules/stream_out/rtp.c:80 modules/stream_out/standard.c:92 +#: modules/stream_out/rtp.c:81 modules/stream_out/standard.c:92 msgid "Announce this session with SAP." msgstr "Annoncer cette session par SAP." -#: modules/stream_out/rtp.c:81 +#: modules/stream_out/rtp.c:82 msgid "Muxer" -msgstr "Multiplexeur :" +msgstr "Multiplexeur" -#: modules/stream_out/rtp.c:83 +#: modules/stream_out/rtp.c:84 msgid "" "This allows you to specify the muxer used for the streaming output. Default " "is to use no muxer (standard RTP stream)." @@ -20127,35 +20399,33 @@ msgstr "" "Ceci vous permet de sp?cifier le multiplexeur. Le comportement par d?faut " "est de ne pas multiplexer (flux RTP standard)." -#: modules/stream_out/rtp.c:86 modules/stream_out/standard.c:62 +#: modules/stream_out/rtp.c:87 modules/stream_out/standard.c:62 msgid "Session name" msgstr "Nom de session" -#: modules/stream_out/rtp.c:88 modules/stream_out/standard.c:64 +#: modules/stream_out/rtp.c:89 modules/stream_out/standard.c:64 msgid "" "This is the name of the session that will be announced in the SDP (Session " "Descriptor)." msgstr "" "Nom de la session qui sera annonc?e dans le SDP (Descripteur de Session)." -#: modules/stream_out/rtp.c:90 modules/stream_out/standard.c:72 +#: modules/stream_out/rtp.c:91 modules/stream_out/standard.c:72 msgid "Session description" msgstr "Description de session" -#: modules/stream_out/rtp.c:92 modules/stream_out/standard.c:74 -#, fuzzy +#: modules/stream_out/rtp.c:93 modules/stream_out/standard.c:74 msgid "" "This allows you to give a short description with details about the stream, " "that will be announced in the SDP (Session Descriptor)." msgstr "" -"Description ?tendue du flux qui sera annonc? dans le SDP (Descripteur de " -"Session)." +"Description du flux qui sera annonc?e dans le SDP (Descripteur de Session)." -#: modules/stream_out/rtp.c:94 modules/stream_out/standard.c:76 +#: modules/stream_out/rtp.c:95 modules/stream_out/standard.c:76 msgid "Session URL" msgstr "URL de session" -#: modules/stream_out/rtp.c:96 modules/stream_out/standard.c:78 +#: modules/stream_out/rtp.c:97 modules/stream_out/standard.c:78 msgid "" "This allows you to give an URL with more details about the stream (often the " "website of the streaming organization), that will be announced in the SDP " @@ -20165,11 +20435,11 @@ msgstr "" "l?organisation r?alisant la diffusion) qui sera annonc? dans le SDP " "(Descripteur de Session)." -#: modules/stream_out/rtp.c:99 modules/stream_out/standard.c:81 +#: modules/stream_out/rtp.c:100 modules/stream_out/standard.c:81 msgid "Session email" msgstr "Courriel de session" -#: modules/stream_out/rtp.c:101 modules/stream_out/standard.c:83 +#: modules/stream_out/rtp.c:102 modules/stream_out/standard.c:83 msgid "" "This allows you to give a contact mail address for the stream, that will be " "announced in the SDP (Session Descriptor)." @@ -20177,127 +20447,118 @@ msgstr "" "Adresse email de contact pour le flux qui sera annonc? dans le SDP " "(Descripteur de Session)." -#: modules/stream_out/rtp.c:103 modules/stream_out/standard.c:85 -#, fuzzy +#: modules/stream_out/rtp.c:104 modules/stream_out/standard.c:85 msgid "Session phone number" -msgstr "Nom de session" +msgstr "Num?reo de t?l?phone de la session" -#: modules/stream_out/rtp.c:105 modules/stream_out/standard.c:87 -#, fuzzy +#: modules/stream_out/rtp.c:106 modules/stream_out/standard.c:87 msgid "" "This allows you to give a contact telephone number for the stream, that will " "be announced in the SDP (Session Descriptor)." msgstr "" -"Adresse email de contact pour le flux qui sera annonc? dans le SDP " -"(Descripteur de Session)." +"T?l?phone de contact pour le flux qui sera annonc? dans le SDP (Descripteur " +"de Session)." -#: modules/stream_out/rtp.c:110 +#: modules/stream_out/rtp.c:111 msgid "This allows you to specify the base port for the RTP streaming." msgstr "Port de base utilis? pour la diffusion RTP." -#: modules/stream_out/rtp.c:111 +#: modules/stream_out/rtp.c:112 msgid "Audio port" msgstr "Port audio" -#: modules/stream_out/rtp.c:113 +#: modules/stream_out/rtp.c:114 msgid "" "This allows you to specify the default audio port for the RTP streaming." msgstr "Port audio par d?faut utilis? pour la diffusion RTP." -#: modules/stream_out/rtp.c:114 +#: modules/stream_out/rtp.c:115 msgid "Video port" msgstr "Port vid?o" -#: modules/stream_out/rtp.c:116 +#: modules/stream_out/rtp.c:117 msgid "" "This allows you to specify the default video port for the RTP streaming." msgstr "Port vid?o par d?faut utilis? pour la diffusion RTP." -#: modules/stream_out/rtp.c:120 -msgid "" -"This is the hop limit (also known as \"Time-To-Live\" or TTL) of the " -"multicast packets sent by the stream output (0 = use operating system built-" -"in default)." -msgstr "" -"Temps de vie (TTL) des paquets multicast envoy?s par le flux de sortie (la " -"valeur par d?faut, 0, signifie que le choix sera laiss? ? l?OS)." - -#: modules/stream_out/rtp.c:124 +#: modules/stream_out/rtp.c:125 msgid "RTP/RTCP multiplexing" -msgstr "" +msgstr "Multiplexage RTP/RCTP" -#: modules/stream_out/rtp.c:126 +#: modules/stream_out/rtp.c:127 msgid "" "This sends and receives RTCP packet multiplexed over the same port as RTP " "packets." msgstr "" -#: modules/stream_out/rtp.c:129 +#: modules/stream_out/rtp.c:130 msgid "Transport protocol" msgstr "Protocole de transport" -#: modules/stream_out/rtp.c:131 +#: modules/stream_out/rtp.c:132 msgid "This selects which transport protocol to use for RTP." msgstr "" -#: modules/stream_out/rtp.c:135 +#: modules/stream_out/rtp.c:136 msgid "" "RTP packets will be integrity-protected and ciphered with this Secure RTP " "master shared secret key." msgstr "" -#: modules/stream_out/rtp.c:150 +#: modules/stream_out/rtp.c:151 msgid "MP4A LATM" msgstr "MP4A LATM" -#: modules/stream_out/rtp.c:152 +#: modules/stream_out/rtp.c:153 msgid "This allows you to stream MPEG4 LATM audio streams (see RFC3016)." msgstr "Permettre la diffusion de flux audio MPEG4 LATM (voir la RFC 3016)." -#: modules/stream_out/rtp.c:162 +#: modules/stream_out/rtp.c:163 msgid "RTP stream output" msgstr "Flux de sortie RTP" #: modules/stream_out/standard.c:47 -#, fuzzy msgid "Output method to use for the stream." -msgstr "" -"S?lectionnez la m?thode de d?sentrelacement ? utiliser pour la diffusion." +msgstr "M?thode de sortie ? utiliser pour la diffusion." #: modules/stream_out/standard.c:50 -#, fuzzy msgid "Muxer to use for the stream." -msgstr "Pr?r?glage ? utiliser pour l??galiseur." +msgstr "Multiplexeur ? utiliser pour la diffusion." #: modules/stream_out/standard.c:51 msgid "Output destination" msgstr "Destination" #: modules/stream_out/standard.c:53 -#, fuzzy msgid "" "Destination (URL) to use for the stream. Overrides path and bind parameters" -msgstr "URL de destination ? utiliser." +msgstr "" +"URL de destination pour la diffusion. Surcharge les param?tres chemin et " +"lien." #: modules/stream_out/standard.c:54 msgid "address to bind to (helper setting for dst)" -msgstr "" +msgstr "Adresse de lien (info pour dst)" #: modules/stream_out/standard.c:56 msgid "" "address:port to bind vlc to listening incoming streams helper setting for " "dst,dst=bind+'/'+path. dst-parameter overrides this" msgstr "" +"adresse:port pour le lien de vlc en ?coute de flux entrants pour dst, " +"dst=lien+'/'+chemin, le param?tre dst surcharge ceci." #: modules/stream_out/standard.c:58 msgid "filename for stream (helper setting for dst)" -msgstr "" +msgstr "nom de fichier pour le flux (info pour dst)" #: modules/stream_out/standard.c:60 msgid "" "Filename for stream helper setting for dst, dst=bind+'/'+path, dst-parameter " "overrides this" msgstr "" +"Nom de fichier pour le flux pour dst, dst=lien+'/'+chemin, le param?tre dst " +"surcharge ceci." #: modules/stream_out/standard.c:67 msgid "Session groupname" @@ -20313,139 +20574,140 @@ msgstr "Groupe de la session qui sera annonc?e par SAP." msgid "Standard stream output" msgstr "Flux de sortie standard" -#: modules/stream_out/switcher.c:86 +#: modules/stream_out/switcher.c:88 msgid "Files" msgstr "Fichiers" -#: modules/stream_out/switcher.c:88 +#: modules/stream_out/switcher.c:90 msgid "Full paths of the files separated by colons." -msgstr "Chemin complets des fichiers s?par?s par des ? : ?" +msgstr "Chemin complets des fichiers s?par?s par des ??:??" -#: modules/stream_out/switcher.c:89 +#: modules/stream_out/switcher.c:91 msgid "Sizes" msgstr "Tailles" -#: modules/stream_out/switcher.c:91 +#: modules/stream_out/switcher.c:93 msgid "List of sizes separated by colons (720x576:480x576)." -msgstr "Liste des tailles s?par?es par des ? : ? (720x576:480x576)." +msgstr "Liste des tailles s?par?es par des ??:?? (720x576:480x576)." -#: modules/stream_out/switcher.c:94 +#: modules/stream_out/switcher.c:96 msgid "Aspect ratio (4:3, 16:9)." msgstr "Format d??cran (4:3, 16:9)." -#: modules/stream_out/switcher.c:95 +#: modules/stream_out/switcher.c:97 msgid "Command UDP port" msgstr "Port UDP de commande" -#: modules/stream_out/switcher.c:97 +#: modules/stream_out/switcher.c:99 msgid "UDP port to listen to for commands." msgstr "Port UDP sur lequel attendre des commandes." -#: modules/stream_out/switcher.c:98 +#: modules/stream_out/switcher.c:100 msgid "Command" msgstr "Commande" -#: modules/stream_out/switcher.c:100 +#: modules/stream_out/switcher.c:102 msgid "Initial command to execute." msgstr "Commande initiale ? ex?cuter." -#: modules/stream_out/switcher.c:101 +#: modules/stream_out/switcher.c:103 msgid "GOP size" msgstr "Taille du GOP" -#: modules/stream_out/switcher.c:103 +#: modules/stream_out/switcher.c:105 msgid "Number of P frames between two I frames." msgstr "Nombre d?images P entre deux images I." -#: modules/stream_out/switcher.c:104 +#: modules/stream_out/switcher.c:106 msgid "Quantizer scale" msgstr "Echelle de quantisateur" -#: modules/stream_out/switcher.c:106 +#: modules/stream_out/switcher.c:108 msgid "Fixed quantizer scale to use." msgstr "Echelle de quantisation fixe ? utiliser." -#: modules/stream_out/switcher.c:107 +#: modules/stream_out/switcher.c:109 msgid "Mute audio" msgstr "Muter l?audio" -#: modules/stream_out/switcher.c:109 +#: modules/stream_out/switcher.c:111 msgid "Mute audio when command is not 0." msgstr "Muter l?audio lorsque la commande n?est pas 0" -#: modules/stream_out/switcher.c:112 +#: modules/stream_out/switcher.c:114 msgid "MPEG2 video switcher stream output" msgstr "Flux de sortie de vid?o MPEG2" -#: modules/stream_out/transcode.c:54 +#: modules/stream_out/transcode.c:55 msgid "Video encoder" msgstr "Encodeur vid?o" -#: modules/stream_out/transcode.c:56 +#: modules/stream_out/transcode.c:57 msgid "" "This is the video encoder module that will be used (and its associated " "options)." msgstr "Encodeur vid?o ? utiliser et ses options associ?es." -#: modules/stream_out/transcode.c:58 +#: modules/stream_out/transcode.c:59 msgid "Destination video codec" msgstr "Codec vid?o de destination" -#: modules/stream_out/transcode.c:60 +#: modules/stream_out/transcode.c:61 msgid "This is the video codec that will be used." msgstr "Codec vid?o ? utiliser." -#: modules/stream_out/transcode.c:61 +#: modules/stream_out/transcode.c:62 +#: modules/stream_out/transrate/transrate.c:60 msgid "Video bitrate" msgstr "D?bit vid?o" -#: modules/stream_out/transcode.c:63 +#: modules/stream_out/transcode.c:64 msgid "Target bitrate of the transcoded video stream." msgstr "D?bit d?image cible pour le flux vid?o transcod?." -#: modules/stream_out/transcode.c:64 +#: modules/stream_out/transcode.c:65 msgid "Video scaling" msgstr "Dimensionnement vid?o" -#: modules/stream_out/transcode.c:66 +#: modules/stream_out/transcode.c:67 msgid "Scale factor to apply to the video while transcoding (eg: 0.25)" msgstr "" "Facteur d??chelle ? appliquer pendant le transcodage (par exemple, 0,25)" -#: modules/stream_out/transcode.c:67 +#: modules/stream_out/transcode.c:68 msgid "Video frame-rate" msgstr "D?bit d?images vid?o" -#: modules/stream_out/transcode.c:69 +#: modules/stream_out/transcode.c:70 msgid "Target output frame rate for the video stream." msgstr "D?bit d?image cible pour le flux vid?o." -#: modules/stream_out/transcode.c:72 +#: modules/stream_out/transcode.c:73 msgid "Deinterlace the video before encoding." msgstr "D?sentrelacer la vid?o avant l?encodage." -#: modules/stream_out/transcode.c:75 +#: modules/stream_out/transcode.c:76 msgid "Specify the deinterlace module to use." msgstr "" "Module de d?sentrelacement ? utiliser (ffmpeg-deinterlace ou deinterlace)." -#: modules/stream_out/transcode.c:82 +#: modules/stream_out/transcode.c:83 msgid "Maximum video width" msgstr "Largeur maximale de la vid?o" -#: modules/stream_out/transcode.c:84 +#: modules/stream_out/transcode.c:85 msgid "Maximum output video width." msgstr "Largeur maximale de la vid?o." -#: modules/stream_out/transcode.c:85 +#: modules/stream_out/transcode.c:86 msgid "Maximum video height" msgstr "Hauteur maximale de la vid?o" -#: modules/stream_out/transcode.c:87 +#: modules/stream_out/transcode.c:88 msgid "Maximum output video height." msgstr "Hauteur maximale de la vid?o." -#: modules/stream_out/transcode.c:90 +#: modules/stream_out/transcode.c:91 msgid "" "Video filters will be applied to the video streams (after overlays are " "applied). You must enter a comma-separated list of filters." @@ -20453,51 +20715,50 @@ msgstr "" "Filtres vid?o ? appliquer aux flux vid?o (apr?s les incrustations). Entrez " "une liste de filtres s?par?s par des virgules." -#: modules/stream_out/transcode.c:93 +#: modules/stream_out/transcode.c:94 msgid "Audio encoder" msgstr "Encodeur audio" -#: modules/stream_out/transcode.c:95 +#: modules/stream_out/transcode.c:96 msgid "" "This is the audio encoder module that will be used (and its associated " "options)." msgstr "Module d?encodage audio ? utiliser, et ses options associ?es." -#: modules/stream_out/transcode.c:97 +#: modules/stream_out/transcode.c:98 msgid "Destination audio codec" msgstr "Codec audio de destination" -#: modules/stream_out/transcode.c:99 +#: modules/stream_out/transcode.c:100 msgid "This is the audio codec that will be used." msgstr "Codec audio ? utiliser" -#: modules/stream_out/transcode.c:100 +#: modules/stream_out/transcode.c:101 msgid "Audio bitrate" msgstr "D?bit audio" -#: modules/stream_out/transcode.c:102 +#: modules/stream_out/transcode.c:103 msgid "Target bitrate of the transcoded audio stream." msgstr "D?bit des flux audio transcod?s." -#: modules/stream_out/transcode.c:105 +#: modules/stream_out/transcode.c:106 msgid "" "Sample rate of the transcoded audio stream (11250, 22500, 44100 or 48000)." msgstr "Fr?quence d??chantillonage audio, en Hz (11025,22050,44100 ou 48000)." -#: modules/stream_out/transcode.c:106 +#: modules/stream_out/transcode.c:107 msgid "Audio channels" msgstr "Canaux audio" -#: modules/stream_out/transcode.c:108 +#: modules/stream_out/transcode.c:109 msgid "Number of audio channels in the transcoded streams." msgstr "Nombre de canaux audio dans les flux transcod?s." -#: modules/stream_out/transcode.c:109 +#: modules/stream_out/transcode.c:110 msgid "Audio filter" msgstr "Filtre audio" -#: modules/stream_out/transcode.c:111 -#, fuzzy +#: modules/stream_out/transcode.c:112 msgid "" "Audio filters will be applied to the audio streams (after conversion filters " "are applied). You must enter a comma-separated list of filters." @@ -20505,11 +20766,11 @@ msgstr "" "Filtres vid?o ? appliquer aux flux vid?o (apr?s les incrustations). Entrez " "une liste de filtres s?par?s par des virgules." -#: modules/stream_out/transcode.c:114 +#: modules/stream_out/transcode.c:115 msgid "Subtitles encoder" msgstr "Encodeur de sous-titres" -#: modules/stream_out/transcode.c:116 +#: modules/stream_out/transcode.c:117 msgid "" "This is the subtitles encoder module that will be used (and its associated " "options)." @@ -20517,16 +20778,15 @@ msgstr "" "Ceci vous permet de choisir l?encodeur de sous-titres ? utiliser et de " "configurer ses options associ?es." -#: modules/stream_out/transcode.c:118 +#: modules/stream_out/transcode.c:119 msgid "Destination subtitles codec" msgstr "Codec de sous-titres de destination" -#: modules/stream_out/transcode.c:120 -#, fuzzy +#: modules/stream_out/transcode.c:121 msgid "This is the subtitles codec that will be used." -msgstr "Codec de sous-titres ? utilser" +msgstr "Codec de sous-titres ? utiliser" -#: modules/stream_out/transcode.c:124 +#: modules/stream_out/transcode.c:125 msgid "" "This allows you to add overlays (also known as \"subpictures\" on the " "transcoded video stream. The subpictures produced by the filters will be " @@ -20537,41 +20797,41 @@ msgstr "" "produites (logo, heure, texte?) seront incrust?es sur la vid?o. Vous devez " "fournir une liste de modules s?par?s par des virgules." -#: modules/stream_out/transcode.c:129 modules/video_filter/osdmenu.c:135 +#: modules/stream_out/transcode.c:130 modules/video_filter/osdmenu.c:135 msgid "OSD menu" msgstr "Menu OSD" -#: modules/stream_out/transcode.c:131 +#: modules/stream_out/transcode.c:132 msgid "" "Stream the On Screen Display menu (using the osdmenu subpicture module)." msgstr "" "Activer la diffusion du menu OSD, en utilisant le filtre d?incrustations " "osdmenu." -#: modules/stream_out/transcode.c:133 +#: modules/stream_out/transcode.c:134 msgid "Number of threads" msgstr "Nombre de threads" -#: modules/stream_out/transcode.c:135 +#: modules/stream_out/transcode.c:136 msgid "Number of threads used for the transcoding." msgstr "Nombre de threads utilis?s pour le transcodage." -#: modules/stream_out/transcode.c:136 +#: modules/stream_out/transcode.c:137 msgid "High priority" msgstr "Priorit? ?lev?e" -#: modules/stream_out/transcode.c:138 +#: modules/stream_out/transcode.c:139 msgid "" "Runs the optional encoder thread at the OUTPUT priority instead of VIDEO." msgstr "" "Ceci permet de faire tourner le thread d?encodage (s?il existe) ? la " "priorit? OUTPUT au lieu de VIDEO" -#: modules/stream_out/transcode.c:141 +#: modules/stream_out/transcode.c:142 msgid "Synchronise on audio track" msgstr "Synchroniser sur la piste audio" -#: modules/stream_out/transcode.c:143 +#: modules/stream_out/transcode.c:144 msgid "" "This option will drop/duplicate video frames to synchronise the video track " "on the audio track." @@ -20579,27 +20839,52 @@ msgstr "" "Si cette option est activ?e, les images seront ?limin?es ou dupliqu?es afin " "de synchroniser la piste vid?o sur la piste audio." -#: modules/stream_out/transcode.c:147 -#, fuzzy +#: modules/stream_out/transcode.c:148 msgid "" "The transcoder will drop frames if your CPU can't keep up with the encoding " "rate." msgstr "" -"Autoriser le VLC ? sauter des images si la CPU ne peut suivre le taux " -"d?encodage." +"Autoriser le transcodeur ? sauter des images si la CPU ne peut suivre le " +"taux d?encodage." -#: modules/stream_out/transcode.c:162 +#: modules/stream_out/transcode.c:163 msgid "Transcode stream output" msgstr "Transcode le flux" -#: modules/stream_out/transcode.c:216 +#: modules/stream_out/transcode.c:217 msgid "Overlays/Subtitles" msgstr "Overlay/Sous-titres" -#: modules/stream_out/transrate/transrate.c:61 +#: modules/stream_out/transrate/transrate.c:63 +#, no-c-format +msgid "" +"New target video bitrate. Quality is ok for -10/15\\% of the originalbitrate." +msgstr "" + +#: modules/stream_out/transrate/transrate.c:66 +msgid "Shaping delay" +msgstr "" + +#: modules/stream_out/transrate/transrate.c:68 +msgid "Amount of data used for transrating in ms." +msgstr "" + +#: modules/stream_out/transrate/transrate.c:70 +msgid "Use MPEG4 matrix" +msgstr "Utiliser une matrice MPEG4" + +#: modules/stream_out/transrate/transrate.c:72 +msgid "Use the MPEG4 quantification matrix." +msgstr "Utiliser un matrice de quantisation MPEG4." + +#: modules/stream_out/transrate/transrate.c:79 msgid "MPEG2 video transrating stream output" msgstr "Flux de sortie avec changement de d?bit vid?o MPEG2" +#: modules/stream_out/transrate/transrate.c:82 +msgid "Transrate" +msgstr "Changement de d?bit" + #: modules/video_chroma/grey_yuv.c:55 modules/video_chroma/i420_ymga.c:54 #: modules/video_chroma/i420_yuy2.c:89 modules/video_chroma/i422_i420.c:57 #: modules/video_chroma/i422_yuy2.c:72 modules/video_chroma/yuy2_i420.c:59 @@ -20616,9 +20901,8 @@ msgid "MMX I420,IYUV,YV12 to RV15,RV16,RV24,RV32 conversions" msgstr "Conversions MMX de I420,IYUV,YV12 vers RV15,RV16,RV24,RV32" #: modules/video_chroma/i420_rgb.c:82 -#, fuzzy msgid "SSE2 I420,IYUV,YV12 to RV15,RV16,RV24,RV32 conversions" -msgstr "Conversions MMX de I420,IYUV,YV12 vers RV15,RV16,RV24,RV32" +msgstr "Conversions SSE2 de I420,IYUV,YV12 vers RV15,RV16,RV24,RV32" #: modules/video_chroma/i420_ymga.c:57 modules/video_chroma/i420_yuy2.c:92 #: modules/video_chroma/i422_yuy2.c:75 @@ -20626,9 +20910,8 @@ msgid "MMX conversions from " msgstr "Conversions MMX de " #: modules/video_chroma/i420_yuy2.c:96 modules/video_chroma/i422_yuy2.c:79 -#, fuzzy msgid "SSE2 conversions from " -msgstr "Conversions MMX de " +msgstr "Conversions SSE2 de " #: modules/video_chroma/i420_yuy2.c:101 msgid "AltiVec conversions from " @@ -20689,25 +20972,24 @@ msgstr "Filtre vid?o d?ajustement d?image" #: modules/video_filter/alphamask.c:40 msgid "Use an image's alpha channel as a transparency mask." msgstr "" +"Utiliser les infos de canal alpha d'une image en tant que masque de " +"transparence." #: modules/video_filter/alphamask.c:42 -#, fuzzy msgid "Transparency mask" -msgstr "Transparence" +msgstr "Masque de transparence" #: modules/video_filter/alphamask.c:44 msgid "Alpha blending transparency mask. Uses a png alpha channel." -msgstr "" +msgstr "Masque de transparence alpha. Utilise le canal alpha d'un png." #: modules/video_filter/alphamask.c:63 -#, fuzzy msgid "Alpha mask video filter" -msgstr "Filtre vid?o effet mur" +msgstr "Filtre vid?o effet masque de transparence" #: modules/video_filter/alphamask.c:64 -#, fuzzy msgid "Alpha mask" -msgstr "Ajustement d?image" +msgstr "Masque alpha" #: modules/video_filter/atmo/atmo.cpp:120 msgid "" @@ -20726,9 +21008,8 @@ msgid "" msgstr "" #: modules/video_filter/atmo/atmo.cpp:134 -#, fuzzy msgid "Save Debug Frames" -msgstr "Image par Image" +msgstr "Enregister les trames de d?bogage" #: modules/video_filter/atmo/atmo.cpp:135 msgid "Write every 128th miniframe to a folder." @@ -20736,34 +21017,31 @@ msgstr "?crire toutes les 128?me mini-trame vers un dossier." #: modules/video_filter/atmo/atmo.cpp:136 msgid "Debug Frame Folder" -msgstr "Dossier de d?boggage des trames" +msgstr "Dossier de d?bogage des trames" #: modules/video_filter/atmo/atmo.cpp:137 msgid "The path where the debugframes should be saved" msgstr "" #: modules/video_filter/atmo/atmo.cpp:141 -#, fuzzy msgid "Extracted Image Width" -msgstr "Ajustement d?image" +msgstr "Largeur mini-image extraite" #: modules/video_filter/atmo/atmo.cpp:142 msgid "The width of the mini image for further processing (64 is default)" msgstr "" #: modules/video_filter/atmo/atmo.cpp:145 -#, fuzzy msgid "Extracted Image Height" -msgstr "Hauteur du pic" +msgstr "Hauteur mini-image extraite" #: modules/video_filter/atmo/atmo.cpp:146 msgid "The height of the mini image for further processing (48 is default)" msgstr "" #: modules/video_filter/atmo/atmo.cpp:149 -#, fuzzy msgid "Color when paused" -msgstr "T?l?charger" +msgstr "Couleur en pause" #: modules/video_filter/atmo/atmo.cpp:150 msgid "" @@ -20772,28 +21050,24 @@ msgid "" msgstr "" #: modules/video_filter/atmo/atmo.cpp:153 -#, fuzzy msgid "Pause-Red" -msgstr "En Pause" +msgstr "Pause-Rouge" #: modules/video_filter/atmo/atmo.cpp:154 -#, fuzzy msgid "Red component of the pause color" -msgstr "Filtre d?inversion vid?o" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:155 -#, fuzzy msgid "Pause-Green" -msgstr "Vert" +msgstr "Pause-Vert" #: modules/video_filter/atmo/atmo.cpp:156 msgid "Green component of the pause color" msgstr "" #: modules/video_filter/atmo/atmo.cpp:157 -#, fuzzy msgid "Pause-Blue" -msgstr "Pause" +msgstr "Pause-Bleu" #: modules/video_filter/atmo/atmo.cpp:158 msgid "Blue component of the pause color" @@ -20809,27 +21083,24 @@ msgid "" msgstr "" #: modules/video_filter/atmo/atmo.cpp:163 -#, fuzzy msgid "End-Red" -msgstr "Rouge" +msgstr "Fin-Rouge" #: modules/video_filter/atmo/atmo.cpp:164 msgid "Red component of the shutdown color" msgstr "" #: modules/video_filter/atmo/atmo.cpp:165 -#, fuzzy msgid "End-Green" -msgstr "Vert" +msgstr "Fin-Vert" #: modules/video_filter/atmo/atmo.cpp:166 msgid "Green component of the shutdown color" msgstr "" #: modules/video_filter/atmo/atmo.cpp:167 -#, fuzzy msgid "End-Blue" -msgstr "Bleu" +msgstr "Fin-Bleu" #: modules/video_filter/atmo/atmo.cpp:168 msgid "Blue component of the shutdown color" @@ -20855,27 +21126,24 @@ msgid "" msgstr "" #: modules/video_filter/atmo/atmo.cpp:177 -#, fuzzy msgid "White Red" -msgstr "Blanc" +msgstr "Blanc-Rouge" #: modules/video_filter/atmo/atmo.cpp:178 msgid "Red value of a pure white on your LED stripes." msgstr "" #: modules/video_filter/atmo/atmo.cpp:180 -#, fuzzy msgid "White Green" -msgstr "Blanc" +msgstr "Blanc-Vert" #: modules/video_filter/atmo/atmo.cpp:181 msgid "Green value of a pure white on your LED stripes." msgstr "" #: modules/video_filter/atmo/atmo.cpp:183 -#, fuzzy msgid "White Blue" -msgstr "Blanc" +msgstr "Blanc-Bleu" #: modules/video_filter/atmo/atmo.cpp:184 msgid "Blue value of a pure white on your LED stripes." @@ -20906,9 +21174,8 @@ msgid "Overall brightness of your LED stripes" msgstr "" #: modules/video_filter/atmo/atmo.cpp:198 -#, fuzzy msgid "Darkness Limit" -msgstr "Masquage d?obscurit?" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:199 msgid "" @@ -20917,25 +21184,21 @@ msgid "" msgstr "" #: modules/video_filter/atmo/atmo.cpp:202 -#, fuzzy msgid "Hue windowing" -msgstr "fen?tre1" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:203 #: modules/video_filter/atmo/atmo.cpp:205 -#, fuzzy msgid "Used for statistics." msgstr "Collecter des statistiques" #: modules/video_filter/atmo/atmo.cpp:204 -#, fuzzy msgid "Sat windowing" -msgstr "fen?tre1" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:207 -#, fuzzy msgid "Filter length (ms)" -msgstr "Filtres" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:208 msgid "" @@ -20943,9 +21206,8 @@ msgid "" msgstr "" #: modules/video_filter/atmo/atmo.cpp:210 -#, fuzzy msgid "Filter threshold" -msgstr "Seuil de mouvement" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:211 msgid "How much a color has to be changed for an immediate color change." @@ -20960,7 +21222,6 @@ msgid "Filter Smoothness" msgstr "" #: modules/video_filter/atmo/atmo.cpp:217 -#, fuzzy msgid "Filter mode" msgstr "Filtres" @@ -20969,23 +21230,20 @@ msgid "kind of filtering which should be use to calcuate the color output" msgstr "" #: modules/video_filter/atmo/atmo.cpp:226 -#, fuzzy msgid "No Filtering" -msgstr "Filtres vid?o" +msgstr "Pas de filtre" #: modules/video_filter/atmo/atmo.cpp:227 -#, fuzzy msgid "Combined" -msgstr "Com?die" +msgstr "Combin?" #: modules/video_filter/atmo/atmo.cpp:228 msgid "Percent" msgstr "Pourcentage" #: modules/video_filter/atmo/atmo.cpp:231 -#, fuzzy msgid "Frame delay" -msgstr "D?bit d?images" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:232 msgid "" @@ -20994,29 +21252,24 @@ msgid "" msgstr "" #: modules/video_filter/atmo/atmo.cpp:237 -#, fuzzy msgid "Channel summary" -msgstr "M?langeur de canaux" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:238 -#, fuzzy msgid "Channel left" -msgstr "Nom du canal" +msgstr "Canal gauche" #: modules/video_filter/atmo/atmo.cpp:239 -#, fuzzy msgid "Channel right" -msgstr "Canal" +msgstr "Canal droit" #: modules/video_filter/atmo/atmo.cpp:240 -#, fuzzy msgid "Channel top" -msgstr "Canal" +msgstr "Canal haut" #: modules/video_filter/atmo/atmo.cpp:241 -#, fuzzy msgid "Channel bottom" -msgstr "Nom du canal" +msgstr "Canal bas" #: modules/video_filter/atmo/atmo.cpp:243 msgid "" @@ -21024,12 +21277,10 @@ msgid "" msgstr "" #: modules/video_filter/atmo/atmo.cpp:254 -#, fuzzy msgid "disabled" -msgstr "D?sactiver" +msgstr "D?sactiv?" #: modules/video_filter/atmo/atmo.cpp:255 -#, fuzzy msgid "summary" msgstr "R?sum?" @@ -21050,29 +21301,24 @@ msgid "bottom" msgstr "bas" #: modules/video_filter/atmo/atmo.cpp:262 -#, fuzzy msgid "Summary gradient" -msgstr "Gradient" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:263 -#, fuzzy msgid "Left gradient" -msgstr "Gradient" +msgstr "Gradient gauche" #: modules/video_filter/atmo/atmo.cpp:264 -#, fuzzy msgid "Right gradient" -msgstr "Gradient" +msgstr "Gradient droite" #: modules/video_filter/atmo/atmo.cpp:265 -#, fuzzy msgid "Top gradient" -msgstr "Gradient" +msgstr "Gradient haut" #: modules/video_filter/atmo/atmo.cpp:266 -#, fuzzy msgid "Bottom gradient" -msgstr "Gradient" +msgstr "Gradient bas" #: modules/video_filter/atmo/atmo.cpp:267 msgid "" @@ -21080,9 +21326,8 @@ msgid "" msgstr "" #: modules/video_filter/atmo/atmo.cpp:271 -#, fuzzy msgid "Filename of AtmoWinA.exe" -msgstr "Nom de fichier de la Police" +msgstr "Nom de fichier AtmoWinA.exe" #: modules/video_filter/atmo/atmo.cpp:272 msgid "" @@ -21125,9 +21370,8 @@ msgid "Illuminate the room with this color on shutdown" msgstr "" #: modules/video_filter/atmo/atmo.cpp:356 -#, fuzzy msgid "Settings for the built-in Live Video Processor only" -msgstr "Param?tres de l?interface principale" +msgstr "" #: modules/video_filter/atmo/atmo.cpp:393 msgid "Change channel assignment (fixes wrong wiring)" @@ -21141,20 +21385,21 @@ msgstr "" msgid "Change gradients" msgstr "" +#: modules/video_filter/blend.c:45 +msgid "Video pictures blending" +msgstr "M?lange d?images" + #: modules/video_filter/blendbench.c:52 -#, fuzzy msgid "Number of time to blend" -msgstr "Nombre de bandes" +msgstr "" #: modules/video_filter/blendbench.c:53 -#, fuzzy msgid "The number of time the blend will be performed" -msgstr "Nombre de fois o? la m?me entr?e sera r?p?t?e" +msgstr "" #: modules/video_filter/blendbench.c:55 -#, fuzzy msgid "Alpha of the blended image" -msgstr "Position X de l?incrustation encod?e" +msgstr "" #: modules/video_filter/blendbench.c:56 msgid "Alpha with which the blend image is blended" @@ -21165,14 +21410,12 @@ msgid "Image to be blended onto" msgstr "" #: modules/video_filter/blendbench.c:59 -#, fuzzy msgid "The image which will be used to blend onto" -msgstr "Agent utilisateur qui sera utilis? pour la connexion." +msgstr "" #: modules/video_filter/blendbench.c:61 -#, fuzzy msgid "Chroma for the base image" -msgstr "Permet de rogner l?image" +msgstr "" #: modules/video_filter/blendbench.c:62 msgid "Chroma which the base image will be loaded in" @@ -21187,9 +21430,8 @@ msgid "The image blended onto the base image" msgstr "" #: modules/video_filter/blendbench.c:67 -#, fuzzy msgid "Chroma for the blend image" -msgstr "Permet de rogner l?image" +msgstr "" #: modules/video_filter/blendbench.c:68 msgid "Chroma which the blend image will be loadedin" @@ -21200,40 +21442,32 @@ msgid "Blending benchmark filter" msgstr "" #: modules/video_filter/blendbench.c:75 -msgid "blendbench" -msgstr "" +msgid "Blendbench" +msgstr "Blendbench" #: modules/video_filter/blendbench.c:80 -#, fuzzy msgid "Benchmarking" -msgstr "Masquage de bordure" +msgstr "" #: modules/video_filter/blendbench.c:86 -#, fuzzy msgid "Base image" -msgstr "Flux d?images" +msgstr "Image de base" #: modules/video_filter/blendbench.c:92 -#, fuzzy msgid "Blend image" -msgstr "Flux d?images" - -#: modules/video_filter/blend.c:45 -msgid "Video pictures blending" -msgstr "M?lange d?images" +msgstr "" #: modules/video_filter/bluescreen.c:39 -#, fuzzy msgid "" "This effect, also known as \"greenscreen\" or \"chroma key\" blends the " "\"blue parts\" of the foreground image of the mosaic on the background (like " -"weather forcasts). You can choose the \"key\" color for blending (blyyue by " +"weather forecasts). You can choose the \"key\" color for blending (blue by " "default)." msgstr "" "Cet effet, ?galement connu sous le nom d??cran vert ou de couleur cl? " -"fusionne les \"parties bleues\" de l?image sur le fond (comme par exemple " -"les pr?sentateurs m?t?o). Vous pouvez choisir la couleur de base qui sera " -"fondue (bleu par d?faut)." +"fusionne les ??parties bleues?? de l?image sur le fond (comme par exemple les " +"pr?sentateurs m?t?o). Vous pouvez choisir la couleur de base qui sera " +"utilis?e (bleu par d?faut)." #: modules/video_filter/bluescreen.c:44 msgid "Bluescreen U value" @@ -21244,8 +21478,8 @@ msgid "" "\"U\" value for the bluescreen key color (in YUV values). From 0 to 255. " "Defaults to 120 for blue." msgstr "" -"Valeur \"U\" pour la couleur cl? de l??cran bleu (en valeur YUV), de 0 ? " -"255. La valeur par d?faut est de 120 pour le bleu." +"Valeur ??U?? pour la couleur cl? de l??cran bleu (en valeur YUV), de 0 ? 255. " +"La valeur par d?faut est de 120 pour le bleu." #: modules/video_filter/bluescreen.c:48 msgid "Bluescreen V value" @@ -21256,8 +21490,8 @@ msgid "" "\"V\" value for the bluescreen key color (in YUV values). From 0 to 255. " "Defaults to 90 for blue." msgstr "" -"Valeur \"V\" pour la couleur cl? de l??cran bleu (en valeur YUV), de 0 ? " -"255. La valeur par d?faut est de 90 pour le bleu." +"Valeur ??V?? pour la couleur cl? de l??cran bleu (en valeur YUV), de 0 ? 255. " +"La valeur par d?faut est de 90 pour le bleu." #: modules/video_filter/bluescreen.c:52 msgid "Bluescreen U tolerance" @@ -21284,36 +21518,40 @@ msgstr "" "Une valeur entre 10 et 20 semble correcte." #: modules/video_filter/bluescreen.c:79 -#, fuzzy msgid "Bluescreen video filter" -msgstr "Filtre vid?o de r?duction d?image" +msgstr "Filtre vid?o ?cran bleu" #: modules/video_filter/bluescreen.c:80 msgid "Bluescreen" -msgstr "Ecran bleu" +msgstr "?cran bleu" #: modules/video_filter/canvas.c:47 modules/video_filter/canvas.c:49 -#: modules/video_output/image.c:56 -#, fuzzy +#: modules/video_filter/scene.c:60 msgid "Image width" -msgstr "Ajustement d?image" +msgstr "Largeur d?image" #: modules/video_filter/canvas.c:50 modules/video_filter/canvas.c:52 -#: modules/video_output/image.c:61 -#, fuzzy +#: modules/video_filter/scene.c:65 msgid "Image height" -msgstr "Hauteur du pic" +msgstr "Hauteur d'image" #: modules/video_filter/canvas.c:55 -#, fuzzy msgid "Set aspect (like 4:3) of the video canvas" +msgstr "R?gler l?aspect (comme 4:3) du canevas vid?o." + +#: modules/video_filter/canvas.c:56 +msgid "Padd video" +msgstr "Vid?o int?gr?e" + +#: modules/video_filter/canvas.c:58 +msgid "" +"If enabled, video will be padded to fit in canvas after scaling. Otherwise, " +"video will be cropped to fix in canvas after scaling." msgstr "" -"R?gler l?aspect (comme 4:3) du canevas et adapter la vid?o en cons?quence." -#: modules/video_filter/canvas.c:63 -#, fuzzy +#: modules/video_filter/canvas.c:67 msgid "Automatically resize and padd a video" -msgstr "Recherche des m?tadonn?es" +msgstr "Retaille automatiquement la vid?o" #: modules/video_filter/chain.c:43 msgid "Video filtering using a chain of video filter modules" @@ -21340,32 +21578,28 @@ msgid "Clone video filter" msgstr "Filtre vid?o de duplication d?image" #: modules/video_filter/colorthres.c:55 -#, fuzzy msgid "" "Colors similar to this will be kept, others will be grayscaled. This must be " "an hexadecimal (like HTML colors). The first two chars are for red, then " "green, then blue. #000000 = black, #FF0000 = red, #00FF00 = green, #FFFF00 = " "yellow (red + green), #FFFFFF = white" msgstr "" -"Couleur du texte ? afficher. Ceci doit ?tre un hexad?cimal, comme pour les " -"couleurs HTML. Les deux premiers caract?res correspondent au rouge, pius " -"vert puis bleu. #000000 = noir, #FF0000 = rouge, #00FF00 = vert, #FFFF00 = " -"jaune (rouge + bleu), #FFFFFF = blanc." +"Couleurs ? afficher, les autres seront en niveaux de gris. Ceci doit ?tre un " +"hexad?cimal, comme pour les couleurs HTML. Les deux premiers caract?res " +"correspondent au rouge, puis vert puis bleu. #000000 = noir, #FF0000 = " +"rouge, #00FF00 = vert, #FFFF00 = jaune (rouge + bleu), #FFFFFF = blanc." #: modules/video_filter/colorthres.c:68 -#, fuzzy msgid "Color threshold filter" -msgstr "Filtre vid?o de duplication d?image" +msgstr "Filtre vid?o de saturation de couleur" #: modules/video_filter/colorthres.c:77 -#, fuzzy msgid "Saturaton threshold" -msgstr "Seuil de mouvement" +msgstr "Seuil de saturation" #: modules/video_filter/colorthres.c:79 -#, fuzzy msgid "Similarity threshold" -msgstr "Seuil de mouvement" +msgstr "Seuil de similarit?" #: modules/video_filter/crop.c:73 msgid "Crop geometry (pixels)" @@ -21384,13 +21618,12 @@ msgid "Automatic cropping" msgstr "R?duction automatique" #: modules/video_filter/crop.c:77 -#, fuzzy msgid "Automatically detect black borders and crop them." msgstr "Activer la r?duction automatique des marges noires." #: modules/video_filter/crop.c:80 msgid "Ratio max (x 1000)" -msgstr "" +msgstr "Ratio max (x 1000)" #: modules/video_filter/crop.c:81 msgid "" @@ -21400,18 +21633,16 @@ msgid "" msgstr "" #: modules/video_filter/crop.c:83 -#, fuzzy msgid "Manual ratio" -msgstr "Saturation" +msgstr "Ratio manuel" #: modules/video_filter/crop.c:84 msgid "Force a ratio (0 for automatic). Value is x1000: 1333 means 4/3." msgstr "" #: modules/video_filter/crop.c:86 -#, fuzzy msgid "Number of images for change" -msgstr "Nombre de canaux de sortie" +msgstr "" #: modules/video_filter/crop.c:87 msgid "" @@ -21421,9 +21652,8 @@ msgid "" msgstr "" #: modules/video_filter/crop.c:89 -#, fuzzy msgid "Number of lines for change" -msgstr "Nombre de canaux de sortie" +msgstr "" #: modules/video_filter/crop.c:90 msgid "" @@ -21432,9 +21662,8 @@ msgid "" msgstr "" #: modules/video_filter/crop.c:92 -#, fuzzy msgid "Number of non black pixels " -msgstr "Nombre de pixels vides entre les bandes" +msgstr "Nombre de pixels non noirs" #: modules/video_filter/crop.c:93 msgid "" @@ -21452,7 +21681,6 @@ msgid "" msgstr "" #: modules/video_filter/crop.c:99 -#, fuzzy msgid "Luminance threshold " msgstr "Seuil de luminosit?" @@ -21465,104 +21693,85 @@ msgid "Crop video filter" msgstr "Filtre vid?o de r?duction d?image" #: modules/video_filter/crop.c:378 modules/video_filter/crop.c:474 -#, fuzzy msgid "Cropping failed" -msgstr "Filtre vid?o de r?duction d?image" +msgstr "?chec r?duction" #: modules/video_filter/crop.c:379 modules/video_filter/crop.c:475 -#, fuzzy msgid "VLC could not open the video output module." -msgstr "Liste des modules de sortie vid?o" +msgstr "" #: modules/video_filter/croppadd.c:47 -#, fuzzy msgid "Pixels to crop from top" -msgstr "Rognage ? droite" +msgstr "Rognage en haut" #: modules/video_filter/croppadd.c:49 -#, fuzzy msgid "Number of pixels to crop from the top of the image." msgstr "Nombre de pixels ? rogner en haut de la vid?o." #: modules/video_filter/croppadd.c:50 -#, fuzzy msgid "Pixels to crop from bottom" msgstr "Rognage en bas" #: modules/video_filter/croppadd.c:52 -#, fuzzy msgid "Number of pixels to crop from the bottom of the image." msgstr "Nombre de pixels ? rogner en bas de la vid?o." #: modules/video_filter/croppadd.c:53 -#, fuzzy msgid "Pixels to crop from left" msgstr "Rognage ? gauche" #: modules/video_filter/croppadd.c:55 -#, fuzzy msgid "Number of pixels to crop from the left of the image." msgstr "Nombre de pixels ? rogner ? gauche de la vid?o." #: modules/video_filter/croppadd.c:56 -#, fuzzy msgid "Pixels to crop from right" msgstr "Rognage ? droite" #: modules/video_filter/croppadd.c:58 -#, fuzzy msgid "Number of pixels to crop from the right of the image." msgstr "Nombre de pixels ? rogner ? droite de la vid?o." #: modules/video_filter/croppadd.c:60 -#, fuzzy msgid "Pixels to padd to top" -msgstr "Bordures en haut" +msgstr "Ajout en haut" #: modules/video_filter/croppadd.c:62 -#, fuzzy msgid "Number of pixels to padd to the top of the image after cropping." -msgstr "Nombre de pixels ? rogner en haut de la vid?o." +msgstr "Nombre de pixels ? ajouter en haut de la vid?o." #: modules/video_filter/croppadd.c:63 -#, fuzzy msgid "Pixels to padd to bottom" -msgstr "Bordure en bas" +msgstr "Ajout en bas" #: modules/video_filter/croppadd.c:65 -#, fuzzy msgid "Number of pixels to padd to the bottom of the image after cropping." -msgstr "Nombre de pixels ? rogner en bas de la vid?o." +msgstr "Nombre de pixels ? ajouter en bas de la vid?o." #: modules/video_filter/croppadd.c:66 -#, fuzzy msgid "Pixels to padd to left" -msgstr "Bordure ? gauche" +msgstr "Ajout ? gauche" #: modules/video_filter/croppadd.c:68 -#, fuzzy msgid "Number of pixels to padd to the left of the image after cropping." -msgstr "Nombre de pixels ? rogner ? gauche de la vid?o." +msgstr "Nombre de pixels ? ajouter ? gauche de la vid?o." #: modules/video_filter/croppadd.c:69 -#, fuzzy msgid "Pixels to padd to right" -msgstr "Bordure en haut" +msgstr "Ajout ? droite" #: modules/video_filter/croppadd.c:71 -#, fuzzy msgid "Number of pixels to padd to the right of the image after cropping." -msgstr "Nombre de pixels ? rogner ? droite de la vid?o." +msgstr "Nombre de pixels ? ajouter ? droite de la vid?o." #: modules/video_filter/croppadd.c:79 modules/video_filter/scale.c:59 -#: modules/video_filter/swscale.c:63 +#: modules/video_filter/swscale.c:68 modules/video_filter/swscale_maemo.c:52 msgid "Video scaling filter" msgstr "Filtre de redimensionnement" #: modules/video_filter/croppadd.c:93 -#, fuzzy msgid "Padd" -msgstr "En Pause" +msgstr "Ajouter" #: modules/video_filter/deinterlace.c:112 modules/video_output/x11/xvmc.c:130 msgid "Deinterlace mode" @@ -21586,80 +21795,68 @@ msgid "Deinterlacing video filter" msgstr "Filtre de d?sentrelacement vid?o" #: modules/video_filter/dynamicoverlay/dynamicoverlay.c:58 -#, fuzzy msgid "Input FIFO" -msgstr "Entr?e" +msgstr "Entr?e FIFO" #: modules/video_filter/dynamicoverlay/dynamicoverlay.c:59 msgid "FIFO which will be read for commands" msgstr "" #: modules/video_filter/dynamicoverlay/dynamicoverlay.c:61 -#, fuzzy msgid "Output FIFO" -msgstr "Sortie" +msgstr "Sortie FIFO" #: modules/video_filter/dynamicoverlay/dynamicoverlay.c:62 -#, fuzzy msgid "FIFO which will be written to for responses" -msgstr "Fichier dans lequel les ?chantillons audio vont ?tre ?crits." +msgstr "" #: modules/video_filter/dynamicoverlay/dynamicoverlay.c:65 -#, fuzzy msgid "Dynamic video overlay" -msgstr "D?codeur vid?o Dirac" +msgstr "" #: modules/video_filter/dynamicoverlay/dynamicoverlay.c:66 -#, fuzzy msgid "Overlay" -msgstr "Overlays" +msgstr "Incrustations" #: modules/video_filter/erase.c:55 -#, fuzzy msgid "Image mask" -msgstr "Ajustement d?image" +msgstr "" #: modules/video_filter/erase.c:56 msgid "Image mask. Pixels with an alpha value greater than 50% will be erased." msgstr "" #: modules/video_filter/erase.c:59 -#, fuzzy msgid "X coordinate of the mask." -msgstr "Position X du logo" +msgstr "Position X du masque" #: modules/video_filter/erase.c:61 -#, fuzzy msgid "Y coordinate of the mask." -msgstr "Position Y du logo" +msgstr "Position Y du masque." #: modules/video_filter/erase.c:66 -#, fuzzy msgid "Erase video filter" -msgstr "Filtre vid?o effet mur" +msgstr "" #: modules/video_filter/erase.c:67 msgid "Erase" msgstr "Effacer" #: modules/video_filter/extract.c:63 -#, fuzzy msgid "RGB component to extract" -msgstr "Filtre d?inversion vid?o" +msgstr "Composant RVB ? extraire" #: modules/video_filter/extract.c:64 msgid "RGB component to extract. 0 for Red, 1 for Green and 2 for Blue." msgstr "" #: modules/video_filter/extract.c:75 -#, fuzzy msgid "Extract RGB component video filter" -msgstr "Filtre d?inversion vid?o" +msgstr "" #: modules/video_filter/filter_event_info.h:27 -#, fuzzy msgid "video-filter-event" -msgstr "Filtre vid?o" +msgstr "" #: modules/video_filter/gaussianblur.c:47 msgid "Gaussian's std deviation" @@ -21672,25 +21869,20 @@ msgid "" msgstr "" #: modules/video_filter/gaussianblur.c:55 -#, fuzzy msgid "Gaussian blur video filter" -msgstr "Filtre d?inversion vid?o" +msgstr "" #: modules/video_filter/gaussianblur.c:56 -#, fuzzy msgid "Gaussian Blur" -msgstr "Russe" +msgstr "" #: modules/video_filter/gradient.c:63 msgid "Distort mode" msgstr "Mode de distorsion" #: modules/video_filter/gradient.c:64 -#, fuzzy msgid "Distort mode, one of \"gradient\", \"edge\" and \"hough\"." -msgstr "" -"Mode de distorsion, ? wave ?, ? ripple ?, ? gradient ?, ? edge ?, ? ough ? ou ? " -"psychedelic ?." +msgstr "Mode de distorsion, ??gradient??, ??edge?? ou ??hough??." #: modules/video_filter/gradient.c:66 msgid "Gradient image type" @@ -21710,16 +21902,16 @@ msgstr "Effet dessin anim?" #: modules/video_filter/gradient.c:71 msgid "Apply cartoon effect. It is only used by \"gradient\" and \"edge\"." msgstr "" -"Effet \"dessin anim?\". Cet effet ne peut ?tre utilis? que par \"gradient\" " -"et \"edge\"" +"Effet ??dessin anim???. Cet effet ne peut ?tre utilis? que par ??gradient?? et " +"??edge??" #: modules/video_filter/gradient.c:75 msgid "Edge" -msgstr "Contours" +msgstr "??edge?? / Contours" #: modules/video_filter/gradient.c:75 msgid "Hough" -msgstr "Lignes" +msgstr "??hough?? / Lignes" #: modules/video_filter/gradient.c:80 msgid "Gradient video filter" @@ -21764,7 +21956,6 @@ msgid "Logo animation # of loops" msgstr "Nombre de boucles" #: modules/video_filter/logo.c:76 -#, fuzzy msgid "Number of loops for the logo animation.-1 = continuous, 0 = disabled" msgstr "" "Nombre de boucles ? effectuer pour l?animation du logo. 1 = continu, 0 = " @@ -21811,17 +22002,17 @@ msgstr "" "centr?e (0=centr?, 1=gauche, 2=droite, 4=haut, 8=bas, vous pouvez ?galement " "sp?cifier une combinaison des ces valeurs, par exemple 6 = haut-droit)." -#: modules/video_filter/logo.c:104 -msgid "Logo video filter" -msgstr "Filtre vid?o d?insertion de logo" - #: modules/video_filter/logo.c:106 +msgid "Logo sub filter" +msgstr "Filtre d?incrustation de logo" + +#: modules/video_filter/logo.c:107 msgid "Logo overlay" msgstr "Incrustation d?un logo" #: modules/video_filter/logo.c:127 -msgid "Logo sub filter" -msgstr "Filtre d?incrustation de logo" +msgid "Logo video filter" +msgstr "Filtre vid?o d?insertion de logo" #: modules/video_filter/magnify.c:50 msgid "Magnify/Zoom interactive video filter" @@ -21865,9 +22056,8 @@ msgstr "" "signifie qu?il ne disparait jamais." #: modules/video_filter/marq.c:111 -#, fuzzy msgid "Refresh period in ms" -msgstr "Rafra?chir la liste" +msgstr "" #: modules/video_filter/marq.c:112 msgid "" @@ -21934,24 +22124,20 @@ msgid "Y Coordinate of the top-left corner of the mosaic." msgstr "Ordonn?e du coin en haut ? gauche de la mosa?que." #: modules/video_filter/mosaic.c:106 -#, fuzzy msgid "Border width" -msgstr "Largeur de la vid?o" +msgstr "Largeur de la bordure" #: modules/video_filter/mosaic.c:108 -#, fuzzy msgid "Width in pixels of the border between miniatures." msgstr "Largeur de la bordure horizontale autour de la mosa?que." #: modules/video_filter/mosaic.c:109 -#, fuzzy msgid "Border height" -msgstr "Hauteur de la vid?o" +msgstr "Hauteur de la bordure" #: modules/video_filter/mosaic.c:111 -#, fuzzy msgid "Height in pixels of the border between miniatures." -msgstr "Largeur de la bordure horizontale autour de la mosa?que." +msgstr "Hauteur de la bordure verticale autour de la mosa?que." #: modules/video_filter/mosaic.c:113 msgid "Mosaic alignment" @@ -21972,7 +22158,6 @@ msgid "Positioning method" msgstr "M?thode de positionement" #: modules/video_filter/mosaic.c:121 -#, fuzzy msgid "" "Positioning method for the mosaic. auto: automatically choose the best " "number of rows and columns. fixed: use the user-defined number of rows and " @@ -21980,7 +22165,8 @@ msgid "" msgstr "" "M?thode de positionnement. auto : choix automatique du meilleur nombre de " "lignes et de colonnes. fixed : utiliser les valeurs d?finies par " -"l?utilisateur." +"l?utilisateur. offsets : utiliser les d?calages d?finis par l'utilisateur " +"pour chaque image." #: modules/video_filter/mosaic.c:126 modules/video_filter/panoramix.c:85 #: modules/video_filter/wall.c:60 @@ -21988,7 +22174,6 @@ msgid "Number of rows" msgstr "Nombre de lignes" #: modules/video_filter/mosaic.c:128 -#, fuzzy msgid "" "Number of image rows in the mosaic (only used if positionning method is set " "to \"fixed\")." @@ -22036,9 +22221,8 @@ msgstr "" "sont assign?s dans le module \"mosaic-bridge\"." #: modules/video_filter/mosaic.c:150 -#, fuzzy msgid "Offsets in order" -msgstr "Ordre des ?l?ments" +msgstr "" #: modules/video_filter/mosaic.c:152 msgid "" @@ -22062,9 +22246,8 @@ msgid "fixed" msgstr "fixe" #: modules/video_filter/mosaic.c:168 -#, fuzzy msgid "offsets" -msgstr "D?calage horizontal" +msgstr "D?calages" #: modules/video_filter/mosaic.c:178 msgid "Mosaic video sub filter" @@ -22091,23 +22274,20 @@ msgid "Motion detect video filter" msgstr "Filtre de d?tection de mouvement" #: modules/video_filter/motiondetect.c:50 -#, fuzzy msgid "Motion Detect" msgstr "D?tection de mouvement" #: modules/video_filter/noise.c:53 -#, fuzzy msgid "Noise video filter" -msgstr "Filtre vid?o de duplication d?image" +msgstr "Filtre vid?o de bruit" #: modules/video_filter/opencv_example.cpp:67 msgid "OpenCV face detection example filter" msgstr "" #: modules/video_filter/opencv_example.cpp:68 -#, fuzzy msgid "OpenCV example" -msgstr "Ouvre un fichier" +msgstr "Example OpenCV" #: modules/video_filter/opencv_example.cpp:77 msgid "Haar cascade filename" @@ -22118,9 +22298,8 @@ msgid "Name of XML file containing Haar cascade description" msgstr "" #: modules/video_filter/opencv_wrapper.c:70 -#, fuzzy msgid "Use input chroma unaltered" -msgstr "Chroma vid?o" +msgstr "" #: modules/video_filter/opencv_wrapper.c:71 msgid "I420 - first plane is greyscale" @@ -22131,26 +22310,22 @@ msgid "RGB32" msgstr "RGB32" #: modules/video_filter/opencv_wrapper.c:74 -#, fuzzy msgid "Don't display any video" -msgstr "Supprimer les erreurs suivantes" +msgstr "" #: modules/video_filter/opencv_wrapper.c:75 -#, fuzzy msgid "Display the input video" -msgstr "Pr?visualisation de la capture" +msgstr "" #: modules/video_filter/opencv_wrapper.c:75 -#, fuzzy msgid "Display the processed video" -msgstr "Afficher pendant la diffusion" +msgstr "" #: modules/video_filter/opencv_wrapper.c:78 msgid "Show only errors" msgstr "" #: modules/video_filter/opencv_wrapper.c:79 -#, fuzzy msgid "Show errors and warnings" msgstr "Erreurs et avertissements" @@ -22159,19 +22334,16 @@ msgid "Show everything including debug messages" msgstr "" #: modules/video_filter/opencv_wrapper.c:82 -#, fuzzy msgid "OpenCV video filter wrapper" -msgstr "Filtre vid?o ffmpeg" +msgstr "" #: modules/video_filter/opencv_wrapper.c:83 -#, fuzzy msgid "OpenCV" -msgstr "Ouvrir" +msgstr "OpenCV" #: modules/video_filter/opencv_wrapper.c:90 -#, fuzzy msgid "Scale factor (0.1-2.0)" -msgstr "Facteur de brouillage (1-127)" +msgstr "Facteur d'?chelle (0,1-2,0)" #: modules/video_filter/opencv_wrapper.c:91 msgid "" @@ -22180,9 +22352,8 @@ msgid "" msgstr "" #: modules/video_filter/opencv_wrapper.c:94 -#, fuzzy msgid "OpenCV filter chroma" -msgstr "Ouvrir un fichier" +msgstr "" #: modules/video_filter/opencv_wrapper.c:95 msgid "" @@ -22190,27 +22361,24 @@ msgid "" msgstr "" #: modules/video_filter/opencv_wrapper.c:98 -#, fuzzy msgid "Wrapper filter output" -msgstr "Utiliser une sortie en virgule flottante" +msgstr "" #: modules/video_filter/opencv_wrapper.c:99 msgid "Determines what (if any) video is displayed by the wrapper filter" msgstr "" #: modules/video_filter/opencv_wrapper.c:102 -#, fuzzy msgid "Wrapper filter verbosity" -msgstr "Utiliser une sortie en virgule flottante" +msgstr "" #: modules/video_filter/opencv_wrapper.c:103 msgid "Determines wrapper filter verbosity level" msgstr "" #: modules/video_filter/opencv_wrapper.c:106 -#, fuzzy msgid "OpenCV internal filter name" -msgstr "Filtre vid?o ffmpeg" +msgstr "" #: modules/video_filter/opencv_wrapper.c:107 msgid "Name of internal OpenCV plugin filter to use" @@ -22221,7 +22389,6 @@ msgid "Configuration file" msgstr "Fichier de configuration" #: modules/video_filter/osdmenu.c:45 -#, fuzzy msgid "Configuration file for the OSD Menu." msgstr "Fichier de configuration pour le menu OSD." @@ -22302,7 +22469,6 @@ msgid "On Screen Display menu" msgstr "Menu ? l??cran (OSD)" #: modules/video_filter/panoramix.c:82 -#, fuzzy msgid "" "Select the number of horizontal video windows in which to split the video" msgstr "" @@ -22310,7 +22476,6 @@ msgstr "" "vid?o" #: modules/video_filter/panoramix.c:86 -#, fuzzy msgid "Select the number of vertical video windows in which to split the video" msgstr "Nombre de fen?tres dans lesquelles d?couper verticalement la vid?o." @@ -22319,7 +22484,6 @@ msgid "Active windows" msgstr "Fen?tres activ?es" #: modules/video_filter/panoramix.c:90 -#, fuzzy msgid "Comma separated list of active windows, defaults to all" msgstr "Liste de fen?tres actives, s?par?es par des virgules. D?faut = toutes." @@ -22521,9 +22685,8 @@ msgid "Select the White Level of blended zone (Blue or V component)" msgstr "" #: modules/video_filter/panoramix.c:192 -#, fuzzy msgid "Xinerama option" -msgstr "Options de performance" +msgstr "Options Xinerama" #: modules/video_filter/panoramix.c:193 msgid "Uncheck if you have not used xinerama" @@ -22540,32 +22703,32 @@ msgid "" "looking pictures." msgstr "" "Qualit? de post-traitement. Intervalle de 0 ? 6\n" -"Les niveaux ?lev?s demandent consid?rablement plus de puissance CPU, mais " +" Les niveaux ?lev?s demandent consid?rablement plus de puissance CPU, mais " "donnent de meilleures images." #: modules/video_filter/postproc.c:65 msgid "FFmpeg post processing filter chains" msgstr "Cha?nes de filtres de post-traitement de ffmpeg" -#: modules/video_filter/postproc.c:75 -#, fuzzy +#: modules/video_filter/postproc.c:74 msgid "Video post processing filter" -msgstr "Cha?nes de filtres de post-traitement de ffmpeg" +msgstr "Filtres de post-traitement vid?o" -#: modules/video_filter/postproc.c:225 -#, fuzzy +#: modules/video_filter/postproc.c:75 +msgid "Postproc" +msgstr "Post-traitement" + +#: modules/video_filter/postproc.c:227 msgid "Lowest" -msgstr "1 (La plus faible)" +msgstr "La plus faible" -#: modules/video_filter/postproc.c:228 -#, fuzzy +#: modules/video_filter/postproc.c:230 msgid "Highest" -msgstr "6 (La plus haute)" +msgstr "La plus haute" #: modules/video_filter/psychedelic.c:54 -#, fuzzy msgid "Psychedelic video filter" -msgstr "Filtre vid?o effet mur" +msgstr "Filtre vid?o effet psych?d?lique" #: modules/video_filter/puzzle.c:65 modules/video_filter/puzzle.c:66 msgid "Number of puzzle rows" @@ -22577,7 +22740,7 @@ msgstr "Nombre de colonnes du puzzle" #: modules/video_filter/puzzle.c:69 msgid "Make one tile a black slot" -msgstr "" +msgstr "Cr?er un emplacement vide (mode taquin)" #: modules/video_filter/puzzle.c:70 msgid "" @@ -22598,32 +22761,27 @@ msgstr "H?te VNC" #: modules/video_filter/remoteosd.c:76 msgid "VNC hostname or IP address." -msgstr "" +msgstr "H?te ou adresse IP du serveur VNC" #: modules/video_filter/remoteosd.c:78 -#, fuzzy msgid "VNC Port" -msgstr "Format VCD" +msgstr "Port VNC" #: modules/video_filter/remoteosd.c:80 -#, fuzzy msgid "VNC portnumber." -msgstr "num?ro de l?adaptateur XVideo" +msgstr "Port VNC" #: modules/video_filter/remoteosd.c:82 -#, fuzzy msgid "VNC Password" -msgstr "Mot de passe" +msgstr "Mot de passe VNC" #: modules/video_filter/remoteosd.c:84 -#, fuzzy msgid "VNC password." -msgstr "Mot de passe SOCKS" +msgstr "Mot de passe VNC." #: modules/video_filter/remoteosd.c:86 -#, fuzzy msgid "VNC poll interval" -msgstr "Intervalle d?images-cl?" +msgstr "Intervalle d'interrogation VNC" #: modules/video_filter/remoteosd.c:88 msgid "" @@ -22631,16 +22789,14 @@ msgid "" msgstr "" #: modules/video_filter/remoteosd.c:90 -#, fuzzy msgid "VNC polling" -msgstr "Actuellement" +msgstr "Interrogation VNC" #: modules/video_filter/remoteosd.c:92 msgid "Activate VNC polling. Do NOT activate for use as VDR ffnetdev client." msgstr "" #: modules/video_filter/remoteosd.c:94 -#, fuzzy msgid "Mouse events" msgstr "Mouvements de la souris" @@ -22670,14 +22826,12 @@ msgid "Remote-OSD over VNC" msgstr "" #: modules/video_filter/remoteosd.c:121 -#, fuzzy msgid "Remote-OSD" -msgstr "Supprimer" +msgstr "" #: modules/video_filter/ripple.c:53 -#, fuzzy msgid "Ripple video filter" -msgstr "Filtre vid?o de duplication d?image" +msgstr "Filtre vid?o d'ondulation" #: modules/video_filter/rotate.c:58 msgid "Angle in degrees" @@ -22688,9 +22842,8 @@ msgid "Angle in degrees (0 to 359)" msgstr "Angle en degr?s (0 ? 359)" #: modules/video_filter/rotate.c:67 -#, fuzzy msgid "Rotate video filter" -msgstr "Filtre vid?o effet mur" +msgstr "Filtre vid?o rotation" #: modules/video_filter/rss.c:129 msgid "Feed URLs" @@ -22698,14 +22851,13 @@ msgstr "URLs des flux" #: modules/video_filter/rss.c:130 msgid "RSS/Atom feed '|' (pipe) seperated URLs." -msgstr "URLs des flux RSS, s?par?es par des \"|\"" +msgstr "URLs des flux RSS, s?par?es par des ??|??" #: modules/video_filter/rss.c:131 msgid "Speed of feeds" -msgstr "Vtesse des flux" +msgstr "Vitesse des flux" #: modules/video_filter/rss.c:132 -#, fuzzy msgid "Speed of the RSS/Atom feeds in microseconds (bigger is slower)." msgstr "Vitesse du flux RSS (une valeur plus grande ralentit le flux)" @@ -22758,9 +22910,8 @@ msgstr "" "valeurs en les additionant, par exemple 6 = haut-droit)." #: modules/video_filter/rss.c:166 -#, fuzzy msgid "Title display mode" -msgstr "Display X11" +msgstr "Mode d'affichage du titre" #: modules/video_filter/rss.c:167 msgid "" @@ -22770,16 +22921,15 @@ msgstr "" #: modules/video_filter/rss.c:182 msgid "Don't show" -msgstr "" +msgstr "Cacher" #: modules/video_filter/rss.c:182 -#, fuzzy msgid "Always visible" -msgstr "Toujours au-dessus" +msgstr "Toujours visible" #: modules/video_filter/rss.c:182 msgid "Scroll with feed" -msgstr "" +msgstr "D?filer avec le flux" #: modules/video_filter/rss.c:222 msgid "RSS and Atom feed display" @@ -22789,83 +22939,164 @@ msgstr "Incrustation de flux RSS" msgid "RV32 conversion filter" msgstr "Filtre de conversion RV32" +#: modules/video_filter/scene.c:57 +msgid "Image format" +msgstr "Format de l?image" + +#: modules/video_filter/scene.c:58 +msgid "Format of the output images (png or jpg)." +msgstr "Format des images en sortie (PNG ou JPEG)." + +#: modules/video_filter/scene.c:61 +msgid "" +"You can enforce the image width. By default (-1) VLC will adapt to the video " +"characteristics." +msgstr "" +"Forcer la largeur de l?image. Par d?faut (-1) VLC s?adaptera aux propri?t?s " +"de la vid?o." + +#: modules/video_filter/scene.c:66 +msgid "" +"You can enforce the image height. By default (-1) VLC will adapt to the " +"video characteristics." +msgstr "" +"Forcer la hauteur de l?image. Par d?faut (-1) VLC s?adaptera aux propri?t?s " +"de la vid?o." + +#: modules/video_filter/scene.c:70 +msgid "Recording ratio" +msgstr "Ratio d?enregistrement" + +#: modules/video_filter/scene.c:71 +msgid "" +"Ratio of images to record. 3 means that one image out of three is recorded." +msgstr "" +"Quota d?images enregistr?es. 3 signifie qu?un tiers des images seront " +"enregistr?es." + +#: modules/video_filter/scene.c:74 +msgid "Filename prefix" +msgstr "Pr?fixe du nom de fichier" + +#: modules/video_filter/scene.c:75 +msgid "" +"Prefix of the output images filenames. Output filenames will have the " +"\"prefixNUMBER.format\" form if replace is not true." +msgstr "" +"Pr?fixe du nom de fichier. Le fichier r?sultant aura un nom de la forme " +"??pr?fixeNOMBRE.format??." + +#: modules/video_filter/scene.c:79 +msgid "Directory path prefix" +msgstr "Dossier de destination" + +#: modules/video_filter/scene.c:80 +msgid "" +"Directory path where images files should be saved.If not set, then images " +"will be automatically saved in users homedir." +msgstr "" +"Chemin du dossier o? les fichiers images seront enregistr?es. Si ceci n'est pas" +" renseign?, les images iront dans le dossier personnel." + +#: modules/video_filter/scene.c:84 +msgid "Always write to the same file" +msgstr "Toujours ?crire dans le m?me fichier" + +#: modules/video_filter/scene.c:85 +msgid "" +"Always write to the same file instead of creating one file per image. In " +"this case, the number is not appended to the filename." +msgstr "" +"Toujours ?crire dans le m?me fichier au lieu de cr?e un fichier par image. " +"Dans ce cas, le nombre n?est pas joint au nom du fichier." + +#: modules/video_filter/scene.c:95 +msgid "Scene filter" +msgstr "Filtres de sc?ne" + +#: modules/video_filter/scene.c:96 +msgid "Scene video filter" +msgstr "Filtre vid?o de sc?ne" + #: modules/video_filter/sharpen.c:47 msgid "Sharpen strength (0-2)" -msgstr "" +msgstr "Niveau de nettet? (0-2)" #: modules/video_filter/sharpen.c:48 -#, fuzzy msgid "Set the Sharpen strength, between 0 and 2. Defaults to 0.05." -msgstr "Fixe le contraste de l?image, entre 0 et 2. 1 par d?faut." +msgstr "Fixe le niveau de nettet?, entre 0 et 2. 0,05 par d?faut." #: modules/video_filter/sharpen.c:66 msgid "Augment contrast between contours." -msgstr "" +msgstr "Augmenter le contraste entre les contours." #: modules/video_filter/sharpen.c:67 -#, fuzzy msgid "Sharpen video filter" -msgstr "Filtre vid?o de r?duction d?image" +msgstr "Filtre am?lioration nettet?" -#: modules/video_filter/swscale.c:52 +#: modules/video_filter/swscale.c:57 msgid "Scaling mode" msgstr "Mode de redimensionnement" -#: modules/video_filter/swscale.c:53 +#: modules/video_filter/swscale.c:58 msgid "Scaling mode to use." msgstr "Mode de redimensionnement" -#: modules/video_filter/swscale.c:57 +#: modules/video_filter/swscale.c:62 msgid "Fast bilinear" msgstr "Bilin?aire rapide" -#: modules/video_filter/swscale.c:57 +#: modules/video_filter/swscale.c:62 msgid "Bilinear" msgstr "Bilin?aire" -#: modules/video_filter/swscale.c:57 +#: modules/video_filter/swscale.c:62 msgid "Bicubic (good quality)" msgstr "Bicubique (bonne qualit?)" -#: modules/video_filter/swscale.c:58 +#: modules/video_filter/swscale.c:63 msgid "Experimental" msgstr "Exp?rimental" -#: modules/video_filter/swscale.c:58 +#: modules/video_filter/swscale.c:63 msgid "Nearest neighbour (bad quality)" msgstr "Plus proche voisin (mauvaise qualit?)" -#: modules/video_filter/swscale.c:59 +#: modules/video_filter/swscale.c:64 msgid "Area" msgstr "Zone" -#: modules/video_filter/swscale.c:59 +#: modules/video_filter/swscale.c:64 msgid "Luma bicubic / chroma bilinear" msgstr "Bicubique / bilin?aire" -#: modules/video_filter/swscale.c:59 +#: modules/video_filter/swscale.c:64 msgid "Gauss" msgstr "Gaussien" -#: modules/video_filter/swscale.c:60 +#: modules/video_filter/swscale.c:65 msgid "SincR" msgstr "SincR" -#: modules/video_filter/swscale.c:60 +#: modules/video_filter/swscale.c:65 msgid "Lanczos" msgstr "Lanczos" -#: modules/video_filter/swscale.c:60 +#: modules/video_filter/swscale.c:65 msgid "Bicubic spline" msgstr "Courbe bicubique" +#: modules/video_filter/swscale.c:69 +msgid "Swscale" +msgstr "?chelle" + #: modules/video_filter/transform.c:65 msgid "Transform type" msgstr "Type de transformation" #: modules/video_filter/transform.c:66 msgid "One of '90', '180', '270', 'hflip' and 'vflip'" -msgstr "Choisir parmi ? 90 ?, ? 180 ?, ? 270 ?, ? hflip ? et ? vflip ?" +msgstr "Choisir parmi ??90??, ??180??, ??270??, ??hflip?? et ??vflip??" #: modules/video_filter/transform.c:69 msgid "Rotate by 90 degrees" @@ -22919,68 +23150,77 @@ msgstr "Filtre vid?o effet mur" #: modules/video_filter/wall.c:76 msgid "Image wall" -msgstr "Mur d?image" +msgstr "Mur d'image" #: modules/video_filter/wave.c:54 -#, fuzzy msgid "Wave video filter" -msgstr "Filtre vid?o effet mur" +msgstr "Filtre vid?o effet vagues" + +#: modules/video_filter/yuvp.c:48 +msgid "YUVP converter" +msgstr "Convertisseur YUVP" #: modules/video_output/aa.c:58 msgid "ASCII Art" -msgstr "Art ASCII" +msgstr "ASCII" #: modules/video_output/aa.c:61 msgid "ASCII-art video output" -msgstr "Sortie vid?o en art ASCII" +msgstr "Sortie vid?o ??ASCII??" #: modules/video_output/caca.c:83 msgid "Color ASCII art video output" -msgstr "Sortie vid?o en art ASCII en couleurs" +msgstr "Sortie vid?o ??ASCII couleur??" #: modules/video_output/directfb.c:72 msgid "DirectFB video output http://www.directfb.org/" -msgstr "Sorties vid?os DirectFB http://www.directfb.org/" +msgstr "Sortie vid?o ??DirectFB http://www.directfb.org/??" -#: modules/video_output/fb.c:82 +#: modules/video_output/fb.c:83 msgid "Run fb on current tty." -msgstr "" +msgstr "Lancer ??fb?? sur le terminal courant." -#: modules/video_output/fb.c:84 +#: modules/video_output/fb.c:85 msgid "" "Run framebuffer on current TTY device (default enabled). (disable tty " "handling with caution)" msgstr "" +"Lancer ??fb?? sur le sur le p?riph?rique TTY courant (valid? par d?faut). " +"Inhibez ceci avec pr?cautions?!" -#: modules/video_output/fb.c:95 -#, fuzzy +#: modules/video_output/fb.c:96 msgid "Framebuffer resolution to use." -msgstr "P?riph?rique du framebuffer" +msgstr "R?solution de la m?moire d'image" -#: modules/video_output/fb.c:97 +#: modules/video_output/fb.c:98 msgid "" "Select the resolution for the framebuffer. Currently it supports the values " "0=QCIF 1=CIF 2=NTSC 3=PAL, 4=auto (default 4=auto)" msgstr "" +"S?lectionner la r?solution de la m?moire d'image. Les valeurs support?es " +"sont 0=QCIF 1=CIF 2=NTSC 3=PAL, 4=auto (d?fault 4=auto)" -#: modules/video_output/fb.c:100 -#, fuzzy +#: modules/video_output/fb.c:101 msgid "Framebuffer uses hw acceleration." -msgstr "P?riph?rique du framebuffer" +msgstr "La m?moire d'image utilise les acc?l?rations mat?rielles" -#: modules/video_output/fb.c:102 +#: modules/video_output/fb.c:103 msgid "" "If your framebuffer supports hardware acceleration or does double buffering " "in hardware then you must disable this option. It then does double buffering " "in software." msgstr "" +"Si votre p?riph?rique ??fb?? supporte les acc?l?rations mat?rielles ou permet " +"le double-tampon dans le mat?riel alors vous devez inhiber cette option (car " +"elle active un double-tampon logiciel)." -#: modules/video_output/fb.c:121 -msgid "GNU/Linux console framebuffer video output" -msgstr "Sortie vid?o pour le framebuffer de GNU/Linux" +#: modules/video_output/fb.c:122 +msgid "GNU/Linux framebuffer video output" +msgstr "Sortie vid?o ??framebuffer console GNU/Linux??" #: modules/video_output/ggi.c:59 modules/video_output/x11/glx.c:104 #: modules/video_output/x11/x11.c:55 modules/video_output/x11/xvideo.c:61 +#: modules/video_output/xcb/xcb.c:46 msgid "X11 display" msgstr "Display X11" @@ -22996,98 +23236,27 @@ msgstr "" msgid "HD1000 video output" msgstr "Sortie audio HD1000" -#: modules/video_output/image.c:53 -msgid "Image format" -msgstr "Format de l?image" - -#: modules/video_output/image.c:54 -msgid "Format of the output images (png or jpg)." -msgstr "Format des images en sortie (png ou jpg)." - -#: modules/video_output/image.c:57 -#, fuzzy -msgid "" -"You can enforce the image width. By default (-1) VLC will adapt to the video " -"characteristics." -msgstr "" -"Forcer la largeur de l?image. Par d?faut (-1) VLC s?adapte aux propri?t?s de " -"la vid?o." - -#: modules/video_output/image.c:62 -#, fuzzy -msgid "" -"You can enforce the image height. By default (-1) VLC will adapt to the " -"video characteristics." -msgstr "" -"Forcer la hauteur de l?image ici. Par d?faut VLC s?adaptera aux propri?t?s " -"de la vid?o." - -#: modules/video_output/image.c:66 -msgid "Recording ratio" -msgstr "Ratio d?enregistrement" - -#: modules/video_output/image.c:67 -msgid "" -"Ratio of images to record. 3 means that one image out of three is recorded." -msgstr "" -"Quota d?images enregistr?es. 3 signifie qu?un tiers des images sont " -"enregistr?es." - -#: modules/video_output/image.c:70 -msgid "Filename prefix" -msgstr "Pr?fixe du nom de fichier" - -#: modules/video_output/image.c:71 -msgid "" -"Prefix of the output images filenames. Output filenames will have the " -"\"prefixNUMBER.format\" form." -msgstr "" -"Pr?fixe du nom de fichier. Le fichier r?sultant aura un nom de la forme " -"\"pr?fixeNOMBRE.format\"." - -#: modules/video_output/image.c:75 -msgid "Always write to the same file" -msgstr "Toujours ?crire dans le m?me fichier" - -#: modules/video_output/image.c:76 -msgid "" -"Always write to the same file instead of creating one file per image. In " -"this case, the number is not appended to the filename." -msgstr "" -"Toujours ?crire dans le m?me fichier au lieu de cr?e un fichier par image. " -"Dans ce cas, le nombre n?est pas joint au nom du fichier." - -#: modules/video_output/image.c:87 -msgid "Image video output" -msgstr "Sortie vid?o Image" - #: modules/video_output/mga.c:62 msgid "Matrox Graphic Array video output" -msgstr "Sortie vid?o Matrox Graphic Array" +msgstr "Sortie vid?o ??Matrox Graphic Array??" -#: modules/video_output/msw/direct3d.c:112 +#: modules/video_output/msw/direct3d.c:118 msgid "DirectX 3D video output" -msgstr "Sortie vid?o DirectX 3D" - -#: modules/video_output/msw/directx.c:131 -msgid "Use hardware YUV->RGB conversions" -msgstr "Utiliser les conversions YUV->RGB mat?rielles" +msgstr "Sortie vid?o ??DirectX 3D??" #: modules/video_output/msw/directx.c:133 -#, fuzzy msgid "" "Try to use hardware acceleration for YUV->RGB conversions. This option " "doesn't have any effect when using overlays." msgstr "" "Essayer d?utiliser l?acc?l?ration mat?rielle pour les conversions YUV->RGB. " -"Cette option reste sans effet si l?overlay est utilis?." +"Cette option reste sans effet si le recouvrement est utilis?." #: modules/video_output/msw/directx.c:136 msgid "Use video buffers in system memory" msgstr "Utiliser les tampons vid?o dans la m?moire syst?me" #: modules/video_output/msw/directx.c:138 -#, fuzzy msgid "" "Create video buffers in system memory instead of video memory. This isn't " "recommended as usually using video memory allows to benefit from more " @@ -23102,7 +23271,7 @@ msgstr "" #: modules/video_output/msw/directx.c:143 msgid "Use triple buffering for overlays" -msgstr "Utiliser trois buffers vid?o pour l?overlay" +msgstr "Utiliser trois buffers vid?o pour les recouvrements" #: modules/video_output/msw/directx.c:145 msgid "" @@ -23124,7 +23293,7 @@ msgid "" msgstr "" "Dans une configuration ? plusieurs moniteurs, vous pouvez sp?cifier le nom " "du p?riph?rique Windows correspondant au moniteur sur lequel vous d?sirez " -"avoir la vid?o. Par exemple, ? \\\\.\\DISPLAY 1 ? ou ? \\\\.\\DISPLAY 2 ?." +"avoir la vid?o. Par exemple, ??\\\\.\\DISPLAY 1?? ou ??\\\\.\\DISPLAY 2??." #: modules/video_output/msw/directx.c:154 msgid "Enable wallpaper mode " @@ -23137,180 +23306,101 @@ msgid "" "desktop must not already have a wallpaper." msgstr "" "Le mode papier peint vous permet d?afficher la vid?o en tant que fond " -"d??cran. Pour que cette fonctionnalit? marche, vous devez ?tre en mode ? " -"overlay ? et le bureau ne doit pas d?j? avoir un papier peint." +"d??cran. Pour que cette fonctionnalit? marche, vous devez ?tre en mode " +"??overlay?? et le bureau ne doit pas d?j? avoir un papier peint." #: modules/video_output/msw/directx.c:182 msgid "DirectX video output" -msgstr "Sortie vid?o DirectX" +msgstr "Sortie vid?o ??DirectX??" -#: modules/video_output/msw/directx.c:321 +#: modules/video_output/msw/directx.c:325 msgid "Wallpaper" msgstr "Papier peint" -#: modules/video_output/msw/glwin32.c:69 modules/video_output/opengl.c:189 +#: modules/video_output/msw/glwin32.c:69 modules/video_output/opengl.c:118 msgid "OpenGL video output" -msgstr "Sortie vid?o OpenGL" +msgstr "Sortie vid?o ??OpenGL??" -#: modules/video_output/msw/wingdi.c:140 +#: modules/video_output/msw/wingdi.c:132 msgid "Windows GAPI video output" -msgstr "Sortie vid?o Windows GAPI" +msgstr "Sortie vid?o ??Windows GAPI??" -#: modules/video_output/msw/wingdi.c:144 +#: modules/video_output/msw/wingdi.c:136 msgid "Windows GDI video output" -msgstr "Sortie vid?o Windows GDI" - -#: modules/video_output/opengl.c:126 modules/video_output/opengl.c:182 -msgid "Cube" -msgstr "Cube" +msgstr "Sortie vid?o ??Windows GDI??" -#: modules/video_output/opengl.c:126 modules/video_output/opengl.c:182 -msgid "Transparent Cube" -msgstr "Cube transparent" +#: modules/video_output/omapfb.c:88 +msgid "OMAP Framebuffer device" +msgstr "P?riph?rique framebuffer OMAP" -#: modules/video_output/opengl.c:127 -msgid "Cylinder" -msgstr "Cylindre" - -#: modules/video_output/opengl.c:127 -msgid "Torus" -msgstr "Tore" - -#: modules/video_output/opengl.c:127 -msgid "Sphere" -msgstr "Sph?re" - -#: modules/video_output/opengl.c:127 -msgid "SQUAREXY" -msgstr "SQUAREXY" - -#: modules/video_output/opengl.c:127 -msgid "SQUARER" -msgstr "SQUARER" - -#: modules/video_output/opengl.c:127 -msgid "ASINXY" -msgstr "ASINXY" - -#: modules/video_output/opengl.c:127 -msgid "ASINR" -msgstr "ASINR" - -#: modules/video_output/opengl.c:127 -msgid "SINEXY" -msgstr "SINEXY" - -#: modules/video_output/opengl.c:127 -msgid "SINER" -msgstr "SINER" - -#: modules/video_output/opengl.c:155 -msgid "OpenGL sampling accuracy " +#: modules/video_output/omapfb.c:90 +msgid "OMAP Framebuffer device to use for rendering (usually /dev/fb0)." msgstr "" +"P?riph?rique framebuffer OMAP ? utiliser pour le rendu (g?n?ralement /dev/fb0)." -#: modules/video_output/opengl.c:156 -msgid "Select the accuracy of 3D object sampling(1 = min and 10 = max)" +#: modules/video_output/omapfb.c:94 +msgid "" +"Force use of a specific chroma for output. Default is Y420 (specific to N770/" +"N8xx hardware)." msgstr "" +"Forcer l?utilisation d?un chroma sp?cifique pour la sortie vid?o. Le d?faut " +"est Y420 (sp?cifique au mat?riel N770/N8xx)." -#: modules/video_output/opengl.c:157 -msgid "OpenGL Cylinder radius" -msgstr "Rayon du cylindre OpenGL" - -#: modules/video_output/opengl.c:158 -#, fuzzy -msgid "Radius of the OpenGL cylinder effect, if enabled" -msgstr "Vitesse de rotation de l?effet cube OpenGL, s?il est activ?" - -#: modules/video_output/opengl.c:159 -#, fuzzy -msgid "Point of view x-coordinate" -msgstr "Position X au d?codage" - -#: modules/video_output/opengl.c:160 -#, fuzzy -msgid "Point of view (X coordinate) of the cube/cylinder effect, if enabled." -msgstr "Vitesse de rotation de l?effet cube OpenGL, s?il est activ?" - -#: modules/video_output/opengl.c:162 -#, fuzzy -msgid "Point of view y-coordinate" -msgstr "Position X au d?codage" - -#: modules/video_output/opengl.c:163 -#, fuzzy -msgid "Point of view (Y coordinate) of the cube/cylinder effect, if enabled." -msgstr "Vitesse de rotation de l?effet cube OpenGL, s?il est activ?" +#: modules/video_output/omapfb.c:96 +msgid "Embed the overlay" +msgstr "" -#: modules/video_output/opengl.c:165 -#, fuzzy -msgid "Point of view z-coordinate" -msgstr "Position X au d?codage" +#: modules/video_output/omapfb.c:98 +msgid "Embed the framebuffer overlay into a X11 window" +msgstr "" -#: modules/video_output/opengl.c:166 -#, fuzzy -msgid "Point of view (Z coordinate) of the cube/cylinder effect, if enabled." -msgstr "Vitesse de rotation de l?effet cube OpenGL, s?il est activ?" +#: modules/video_output/omapfb.c:110 +msgid "OMAP framebuffer video output" +msgstr "Sortie vid?o ??framebuffer OMAP??" -#: modules/video_output/opengl.c:169 -#, fuzzy +#: modules/video_output/opengl.c:111 msgid "OpenGL Provider" -msgstr "Sortie vid?o OpenGL" +msgstr "Module OpenGL" -#: modules/video_output/opengl.c:170 -#, fuzzy +#: modules/video_output/opengl.c:112 msgid "Allows you to modify what OpenGL provider should be used" -msgstr "" -"Ceci vous permet de sp?cifier la taille du tampon pour le contr?le de d?bit." - -#: modules/video_output/opengl.c:171 -msgid "OpenGL cube rotation speed" -msgstr "Vitesse de rotation du cube OpenGL" - -#: modules/video_output/opengl.c:172 -msgid "Rotation speed of the OpenGL cube effect, if enabled." -msgstr "Vitesse de rotation de l?effet cube OpenGL, s?il est activ?" - -#: modules/video_output/opengl.c:176 -msgid "Several visual OpenGL effects are available." -msgstr "Plusieurs effets OpenGL sont disponibles." +msgstr "Permet de modifier le module OpenGL ? utiliser" #: modules/video_output/opengllayer.m:96 msgid "Core Animation OpenGL Layer (Mac OS X)" -msgstr "" +msgstr "Couche d'animation Core OpenGL (Max OS X)" #: modules/video_output/qte/qte.cpp:82 msgid "QT Embedded display" -msgstr "Display Qt Embedded" +msgstr "Affichage ??Qt Embedded??" #: modules/video_output/qte/qte.cpp:84 msgid "" "Qt Embedded hardware display to use. By default VLC will use the value of " "the DISPLAY environment variable." msgstr "" -"Affichage Qt Embedded ? utiliser. Par d?faut VLC utilisera la valeur de la " -"variable d?environnement DISPLAY." +"Affichage ??Qt Embedded?? ? utiliser. Par d?faut VLC utilisera la valeur de " +"la variable d?environnement DISPLAY." #: modules/video_output/qte/qte.cpp:120 msgid "QT Embedded video output" -msgstr "Sortie vid?o Qt Embedded" +msgstr "Sortie vid?o ??Qt Embedded??" #: modules/video_output/sdl.c:115 -#, fuzzy msgid "SDL chroma format" -msgstr "Format chromatographique XVimage" +msgstr "Format chromatographique SDL" #: modules/video_output/sdl.c:117 -#, fuzzy msgid "" "Force the SDL renderer to use a specific chroma format instead of trying to " "improve performances by using the most efficient one." msgstr "" -"Forcer le moteur de rendu XVid?o ? utiliser un format d?image sp?cifique au " +"Forcer le moteur de rendu SDL ? utiliser un format d?image sp?cifique au " "lieu d?essayer d?am?liorer les performances en utilisant le plus efficace" #: modules/video_output/sdl.c:127 msgid "Simple DirectMedia Layer video output" -msgstr "Sortie vid?o Simple DirectMedia Layer" +msgstr "Sortie vid?o ??Simple DirectMedia Layer??" #: modules/video_output/snapshot.c:65 msgid "Snapshot width" @@ -23335,8 +23425,7 @@ msgstr "Chroma" #: modules/video_output/snapshot.c:72 msgid "" "Output chroma for the snapshot image (a 4 character string, like \"RV32\")." -msgstr "" -"Chroma de sortie d?sir? pour la capture (4 caract?res, comme \"RV32\")." +msgstr "Chroma de sortie d?sir? pour la capture (4 caract?res, comme ??RV32??)." #: modules/video_output/snapshot.c:75 msgid "Cache size (number of images)" @@ -23347,82 +23436,48 @@ msgid "Snapshot cache size (number of images to keep)." msgstr "Taille du cache de capture (nombre d?images ? garder)." #: modules/video_output/snapshot.c:80 -msgid "Snapshot module" +msgid "Snapshot output" msgstr "Module de capture" -#: modules/video_output/svgalib.c:60 +#: modules/video_output/svgalib.c:61 msgid "SVGAlib video output" msgstr "Sortie vid?o SVGAlib" -#: modules/video_output/vmem.c:51 -msgid "Video memory buffer width." -msgstr "" - -#: modules/video_output/vmem.c:54 -#, fuzzy -msgid "Video memory buffer height." -msgstr "Hauteur de la vid?o" - #: modules/video_output/vmem.c:56 -#, fuzzy msgid "Pitch" -msgstr "Chemin d?acc?s" +msgstr "Pas" #: modules/video_output/vmem.c:57 msgid "Video memory buffer pitch in bytes." -msgstr "" +msgstr "Pas en octets du tampon de m?moire vid?o" #: modules/video_output/vmem.c:60 -#, fuzzy msgid "" "Output chroma for the memory image as a 4-character string, eg. \"RV32\"." -msgstr "" -"Chroma de sortie d?sir? pour la capture (4 caract?res, comme \"RV32\")." - -#: modules/video_output/vmem.c:63 -#, fuzzy -msgid "Lock function" -msgstr "Emplacement :" +msgstr "Chroma de sortie d?sir? pour la capture (4 caract?res, comme ??RV32??)." #: modules/video_output/vmem.c:64 msgid "" -"Address of the locking callback function. This function must return a valid " -"memory address for use by the video renderer." -msgstr "" - -#: modules/video_output/vmem.c:68 -#, fuzzy -msgid "Unlock function" -msgstr "Synchronisation de l?horloge" - -#: modules/video_output/vmem.c:69 -msgid "Address of the unlocking callback function" -msgstr "" - -#: modules/video_output/vmem.c:71 -msgid "Callback data" -msgstr "" - -#: modules/video_output/vmem.c:72 -msgid "Data for the locking and unlocking functions" +"Address of the locking callback function. This function must fill in valid " +"plane memory address information for use by the video renderer." msgstr "" +"Adresse de la fonction de retour pour le blocage. Cette fonction doit " +"retourner une adresse m?moire valide pour l'utilisation par le moteur de " +"rendu vid?o." #: modules/video_output/vmem.c:75 -#, fuzzy -msgid "Video memory module" -msgstr "Module de filtre vid?o" +msgid "Video memory output" +msgstr "Module m?moire vid?o" #: modules/video_output/vmem.c:76 -#, fuzzy msgid "Video memory" -msgstr "Port vid?o" +msgstr "M?moire vid?o" #: modules/video_output/x11/glx.c:90 modules/video_output/x11/xvideo.c:47 msgid "XVideo adaptor number" -msgstr "num?ro de l?adaptateur XVideo" +msgstr "Num?ro de l?adaptateur XVideo" #: modules/video_output/x11/glx.c:92 -#, fuzzy msgid "" "If your graphics card provides several adaptors, you have to choose which " "one will be used (you shouldn't have to change this)." @@ -23446,7 +23501,7 @@ msgid "" "2) Completely bypass the window manager, but then nothing will be able to " "show on top of the video." msgstr "" -"Il y a deus m?thodes pour passer en plein ?cran, chacune aves ses " +"Il y a deux m?thodes pour passer en plein ?cran, chacune avec ses " "inconv?nients :\n" "1) Laisser le gestionnaire de fen?tre g?rer la fen?tre plein ?cran (mode par " "d?faut). Mais les objects comme les barres des t?ches seront probablement au-" @@ -23455,7 +23510,7 @@ msgstr "" "sera affichable au-dessus de la vid?o." #: modules/video_output/x11/glx.c:106 modules/video_output/x11/x11.c:57 -#: modules/video_output/x11/xvideo.c:63 +#: modules/video_output/x11/xvideo.c:63 modules/video_output/xcb/xcb.c:48 msgid "" "X11 hardware display to use. By default VLC will use the value of the " "DISPLAY environment variable." @@ -23465,11 +23520,13 @@ msgstr "" #: modules/video_output/x11/glx.c:109 modules/video_output/x11/x11.c:60 #: modules/video_output/x11/xvideo.c:71 modules/video_output/x11/xvmc.c:121 +#: modules/video_output/xcb/xcb.c:51 msgid "Use shared memory" msgstr "Utiliser la m?moire partag?e" #: modules/video_output/x11/glx.c:111 modules/video_output/x11/x11.c:62 #: modules/video_output/x11/xvideo.c:73 modules/video_output/x11/xvmc.c:123 +#: modules/video_output/xcb/xcb.c:53 msgid "Use shared memory to communicate between VLC and the X server." msgstr "" "Utiliser la m?moire partag?e pour communiquer entre VLC et le serveur X." @@ -23477,7 +23534,7 @@ msgstr "" #: modules/video_output/x11/glx.c:113 modules/video_output/x11/x11.c:64 #: modules/video_output/x11/xvideo.c:75 msgid "Screen for fullscreen mode." -msgstr "Ecran ? utiliser pour le mode plein ?cran." +msgstr "?cran ? utiliser pour le mode plein ?cran." #: modules/video_output/x11/glx.c:115 modules/video_output/x11/x11.c:66 #: modules/video_output/x11/xvideo.c:77 @@ -23489,16 +23546,14 @@ msgstr "" "exemple, mettez 0 pour le premier ?cran, 1 pour le second." #: modules/video_output/x11/glx.c:122 -#, fuzzy msgid "OpenGL(GLX) provider" -msgstr "Sortie vid?o OpenGL" +msgstr "Sortie vid?o ??OpenGL(GLX)??" #: modules/video_output/x11/x11.c:81 msgid "X11 video output" -msgstr "Sortie vid?o X11" +msgstr "Sortie vid?o ??X11??" #: modules/video_output/x11/xvideo.c:49 -#, fuzzy msgid "" "If your graphics card provides several adaptors, you need to choose which " "one will be used (you shouldn't have to change this)." @@ -23517,19 +23572,17 @@ msgid "" "to improve performances by using the most efficient one." msgstr "" "Forcer le moteur de rendu XVid?o ? utiliser un format d?image sp?cifique au " -"lieu d?essayer d?am?liorer les performances en utilisant le plus efficace" +"lieu d?essayer d?am?liorer les performances en utilisant le plus efficace." #: modules/video_output/x11/xvideo.c:95 msgid "XVideo extension video output" -msgstr "Sortie vid?o extension XVideo" +msgstr "Sortie vid?o ??extension XVideo??" #: modules/video_output/x11/xvmc.c:97 -#, fuzzy msgid "XVMC adaptor number" -msgstr "num?ro de l?adaptateur XVideo" +msgstr "num?ro de l?adaptateur XVMC" #: modules/video_output/x11/xvmc.c:99 -#, fuzzy msgid "" "If you graphics card provides several adaptors, this option allows you to " "choose which one will be used (you shouldn't have to change this)." @@ -23539,12 +23592,10 @@ msgstr "" "cette valeur)." #: modules/video_output/x11/xvmc.c:111 -#, fuzzy msgid "X11 display name" msgstr "Display X11" #: modules/video_output/x11/xvmc.c:113 -#, fuzzy msgid "" "Specify the X11 hardware display you want to use. By default VLC will use " "the value of the DISPLAY environment variable." @@ -23553,12 +23604,10 @@ msgstr "" "de la variable d?environnement DISPLAY." #: modules/video_output/x11/xvmc.c:125 -#, fuzzy msgid "Screen to be used for fullscreen mode." msgstr "Choisissez l??cran ? utiliser pour le mode plein ?cran" #: modules/video_output/x11/xvmc.c:127 -#, fuzzy msgid "" "Choose the screen you want to use in fullscreen mode. For instance set it to " "0 for first screen, 1 for the second." @@ -23571,17 +23620,50 @@ msgid "You can choose the default deinterlace mode" msgstr "Vous pouvez choisir le mode de d?sentrelacement par d?faut" #: modules/video_output/x11/xvmc.c:134 -#, fuzzy msgid "You can choose the crop style to apply." -msgstr "Vous pouvez choisir le mode de redimensionnement par d?faut" +msgstr "Vous pouvez choisir le mode de redimensionnement par d?faut." #: modules/video_output/x11/xvmc.c:151 -#, fuzzy msgid "XVMC extension video output" -msgstr "Sortie vid?o extension XVideo" +msgstr "Sortie vid?o ??extension XVMC??" + +#: modules/video_output/xcb/xcb.c:62 +msgid "XCB" +msgstr "XCB" + +#: modules/video_output/xcb/xcb.c:63 +msgid "(Experimental) XCB video output" +msgstr "Sortie vid?o ??XCB?? (exp?rimental)" + +#: modules/video_output/yuv.c:51 +msgid "device, fifo or filename" +msgstr "p?riph?rique, fifo ou nom de fichier" + +#: modules/video_output/yuv.c:52 +msgid "device, fifo or filename to write yuv frames too." +msgstr "p?riph?rique, fifo ou nom de fichier o? ?crire les trames YUV." + +#: modules/video_output/yuv.c:58 +msgid "YUV4MPEG2 header (default disabled)" +msgstr "En-t?te YUV4MPEG2 (d?sactiv? par d?faut)" + +#: modules/video_output/yuv.c:59 +msgid "" +"The YUV4MPEG2 header is compatible with mplayer yuv video ouput and requires " +"YV12/I420 fourcc. By default vlc writes the fourcc of the picture frame into " +"the output destination." +msgstr "" + +#: modules/video_output/yuv.c:66 +msgid "YUV output" +msgstr "Sortie YUV" + +#: modules/video_output/yuv.c:67 +msgid "YUV video output" +msgstr "Sortie vid?o ??YUV??" #: modules/visualization/galaktos/plugin.c:48 -msgid "GaLaktos visualization plugin" +msgid "GaLaktos visualization" msgstr "Module de visualisation GaLaktos" #: modules/visualization/goom.c:61 @@ -23597,8 +23679,9 @@ msgid "" "This allows you to set the resolution of the Goom display (bigger resolution " "will be prettier but more CPU intensive)." msgstr "" -"Ceci vous permet de modifier la r?solution de la fen?tre Goom (une r?soution " -"plus ?lev?e aura un meilleur aspect mais consommera plus de ressources)." +"Ceci vous permet de modifier la r?solution de la fen?tre Goom (une " +"r?solution plus ?lev?e aura un meilleur aspect mais consommera plus de " +"ressources)." #: modules/visualization/goom.c:66 msgid "Goom animation speed" @@ -23638,16 +23721,16 @@ msgid "The height of the effects video window, in pixels." msgstr "Hauteur de la fen?tre des effets vid?o, en pixels." #: modules/visualization/visual/visual.c:54 -msgid "Number of bands" -msgstr "Nombre de bandes" +msgid "More bands : 80 / 20" +msgstr "" #: modules/visualization/visual/visual.c:56 -msgid "Number of bands used by spectrum analyzer, should be 20 or 80." -msgstr "Nombre de bandes de l?analyseur de spectre, 20 ou 80" +msgid "More bands for the spectrum analyzer : 80 if enabled else 20." +msgstr "" #: modules/visualization/visual/visual.c:58 -msgid "Number of bands used by the spectrometer, from 20 to 80." -msgstr "Nombre de bandes de l?analyseur de spectre 2, de 20 ? 80." +msgid "More bands for the spectrometer : 80 if enabled else 20." +msgstr "" #: modules/visualization/visual/visual.c:60 msgid "Band separator" @@ -23655,7 +23738,7 @@ msgstr "S?paration entre les bandes" #: modules/visualization/visual/visual.c:62 msgid "Number of blank pixels between bands." -msgstr "Nombre de pixels vides entre les bandes" +msgstr "Nombre de pixels vides entre les bandes." #: modules/visualization/visual/visual.c:64 msgid "Amplification" @@ -23663,7 +23746,7 @@ msgstr "Amplification" #: modules/visualization/visual/visual.c:66 msgid "This is a coefficient that modifies the height of the bands." -msgstr "Coefficient modifiant la hauteur des bandes" +msgstr "Coefficient modifiant la hauteur des bandes." #: modules/visualization/visual/visual.c:68 msgid "Enable peaks" @@ -23671,7 +23754,7 @@ msgstr "Activer les pics" #: modules/visualization/visual/visual.c:70 msgid "Draw \"peaks\" in the spectrum analyzer." -msgstr "Dessiner les \"pics\" dans l?analyseur de spectre" +msgstr "Afficher les ??pics?? dans l?analyseur de spectre." #: modules/visualization/visual/visual.c:72 msgid "Enable original graphic spectrum" @@ -23679,7 +23762,7 @@ msgstr "Activer l?analyseur lin?aire" #: modules/visualization/visual/visual.c:74 msgid "Enable the \"flat\" spectrum analyzer in the spectrometer." -msgstr "Activer l?analyseur \"plat\" dans l?analyseur ?volu?." +msgstr "Activer l?analyseur ??plat?? dans l?analyseur ?volu?." #: modules/visualization/visual/visual.c:76 msgid "Enable bands" @@ -23687,7 +23770,7 @@ msgstr "Activer les bandes" #: modules/visualization/visual/visual.c:78 msgid "Draw bands in the spectrometer." -msgstr "Dessiner des bandes dans le spectrom?tre." +msgstr "Afficher des bandes dans le spectrom?tre." #: modules/visualization/visual/visual.c:80 msgid "Enable base" @@ -23695,7 +23778,7 @@ msgstr "Activer la base" #: modules/visualization/visual/visual.c:82 msgid "Defines whether to draw the base of the bands." -msgstr "D?finit s?il faut dessiner dessiner la base des bandes" +msgstr "D?finit s?il faut dessiner dessiner la base des bandes." #: modules/visualization/visual/visual.c:84 msgid "Base pixel radius" @@ -23755,4850 +23838,4 @@ msgstr "Filtre de visualisation" #: modules/visualization/visual/visual.c:123 msgid "Spectrum analyser" -msgstr "Analyseur de spectre" - -#~ msgid "" -#~ "This adds post-processing filters to enhance the picture quality, for " -#~ "instance deinterlacing, or to clone or distort the video window." -#~ msgstr "" -#~ "Ajouter des filtres de post-traitement pour am?liorer la qualit? de " -#~ "l?image, par exemple du d?sentrelacement, ou pour dupliquer ou d?former " -#~ "la fen?tre vid?o." - -#~ msgid "Audio CD - Track " -#~ msgstr "CD Audio - Piste " - -#~ msgid "" -#~ "failed to convert subtitle encoding.\n" -#~ "Try manually setting a character-encoding before you open the file." -#~ msgstr "" -#~ "Impossible de convertir l?encodage des sous-titres.\n" -#~ "Veuillez essayer de r?gler un encodage manuellement avant d?ouvrir le " -#~ "fichier." - -#, fuzzy -#~ msgid "VLC" -#~ msgstr "VLM" - -#~ msgid "M3U file|*.m3u|XSPF playlist|*.xspf" -#~ msgstr "Fichier M3U|*.m3u|Fichier XSPF|*.xspf" - -#, fuzzy -#~ msgid "Seam Carving video filter" -#~ msgstr "Filtre vid?o de r?duction d?image" - -#, fuzzy -#~ msgid "Seam Carving" -#~ msgstr "Info flux?" - -#~ msgid "VLC - Controller" -#~ msgstr "VLC - Contr?leur" - -#~ msgid "About..." -#~ msgstr "? propos?" - -#~ msgid "A to B" -#~ msgstr "A vers B" - -#, fuzzy -#~ msgid "Extended settings" -#~ msgstr "Param?tres ?tendus" - -#~ msgid "Open a device or a VIDEO_TS directory" -#~ msgstr "Ouvrir un p?riph?rique ou un dossier VIDEO_TS" - -#~ msgid "&Update List" -#~ msgstr "Mettre la liste ? jo&ur" - -#, fuzzy -#~ msgid "Choose subtitles file" -#~ msgstr "Utiliser un fichier de sous-titres" - -#, fuzzy -#~ msgid "&Equalizer" -#~ msgstr "?galiseur" - -#, fuzzy -#~ msgid "Toggle &Fullscreen" -#~ msgstr "Plein &?cran" - -#~ msgid "&Title" -#~ msgstr "&Titre" - -#, fuzzy -#~ msgid "Undock from Interface" -#~ msgstr "D?tacher de l?interface" - -#~ msgid "Ctrl+U" -#~ msgstr "Ctrl+U" - -#~ msgid "Add Interfaces" -#~ msgstr "Ajouter des interfaces" - -#~ msgid "Use a sub&titles file" -#~ msgstr "Utiliser un fichier de sous-titres" - -#~ msgid "Add node" -#~ msgstr "Ajouter une branche" - -#, fuzzy -#~ msgid "%s: unrecognized option `--%s'\n" -#~ msgstr "%s: option non reconnue ? --%s ?\n" - -#~ msgid "Ok" -#~ msgstr "Ok" - -#, fuzzy -#~ msgid "Subscreen width." -#~ msgstr "Ecran %d" - -#, fuzzy -#~ msgid "Subscreen height." -#~ msgstr "Hauteur de la vid?o" - -#~ msgid "Get Stream Information" -#~ msgstr "R?cup?rer les informations" - -#~ msgid "%i items in the playlist" -#~ msgstr "%i ?l?ments dans la liste de lecture" - -#~ msgid "1 item in the playlist" -#~ msgstr "1 ?l?ment dans la liste de lecture" - -#~ msgid "Some options are hidden. Check \"Advanced\" to display them." -#~ msgstr "" -#~ "Certaines options sont cach?es. Cochez ? Options avanc?es ? pour les voir." - -#~ msgid "Input and Codecs" -#~ msgstr "Entr?e et codecs" - -#, fuzzy -#~ msgid "close" -#~ msgstr "Fermer" - -#~ msgid "Media information" -#~ msgstr "M?ta-donn?es" - -#~ msgid "Choose a filename to save the logs under..." -#~ msgstr "Vous devez choisir un fichier de destination pour les messages?" - -#, fuzzy -#~ msgid "Choose a VLM configuration file to open..." -#~ msgstr "Fichier de configuration VLM" - -#~ msgid "Check for updates..." -#~ msgstr "Chercher des mises ? jour..." - -#~ msgid "No DVD Menus" -#~ msgstr "Pas de menus DVD" - -#~ msgid "Disk Device" -#~ msgstr "P?riph?rique de disque" - -#~ msgid "Native or Skins" -#~ msgstr "Native ou skins" - -#, fuzzy -#~ msgid "Subtitles languages" -#~ msgstr "Langue des sous-titres" - -#~ msgid "Skip Frames" -#~ msgstr "Sauter des images" - -#~ msgid "Display Device" -#~ msgstr "P?riph?rique d?Affichage" - -#~ msgid "Enable Wallpaper Mode" -#~ msgstr "Activer le mode papier peint" - -#, fuzzy -#~ msgid "use Pause Color" -#~ msgstr "Pause seulement" - -#~ msgid "Strict rate control" -#~ msgstr "Contr?le strict du d?bit" - -#~ msgid "Enable the strict rate control algorithm." -#~ msgstr "Activer l?algorithme de contr?le strict du d?bit." - -#~ msgid "Subpicture Filters" -#~ msgstr "Incrustations" - -#~ msgid "Enabled" -#~ msgstr "Activ?" - -#, fuzzy -#~ msgid "Image:" -#~ msgstr "Image" - -#, fuzzy -#~ msgid "Position:" -#~ msgstr "Position" - -#, fuzzy -#~ msgid "Timestamp:" -#~ msgstr "Horodatage" - -#, fuzzy -#~ msgid "Color:" -#~ msgstr "Couleur" - -#, fuzzy -#~ msgid "Opaqueness:" -#~ msgstr "Opacit?" - -#~ msgid "(in pixels)" -#~ msgstr "(en pixels)" - -#, fuzzy -#~ msgid "Marquee:" -#~ msgstr "Texte" - -#, fuzzy -#~ msgid "Timeout:" -#~ msgstr "D?lai d?expiration" - -#~ msgid "ms" -#~ msgstr "ms" - -#, fuzzy -#~ msgid "Not Available" -#~ msgstr "Aucune aide disponible" - -#~ msgid "Previous track" -#~ msgstr "Piste pr?c?dente" - -#~ msgid "Next track" -#~ msgstr "Piste suivante" - -#~ msgid "Interface settings" -#~ msgstr "R?glages de l?interface" - -#~ msgid "Subtitles & OSD settings" -#~ msgstr "Param?tres de sous-titres et d?incrustation vid?o" - -#~ msgid "Go to time:" -#~ msgstr "Aller au temps :" - -#, fuzzy -#~ msgid "F11" -#~ msgstr "X11" - -#~ msgid "2 pass" -#~ msgstr "2 Passes" - -#~ msgid "3dfx Glide video output" -#~ msgstr "Sortie vid?o 3dfx Glide" - -#~ msgid "&OK" -#~ msgstr "&Ok" - -#~ msgid "&Delete" -#~ msgstr "Supprimer" - -#~ msgid "Adds a bookmark at the current position in the stream" -#~ msgstr "Ajouter un marque page ? la position courante du flux" - -#, fuzzy -#~ msgid "Removes the selected bookmarks" -#~ msgstr "Vous devez s?lectionner deux signets." - -#, fuzzy -#~ msgid "Removes all the bookmarks for that stream" -#~ msgstr "Liste des signets pour un flux" - -#~ msgid "Edit the properties of a bookmark" -#~ msgstr "?diter les propri?t?s d?un marque page" - -#, fuzzy -#~ msgid "" -#~ "If you select two or more bookmarks, this will launch the streaming/" -#~ "transcoding wizard to allow you to stream or save the part of the stream " -#~ "between these bookmarks" -#~ msgstr "" -#~ "Si vous selectionnez deux ou plus signets, cela lancera l?assistant de " -#~ "streamming" - -#~ msgid "You must select two bookmarks" -#~ msgstr "Vous devez s?lectionner deux signets" - -#~ msgid "The stream must be playing or paused for bookmarks to work" -#~ msgstr "" -#~ "Le flux doit ?tre en cours de lecture ou en pause pour que les signets " -#~ "fonctionnent." - -#~ msgid "" -#~ "No input found. The stream must be playing or paused for bookmarks to " -#~ "work." -#~ msgstr "" -#~ "Aucune entr?e trouv?e. Le flux doit ?tre en cours de lecture ou en pause " -#~ "pour que les signets fonctionnent." - -#~ msgid "" -#~ "Input has changed, unable to save bookmark. Use \"pause\" while editing " -#~ "bookmarks to keep the same input." -#~ msgstr "" -#~ "L?entr?e a chang?, impossible de sauvegarder les signets. Utilisez ? pause " -#~ "? pendant l??dition des signets pour garder la m?me entr?e;" - -#~ msgid "Input has changed " -#~ msgstr "L?entr?e a chang? " - -#~ msgid "All Files (*.*)|*|Sound Files (*.mp3, *.ogg, etc.)|" -#~ msgstr "Tous les fichiers (*.*)|*|Fichiers Audio (*.mp3, *.ogg, etc)|" - -#~ msgid "Stream and Media Info" -#~ msgstr "Info flux et m?dia" - -#~ msgid "Advanced information" -#~ msgstr "D?tails" - -#~ msgid "URI" -#~ msgstr "URI" - -#~ msgid "" -#~ "The following errors occurred. More details might be available in the " -#~ "Messages window." -#~ msgstr "" -#~ "Les erreurs suivantes sont apparues. Plus de d?tails peuvent ?tre " -#~ "disponibles dans la fen?tre Messages." - -#~ msgid "&No" -#~ msgstr "&Non" - -#, fuzzy -#~ msgid "Don't show further errors" -#~ msgstr "Supprimer les erreurs suivantes" - -#~ msgid "Playlist item info" -#~ msgstr "Informations sur l??l?ment" - -#~ msgid "Save &As..." -#~ msgstr "Enregistrer &sous?" - -#~ msgid "Save Messages As..." -#~ msgstr "Enregistrer les messages sous?" - -#~ msgid "Options:" -#~ msgstr "Options :" - -#~ msgid "Open..." -#~ msgstr "Ouvrir?" - -#~ msgid "Stream/Save" -#~ msgstr "Diffuser/Sauvegarder" - -#~ msgid "Use VLC as a stream server" -#~ msgstr "Utiliser VLC comme serveur de diffusion" - -#~ msgid "Change the default caching value (in milliseconds)" -#~ msgstr "Modifier la valeur de cache (en millisecondes)" - -#~ msgid "Customize:" -#~ msgstr "Personnaliser :" - -#~ msgid "" -#~ "You can use this field directly by typing the full MRL you want to open.\n" -#~ "Alternatively, the field will be filled automatically when you use the " -#~ "controls above." -#~ msgstr "" -#~ "Vous pouvez utiliser ce champ directement en tapant le MRL complet que " -#~ "vous d?sirez ouvrir.\n" -#~ "Sinon, le champ sera rempli automatiquement en utilisant les contr?les ci-" -#~ "dessus." - -#~ msgid "Use an external subtitles file." -#~ msgstr "Utiliser un fichier de sous-titres" - -#~ msgid "Advanced Settings..." -#~ msgstr "Options avanc?es?" - -#~ msgid "File:" -#~ msgstr "Fichier :" - -#~ msgid "DVD (menus)" -#~ msgstr "DVD (menus)" - -#~ msgid "Disc type" -#~ msgstr "Type de disque" - -#~ msgid "Probe Disc(s)" -#~ msgstr "Chercher" - -#, fuzzy -#~ msgid "" -#~ "Probe for a DVD, VCD or audio CD. First try the Device name entered for " -#~ "the selected Disc type (DVD, DVD Menu, VCD, audio CD). If that doesn't " -#~ "find media, try any device for the Disc type. If that doesn't work, then " -#~ "try looking for CD-ROMs or DVD drives. The Disc type, Device name, and " -#~ "some parameter ranges are set based on media we find." -#~ msgstr "Chercher un DVD, un VCD ou un CD Audio." - -#~ msgid "HTTP/HTTPS/FTP/MMS" -#~ msgstr "HTTP/HTTPS/FTP/MMS" - -#~ msgid "RTSP" -#~ msgstr "RTSP" - -#~ msgid "DVD device to use" -#~ msgstr "Lecteur DVD" - -#~ msgid "" -#~ "Name of CD-ROM device to read Video CD from. If this field is left empty, " -#~ "we will scan for a CD-ROM with a VCD in it." -#~ msgstr "" -#~ "Nom du p?riph?rique de CD-ROM o? se trouve le Video CD. Si ce champ est " -#~ "laiss? vide, un lecteur de CD-ROM avec un VCD sera cherch?." - -#~ msgid "CD-ROM device to use" -#~ msgstr "Lecteur CD-ROM" - -#~ msgid "" -#~ "Name of CD-ROM device to read audio CD from. If this field is left empty, " -#~ "we will scan for a CD-ROM with an audio CD in it." -#~ msgstr "" -#~ "Nom du p?riph?rique de CD-ROM o? se trouve le CD Audio. Si ce champ est " -#~ "laiss? vide, un lecteur de CD-ROM avec un CD Audio sera cherch?." - -#~ msgid "Title number." -#~ msgstr "Num?ro du titre." - -#, fuzzy -#~ msgid "" -#~ "DVDs can have up to 32 subtitles numbered 0..31. Note this is not the " -#~ "same thing as a subtitle name (e.g. 'en'). If a value -1 is used, no " -#~ "subtitle will be shown." -#~ msgstr "" -#~ "Les DVD peuvent avoir jusqu?? 32 titres (de 0 ? 31). Veuillez noter que " -#~ "ceci n?est pas un nom de sous-titres tel que 'en?. Si la valeur -1 est " -#~ "utilis?e, aucun sous-titre ne sera montr?." - -#, fuzzy -#~ msgid "" -#~ "Audio track number. DVDs can have up to 8 audio tracks numbered 0..7." -#~ msgstr "" -#~ "Num?ro de la piste audio. Les DVD peuvent avoir jusqu?? 8 pistes audio " -#~ "(de 0 ? 7)" - -#~ msgid "Playback control (PBC) usually starts with number 1." -#~ msgstr "Le contr?le de lecture (PBC) commence g?n?ralement au num?ro 1." - -#~ msgid "The first entry (the beginning of the first MPEG track) is 0." -#~ msgstr "La premi?re entr?e (le d?but de la premi?re piste MPEG) est 0" - -#~ msgid "Track number." -#~ msgstr "Piste." - -#, fuzzy -#~ msgid "" -#~ "SVCDs can have up to 4 subtitles numbered 0..3. If a value -1 is used, no " -#~ "subtitle will be shown." -#~ msgstr "" -#~ "Les SVCD peuvent avoir jusqu?? 4 sous-titres (de 0 ? 3). Si la valeur -1 " -#~ "est utilis?e, aucun sous-titre ne sera montr?." - -#, fuzzy -#~ msgid "" -#~ "Audio track number. VCDs can have up to 2 audio tracks numbered 0 or 1. " -#~ msgstr "" -#~ "Num?ro de la piste audio. Les VCD peuvent avoir jusqu?? 2 pistes audio, " -#~ "num?rot?es 0 ou 1 " - -#~ msgid "" -#~ "Audio CDs can have up to 100 tracks, the first track is usually 1. If 0 " -#~ "is given, then all tracks are played." -#~ msgstr "" -#~ "Les CD Audio peuvent avoir jusqu?? 100 pistes. La premi?re piste est " -#~ "g?n?ralement 1. Si la valeur 0 est donn?e, toutes les pistes seront " -#~ "jou?es." - -#~ msgid "Audio CDs can have up to 100 tracks, the first track is usually 1." -#~ msgstr "" -#~ "Les CD Audio peuvent avoir jusqu?? 100 pistes, la premi?re ?tant " -#~ "g?n?ralement 1." - -#~ msgid "Shuffle" -#~ msgstr "Al?atoire" - -#~ msgid "&Simple Add File..." -#~ msgstr "Ajout simple de fichier?" - -#~ msgid "Add &Directory..." -#~ msgstr "Ajouter &R?pertoire?" - -#~ msgid "&Add URL..." -#~ msgstr "Ajout d?une MRL" - -#~ msgid "Services Discovery" -#~ msgstr "D?couverte de services" - -#~ msgid "&Open Playlist..." -#~ msgstr "&Ouvrir la liste de lecture" - -#~ msgid "&Save Playlist..." -#~ msgstr "&Enregistrer la liste de lecture?" - -#~ msgid "Sort by &Title" -#~ msgstr "Tri par &titre" - -#~ msgid "&Reverse Sort by Title" -#~ msgstr "Tri inverse par titre" - -#~ msgid "&Shuffle" -#~ msgstr "Al?atoire" - -#~ msgid "D&elete" -#~ msgstr "S&upprimer" - -#~ msgid "&Manage" -#~ msgstr "&G?rer" - -#~ msgid "S&ort" -#~ msgstr "&Tri" - -#~ msgid "&Selection" -#~ msgstr "&S?lection" - -#~ msgid "&View items" -#~ msgstr "&Voir" - -#~ msgid "Play this Branch" -#~ msgstr "Jouer cette branche" - -#~ msgid "Preparse" -#~ msgstr "R?cup?rer les informations" - -#~ msgid "Sort this Branch" -#~ msgstr "Trier cette branche" - -#~ msgid "Info" -#~ msgstr "Info" - -#~ msgid "%i items in playlist" -#~ msgstr "%i ?lements dans la liste de lecture" - -#~ msgid "root" -#~ msgstr "Racine" - -#~ msgid "XSPF playlist" -#~ msgstr "List XSPF" - -#~ msgid "Playlist is empty" -#~ msgstr "Liste de lecture vide" - -#, fuzzy -#~ msgid "Can't save" -#~ msgstr "Impossible de sauvegarder" - -#, fuzzy -#~ msgid "One level" -#~ msgstr "Niveau maximal" - -#~ msgid "Please enter node name" -#~ msgstr "Nom de la branche" - -#~ msgid "New node" -#~ msgstr "Nouvelle branche" - -#~ msgid "Unknown" -#~ msgstr "Inconnu" - -#~ msgid "Alt" -#~ msgstr "Alt" - -#~ msgid "Ctrl" -#~ msgstr "Ctrl" - -#~ msgid "Shift" -#~ msgstr "Shift" - -#~ msgid "" -#~ "Select the desired modules. For more advanced control, the resulting " -#~ "\"chain\" can be modified." -#~ msgstr "" -#~ "Choisir les modules souhait?s. Pour avoir un choix plus avanc?, modifier " -#~ "soi-m?me la \"cha?ne\" obtenue." - -#~ msgid "Stream output MRL" -#~ msgstr "MRL du flux de sortie" - -#~ msgid "Target:" -#~ msgstr "Flux :" - -#~ msgid "" -#~ "Specifies the MRL. This can be specified directly or filled in " -#~ "automatically by adjusting the stream settings." -#~ msgstr "" -#~ "MRL. Ceci peut ?tre rempli directement, ou rempli automatiquement en " -#~ "r?glant les param?tres." - -#~ msgid "MMSH" -#~ msgstr "MMSH" - -#~ msgid "Channel name" -#~ msgstr "Nom du canal" - -#~ msgid "Select all elementary streams" -#~ msgstr "S?lectionne tous les flux ?l?mentaires" - -#~ msgid "Subtitles codec" -#~ msgstr "Codec des sous-titres" - -#~ msgid "Subtitles overlay" -#~ msgstr "Incrustation des sous-titres" - -#~ msgid "Subtitle options" -#~ msgstr "Options de sous-titres" - -#~ msgid "Subtitles file" -#~ msgstr "Fichier de sous-titres" - -#~ msgid "" -#~ "Override frames per second. It will only work with MicroDVD and SubRIP " -#~ "subtitles." -#~ msgstr "" -#~ "Remplacer le nombre d?images par seconde. Ne fonctionne qu?avec les sous-" -#~ "titres MicroDVD et SubRIP." - -#~ msgid "Set subtitle delay (in 1/10s)" -#~ msgstr "D?lai des sous-titres (en 1/10 s)" - -#~ msgid "Open file" -#~ msgstr "Ouvrir un fichier" - -#~ msgid "Updates" -#~ msgstr "Mises ? jour" - -#~ msgid "Check for updates" -#~ msgstr "Chercher des mises ? jour" - -#~ msgid "Broadcasts" -#~ msgstr "Diffusions" - -#~ msgid "Load" -#~ msgstr "Charger" - -#~ msgid "Load Configuration" -#~ msgstr "Charger une configuration" - -#~ msgid "Save Configuration" -#~ msgstr "Sauvegarder la configuration" - -#~ msgid "New broadcast" -#~ msgstr "Nouvelle diffusion" - -#~ msgid "VLM stream" -#~ msgstr "Flux VLM" - -#~ msgid "This wizard helps you to stream, transcode or save a stream." -#~ msgstr "" -#~ "Cet assistant vous aide ? diffuser, transcoder ou enregistrer un flux." - -#~ msgid "Use this to stream on a network." -#~ msgstr "Utilisez ceci pour diffuser par le r?seau" - -#~ msgid "Use this to re-encode a stream and save it to a file." -#~ msgstr "" -#~ "Utilisez ceci pour r?encoder un flux et le sauvegarder dans un fichier" - -#~ msgid "" -#~ "This wizard only contains a small subset of VLC's streaming and " -#~ "transcoding capabilities. Use the Open and Stream Output dialogs to " -#~ "access all of them." -#~ msgstr "" -#~ "Cet assistant ne vous donne acc?s qu?? une petite partie des capacit?s de " -#~ "diffusion et de transcodage de VLC. Utilisez les boites de dialogue ? " -#~ "Ouvrir ? et ? Flux de sortie ? pour avoir toutes les options." - -#~ msgid "Use this to stream on a network" -#~ msgstr "Utilisez ceci pour diffuser par le r?seau" - -#~ msgid "" -#~ "Saves the stream to a file. The stream must be a format that VLC " -#~ "recognizes. If desired, the stream can also be transcoded to another " -#~ "format.\n" -#~ "\n" -#~ "Please note that VLC is not very suited for file-to-file transcoding. Its " -#~ "transcoding features are more appropriate for saving network streams." -#~ msgstr "" -#~ "Utilisez ceci pour enregistrer un flux dans un fichier. Vous avez la " -#~ "possibilit? de r?encoder le flux. Il est possible de sauvegarder tout ce " -#~ "que VLC peut lire.\n" -#~ "\n" -#~ "Veuillez noter que VLC n?est pas r?ellement adapt? pour le transcodage de " -#~ "fichier vers fichier. Vous devriez plut?t utiliser ses possibilit?s de " -#~ "transcodage pour sauvegarder un flux r?seau, par exemple." - -#~ msgid "You must choose a stream" -#~ msgstr "Vous devez choisir un flux" - -#~ msgid "Unable to find playlist" -#~ msgstr "Impossible de trouver la liste de lecture" - -#~ msgid "" -#~ "Use this to read only a part of the stream. To use, enter the starting " -#~ "and ending times (in seconds).\n" -#~ "\n" -#~ "Note: You must be able to control the incoming stream (for example, a " -#~ "file or a disc, but not a RTP/UDP network stream).\n" -#~ msgstr "" -#~ "Utilisez ceci si vous ne d?sirez lire qu?une partie du flux. Entrer les " -#~ "temps de d?but et de fin en secondes.\n" -#~ "\n" -#~ "Note : Vous devez pouvoir contr?ler le flux (c?est le cas pour un fichier " -#~ "ou un disque, mais pas pour un flux r?seau UDP).\n" - -#~ msgid "" -#~ "Changes the compression format of the audio or video tracks. To change " -#~ "only the container format, proceed to the next page." -#~ msgstr "" -#~ "Changer le format de compression des pistes audio ou vid?o. Si vous ne " -#~ "d?sirez changer que le format d?encapsulation, passez ? la page suivante." - -#~ msgid "Transcode video (if available)" -#~ msgstr "Transcoder la vid?o (si possible)" - -#~ msgid "" -#~ "Select the target video codec. Choose a codec to display more information " -#~ "about it." -#~ msgstr "" -#~ "Choisissez votre format de compression video. Choisissez en un pour avoir " -#~ "plus d?information." - -#~ msgid "" -#~ "Select the target audio codec. Choose a codec to display more information " -#~ "about it." -#~ msgstr "" -#~ "Choisissez votre format de compression audio. Choisissez en un pour avoir " -#~ "plus d?information." - -#~ msgid "Determines how the input stream will be sent." -#~ msgstr "" -#~ "Dans cette page, vous pouvez s?lectionner la fa?on dont votre flux sera " -#~ "envoy?." - -#~ msgid "This does not appear to be a valid multicast address" -#~ msgstr "Cette adresse ne semble pas ?tre une adresse multicast valide." - -#~ msgid "Please enter an address" -#~ msgstr "Vous devez choisir une adresse" - -#~ msgid "" -#~ "Determines how the stream will be encapsulated. Depending on the previous " -#~ "choices, some formats might not be available." -#~ msgstr "" -#~ "Dans cette page, vous devez choisir comment le flux sera encapsul?. Selon " -#~ "vos choix pr?c?dents, tous les formats ne seront pas disponibles." - -#~ msgid "Defines a few additional parameters for the transcoding." -#~ msgstr "D?finir quelques param?tres additionnels pour votre transcodage." - -#~ msgid "You must choose a file to save to" -#~ msgstr "Vous devez choisir un fichier de destination" - -#~ msgid "Defines a few additional parameters for the stream." -#~ msgstr "D?finir quelques param?tres additionnels pour votre diffusion." - -#, fuzzy -#~ msgid "" -#~ "Define the TTL (Time-To-Live) of the stream. This parameter is the " -#~ "maximum number of routers your stream can go through. If you don't know " -#~ "what it means, or if you want to stream on your local network only, leave " -#~ "this setting to 1." -#~ msgstr "" -#~ "D?finit le TTL (Time-To-Live) du flux. Ce param?tre correspond au nombre " -#~ "maximal de routeurs que votre flux peut traverser. Si vous ne comprenez " -#~ "pas ce r?glage, ou si vous ne d?sirez diffuser que sur votre r?seau " -#~ "local, il est conseill? de laisser la valeur par d?faut de 1." - -#, fuzzy -#~ msgid "" -#~ "When streaming using RTP, you can announce your streams using the SAP/SDP " -#~ "announcing protocol. This way, the clients won't have to type in the " -#~ "multicast address, it will appear in their playlist if they enable the " -#~ "SAP extra interface.\n" -#~ "If you want to give a name to your stream, enter it here. Otherwise, a " -#~ "default name will be used." -#~ msgstr "" -#~ "Lors de la diffusion RTP, vous pouvez annoncer vos flux en utilisant le " -#~ "protocole SAP/SDP. Ceci permettra aux clients de ne pas avoir ? taper " -#~ "l?adresse multicast, le flux apparaissant dans leur liste de lecture " -#~ "s?ils activent l?interface SAP.\n" -#~ "Si vous d?sirez donner un nom ? votre flux, entrez-le ici. Dans le cas " -#~ "contraire, un nom par d?faut sera utilis?." - -#~ msgid "More information" -#~ msgstr "D?tails" - -#~ msgid "Save to file" -#~ msgstr "Enregistrer le fichier" - -#~ msgid "Transcode audio (if available)" -#~ msgstr "Transcoder l?audio" - -#~ msgid "" -#~ "Controls the blending of equalizer bands. The higher this value is, the " -#~ "more correlated their movement will be." -#~ msgstr "" -#~ "Si cette valeur n?est pas nulle, les bandes bougeront ensemble. Plus " -#~ "cette valeur est haute, plus leur mouvement sera conjoint." - -#~ msgid "Creates several clones of the image" -#~ msgstr "Cr?e des clones de l?image" - -#, fuzzy -#~ msgid "Cartoon effect" -#~ msgstr "Effet dessin anim?" - -#, fuzzy -#~ msgid "Gradient effects (cartoon) on the image" -#~ msgstr "Agrandit une partie de l?image" - -#~ msgid "Image inversion" -#~ msgstr "Inversion vid?o" - -#~ msgid "Blurring" -#~ msgstr "Flou" - -#, fuzzy -#~ msgid "Adds water effect to the image" -#~ msgstr "Ajoute un effet de flou ? l?image" - -#, fuzzy -#~ msgid "Wave effect" -#~ msgstr "Effet casque" - -#, fuzzy -#~ msgid "Adds wave effect to the image" -#~ msgstr "Tourne ou inverse l?image" - -#~ msgid "Magnifies part of the image" -#~ msgstr "Agrandit une partie de l?image" - -#~ msgid "Image adjustment" -#~ msgstr "Ajustement d?image" - -#~ msgid "Video Options" -#~ msgstr "Param?tres vid?o" - -#~ msgid "Aspect Ratio" -#~ msgstr "Format d??cran" - -#~ msgid "Prevents the audio output level from going over a predefined value." -#~ msgstr "" -#~ "Emp?cher la puissance de la sortie audio de d?passer une valeur " -#~ "pr?d?finie." - -#~ msgid "" -#~ "Enable the equalizer. You can either manually adjust the bands or use a " -#~ "preset (Audio Menu->Equalizer)." -#~ msgstr "" -#~ "Active l??galiseur. Vous pouvez bouger les bandes manuellement ou " -#~ "utiliser un pr?r?glage (Menu Audio->?galiseur)." - -#~ msgid "Apply the equalizer twice. The resulting effect will be sharper." -#~ msgstr "" -#~ "Si vous appliquez ce r?glage, le filtrage par l??galiseur sera fait deux " -#~ "fois, produisant un effet plus accentu?." - -#, fuzzy -#~ msgid "" -#~ "Preamp\n" -#~ "12.0dB" -#~ msgstr "Pr?amp" - -#~ msgid "" -#~ "Filtering effects to apply to the video. You must restart the stream for " -#~ "these settings to take effect.\n" -#~ "\n" -#~ "To configure these filters, go to Preferences / Video / Filters. In order " -#~ "to control the order in which they are applied, enter a filters string in " -#~ "the Video Filter Module inside the preferences." -#~ msgstr "" -#~ "S?lectionne les filtres vid?o ? appliquer. Vous devez red?marrer le flux " -#~ "pour que ces r?glages prennent effet.\n" -#~ "\n" -#~ "Pour configurer ces filtres, allez dans Pr?f?rences, puis dans Video/" -#~ "Filtres. Si vous d?sirez un contr?le plus fin sur les filtres (choisir " -#~ "leur ordre d?application par exemple), vous devez entrer manuellement une " -#~ "cha?ne de filtres dans Pr?f?rences / Vid?o / Filtres." - -#~ msgid "More Information" -#~ msgstr "D?tails" - -#~ msgid "Stopped" -#~ msgstr "Arr?t?" - -#~ msgid "Playing" -#~ msgstr "Lecture en cours" - -#~ msgid "Quick &Open File...\tCtrl-O" -#~ msgstr "&Ouvrir un fichier?\tCtrl-O" - -#~ msgid "Open &File...\tCtrl-F" -#~ msgstr "Ouvrir un &fichier (avanc?)?\tCtrl-F" - -#~ msgid "Open Dir&ectory...\tCtrl-E" -#~ msgstr "Ouvrir un r?p&ertoire?\tCtrl-E" - -#~ msgid "Open &Disc...\tCtrl-D" -#~ msgstr "Ouvrir un &disque?\tCtrl-D" - -#~ msgid "Open &Network Stream...\tCtrl-N" -#~ msgstr "Ouvrir un flux r?seau?\tCtrl-N" - -#~ msgid "Open C&apture Device...\tCtrl-A" -#~ msgstr "Ouvrir un p?riph?rique de c&apture?\tCtrl-A" - -#~ msgid "&Wizard...\tCtrl-W" -#~ msgstr "Assistant de diffusion?\tCtrl-W" - -#~ msgid "E&xit\tCtrl-X" -#~ msgstr "&Quitter\tCtrl-X" - -#~ msgid "&Playlist...\tCtrl-P" -#~ msgstr "Liste de lecture?\tCtrl-P" - -#~ msgid "&Messages...\tCtrl-M" -#~ msgstr "&Messages?\tCtrl-M" - -#~ msgid "Stream and Media &Info...\tCtrl-I" -#~ msgstr "&Information sur le flux?\tCtrl-I" - -#~ msgid "VLM Control...\tCtrl-V" -#~ msgstr "Contr?le VLM...\tCtrl-V" - -#, fuzzy -#~ msgid "VideoLAN's Website" -#~ msgstr "Site web de VideoLAN" - -#~ msgid "Online Help" -#~ msgstr "Aide en ligne" - -#, fuzzy -#~ msgid "V&iew" -#~ msgstr "Vue" - -#~ msgid "&Settings" -#~ msgstr "&Param?tres" - -#~ msgid "Embedded playlist" -#~ msgstr "Liste de lecture int?gr?e" - -#~ msgid "Previous playlist item" -#~ msgstr "?lement pr?c?dent" - -#~ msgid "Next playlist item" -#~ msgstr "?lement suivant" - -#~ msgid "Play slower" -#~ msgstr "Jouer plus lentement" - -#~ msgid "Play faster" -#~ msgstr "Jouer plus rapidement" - -#~ msgid "Extended &GUI\tCtrl-G" -#~ msgstr "Interface ?tendue\tCtrl-G" - -#~ msgid "&Bookmarks...\tCtrl-B" -#~ msgstr "Signets?\tCtrl-B" - -#~ msgid "Preference&s...\tCtrl-S" -#~ msgstr "Pr?f?rences?\tCtrl-S" - -#~ msgid "" -#~ " (wxWidgets interface)\n" -#~ "\n" -#~ msgstr "" -#~ " (interface wxWidgets)\n" -#~ "\n" - -#~ msgid "" -#~ "The VideoLAN team \n" -#~ "http://www.videolan.org/\n" -#~ "\n" -#~ msgstr "" -#~ "L??quipe VideoLAN \n" -#~ "http://www.videolan.org/\n" -#~ "\n" - -#~ msgid "About %s" -#~ msgstr "? propos de %s" - -#~ msgid "Show/Hide Interface" -#~ msgstr "Afficher/Cacher l?interface" - -#~ msgid "Open &File..." -#~ msgstr "Ouvrir un fichier?" - -#~ msgid "Open &Network Stream..." -#~ msgstr "Ouvrir un flux r?seau?" - -#~ msgid "Media &Info..." -#~ msgstr "&Info flux?" - -#~ msgid "Empty" -#~ msgstr "Vide" - -#~ msgid "" -#~ "MPEG-1 Video codec (useable with MPEG PS, MPEG TS, MPEG1, OGG and RAW)" -#~ msgstr "" -#~ "Codec vid?o MPEG-1 (utilisable avec MPEG-PS, MPEG-TS, MPEG1, OGG et RAW)" - -#~ msgid "" -#~ "MPEG-2 Video codec (useable with MPEG PS, MPEG TS, MPEG1, OGG and RAW)" -#~ msgstr "" -#~ "Codec vid?o MPEG-2 (utilisable avec MPEG-PS, MPEG-TS, MPEG1, OGG et RAW)" - -#~ msgid "" -#~ "MPEG-4 Video codec (useable with MPEG PS, MPEG TS, MPEG1, ASF, MPEG4, OGG " -#~ "and RAW)" -#~ msgstr "" -#~ "Codec vid?o MPEG-4 (utilisable avec MPEG-PS, MPEG-TS, MPEG1, ASF, MPEG4, " -#~ "OGG et RAW)" - -#~ msgid "H264 is a new video codec (useable with MPEG TS and MPEG4)" -#~ msgstr "H264 est un nouveau codec vid?o (utilisable avec MPEG-TS et MPEG4)" - -#~ msgid "" -#~ "WMV (Windows Media Video) 7 (useable with MPEG TS, MPEG1, ASF and OGG)" -#~ msgstr "" -#~ "WMV (Windows Media Video) 7 (utilisable avec MPEG-TS, MPEG1, ASF et OGG)" - -#~ msgid "" -#~ "WMV (Windows Media Video) 8 (useable with MPEG TS, MPEG1, ASF and OGG)" -#~ msgstr "" -#~ "WMV (Windows Media Video) 8 (utilisable avec MPEG-TS, MPEG1, ASF et OGG)" - -#~ msgid "" -#~ "WMV (Windows Media Video) 9 (useable with MPEG TS, MPEG1, ASF and OGG)" -#~ msgstr "" -#~ "WMV (Windows Media Video) 9 (utilisable avec MPEG-TS, MPEG1, ASF et OGG)" - -#~ msgid "Theora is a free general-purpose codec (useable with MPEG TS)" -#~ msgstr "Theora est un codec g?n?raliste libre (utilisable avec MPEG TS)" - -#~ msgid "RTP Unicast" -#~ msgstr "Unicast RTP" - -#~ msgid "Stream to a single computer." -#~ msgstr "Utilisez ceci pour diffuser vers un seul ordinateur." - -#~ msgid "RTP Multicast" -#~ msgstr "Multidiff. RTP" - -#~ msgid "" -#~ "Stream to a dynamic group of computers on a multicast-enabled network. " -#~ "This is the most efficient method to stream to several computers, but it " -#~ "does not work over the Internet." -#~ msgstr "" -#~ "Utilisez ceci pour diffuser vers un un groupe d?ordinateurs sur un r?seau " -#~ "supportant la multidiffusion (multicast). Cette m?thode est la plus " -#~ "efficace pour diffuser vers plusieurs ordinateurs, mais ne fonctionne pas " -#~ "sur Internet." - -#~ msgid "" -#~ "Enter the multicast address to stream to. This must be an IP address " -#~ "between 224.0.0.0 an 239.255.255.255. For private use, enter an address " -#~ "beginning with 239.255." -#~ msgstr "" -#~ "Adresse multicast de diffusion. Il doit s?agir d?une adresse IP entre " -#~ "224.0.0.0 et 239.255.255.255. Pour un usage priv?, utilisez une adresse " -#~ "commen?ant par 239.255." - -#~ msgid "" -#~ "Stream to several computers. This method is less efficient, as the server " -#~ "needs to send the stream several times." -#~ msgstr "" -#~ "Utilisez ceci pour diffuser vers plusieurs ordinateurs. Cette m?thode est " -#~ "moins efficace, car le serveur doit envoyer le flux plusieurs fois." - -#, fuzzy -#~ msgid "" -#~ "Enter the local addresses you want to listen to. Do not enter anything if " -#~ "you want to listen to all adresses or if you don't understand. This is " -#~ "generally the best thing to do. Other computers can then access the " -#~ "stream at http://yourip:8080 by default." -#~ msgstr "" -#~ "Entrez les adresses locales sur lequelles ?couter. Si vous voulez ?couter " -#~ "sur toutes les adresses ou si vous ne comprenez pas, n?entrez rien. Il " -#~ "s?agit g?n?ralement du meilleur choix. Les autres ordinateurs peuvent " -#~ "acc?der ? votre flux ? l?adresse http://votreip:8080 par d?faut." - -#~ msgid "Bookmarks dialog" -#~ msgstr "Fen?tre des signets" - -#~ msgid "Show bookmarks dialog at startup" -#~ msgstr "Affiche la fen?tre des signets au d?marrage" - -#~ msgid "Extended GUI" -#~ msgstr "Interface ?tendue" - -#~ msgid "" -#~ "Show extended GUI (equalizer, image adjust, video filters...) at startup" -#~ msgstr "" -#~ "Montrer l?interface ?tendue (?galiseur, ajustement d?image, filtres " -#~ "vid?o) au d?marrage" - -#~ msgid "Taskbar" -#~ msgstr "Barre des t?ches" - -#~ msgid "Minimal interface" -#~ msgstr "Interface minimale" - -#~ msgid "Use minimal interface, with no toolbar and fewer menus." -#~ msgstr "Utiliser l?interface minimale, sans barre et peu de menus." - -#~ msgid "Size to video" -#~ msgstr "S?adapter ? la vid?o" - -#~ msgid "Resize VLC to match the video resolution." -#~ msgstr "Redimensionner VLC pour s?adapter ? la taille de la vid?o." - -#~ msgid "Show labels in toolbar" -#~ msgstr "Texte sur les boutons de la barre d?outils" - -#~ msgid "Show labels below the icons in the toolbar." -#~ msgstr "Affiche le texte sous les ic?nes de la barre d?outils." - -#~ msgid "Playlist view" -#~ msgstr "Liste de lecture" - -#~ msgid "" -#~ "There are two possible playlist views in the interface : the normal " -#~ "playlist (separate window), or an embedded playlist (within the main " -#~ "interface, but with less features). You can select which one will be " -#~ "available on the toolbar (or both)." -#~ msgstr "" -#~ "Il y a deux possibilit?s pour la liste de lecture : la liste normale, " -#~ "dans une fen?tre s?par?e, ou une liste int?gr?e dans l?interface " -#~ "principale, avec moins de fonctionnalit?s. Vous pouvez choisir l?une ou " -#~ "l?autre ou les deux." - -#~ msgid "Embedded" -#~ msgstr "Int?gr?" - -#~ msgid "Both" -#~ msgstr "Les deux" - -#~ msgid "wxWidgets interface module" -#~ msgstr "Module d?interface wxWidgets" - -#~ msgid "last config" -#~ msgstr "Derni?re configuration" - -#~ msgid "wxWidgets dialogs provider" -#~ msgstr "Fournisseur de dialogues wxWidgets" - -#~ msgid "Distortion" -#~ msgstr "Distorsion" - -#~ msgid "Adds distortion effects" -#~ msgstr "Ajoute des effets de distorsion" - -#~ msgid "RTP reordering timeout in ms" -#~ msgstr "D?lai d?expiration du r?ordonnement RTP (ms)" - -#~ msgid "" -#~ "VLC reorders RTP packets. The input will wait for late packets at most " -#~ "the time specified here (in milliseconds)." -#~ msgstr "" -#~ "VLC est capable de r?ordonnancer les paquets RTP. L?entr?e RTP attendra " -#~ "les paquets ayant un retard inf?rieur au d?lai d?expiration sp?cifi? ici " -#~ "(en millisecondes)." - -#~ msgid "FFmpeg crop padd filter" -#~ msgstr "D?coupage ffmpeg" - -#~ msgid "FFmpeg chroma conversion" -#~ msgstr "Conversion de chroma par ffmpeg" - -#~ msgid "FFmpeg audio/video decoders/encoders" -#~ msgstr "Codecs audio/vid?o ffmpeg" - -#~ msgid "Size of the black border to add at the top of the video." -#~ msgstr "Taille de la bordure noire ? ajouter en haut de la vid?o." - -#~ msgid "Size of the black border to add at the left of the video." -#~ msgstr "Taille de la bordure noire ? ajouter ? gauche de la vid?o." - -#~ msgid "Size of the black border to add at the bottom of the video." -#~ msgstr "Taille de la bordure noire ? ajouter sous la vid?o." - -#~ msgid "Size of the black border to add at the right of the video." -#~ msgstr "Taille de la bordure noire ? ajouter au-dessus de la vid?o." - -#~ msgid "Video canvas width" -#~ msgstr "Largeur du canevas" - -#~ msgid "This will automatically crod and pad the video to a specified width." -#~ msgstr "" -#~ "Automatiquement rogner et ajouter des bordures pour atteindre une largeur " -#~ "fix?e." - -#~ msgid "Video canvas height" -#~ msgstr "Hauteur du canevas" - -#~ msgid "" -#~ "This will automatically crod and pad the video to a specified height." -#~ msgstr "" -#~ "Automatiquement rogner et ajouter des bordures pour atteindre une hauteur " -#~ "fix?e." - -#~ msgid "Video canvas aspect ratio" -#~ msgstr "Format du canevas" - -#, fuzzy -#~ msgid "Block" -#~ msgstr "Noir" - -#, fuzzy -#~ msgid "Allow" -#~ msgstr "Tous" - -#, fuzzy -#~ msgid "Prompt" -#~ msgstr "Pop" - -#~ msgid "Authorise meta information fetching" -#~ msgstr "Autoriser la r?cup?ration d?informations" - -#, fuzzy -#~ msgid "" -#~ "Specify if you want to attempt to fetch files'meta informations using the " -#~ "network." -#~ msgstr "" -#~ "Pr?cisez si vous voulez essayer de r?cup?rer les informations sur les " -#~ "fichiers en utilisant le r?seau." - -#~ msgid "Always" -#~ msgstr "Toujours" - -#~ msgid "Never" -#~ msgstr "Jamais" - -#, fuzzy -#~ msgid "Security options" -#~ msgstr "Options de sous-titres" - -#~ msgid "Track Number" -#~ msgstr "Num?ro de piste" - -#, fuzzy -#~ msgid "Automatic multicast streaming" -#~ msgstr "R?duction automatique" - -#~ msgid "" -#~ "| check-updates [newer] [equal] [older]\n" -#~ "| [undef] [info] [source] [binary] [plugin]" -#~ msgstr "" -#~ "| check-updates [newer] [equal] [older]\n" -#~ "| [undef] [info] [source] [binary] [plugin]" - -#~ msgid "Video Device" -#~ msgstr "P?riph?rique vid?o" - -#~ msgid "Advanced Information" -#~ msgstr "Informations avanc?es" - -#~ msgid "Interfaces" -#~ msgstr "Interfaces" - -#, fuzzy -#~ msgid "Network policy" -#~ msgstr "R?seau : " - -#, fuzzy -#~ msgid "Some random name" -#~ msgstr "Nom" - -#, fuzzy -#~ msgid "Find a name" -#~ msgstr "Nom de fichier" - -#, fuzzy -#~ msgid "Lua Meta" -#~ msgstr "M?tal" - -#~ msgid "" -#~ "This allows you to specify a name for the session, that will be announced " -#~ "if you choose to use SAP." -#~ msgstr "Nom ? donner ? la session, annonc? par SAP." - -#~ msgid "About VLC media player..." -#~ msgstr "? propos du lecteur multim?dia VLC" - -#~ msgid "Switch interface" -#~ msgstr "Changer d?interface" - -#~ msgid "" -#~ "If you live in France, it is not allowed to workaround any Digital " -#~ "Restrictions Management measure." -#~ msgstr "" -#~ "Si vous habitez en France, vous n?avez pas le droit de contourner des " -#~ "mesures de restrictions num?rique (DRM)." - -#~ msgid "France" -#~ msgstr "France" - -#~ msgid "Concatenate with additional files" -#~ msgstr "Concat?ner plusieurs fichiers" - -#~ msgid "" -#~ "Play split files as if they were part of a unique file. You need to " -#~ "specify a comma-separated list of files." -#~ msgstr "" -#~ "Jouer des fichiers s?par?s comme s?ils ?taient des morceaux d?un fichier " -#~ "unique. Sp?cifier une liste de fichiers s?par?s par des virgules." - -#~ msgid "Gamma of the video input." -#~ msgstr "Gamma de l?entr?e vid?o." - -#~ msgid "Use Alsa" -#~ msgstr "Utiliser Alsa" - -#~ msgid "Use ALSA instead of OSS for audio" -#~ msgstr "Utiliser ALSA au lieu d?OSS pour l?audio" - -#~ msgid "Video controls" -#~ msgstr "Controles Vid?o" - -#~ msgid "Embedded video output" -#~ msgstr "Vid?o int?gr?e" - -#~ msgid "" -#~ "Display the video in the controller window instead of a in separate " -#~ "window." -#~ msgstr "" -#~ "Int?grer la vid?o dans l?interface plut?t que d?utiliser une nouvelle " -#~ "fen?tre." - -#~ msgid "The latest VLC media player release is %s (%i MB to download)." -#~ msgstr "" -#~ "La derni?re version de VLC media player est %s (%i Mo ? t?l?charger)." - -#~ msgid "Video Device Name " -#~ msgstr "Nom du p?riph?rique vid?o" - -#~ msgid "Audio Device Name " -#~ msgstr "Nom du p?riph?rique audio" - -#~ msgid "Update List" -#~ msgstr "Mettre la liste ? jour" - -#~ msgid "Video Adjustments and Effects" -#~ msgstr "Ajustements et effets vid?o" - -#~ msgid "Information about VLC media player." -#~ msgstr "Information concernant le lecteur multim?dia VLC" - -#~ msgid "Based on SVN revision: " -#~ msgstr "Bas? sur la r?vision SVN : " - -#~ msgid "" -#~ "This program comes with NO WARRANTY, to the extent permitted by the law; " -#~ "read the distribution tab.\n" -#~ "\n" -#~ msgstr "" -#~ "Ce programme est fourni SANS AUCUNE GARANTIE, tel que permis par la loi;" -#~ "Lisez l?onglet Licence de Distribution.\n" -#~ "\n" - -#~ msgid "General Info" -#~ msgstr "Info G?n?ral" - -#~ msgid "Distribution License" -#~ msgstr "Licence de Distribution" - -#~ msgid "Always show video area" -#~ msgstr "Toujours afficher la zone vid?o" - -#~ msgid "" -#~ "Start VLC with a cone image, and display it when there is no video track." -#~ msgstr "" -#~ "D?marrer VLC avec une image de cone, et l?afficher quand il n?y a pas de " -#~ "piste vid?o." - -#~ msgid "Define what columns to show in playlist window" -#~ msgstr "Quelles colonnes afficher dans la fen?tre de la liste de lecture" - -#~ msgid "" -#~ "Enter the sum of the options that you want: \n" -#~ "Title: 1; Duration: 2; Artist: 4; Genre: 8; Copyright: 16; Collection/" -#~ "album: 32; Rating: 256." -#~ msgstr "" -#~ "Entrez la somme des options que vous voulez: \n" -#~ "Titre: 1; Dur?e: 2; Artiste: 4; Genre: 8; Copyright: 16; Collection/" -#~ "Album: 32; Note: 256." - -#~ msgid "Start in minimal view (menus hidden)." -#~ msgstr "D?marrer en mode minimal (menus cach?s)." - -#~ msgid "Video Codec" -#~ msgstr "Codec vid?o" - -#~ msgid "Visualisation" -#~ msgstr "Visualisation" - -#, fuzzy -#~ msgid "Always display the video" -#~ msgstr "Pr?visualisation de la capture" - -#, fuzzy -#~ msgid "Subtitles preferred language" -#~ msgstr "Langue des sous-titres" - -#, fuzzy -#~ msgid "Color invert" -#~ msgstr "Inversion des couleurs" - -#, fuzzy -#~ msgid "DCCP transport" -#~ msgstr "Port UDP" - -#, fuzzy -#~ msgid "TCP transport" -#~ msgstr "Entr?e TCP" - -#, fuzzy -#~ msgid "UDP-Lite transport" -#~ msgstr "Port UDP" - -#~ msgid "Codec Name" -#~ msgstr "Codec" - -#~ msgid "Codec Description" -#~ msgstr "Description du codec" - -#~ msgid "Help options" -#~ msgstr "Options de l?aide" - -#~ msgid "print help for the advanced options" -#~ msgstr "Afficher l?aide pour les options avanc?es" - -#, fuzzy -#~ msgid "" -#~ "Force the Video4Linux2 video device to use a specific chroma format (eg. " -#~ "I420, RV24, etc.)" -#~ msgstr "" -#~ "Force le p?riph?rique Video4Linux ? utiliser un format de chroma " -#~ "particulier (par exemple I420 (d?faut), RV24, etc.)" - -#~ msgid "Charset" -#~ msgstr "Encodage" - -#~ msgid "Charset declared in Content-Type header (default UTF-8)." -#~ msgstr "Encodage d?clar? dans l?en-t?te Content-Type (UTF-8 par d?faut)" - -#~ msgid "Remember wizard options" -#~ msgstr "Garder les options de l?assistant" - -#~ msgid "Remember the options in the wizard during one session of VLC." -#~ msgstr "Se souvenir des options de l?assistant pendant toute la session" - -#, fuzzy -#~ msgid "Select the device" -#~ msgstr "S?lectionner un fichier" - -#~ msgid "" -#~ "\n" -#~ "Available updates and related downloads.\n" -#~ "(Double click on a file to download it)\n" -#~ msgstr "" -#~ "\n" -#~ "Mises ? jour disponibles et t?l?chargements associ?s.\n" -#~ "(Double-cliquez sur un fichier pour le t?l?charger)\n" - -#~ msgid "Save file..." -#~ msgstr "Enregistrer le fichier..." - -#, fuzzy -#~ msgid "Session descriptipn" -#~ msgstr "Description de session" - -#, fuzzy -#~ msgid "Default Interface" -#~ msgstr "Interface Telnet" - -#, fuzzy -#~ msgid "No random" -#~ msgstr "S?quentiel" - -#~ msgid "Normal rate" -#~ msgstr "Taux normal" - -#, fuzzy -#~ msgid "Manage" -#~ msgstr "&G?rer" - -#~ msgid "Ctrl+X" -#~ msgstr "Ctrl+X" - -#, fuzzy -#~ msgid "Dock playlist" -#~ msgstr "Liste de lecture" - -#~ msgid "OSS Device" -#~ msgstr "P?riph?rique OSS" - -#~ msgid "DirectX Device" -#~ msgstr "P?riph?rique DirectX" - -#~ msgid "Alsa Device" -#~ msgstr "P?riph?rique ALSA" - -#, fuzzy -#~ msgid "Default Network caching in ms" -#~ msgstr "Par d?faut : admin" - -#~ msgid "Check TLS/SSL server certificate validity" -#~ msgstr "V?rifier la validit? des certificats TLS/SSL du serveur" - -#~ msgid "" -#~ "This ensures that the server certificate is valid (i.e. signed by an " -#~ "approved Certification Authority)." -#~ msgstr "" -#~ "Ceci permet de s?assurer que le certificat du serveur est valide (sign? " -#~ "par une Autorit? de Certification approuv?e)." - -#, fuzzy -#~ msgid "goto is deprecated" -#~ msgstr "URL de sortie (d?pr?ci?)" - -#~ msgid "Replay Gain type" -#~ msgstr "Type de gain" - -#~ msgid "" -#~ "Musepack can have a title-specific replay gain (volume control) or an " -#~ "album-specific one. Choose which type you want to use" -#~ msgstr "" -#~ "Les fichiers Musepack peuvent avoir un gain de lecture (pour le contr?le " -#~ "du volume) sp?cifique au titre ou ? l?album. Choisissez le mode que vous " -#~ "souhaitez utiliser." - -#~ msgid "Report a Bug" -#~ msgstr "Signaler un bogue" - -#~ msgid "Use DVD menus" -#~ msgstr "Activer les menus DVD" - -#~ msgid "minimal_macosx" -#~ msgstr "minimal_macosx" - -#, fuzzy -#~ msgid "&Stats" -#~ msgstr "&Param?tres" - -#, fuzzy -#~ msgid "Remaining Time" -#~ msgstr "Temps restant: %i secondes" - -#~ msgid "Diffie-Hellman prime bits" -#~ msgstr "Nombre de bits Diffie-Hellman" - -#~ msgid "" -#~ "This allows you to modify the Diffie-Hellman prime's number of bits, used " -#~ "for TLS or SSL-based server-side encryption. This is generally not needed." -#~ msgstr "" -#~ "Cette option permet de modifier le nombre premier de bits utilis? pour " -#~ "l?algorithme Diffie-Hellman (utilis? pour le chiffrement par le " -#~ "serveur). Il n?est g?n?ralement pas n?cessaire de modifier cette option." - -#~ msgid "GnuTLS TLS encryption layer" -#~ msgstr "Couche de chiffrement TLS utilisant GnuTLS" - -#~ msgid "Multipart separator string" -#~ msgstr "Cha?ne de s?paration des parties" - -#~ msgid "" -#~ "Multipart strings like MPJPEG use a specific string to separate its " -#~ "content pieces. You can select this string. Default is --myboundary" -#~ msgstr "" -#~ "Les flux multi-parties, tels que MPJPEG utilisent un s?parateur entre les " -#~ "parties. Vous pouvez choisir ce s?parateur. La valeur par d?faut est --" -#~ "myboundary" - -#~ msgid "VLC could not open file \"%s\" (%s)." -#~ msgstr "VLC n?a pas pu ouvrir le fichier \"%s\" (%s)." - -#~ msgid "Raw write" -#~ msgstr "R??criture brute" - -#~ msgid "" -#~ "Packets will be sent directly, without trying to fill the MTU (ie, " -#~ "without trying to make the biggest possible packets in order to improve " -#~ "streaming)." -#~ msgstr "" -#~ "Envoyer les paquets directement, sans passer par le MTU (ie, sans essayer " -#~ "de construire les plus gros paquets possibles afin d?am?liorer la " -#~ "diffusion)." - -#, fuzzy -#~ msgid "RTCP destination port number" -#~ msgstr "Nom de session" - -#, fuzzy -#~ msgid "Preferences / Settings" -#~ msgstr "Pr?f?rences" - -#, fuzzy -#~ msgid "Open Directory..." -#~ msgstr "Ouvrir un r?p&ertoire?\tCtrl-E" - -#~ msgid "Hide Menus..." -#~ msgstr "Cacher les menus..." - -#~ msgid "Always show a video screen, with a cone when there is audio only." -#~ msgstr "" -#~ "Toujours afficher un ?cran vid?o, avec un cone quand il n?y a que du son." - -#, fuzzy -#~ msgid "Show a systray icon to control VLC" -#~ msgstr "Montrer un ic?ne dans la barre syst?me" - -#, fuzzy -#~ msgid "Transcoding" -#~ msgstr "Transcode" - -#~ msgid "&View" -#~ msgstr "&Vue" - -#~ msgid "Check TLS/SSL server hostname in certificate" -#~ msgstr "V?rifier le nom d?h?te du serveur TLS/SSL ?" - -#~ msgid "" -#~ "This ensures that the server hostname in certificate matches the " -#~ "requested host name." -#~ msgstr "" -#~ "Ceci permet de v?rifier que le nom d?h?te du serveur correspond au nom " -#~ "d?h?te demand?." - -#~ msgid "" -#~ "This allows you to give a broader description of the stream, that will be " -#~ "announced in the SDP (Session Descriptor)." -#~ msgstr "" -#~ "Description ?tendue du flux qui sera annonc? dans le SDP (Descripteur de " -#~ "Session)." - -#~ msgid "Album/movie/show title" -#~ msgstr "Album" - -#~ msgid "Track number/position in set" -#~ msgstr "Num?ro de piste" - -#~ msgid "Autodetection of MTU" -#~ msgstr "D?tection automatique du MTU" - -#~ msgid "" -#~ "Automatically detect the line's MTU. This will increase the size if " -#~ "truncated packets are found" -#~ msgstr "" -#~ "D?tection automatique du MTU de la liaison. La taille sera augment?e si " -#~ "des paquets tronqu?s apparasissent." - -#, fuzzy -#~ msgid "Track number/Position" -#~ msgstr "Num?ro de piste" - -#, fuzzy -#~ msgid "Show columns" -#~ msgstr "Showtunes" - -#~ msgid "(no title)" -#~ msgstr "(Sans titre)" - -#~ msgid "(no artist)" -#~ msgstr "(Pas d?artiste)" - -#~ msgid "(no album)" -#~ msgstr "(Pas d?album)" - -#, fuzzy -#~ msgid "no artist" -#~ msgstr "(Pas d?artiste)" - -#, fuzzy -#~ msgid "no album" -#~ msgstr "(Pas d?album)" - -#~ msgid "Podcast" -#~ msgstr "Podcast" - -#, fuzzy -#~ msgid "SAP sessions" -#~ msgstr "Session" - -#, fuzzy -#~ msgid "R1" -#~ msgstr "16:9" - -#, fuzzy -#~ msgid "Ctrl+Z" -#~ msgstr "Ctrl" - -#~ msgid "Fast mutex on NT/2K/XP (developers only)" -#~ msgstr "Mutex rapide pour NT/2K/XP (d?veloppeurs uniquement)" - -#~ msgid "" -#~ "On Windows NT/2K/XP we use a slow mutex implementation but which allows " -#~ "us to correctly implement condition variables. You can also use the " -#~ "faster Win9x implementation but you might experience problems with it." -#~ msgstr "" -#~ "Sous Windows NT/2K/XP, VLC utilise une impl?mentation lente mais fid?le " -#~ "des mutex. Vous pouvez utiliser cette impl?mentation plus rapide mais " -#~ "avec laquelle vous pouvez rencontrer des probl?mes." - -#~ msgid "Condition variables implementation for Win9x (developers only)" -#~ msgstr "" -#~ "Impl?mentation des variables conditionnelles pour Win9x (d?veloppeurs " -#~ "uniquement)" - -#~ msgid "" -#~ "On Windows 9x/Me you can use a fast but incorrect condition variables " -#~ "implementation (more precisely there is a possibility for a race " -#~ "condition to happen). However it is possible to use slower alternatives " -#~ "which are more robust. Currently you can choose between implementation 0 " -#~ "(which is the fastest but slightly incorrect), 1 (default) and 2." -#~ msgstr "" -#~ "Sous Windows 9x/Me, nous utilisons une impl?mentation rapide mais " -#~ "incorrecte des variables conditionnelles (plus pr?cis?ment, une race " -#~ "condition peut se produire). Il est toutefois possible d?utiliser des " -#~ "alternatives plus lentes qui devraient ?tre plus robustes. Actuellement, " -#~ "vous pouvez choisir entre l?impl?mentation 0 (la plus rapide, mais assez " -#~ "incorrecte), 1 (par d?faut) et 2." - -#~ msgid "FFmpeg audio/video decoder/encoder ((MS)MPEG4,SVQ1,H263,WMV,WMA)" -#~ msgstr "D?codeur/encodeur audio/vid?o ffmpeg ((MS)MPEG4,SVQ1,H263,WMV,WMA)" - -#~ msgid "Listen to IPv4 announcements on the standard address." -#~ msgstr "Ecouter les annonces SAP sur l?adresse IPv4 standard." - -#~ msgid "SDP file parser for UDP" -#~ msgstr "Parseur de fichiers SDP pour UDP" - -#, fuzzy -#~ msgid "Bluescreen effect" -#~ msgstr "Ecran bleu" - -#~ msgid "" -#~ "Size of the video that will be displayed by the DirectShow plugin. If you " -#~ "don?t specify anything the default size for your device will be used." -#~ msgstr "" -#~ "Taille de la vid?o affich?e par DirectShow. Si vous ne sp?cifiez rien, la " -#~ "r?solution par d?faut pour le p?riph?rique sera utilis?e." - -#~ msgid "Type 'pause' to continue." -#~ msgstr "Tapez \"pause\" pour continuer." - -#~ msgid "Growl server" -#~ msgstr "Serveur Growl" - -#~ msgid "Growl password" -#~ msgstr "Mot de passe" - -#~ msgid "Growl UDP port" -#~ msgstr "Port UDP" - -#~ msgid "" -#~ "This is the default size of the fonts that will be rendered on the video. " -#~ "If set to something different than 0 this option will override the " -#~ "relative font size. " -#~ msgstr "" -#~ "Taille des polices ? afficher. Si le r?glage est diff?rent de 0, cette " -#~ "option outrepassera la taille de police relative. " - -#~ msgid "This is the output access method that will be used." -#~ msgstr "M?thode de sortie ? utiliser." - -#~ msgid "This is the muxer that will be used." -#~ msgstr "Multiplexeur ? utiliser." - -#, fuzzy -#~ msgid "Sound Files" -#~ msgstr "Clip sonore" - -#, fuzzy -#~ msgid "Halve sample rate" -#~ msgstr "Fr?quence d??chantillonage" - -#, fuzzy -#~ msgid "Video monitoring filter" -#~ msgstr "Filtre de redimensionnement" - -#, fuzzy -#~ msgid "Statistics input file" -#~ msgstr "Statistiques" - -#, fuzzy -#~ msgid "Statistics output file" -#~ msgstr "Fichier de sortie RRD" - -#~ msgid "QP factor between P and B." -#~ msgstr "Facteur de QP entre P et B." - -#~ msgid "" -#~ "This parameter controls quality versus speed tradeoffs involved in the " -#~ "motion estimation decision process (lower = quicker and higher = better " -#~ "quality). From 1 to 6." -#~ msgstr "" -#~ "Ce param?tre contr?le la qualit? par rapport aux compromis de vitesses " -#~ "impliqu?es dans le processus de choix du mouvement estim? (faible = plus " -#~ "rapide et ?lev? = meilleure qualit?)." - -#~ msgid "PSNR calculation" -#~ msgstr "Calcul du PSNR" - -#~ msgid "Timestamp" -#~ msgstr "Horodatage" - -#~ msgid "" -#~ "Width in pixels of the border than can be drawn horizontally around the " -#~ "mosaic." -#~ msgstr "Largeur de la bordure horizontale autour de la mosa?que." - -#~ msgid "Text rendering" -#~ msgstr "Rendu du texte" - -#~ msgid "Open MRL" -#~ msgstr "Ouvrir MRL" - -#~ msgid "Streamming" -#~ msgstr "Diffusion" - -#~ msgid "Dummy stream ouput" -#~ msgstr "Flux sortant factice" - -#~ msgid "Audio Bitrate" -#~ msgstr "Taux d??chantillonnage audio" - -#~ msgid "Segment Filename" -#~ msgstr "Nom de fichier du segment" - -#~ msgid "Acid Punk" -#~ msgstr "Acid Punk" - -#~ msgid "Acid Jazz" -#~ msgstr "Acid Jazz" - -#~ msgid "Group Info" -#~ msgstr "Infos sur le groupe" - -#~ msgid "Dummy stream" -#~ msgstr "Flux factice" - -#~ msgid "List of vout modules" -#~ msgstr "Liste des modules vout" - -#~ msgid "General interface setttings" -#~ msgstr "Param?tres g?n?raux de l?interface" - -#~ msgid "Video snapshot directory" -#~ msgstr "R?pertoire des captures" - -#~ msgid "" -#~ "print help for VLC and all it's modules (can be combined with --advanced)" -#~ msgstr "" -#~ "Afficher l?aide de VLC et de ses modules (peut ?tre combin? avec --" -#~ "advanced)" - -#~ msgid "" -#~ "Path to the x509 PEM private key file that will be used for HTTPS. Leave " -#~ "empty if you don?t have one." -#~ msgstr "" -#~ "Chemin du fichier x509 de cl? priv?e ? utiliser pour HTTPS. Ne rien " -#~ "entrer si vous n?en n?avez pas." - -#~ msgid "" -#~ "Path to the x509 PEM trusted root CA certificates (certificate authority) " -#~ "file that will be used forHTTPS. Leave empty if you don?t have one." -#~ msgstr "" -#~ "Chemin du fichier x509 d?autorit? de certification qui sera utilis? pour " -#~ "HTTPS. Ne rien entrer si vous n?en n?avez pas." - -#~ msgid "" -#~ "Sets minimum interval between IDR-frames. In H.264, I-frames do not " -#~ "necessarily bound a closed GOP because it is allowable for a P-frame to " -#~ "be predicted from more frames than just the one frame before it (also see " -#~ "frameref). Therefore, I-frames are not necessarily seekable. IDR-Frames " -#~ "restrict subsequent P-frames from referring to any frame prior to the IDR-" -#~ "Frame. \n" -#~ "If scenecuts appear within this interval, they are still encoded as I-" -#~ "frames, but do not start a new GOP." -#~ msgstr "" -#~ "Intervalle minimum entre des images IDR. En H.264, les images I ne " -#~ "d?limitent pas forc?ment un GOP, car il est possible pour une image P " -#~ "d??tre pr?dite ? partir de plus d?une image pr?c?dente (voir aussi " -#~ "frameref). Il n?est donc pas toujours possible de se d?placer jusqu?aux " -#~ "images I. Les images IDR interdisent aux images P suivantes de se r?f?rer " -#~ "? une image pr?c?dant l?image IDR. \n" -#~ "Si des changements de sc?ne ont lieu pendant cet intervalle, ils sont " -#~ "toujours cod?s comme des images I, mais n?initient pas de nouveau GOP." - -#~ msgid "Extra I-Frames aggressivity" -#~ msgstr "Agressivit? des images I" - -#~ msgid "" -#~ "Scene-cut detection. Controls how aggressively to insert extra I-frames. " -#~ "With small values of scenecut, the codec often has to force an I-frame " -#~ "when it would exceed keyint. Good values of scenecut may find a better " -#~ "location for the I-frame. Large values use more I-frames than necessary, " -#~ "thus wasting bits. -1 disables scene-cut detection, so I-frames are be " -#~ "inserted only every other keyint frames, which probably leads to ugly " -#~ "encoding artifacts. (1-100)." -#~ msgstr "" -#~ "Cette valeur contr?le l?ajout d?images I aux changements de sc?ne. Avec " -#~ "de petites valeurs, le codec doit souvent forcer une image I pour ne pas " -#~ "d?passer l?interface maximal. De bonnes valeurs peuvent trouver une " -#~ "meilleure position pour l?image I. De grandes valeurs utilisent plus " -#~ "d?images I que n?cessaire, perdant ainsi du d?bit. -1 d?sactive la " -#~ "d?tection de changements de sc?ne, ce qui entraine l?insertion d?images I " -#~ "seulement ? la fin de l?intervale maximal, ce qui causerait probablement " -#~ "des artefacts d?encodage." - -#~ msgid "Number of consecutive B-frames between I and P-frames. (1 to 16)" -#~ msgstr "Nombre d?images B cons?cutives entre images I et P (de 1 ? 16)." - -#~ msgid "" -#~ "Force the specified number of consecutive B-frames to be used, except " -#~ "possibly before an I-frame. " -#~ msgstr "" -#~ "Forcer le nombre d?images B sp?cifi? ? ?tre utilis?, sauf ?ventuellement " -#~ "avant une image I. " - -#~ msgid "B-frames usage" -#~ msgstr "Utilisation d?images B" - -#~ msgid "" -#~ "Bias the choice to use B-frames. Positive values cause more B-frames, " -#~ "negative values cause less B-frames. " -#~ msgstr "" -#~ "Modifier le choix d?utilisation des images B. Les valeurs positives " -#~ "augmentent le nombre d?images B, les valeurs n?gatives le diminuent. " - -#~ msgid "" -#~ "CABAC (Context-Adaptive Binary Arithmetic Coding). Slightly slows down " -#~ "encoding and decoding, but should save 10-15% bitrate." -#~ msgstr "" -#~ "CABAC (Codage arithm?tique binaire adaptatif). Ceci ralentit l?encodage " -#~ "et le d?codage, mais entra?ne un gain de d?bit de 10 ? 15%." - -#~ msgid "" -#~ "Number of previous frames used as predictors. This is effective in Anime, " -#~ "but seems to make little difference in live-action source material. Some " -#~ "decoders are unable to deal with large frameref values. From 1 to 16" -#~ msgstr "" -#~ "Nombre d?images pr?c?dentes ? utiliser pour la pr?diction. Ceci est tr?s " -#~ "efficace pour les dessins anim?s, mais semble ne pas faire beaucoup de " -#~ "diff?rences pour les sc?nes r?elles. Certains d?codeurs ne savent pas " -#~ "traiter des valeurs ?lev?es. Les valeurs vont de 1 ? 16." - -#~ msgid "" -#~ "This selects the quantizer to use. Lower values result in better " -#~ "fidelity, but higher bitrates. 26 is a good default value. From 0 to 51. " -#~ "0 means lossless" -#~ msgstr "" -#~ "Quantisateur ? utiliser, entre 1 et 51. Des valeurs plus faibles " -#~ "am?liorent la fid?lit? mais augmentent le d?bit. La valeur par d?faut de " -#~ "26 est bonne. 0 signifie que l?encodage sera sans perte." - -#~ msgid "1-pass Quality-based VBR. From 0 to 51" -#~ msgstr "VBR bas? sur la qualit? en une passe. De 0 ? 51." - -#~ msgid "Minimum quantizer, 15/35 seems to be a useful range." -#~ msgstr "Quantisateur minimal, 15 ? 35 semble ?tre une bonne ?chelle" - -#~ msgid "Allowed variance in average. bitrate (in kbits/s)." -#~ msgstr "Variance autoris?e du d?bit moyen, en kbits/s." - -#~ msgid "Sets a maximum local bitrate in kbits/s." -#~ msgstr "R?gle le d?bit maximum local en kbits/s." - -#~ msgid "Averaging period for the maximum local bitrate in kbits." -#~ msgstr "P?riode de moyennage pour le d?bit maximal local en kbits." - -#~ msgid "Sets the initial buffer occupancy as a fraction of the buffer size." -#~ msgstr "" -#~ "Ceci configure l?occupation initiale du tampon en tant que fraction de la " -#~ "taille du tampon." - -#~ msgid "QP curve compression. (0.0=CBR to 1.0=QCP)" -#~ msgstr "Compression de la courbe de QP. (0.0 = CBR, 1.0 = QCP)" - -#~ msgid "Direct MV prediction mode. " -#~ msgstr "Mode de pr?diction des vecteurs de mouvement directs. " - -#~ msgid "" -#~ "Maximum distance to search for motion estimation, measured from predicted " -#~ "position(s). Default of 16 is good for most footage, high motion " -#~ "sequences may benefit from settings between 24-32. From 0 to 64." -#~ msgstr "" -#~ "Distance maximale de recherche pour l?estimation de mouvement, ? partir " -#~ "des positions pr?dites. La valeur par d?faut de 16 convient pour la " -#~ "plupart des s?quences. Pour des s?quences ? fort mouvement, des r?glages " -#~ "de l?ordre de 24-32 peuvent ?tre meilleurs. Les valeurs vont de 0 ? 64." - -#~ msgid "RD based mode decision for B-frames. This requires subme 6." -#~ msgstr "" -#~ "Mode de d?cision pour les images B bas? sur RD. Ceci n?cessite subme 6." - -#~ msgid "Ignore chroma in motion estimation" -#~ msgstr "Ignorer le chroma dans l?estimation de mouvement" - -#~ msgid "Dct-domain noise reduction. Adaptive pseudo-deadzone." -#~ msgstr "R?duction de bruit DCT. Pseudo zone morte adaptative." - -#~ msgid "" -#~ "Address and port the HTTP interface will listen on. It defaults to all " -#~ "network interfaces (0.0.0.0). If you want the telnet interface to be " -#~ "available only on the local machine, enter 127.0.0.1" -#~ msgstr "" -#~ "Adresse et port d??coute pour l?interface HTTP. Par d?faut, l?interface " -#~ "?coute sur toutes les interfaces r?seau. Si vous souhaitez que " -#~ "l?interface HTTP ne soit disponible que pour la machine locale, utilisez " -#~ "127.0.0.1" - -#~ msgid "RTP/RTSP/SDP demuxer (using Live555.com)" -#~ msgstr "D?multiplexeur RTP/RTSP/SDP (utilisant Live555)" - -#~ msgid "Port to use for tunneling the RTSP/RTP over HTTP" -#~ msgstr "Port ? utiliser pour la tunnelisation du RTSP/RTP par HTTP." - -#~ msgid "" -#~ "Windows configuration of the last used. This option is updated " -#~ "automatically by the skins module." -#~ msgstr "" -#~ "Configuration des fen?tres du dernier skin utilis?. Cette option est mise " -#~ "? jour automatiquement." - -#~ msgid "" -#~ "It is possible to apply effects to the renderedtext to improve its " -#~ "readability." -#~ msgstr "" -#~ "Il est possible d?appliquer des effets au texte afin d?am?liorer sa " -#~ "lisibilit?." - -#~ msgid "" -#~ "Enforces alignment of all access units on PES boundaries. This is a waste " -#~ "of bandwidth." -#~ msgstr "" -#~ "Forcer l?alignement sur les limites de PES. Ceci g?che de la bande " -#~ "passante." - -#~ msgid "" -#~ "Pictures coming from the picture video outputs will be delayed accord to " -#~ "thi value (in milliseconds, should be >= 100 ms). For high values, you " -#~ "will need to raise caching values." -#~ msgstr "" -#~ "Les images provenant des sorties vid?o seront diff?r?es en cons?quence " -#~ "(en milisecondes, >= 100 ms). Pour utiliser des valeurs ?lev?es, " -#~ "augmenter le cache de fichier et les autres caches." - -#~ msgid "This is the subtitles coded that will be used." -#~ msgstr "Codec de sous-titres ? utilser" - -#~ msgid "Select angle" -#~ msgstr "Selectionner l?angle" - -#~ msgid "VC-1 decoder module" -#~ msgstr "D?codeur VC1" - -#~ msgid "Video filters settings" -#~ msgstr "Param?tres des filtres vid?o" - -#~ msgid "CDDB Artist" -#~ msgstr "Artiste CDDB" - -#~ msgid "CDDB Category" -#~ msgstr "Cat?gorie CDDB" - -#~ msgid "CDDB Disc ID" -#~ msgstr "Identifiant CDDB" - -#~ msgid "CDDB Extended Data" -#~ msgstr "Donn?es ?tendues CDDB" - -#~ msgid "CDDB Genre" -#~ msgstr "Genre CDDB" - -#~ msgid "CDDB Year" -#~ msgstr "Ann?e CDDB" - -#~ msgid "CDDB Title" -#~ msgstr "Titre CDDB" - -#~ msgid "CD-Text Arranger" -#~ msgstr "Arrangeur CD-Text" - -#~ msgid "CD-Text Composer" -#~ msgstr "Compositeur CD-Text" - -#~ msgid "CD-Text Disc ID" -#~ msgstr "Identifiant CD-Text" - -#~ msgid "CD-Text Genre" -#~ msgstr "Genre CD-Text" - -#~ msgid "CD-Text Message" -#~ msgstr "Message CD-Text" - -#~ msgid "CD-Text Songwriter" -#~ msgstr "Ecrivain CD-Text" - -#~ msgid "CD-Text Performer" -#~ msgstr "Artiste CD-Text" - -#~ msgid "CD-Text Title" -#~ msgstr "Titre CD-Text" - -#~ msgid "ISO-9660 Application ID" -#~ msgstr "Application" - -#~ msgid "ISO-9660 Preparer" -#~ msgstr "Pr?parateur ISO-9960" - -#~ msgid "ISO-9660 Publisher" -#~ msgstr "Publicateur ISO-9960" - -#~ msgid "ISO-9660 Volume" -#~ msgstr "Volume ISO-9660" - -#~ msgid "ISO-9660 Volume Set" -#~ msgstr "Volume ISO-9660" - -#~ msgid "IPv6 multicast output interface" -#~ msgstr "Interface de sortie multicast IPv6" - -#~ msgid "Default IPv6 multicast interface. This overrides the routing table." -#~ msgstr "" -#~ "Indiquez l?interface de sortie multicast IPv6. Ce r?glage passe outre la " -#~ "table de routage." - -#~ msgid "All items, unsorted" -#~ msgstr "Tous les ?l?ments" - -#~ msgid "" -#~ "Select the video input source, such as composite, s-video, or tuner. " -#~ "Since these settings are hardware-specfic, you should find good settings " -#~ "in the \"Device config\" area, and use those numbers here. -1 means that " -#~ "settings will not be changed." -#~ msgstr "" -#~ "Source vid?o ? utiliser, telle que composite, s-video ou tuner. Ces " -#~ "param?tres sont sp?cifiques au mat?riel. Vous devriez trouver de bons " -#~ "r?glages dans la zone \"configuration du p?riph?rique\" et utiliser ces " -#~ "nombres. -1 signifie que les r?glages ne seront pas modifi?s." - -#~ msgid "" -#~ "This is the size of the temporary files tha will be used to store the " -#~ "timeshifted streams." -#~ msgstr "" -#~ "Taille des fichiers temporaires ? utiliser pour stocker le flux diff?r?." - -#~ msgid "Name to give to this stream/channel on the icecast server." -#~ msgstr "Nom ? donner ? ce flux/canal sur le serveur icecast." - -#~ msgid "" -#~ "You normally have to feed the shoutcast module with Ogg streams. It is " -#~ "also possible to stream MP3 instead, so you can forward MP3 streams to " -#~ "the icecast server." -#~ msgstr "" -#~ "G?n?ralement, la sortie Icecast utilise des flux Ogg. Cette option vous " -#~ "permet d?utiliser des flux MP3 ? la place." - -#~ msgid "Time-To-Live of the outgoing stream." -#~ msgstr "TTL du flux sortant." - -#~ msgid "Audio filter for fixed32<->float32 conversion" -#~ msgstr "Convertisseur fixed32->float32" - -#~ msgid "Audio filter for fixed32->s16 conversion" -#~ msgstr "Convertisseur fixed32->s16" - -#~ msgid "Audio filter for float32->s16 conversion" -#~ msgstr "Convertisseur float32->s16" - -#~ msgid "Audio filter for float32->s8 conversion" -#~ msgstr "Convertisseur float32->s8" - -#~ msgid "Audio filter for float32->u16 conversion" -#~ msgstr "Convertisseur float32->u16" - -#~ msgid "Audio filter for float32->u8 conversion" -#~ msgstr "Convertisseur float32->u8" - -#~ msgid "Audio filter for s16->fixed32 conversion" -#~ msgstr "Convertisseur s16->fixed32" - -#~ msgid "Audio filter for s16->float32 conversion" -#~ msgstr "Convertisseur s16->float32" - -#~ msgid "Audio filter for s16->float32 with endianness conversion" -#~ msgstr "Convertisseur s16->float32 avec conversion big-endian/little-endian" - -#~ msgid "Audio filter for s8->float32 conversion" -#~ msgstr "Convertisseur s8->float32" - -#~ msgid "Audio filter for u8->fixed32 conversion" -#~ msgstr "Convertisseur u8->fixed32" - -#~ msgid "Audio filter for u8->float32 conversion" -#~ msgstr "Convertisseur u8->float32" - -#~ msgid "Linux OSS audio output" -#~ msgstr "Sortie audio OSS pour Linux" - -#~ msgid "Corba control" -#~ msgstr "Contr?les Corba" - -#~ msgid "Reactivity" -#~ msgstr "R?activit?" - -#~ msgid "" -#~ "The corba interface will handle events every 50ms/Reactivity. 5000 " -#~ "appears to be a sensible value." -#~ msgstr "" -#~ "L?interface CORBA g?rera les ?v?nements tous les 50ms/R?activit?. 5000 " -#~ "semble ?tre une valeur correcte." - -#~ msgid "corba control module" -#~ msgstr "Module de contr?le Corba" - -#~ msgid "| time-format STRING . . . overlay STRING in video" -#~ msgstr "| time-format CHAINE . . ?crit l?heure selon CHAINE" - -#~ msgid "| time-x X . . . . . . . . . . . .offset from left" -#~ msgstr "| time-x X . . . . . . . . .d?calage de l?heure depuis la gauche" - -#~ msgid "| time-y Y . . . . . . . . . . . . offset from top" -#~ msgstr "| time-y Y . . . . . . . . . d?calage de l?heure depuis le haut" - -#~ msgid "| time-position #. . . . . . . . relative position" -#~ msgstr "| time-position # . . . . . position relative de l?heure" - -#~ msgid "| time-color # . . . . . . . . . . font color, RGB" -#~ msgstr "| time-color # . . . . . . . couleur de l?heure, RGB" - -#~ msgid "| time-opacity # . . . . . . . . . . . . . opacity" -#~ msgstr "| time-opacity # . . . . . opacit? de l?heure" - -#~ msgid "| time-size # . . . . . . . . font size, in pixels" -#~ msgstr "| time-size # . . . . . . . taille de l?heure, en pixels" - -#~ msgid "Fixing AVI Index" -#~ msgstr "R?paration de l?index AVI" - -#~ msgid "Creating AVI Index ..." -#~ msgstr "Cr?ation de l?index..." - -#~ msgid "Playlist metademux" -#~ msgstr "Liste de lecture (meta-demultiplexeur)" - -#~ msgid "Segment filename" -#~ msgstr "Nom de fichier du Segment" - -#~ msgid "Muxing application" -#~ msgstr "Application de multiplexage" - -#~ msgid "Writing application" -#~ msgstr "Application d??criture" - -#~ msgid "Listeners" -#~ msgstr "Auditeurs" - -#~ msgid "Native playlist import" -#~ msgstr "Import natif de la list de lecture" - -#~ msgid "Podcast Link" -#~ msgstr "Lien Podcast" - -#~ msgid "Podcast Copyright" -#~ msgstr "Copyright Podcast" - -#~ msgid "Podcast Category" -#~ msgstr "Cat?gorie Podcast" - -#~ msgid "Podcast Keywords" -#~ msgstr "Mots-cl?s Podcast" - -#~ msgid "Podcast Subtitle" -#~ msgstr "Sous-titre Podcast" - -#~ msgid "Podcast Publication Date" -#~ msgstr "Date de publication du Podcast" - -#~ msgid "Podcast Author" -#~ msgstr "Auteur du Podcast" - -#~ msgid "Podcast Subcategory" -#~ msgstr "Sous-cat?gorie du Podcast" - -#~ msgid "Podcast Duration" -#~ msgstr "Dur?e du Podcast" - -#~ msgid "Podcast Type" -#~ msgstr "Type du Podcast" - -#, fuzzy -#~ msgid "Mime type" -#~ msgstr "Type de disque" - -#~ msgid "" -#~ "This panel allows to select video effects filters to apply.\n" -#~ "The filters can be configured indivudually in the Preferences, in the " -#~ "subsections of Video/Filters\n" -#~ ".To choose the order in which the filter are applied, a filter option " -#~ "string can be set in the Preferences, Video / Filters section." -#~ msgstr "" -#~ "Ce panneau permet de r?gler les filtres vid?o ? appliquer.\n" -#~ "Ces filtres peuvent ?tre configur?s individuellement dans les " -#~ "pr?f?rences, dans les sous-sections de Video/Filters.\n" -#~ "Pour choisir l?ordre d?application, une cha?ne d?option peut ?tre " -#~ "indiqu?e ? ce m?me endroit." - -#~ msgid "" -#~ "An error has occurred which probably prevented the proper execution of " -#~ "the program:" -#~ msgstr "" -#~ "Une erreur est survenue, qui a probablement emp?ch? le d?roulement normal " -#~ "du programme :" - -#~ msgid "If you believe that it is a bug, please follow the instructions at:" -#~ msgstr "" -#~ "Si vous estimez qu?il s?agit d?une erreur, veuillez suivre les " -#~ "instructions ? l?adresse :" - -#~ msgid "Open Messages Window" -#~ msgstr "Ouvrir la fen?tre de messages" - -#~ msgid "Dismiss" -#~ msgstr "Fermer" - -#~ msgid "Do not display further errors" -#~ msgstr "Supprimer les erreurs suivantes" - -#~ msgid "" -#~ "In fullscreen mode, crop the picture if necessary in order to fill the " -#~ "screen without black borders (OpenGL only)." -#~ msgstr "" -#~ "En mode plein ?cran, recadre l?image si n?cessaire afin de remplir " -#~ "l??cran sans bordures noires (OpenGL seulement)." - -#, fuzzy -#~ msgid "Enable skinned playlist" -#~ msgstr "Impossible de trouver la liste de lecture" - -#~ msgid "%i items in playlist (%i not shown)" -#~ msgstr "%i ?lements (%i non montr?s)" - -#~ msgid "M3U file" -#~ msgstr "Fichier M3U" - -#~ msgid "Sorted by Artist" -#~ msgstr "Tri? par auteur" - -#~ msgid "Sorted by Album" -#~ msgstr "Tri? par Album" - -#~ msgid "UDP/IPv4 network abstraction layer" -#~ msgstr "Couche d?abstraction de r?seau UDP/IPv4" - -#~ msgid "UDP/IPv6 network abstraction layer" -#~ msgstr "Couche d?abstraction de r?seau UDP/IPv6" - -#~ msgid "Playlist stress tests" -#~ msgstr "Tests de liste de lecture" - -#~ msgid "DAAP shares" -#~ msgstr "Partages DAAP (iTunes)" - -#~ msgid "DAAP access" -#~ msgstr "Acc?s DAAP" - -#~ msgid "Session Announcements (SAP)" -#~ msgstr "Annonces de sessions (SAP)" - -#~ msgid "This allows you to specify the Time-To-Live for the output stream." -#~ msgstr "TTL pour le flux sortant." - -#~ msgid "Automatic black border cropping." -#~ msgstr "Activer la r?duction automatique des marges noires." - -#~ msgid "" -#~ "Distort mode, one of \"wave\", \"ripple\", \"gradient\", \"edge\", \"hough" -#~ "\" and \"psychedelic\"." -#~ msgstr "" -#~ "Mode de distorsion, ? wave ?, ? ripple ?, ? gradient ?, ? edge ?, ? ough ? ou ? " -#~ "psychedelic ?." - -#~ msgid "Distort video filter" -#~ msgstr "Filtre de distorsion vid?o" - -#~ msgid "Number of loops for the logo animation.1 = continuous, 0 = disabled" -#~ msgstr "" -#~ "Nombre de boucles ? effectuer pour l?animation du logo. 1 = continu, 0 = " -#~ "d?sactiv?" - -#~ msgid "Marquee text to display." -#~ msgstr "Texte ? afficher" - -#~ msgid "" -#~ "Positioning method for the mosaic. auto: automatically choose the best " -#~ "number of rows and columns. fixed: use the user-defined number of rows " -#~ "and columns." -#~ msgstr "" -#~ "M?thode de positionnement. auto : choix automatique du meilleur nombre de " -#~ "lignes et de colonnes. fixed : utiliser les valeurs d?finies par " -#~ "l?utilisateur." - -#~ msgid "A file containing a simple playlist" -#~ msgstr "Fichier contenant une liste de lecture" - -#~ msgid "History parameter" -#~ msgstr "Param?tre d?historique" - -#~ msgid "The umber of frames used for detection." -#~ msgstr "Nombre d?images utilis?es pour la d?tection." - -#~ msgid "Time format string (%Y%m%d %H%M%S)" -#~ msgstr "Format d?heure (%Y%m%d %H%M%S)" - -#~ msgid "" -#~ "Time format string (%Y = year, %m = month, %d = day, %H = hour, %M = " -#~ "minute, %S = second)." -#~ msgstr "" -#~ "Format de l?heure (%Y = an, %m = mois, %d = jour, %H = heure, %M = " -#~ "minute,%S = seconde)." - -#~ msgid "X offset, from the left screen edge" -#~ msgstr "D?calage horizontal, ? partir de la gauche" - -#~ msgid "Y offset, down from the top" -#~ msgstr "D?calage vertical, ? partir du haut" - -#~ msgid "Time overlay" -#~ msgstr "Heure" - -#~ msgid "Time display sub filter" -#~ msgstr "Filtre d?incrustation de l?heure" - -#~ msgid "Standard Play" -#~ msgstr "Lecture standard" - -#~ msgid "DCA" -#~ msgstr "DCA" - -#~ msgid "" -#~ "Subpictures get a default timeout of 15 seconds added to their remaining " -#~ "time.This will ensure that they are at least the specified time visible." -#~ msgstr "" -#~ "Par d?faut, les sous-titres expirent 15 secondes apr?s leur d?lai normal " -#~ "d?expiration. Ceci permet d??tre s?r qu?ils sont visibles au moins " -#~ "pendant le d?lai sp?cifi?." - -#~ msgid "" -#~ "This has no effect on actual encoding quality, it just prevents the stats " -#~ "from being calculated (for speed)." -#~ msgstr "" -#~ "Ceci n?a pas d?effet sur la qualit? d?encodage. Les statistiques ne " -#~ "seront pas calcul?es afin de gagner du temps." - -#~ msgid "Image" -#~ msgstr "Image" - -#~ msgid "Center-Center" -#~ msgstr "Centr?" - -#~ msgid "Left-Center" -#~ msgstr "Centre-Gauche" - -#~ msgid "Right-Center" -#~ msgstr "Centr? ? droite" - -#~ msgid "Center-Top" -#~ msgstr "Centre-Haut" - -#~ msgid "Left-Top" -#~ msgstr "Haut-Gauche" - -#~ msgid "Right-Top" -#~ msgstr "Haut-Droit" - -#~ msgid "Center-Bottom" -#~ msgstr "Bas-Centre" - -#~ msgid "Left-Bottom" -#~ msgstr "Bas-Gauche" - -#~ msgid "Right-Bottom" -#~ msgstr "Bas-Droite" - -#~ msgid "Growl" -#~ msgstr "Growl" - -#~ msgid "MSN" -#~ msgstr "MSN" - -#~ msgid "Number of streams" -#~ msgstr "Nombre de flux" - -#~ msgid "Maximum number of Shoutcast radio streams which would be listed." -#~ msgstr "Nombre maximal de flux Shoutcast ? lister" - -#~ msgid "Vertical border width" -#~ msgstr "Largeur de la bordure verticale" - -#~ msgid "" -#~ "Width in pixels of the border than can be drawn vertically around the " -#~ "mosaic." -#~ msgstr "Largeur en pixels de la bordure ? laisser autour de la mosa?que" - -#~ msgid "Horizontal border width" -#~ msgstr "Largeur de la fronti?re horizontale en pixels" - -#~ msgid "fps" -#~ msgstr "fps" - -#~ msgid "More info" -#~ msgstr "D?tails" - -#~ msgid "Control interface settings" -#~ msgstr "Param?tres de l?interface de contr?le" - -#~ msgid "" -#~ "Use the settings of the \"freetype\" module to choose the font you want " -#~ "VLC to use for text rendering (to display subtitles for example)." -#~ msgstr "" -#~ "Utilisez les param?tres du module ? freetype ? pour choisir la police de " -#~ "caract?res que vous souhaitez utiliser dans VLC lors du rendu du texte " -#~ "(lors de l?affichage de sous-titres par exemple)." - -#~ msgid "" -#~ "You can enforce the position of the top left corner of the video window " -#~ "here (x coordinate)." -#~ msgstr "" -#~ "Vous pouvez ici forcer la position du coin haut-gauche de la fen?tre " -#~ "vid?o (coordonn?e X)." - -#~ msgid "You can specify a custom video window title here." -#~ msgstr "Vous pouvez pr?ciser un titre pour la fen?tre vid?o" - -#~ msgid "Program to select" -#~ msgstr "Programme" - -#~ msgid "Programs to select" -#~ msgstr "Programmes" - -#~ msgid "DTS" -#~ msgstr "DTS" - -#~ msgid "By default the encoding is CBR." -#~ msgstr "Le type d?encodage par d?faut est CBR." - -#~ msgid "Default to 4212" -#~ msgstr "Par d?faut : 4212" - -#, fuzzy -#~ msgid "Go To Position" -#~ msgstr "Aller ?" - -#~ msgid "VIDEO_TS folder" -#~ msgstr "Dossier VIDEO_TS" - -#~ msgid "Name of DVD device to read from." -#~ msgstr "Nom du p?riph?rique DVD" - -#~ msgid "Name of CD-ROM device to read Video CD from." -#~ msgstr "Nom du p?riph?rique CD o? se trouve le Video CD" - -#~ msgid "Name of CD-ROM device to read audio CD from." -#~ msgstr "Nom du p?riph?rique de CD-ROM o? se trouve le CD Audio" - -#~ msgid "&Shuffle Playlist" -#~ msgstr "Rendre al?atoire" - -#~ msgid "Font filename" -#~ msgstr "Fichier de police" - -#, fuzzy -#~ msgid "Podcast Service Discovery" -#~ msgstr "D?couverte de services" - -#~ msgid "IPv4-SAP listening" -#~ msgstr "?coute les annonces SAP IPv4" - -#~ msgid "IPv6-SAP listening" -#~ msgstr "?coute les annonces SAP IPv6" - -#~ msgid "Height in pixels" -#~ msgstr "Hauteur en pixels" - -#~ msgid "Width in pixels" -#~ msgstr "Largeur en pixels" - -#~ msgid "Ascii Art" -#~ msgstr "Ascii Art" - -#~ msgid "Select effect" -#~ msgstr "Choisir un effet" - -#, fuzzy -#~ msgid "Small playlist" -#~ msgstr "Enregistrer la liste de lecture" - -#~ msgid "M3U file|*.m3u" -#~ msgstr "Fichier M3U|*.m3u" - -#~ msgid "raw DV demuxer" -#~ msgstr "D?multiplexeur DV brut" - -#~ msgid "Enable CABAC" -#~ msgstr "Activer CABAC" - -#~ msgid "Enable loop filter" -#~ msgstr "Activer le filtre de boucle" - -#~ msgid "Analyse mode" -#~ msgstr "Mode analyse" - -#~ msgid "Properties" -#~ msgstr "Propri?t?s" - -#~ msgid "from " -#~ msgstr "De " - -#~ msgid "type : " -#~ msgstr "type : " - -#~ msgid "URL : " -#~ msgstr "URL : " - -#~ msgid "file size : " -#~ msgstr "Taille du fichier : " - -#~ msgid "file md5 hash : " -#~ msgstr "Somme MD5 : " - -#~ msgid "Choose a mirror" -#~ msgstr "Choisissez un miroir" - -#~ msgid "Downloading..." -#~ msgstr "T?l?chargement..." - -#~ msgid " " -#~ msgstr " " - -#~ msgid "" -#~ "VLC is an open-source and cross-platform multimedia player for various " -#~ "audio and video formats (MPEG-1, MPEG-2, MPEG-4, DivX, mp3, Ogg, etc.) as " -#~ "well as DVDs, VCDs, CD audio, and various streaming protocols.\n" -#~ "\n" -#~ "VLC is also a streaming server with transcoding capabilities (UDP unicast " -#~ "and multicast, HTTP, etc.) mainly designed for high-bandwidth networks.\n" -#~ "\n" -#~ "For more information, have a look at the web site." -#~ msgstr "" -#~ "VLC est un lecteur multim?dia libre et multi-plateformes capable de jouer " -#~ "de nombreux formats audio et vid?o (MPEG-1, MPEG-2, MPEG-4, DivX, MP3, " -#~ "Ogg?) ainsi que les DVDs, les VCDs, les CDs audio et plusieurs types de " -#~ "flux r?seau.\n" -#~ "\n" -#~ "VLC est ?galement un serveur de diffusion avec des capacit?s de " -#~ "transcodage (UDP unicast et multicast, HTTP?) con?u pour les r?seaux haut-" -#~ "d?bits.\n" -#~ "\n" -#~ "Pour plus d?informations, consultez le site web." - -#~ msgid "Jump 3 seconds backwards" -#~ msgstr "3 secondes en arri?re" - -#~ msgid "Jump 10 seconds backwards" -#~ msgstr "10 secondes en arri?re" - -#~ msgid "Jump 1 minute backwards" -#~ msgstr "1 minute en arri?re" - -#~ msgid "Jump 5 minutes backwards" -#~ msgstr "5 minutes en arri?re" - -#~ msgid "Jump 3 seconds forward" -#~ msgstr "3 secondes en avant" - -#~ msgid "Jump 10 seconds forward" -#~ msgstr "10 secondes en avant" - -#~ msgid "Jump 1 minute forward" -#~ msgstr "1 minute en avant" - -#~ msgid "Jump 5 minutes forward" -#~ msgstr "5 minutes en avant" - -#~ msgid "HTTP/HTTPS" -#~ msgstr "HTTP(S)" - -#~ msgid "Settings related to the various access filter used by VLC.\n" -#~ msgstr "R?glages pour les filtres d?entr?e utilis?s par VLC.\n" - -#~ msgid "Choose program (SID)" -#~ msgstr "Choisir le programme (SID)" - -#~ msgid "Choose programs" -#~ msgstr "Choisir les programmes" - -#~ msgid "Choose audio track" -#~ msgstr "Choisir une piste audio" - -#~ msgid "Choose subtitles track" -#~ msgstr "Choisir la piste de sous-titres" - -#~ msgid "Segment " -#~ msgstr "Segment " - -#~ msgid "[0=stereo, 1=dual-mono, 2=joint-stereo]" -#~ msgstr "[0=stereo, 1=mono-dual, 2=joint-stereo]" - -#~ msgid "Current version" -#~ msgstr "Version actuelle" - -#~ msgid "Your version" -#~ msgstr "Votre version" - -#~ msgid "Mirror" -#~ msgstr "Miroir" - -#~ msgid "UPnP" -#~ msgstr "UPnP" - -#~ msgid "RSS" -#~ msgstr "RSS" - -#~ msgid "Windows GAPI" -#~ msgstr "GAPI" - -#~ msgid "Windows GDI" -#~ msgstr "Windows GDI" - -#~ msgid "Access modules settings" -#~ msgstr "Param?tres des modules d?acc?s" - -#~ msgid "Audio output modules settings" -#~ msgstr "Param?tres des modules de sortie audio" - -#~ msgid "Decoder modules settings" -#~ msgstr "Param?tres des modules de d?codage" - -#~ msgid "Demuxers settings" -#~ msgstr "Param?tres des d?multiplexeurs" - -#, fuzzy -#~ msgid "Stream output access modules settings" -#~ msgstr "Param?tres des modules de chroma" - -#~ msgid "Text renderer settings" -#~ msgstr "Param?tres du module de rendu de texte" - -#~ msgid "Video track" -#~ msgstr "Piste vid?o" - -#~ msgid "" -#~ "Usage: %s [options] [items]...\n" -#~ "\n" -#~ msgstr "" -#~ "Utilisation : %s [options] [?l?ments]?\n" -#~ "\n" - -#~ msgid "[module] [description]\n" -#~ msgstr "[module] [description]\n" - -#~ msgid "Choose channel" -#~ msgstr "Choisir un canal" - -#~ msgid "Choose a stream output" -#~ msgstr "Choisir un flux de sortie" - -#~ msgid "Loop playlist on end" -#~ msgstr "Tout r?p?ter" - -#~ msgid "File stream ouput" -#~ msgstr "Fichier flux de sortie" - -#~ msgid "UDP stream ouput" -#~ msgstr "Flux de sortie UDP" - -#~ msgid "udp stream output" -#~ msgstr "Flux de sortie udp" - -#~ msgid "Truncated stream" -#~ msgstr "Flux tronqu?" - -#~ msgid "Stream " -#~ msgstr "Flux " - -#~ msgid "Codec name" -#~ msgstr "Nom du codec" - -#, fuzzy -#~ msgid "Planes" -#~ msgstr "Pranks" - -#~ msgid "Number of Streams" -#~ msgstr "Nombre de flux" - -#, fuzzy -#~ msgid "Flags" -#~ msgstr "Plat" - -#, fuzzy -#~ msgid "playlist metademux" -#~ msgstr "Liste de lecture (meta-demultiplexeur)" - -#, fuzzy -#~ msgid "Muxing Application" -#~ msgstr "Application de multiplexage" - -#, fuzzy -#~ msgid "Writing Application" -#~ msgstr "Application d??criture" - -#~ msgid "Codec Setting" -#~ msgstr "R?glages du Codec" - -#~ msgid "Codec Info" -#~ msgstr "Informations sur le codec" - -#~ msgid "Codec Download" -#~ msgstr "T?l?chargement de codec" - -#~ msgid "Display Resolution" -#~ msgstr "R?solution d?affichage" - -#, fuzzy -#~ msgid "Instrumental Pop" -#~ msgstr "Pop instrumentale" - -#~ msgid "Instrumental Rock" -#~ msgstr "Rock instrumental" - -#~ msgid "Pop/Funk" -#~ msgstr "Pop / Funk" - -#~ msgid "Psychadelic" -#~ msgstr "Psych?d?lique" - -#~ msgid "Rock & Roll" -#~ msgstr "Rock & Roll" - -#~ msgid "Hard Rock" -#~ msgstr "Hard Rock" - -#~ msgid "Prev Chapter" -#~ msgstr "Chapitre pr?c" - -#~ msgid "Play List" -#~ msgstr "Liste de lecture" - -#~ msgid "VideoLAN Client: Open Subtitle File" -#~ msgstr "Client VideoLAN : Ouvrir le Fichier de Sous-titres" - -#~ msgid "" -#~ msgstr "" - -#~ msgid "GNOME" -#~ msgstr "GNOME" - -#~ msgid "GNOME interface" -#~ msgstr "Interface GNOME" - -#~ msgid "_Open File..." -#~ msgstr "_Ouvrir fichier?" - -#~ msgid "Open a file" -#~ msgstr "Ouvre un fichier" - -#~ msgid "Open _Disc..." -#~ msgstr "Ouvrir _disque?" - -#~ msgid "Open a DVD or VCD" -#~ msgstr "Ouvrir un DVD ou VCD" - -#~ msgid "_Network Stream..." -#~ msgstr "Flux r?seau?" - -#~ msgid "Select a network stream" -#~ msgstr "S?lectionne un flux r?seau" - -#~ msgid "_Eject Disc" -#~ msgstr "?j_ecter le disque" - -#~ msgid "_Title" -#~ msgstr "_Titre" - -#~ msgid "_Chapter" -#~ msgstr "_Chapitre" - -#~ msgid "_Language" -#~ msgstr "_Langue" - -#~ msgid "_Subtitles" -#~ msgstr "_Sous-titres" - -#~ msgid "_Fullscreen" -#~ msgstr "Plein ?cran" - -#~ msgid "_Audio" -#~ msgstr "_Audio" - -#~ msgid "_Video" -#~ msgstr "_Vid?o" - -#~ msgid "Net" -#~ msgstr "R?seau" - -#~ msgid "Stop Stream" -#~ msgstr "Arr?ter le flux" - -#~ msgid "Pause Stream" -#~ msgstr "Suspendre le flux" - -#~ msgid "Play Slower" -#~ msgstr "Jouer plus lentement" - -#~ msgid "Fast" -#~ msgstr "Acc?l?rer" - -#~ msgid "Play Faster" -#~ msgstr "Jouer plus rapidement" - -#~ msgid "Previous file" -#~ msgstr "Fichier pr?c?dent" - -#~ msgid "Next File" -#~ msgstr "Fichier suivant" - -#~ msgid "Title:" -#~ msgstr "Titre :" - -#~ msgid "Chapter:" -#~ msgstr "Chapitre?:" - -#~ msgid "(c) 1996-2003 the VideoLAN team" -#~ msgstr "(c) 1996-2003 l??quipe VideoLAN" - -#~ msgid "HTTP/FTP/MMS" -#~ msgstr "HTTP/FTP/MMS" - -#~ msgid "FEC" -#~ msgstr "FEC" - -#~ msgid "Url" -#~ msgstr "URL" - -#~ msgid "Path:" -#~ msgstr "Chemin d?acc?s :" - -#~ msgid "Gtk+" -#~ msgstr "Gtk+" - -#~ msgid "Gtk+ interface" -#~ msgstr "Interface Gtk+" - -#~ msgid "_File" -#~ msgstr "_Fichier" - -#~ msgid "_Close" -#~ msgstr "Fermer" - -#~ msgid "E_xit" -#~ msgstr "Quitter" - -#~ msgid "Exit the program" -#~ msgstr "Quitter le programme" - -#~ msgid "_View" -#~ msgstr "_Vue" - -#~ msgid "_Settings" -#~ msgstr "Param?tres" - -#~ msgid "_Help" -#~ msgstr "Aide" - -#~ msgid "_About..." -#~ msgstr "_? propos?" - -#~ msgid "About this application" -#~ msgstr "? propos de cette application" - -#~ msgid "_Play" -#~ msgstr "Lecture" - -#~ msgid "Go to:" -#~ msgstr "Atteindre :" - -#~ msgid "_Invert" -#~ msgstr "_Inverser" - -#~ msgid "_Select" -#~ msgstr "_S?lectionner" - -#~ msgid "Gtk2 interface" -#~ msgstr "Interface Gtk2" - -#~ msgid "_New" -#~ msgstr "_Nouveau" - -#~ msgid "_Edit" -#~ msgstr "?_dition" - -#~ msgid "_About" -#~ msgstr "? _propos" - -#~ msgid "Languages" -#~ msgstr "Langues" - -#~ msgid "KDE interface" -#~ msgstr "Interface KDE" - -#~ msgid "Fit To Screen" -#~ msgstr "Redimensionner ? la taille de l??cran" - -#~ msgid "Repeat Playlist" -#~ msgstr "R?p?ter la liste de lecture" - -#~ msgid "TTL" -#~ msgstr "TTL" - -#~ msgid "Ogg" -#~ msgstr "Ogg" - -#~ msgid "MPEG PS" -#~ msgstr "MPEG PS" - -#~ msgid "MPEG 4" -#~ msgstr "MPEG 4" - -#~ msgid "MPEG 1" -#~ msgstr "MPEG 1" - -#~ msgid "Pause stream" -#~ msgstr "Suspendre le flux" - -#~ msgid "Play stream" -#~ msgstr "Jouer le flux" - -#~ msgid "MRL :" -#~ msgstr "MRL" - -#~ msgid "FTP" -#~ msgstr "FTP" - -#~ msgid "0:00:00" -#~ msgstr "0:00:00" - -#~ msgid "file://" -#~ msgstr "file://" - -#~ msgid "ftp://" -#~ msgstr "ftp://" - -#~ msgid "http://" -#~ msgstr "http://" - -#~ msgid "udp://@:1234" -#~ msgstr "udp://@:1234" - -#~ msgid "udp6://@:1234" -#~ msgstr "udp6://@:1234" - -#~ msgid "rtp://" -#~ msgstr "rtp://" - -#~ msgid "rtp6://" -#~ msgstr "rtp6://" - -#~ msgid "Stream:" -#~ msgstr "Flux :" - -#~ msgid "client" -#~ msgstr "client" - -#~ msgid "/dev/dsp" -#~ msgstr "/dev/dsp" - -#~ msgid "/dev/video" -#~ msgstr "/dev/video" - -#~ msgid "Codec :" -#~ msgstr "Codec :" - -#, fuzzy -#~ msgid "huff" -#~ msgstr "huffyuv" - -#~ msgid "http://www.videolan.org" -#~ msgstr "http://www.videolan.org" - -#~ msgid "FileInfo" -#~ msgstr "InfoFichier" - -#~ msgid "Open a DVD or (S)VCD" -#~ msgstr "Ouvrir un DVD ou un (S)VCD" - -#~ msgid "Open a network stream" -#~ msgstr "Ouvrir un flux r?seau" - -#~ msgid "Eject the DVD/CD" -#~ msgstr "Ejecter un DVD/CD" - -#~ msgid "Exit this program" -#~ msgstr "Quitter ce programme" - -#~ msgid "Show the program logs" -#~ msgstr "Montrer le journal du programme" - -#~ msgid "About this program" -#~ msgstr "A propos de..." - -#~ msgid "Simple &Open ..." -#~ msgstr "&Ouverture simple..." - -#~ msgid "Open &Satellite Stream..." -#~ msgstr "Ouvrir un flux &Satellite..." - -#~ msgid "&Eject Disc" -#~ msgstr "&Ejecter le disque" - -#~ msgid "E&xit" -#~ msgstr "&Quitter" - -#~ msgid "&File info..." -#~ msgstr "&Informations Fichier..." - -#~ msgid "" -#~ " (wxWindows interface)\n" -#~ "\n" -#~ msgstr "" -#~ " (Interface wxWindows)\n" -#~ "\n" - -#~ msgid "" -#~ "(C) 1996-2003 - the VideoLAN Team\n" -#~ "\n" -#~ msgstr "" -#~ "(C) 1996-2003 - l??quipe VideoLAN?\n" -#~ "?\n" -#~ "\n" - -#~ msgid "Playlist Item options" -#~ msgstr "Options des listes de lecture" - -#~ msgid "Video For Linux" -#~ msgstr "La video pour Linux" - -#~ msgid "CD Audio" -#~ msgstr "CD Audio" - -#~ msgid "WebCam" -#~ msgstr "Webcam" - -#~ msgid "TV Card" -#~ msgstr "Carte TV" - -#~ msgid "&Simple Add..." -#~ msgstr "Ajout &Simple..." - -#~ msgid "&Disable" -#~ msgstr "&D?sactiver" - -#~ msgid "&Select All" -#~ msgstr "&Tout s?lectionner" - -#~ msgid "Item Infos" -#~ msgstr "Informations El?ments" - -#~ msgid "no info" -#~ msgstr "pas d?information" - -#~ msgid "General Settings" -#~ msgstr "R?glages g?n?raux" - -#~ msgid "Delay subtitles (in 1/10s)" -#~ msgstr "D?calage des sous-titres (en dixi?mes de seconde)" - -#~ msgid "Video Device Advanced Options" -#~ msgstr "Options avanc?es de l?appareil Vid?o" - -#~ msgid "Audio Options" -#~ msgstr "Options audio" - -#~ msgid "Bitrate Options" -#~ msgstr "Options li?es au d?bit" - -#~ msgid "Fonts" -#~ msgstr "Polices" - -#~ msgid "HTTP 1.0 daemon" -#~ msgstr "HTTP 1.0 daemon" - -#~ msgid "log filename" -#~ msgstr "Nom du fichier log" - -#~ msgid "SAP interface" -#~ msgstr "Interface SAP" - -#~ msgid "Standard stream" -#~ msgstr "Flux standard" - -#~ msgid "Transcode stream" -#~ msgstr "Flux transcod?" - -#~ msgid "logo video filter" -#~ msgstr "logo du filtre video" - -#~ msgid "XOSD module" -#~ msgstr "module XOSD" - -#~ msgid "xosd interface" -#~ msgstr "interface XOSD" - -#~ msgid "Close Menu" -#~ msgstr "Fermer le menu" - -#~ msgid "Advanced open options" -#~ msgstr "Options avanc?es utilisables" - -#, fuzzy -#~ msgid "HTTP interface bind port" -#~ msgstr "Port de l?interface telnet" - -#, fuzzy -#~ msgid "osd text filter" -#~ msgstr "Filtre vid?o" - -#~ msgid "&Title:" -#~ msgstr "&Titre :" - -#~ msgid "&Chapter:" -#~ msgstr "&Chapitre :" - -#~ msgid "Open &file..." -#~ msgstr "Ouvrir &file..." - -#~ msgid "Open &disc..." -#~ msgstr "Ouvrir &disc..." - -#~ msgid "&Network stream..." -#~ msgstr "&Flux r?seau..." - -#~ msgid "&Hide interface" -#~ msgstr "&Cacher l?interface" - -#~ msgid "&Add interface" -#~ msgstr "&Ajouter une interface" - -#~ msgid "Spawn a new interface" -#~ msgstr "Engendrer une nouvelle interface" - -#~ msgid "C&hannels" -#~ msgstr "C&anaux" - -#~ msgid "Sc&reen" -#~ msgstr "Ecran" - -#~ msgid "&Language" -#~ msgstr "&Langue" - -#~ msgid "&Subtitles" -#~ msgstr "&Sous-titres" - -#~ msgid "New stream" -#~ msgstr "Nouveau flux" - -#~ msgid "Network Stream..." -#~ msgstr "Flux reseau" - -#~ msgid "Next file" -#~ msgstr "Fichier suivant" - -#~ msgid "&Add subtitles..." -#~ msgstr "&Ajouter des sous-titres..." - -#~ msgid "Exit" -#~ msgstr "Quitter" - -#~ msgid "Select next title" -#~ msgstr "Fichier suivant" - -#~ msgid "&Mute" -#~ msgstr "&Muet" - -#~ msgid "Open network" -#~ msgstr "Ouvrir en r?seau" - -#~ msgid "&Disc..." -#~ msgstr "&Disque..." - -#~ msgid "&Network..." -#~ msgstr "&R?seau..." - -#~ msgid "Delete &all" -#~ msgstr "Supprimmer tout" - -#~ msgid "Native Windows interface" -#~ msgstr "Interface Windows native" - -#~ msgid "Language 0x%x" -#~ msgstr "Langage 0x%x" - -#~ msgid "All files" -#~ msgstr "Tous les fichiers" - -#~ msgid "Add file" -#~ msgstr "Ajouter un fichier" - -#~ msgid "Stream Output MRL" -#~ msgstr "MRL pour le flux sortant" - -#~ msgid "A_udio" -#~ msgstr "A_udio" - -#~ msgid "Open a File" -#~ msgstr "Ouvrir un fichier" - -#~ msgid "Open file..." -#~ msgstr "Ouvrir fichier..." - -#~ msgid "Open disc..." -#~ msgstr "Ouvrir disque..." - -#~ msgid "Network stream..." -#~ msgstr "Flux r?seau..." - -#~ msgid "Loop filter" -#~ msgstr "Filtre de boucle" - -#~ msgid "Deblocking loop filter (increases quality)." -#~ msgstr "Utilise un filtre de boucle (am?liore la qualit?)." - -#~ msgid "ax QP" -#~ msgstr "QP max" - -#~ msgid "Creates a motion blurring on the image" -#~ msgstr "Ajoute un effet de flou ? l?image" - -#~ msgid "Adds distorsion effects" -#~ msgstr "Ajoute des effets de distorsion" - -#~ msgid "Inverts the image colors" -#~ msgstr "Inverse les couleurs de l?image" - -#, fuzzy -#~ msgid "" -#~ "This filters prevents the audio output level from exceeding a defined " -#~ "value." -#~ msgstr "" -#~ "Ce filtre emp?che la puissance de la sortie audio de d?passer une valeur " -#~ "pr?d?finie." - -#~ msgid "" -#~ "This filter gives the feeling of a 5.1 speaker set when using a headphone." -#~ msgstr "Ce filtre donne l?effet d?un kit 5.1 avec un casque." - -#, fuzzy -#~ msgid "" -#~ "You can use this field directly by typing the full MRL you want to stream " -#~ "to.\n" -#~ "Alternatively, the field will be filled automatically when you use the " -#~ "controls below" -#~ msgstr "" -#~ "Vous pouvez utiliser ce champ en tapant directement la MRL compl?te que " -#~ "vous voulez ouvrir.\n" -#~ " Sinon, le champ se remplira automatiquement quand vous utilisez les " -#~ "contr?les ci-dessous." - -#, fuzzy -#~ msgid "" -#~ "Use this to save a stream to a file. You have the ability to reencode the " -#~ "stream. You can save whatever VLC can read.\n" -#~ "Please notice that VLC is not very suited for file to file transcoding. " -#~ "You should use its transcoding features to save network streams, for " -#~ "example." -#~ msgstr "" -#~ "Utilisez ceci pour enregistrer un flux dans un fichier. Vous avez la " -#~ "possibilit? de r?encoder le flux. Il est possible de sauvegarder tout ce " -#~ "que VLC peut lire.\n" -#~ "Veuillez noter que VLC n?est pas r?ellement adapt? pour le transcodage de " -#~ "fichier vers fichier. Vous devriez plut?t utiliser ses possibilit?s de " -#~ "transcodage pour sauvegarder un flux r?seau, par exemple." - -#, fuzzy -#~ msgid "" -#~ "If you want to change the compression format of the audio or video " -#~ "tracks, fill in this page. (If you only want to change the container " -#~ "format, proceed to next page.)" -#~ msgstr "" -#~ "Si vous d?sirez changer le format de compression des pistes audio ou " -#~ "vid?o, remplissez cette page. Si vous ne d?sirez changer que le format " -#~ "d?encapsulation, passez ? la page suivante." - -#~ msgid "In this page, you will select how your input stream will be sent." -#~ msgstr "" -#~ "Dans cette page, vous pouvez s?lectionner la fa?on dont votre flux sera " -#~ "envoy?." - -#~ msgid "" -#~ "In this page, you will select how the stream will be encapsulated. " -#~ "Depending on the choices you made, all formats won?t be available." -#~ msgstr "" -#~ "Dans cette page, vous devez choisir comment le flux sera encapsul?. Selon " -#~ "vos choix pr?c?dents, tous les formats ne seront pas disponibles." - -#~ msgid "" -#~ "In this page, you will define a few additionnal parameters for your " -#~ "transcoding" -#~ msgstr "" -#~ "Dans cette page, vous pouvez d?finir quelques param?tres additionnels " -#~ "pour votre transcodage." - -#, fuzzy -#~ msgid "" -#~ "This filter gives the feeling of a 5.1 speakers set when using a " -#~ "headphone." -#~ msgstr "Ce filtre donne l?effet d?un kit 5.1 avec un casque." - -#~ msgid "This option allows you to select control interfaces. " -#~ msgstr "Cette option vous permet de choisir des interfaces de contr?le. " - -#~ msgid "This option allows you to always open a default stream on start-up." -#~ msgstr "" -#~ "Cette option vous permet de toujours ouvrir un flux par d?faut au " -#~ "d?marrage" - -#~ msgid "" -#~ "If this option is enabled, VLC will always start a video in fullscreen " -#~ "mode." -#~ msgstr "" -#~ "Lorsque cette option est activ?e, VLC lancera toujours la vid?o en mode " -#~ "plein ?cran." - -#~ msgid "" -#~ "If enabled, VLC will try to take advantage of the overlay capabilities of " -#~ "your graphics card (hardware acceleration)." -#~ msgstr "" -#~ "Lorsque cette option est activ?e, VLC tentera d?utiliser les capacit?s d? " -#~ "overlay (acc?l?ration mat?rielle) de votre carte graphique." - -#~ msgid "" -#~ "Allows you to specify the image format in which the video snapshots will " -#~ "be stored." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le format utilis? pour les captures " -#~ "d??crans." - -#, fuzzy -#~ msgid "" -#~ "Specify the IPv4 address of the networking interface. This overrides the " -#~ "routing table." -#~ msgstr "" -#~ "Indiquez l?interface de sortie multicast. Ce r?glage passe outre la table " -#~ "de routage." - -#~ msgid "Input start time (seconds)" -#~ msgstr "Date de d?but (secondes)" - -#~ msgid "Input stop time (seconds)" -#~ msgstr "Date de fin (en secondes)" - -#~ msgid "" -#~ "This will allow you to add a subpictures filter for instance to overlay a " -#~ "logo." -#~ msgstr "" -#~ "Ceci vous permet d?ajouter un filtre de g?n?ration d?incrustations (comme " -#~ "par exemple un incrusteur de logo)." - -#~ msgid "" -#~ "Allows you to modify the default TCP connection timeout. This value " -#~ "should be set in millisecond units." -#~ msgstr "" -#~ "Cette option permet de modifier le temps d?expiration de la connection " -#~ "TCP. Cette valeur est en millisecondes." - -#~ msgid "Preferred codecs list" -#~ msgstr "Liste de codecs pr?f?r?s" - -#~ msgid "" -#~ "This allows you to select a list of codecs that VLC will use in priority. " -#~ "For instance, 'dummy,a52' will try the dummy and a52 codecs before trying " -#~ "the other ones." -#~ msgstr "" -#~ "Ceci vous permet de s?lectionner une liste de d?codeurs prioritaires. Par " -#~ "exemple, si vous mettez ? dummy,a52 ?, VLC essaiera les d?codeurs dummy et " -#~ "a52 avant d?essayer les autres." - -#~ msgid "This is a legacy entry to let you configure access filter modules." -#~ msgstr "" -#~ "Ceci vous permet de forcer un module de filtre d?acc?s. Vous ne devriez " -#~ "pas toucher cette option sans savoir ce que vous faites." - -#~ msgid "This is a legacy entry to let you configure demux modules." -#~ msgstr "" -#~ "Ceci vous permet de forcer un module de d?multiplexage. Vous ne devriez " -#~ "pas toucher cette option sans savoir ce que vous faites." - -#~ msgid "" -#~ "This option allows you to specify a VLM configuration file that will be " -#~ "read when VLM is launched." -#~ msgstr "" -#~ "Cette option permet de choisir un fichier de configuration VLC qui sera " -#~ "lu d?s que VLM est lanc?." - -#~ msgid "Select the key to turn off audio volume." -#~ msgstr "" -#~ "S?lectionnez la combinaison de touches ? utiliser pour mettre le volume ? " -#~ "z?ro" - -#~ msgid "" -#~ "Allows you to modify the default caching value for cdda streams. This " -#~ "value should be set in milliseconds units." -#~ msgstr "" -#~ "Cette option permet de modifier la taille du cache pour les CD audio. " -#~ "Cette valeur est en millisecondes." - -#~ msgid "Allows you to select the default DVD angle." -#~ msgstr "Ceci vous permet de choisir l?angle DVD par d?faut." - -#~ msgid "" -#~ "Allows you to modify the default caching value for DVDread streams. This " -#~ "value should be set in millisecond units." -#~ msgstr "" -#~ "Cette option permet de modifier la taille du cache pour les DVD. Sa " -#~ "valeur est en millisecondes." - -#~ msgid "Standard filesystem file input" -#~ msgstr "Lecture d?un fichier" - -#~ msgid "GnomeVFS filesystem file input" -#~ msgstr "Entr?e GnomeVFS" - -#~ msgid "" -#~ "Allows you to modify the default caching value for http streams. This " -#~ "value should be set in millisecond units." -#~ msgstr "" -#~ "Ceci permet de modifier la taille du cache pour les flux HTTP. Cette " -#~ "valeur est en millisecondes." - -#~ msgid "" -#~ "If this is set, the stream with the maximum bitrate under that limit " -#~ "will be selected" -#~ msgstr "" -#~ "Si ceci est activ?, le flux avec le d?bit maximal, en restant inferieur ? " -#~ "cette limite, sera utilis?" - -#~ msgid "Bitrate mode (vbr or cbr)" -#~ msgstr "Mode de d?bit (vbr ou cbr)" - -#, fuzzy -#~ msgid "This option allows setting of the audio volume (0-65535)." -#~ msgstr "" -#~ "Cette option vous permet de r?gler des masques de bits qui seront " -#~ "utilis?s par la partie audio de la carte." - -#~ msgid "Allows you to set the desired frame rate for the capture." -#~ msgstr "Ceci vous permet de sp?cifier le d?bit d?images pour la capture." - -#~ msgid "Allows growing the MTU if truncated packets are found" -#~ msgstr "" -#~ "Ceci permet d?augmenter automatiquement le MTU si des paquets tronqu?s " -#~ "sont trouv?s." - -#~ msgid "If this option is set, the audio stream will be captured in stereo" -#~ msgstr "Si ceci est activ?, le flux audio sera captur? en st?r?o" - -#~ msgid "Allows you to give the mime returned by the server." -#~ msgstr "Ceci vous permet de pr?ciser le type MIME renvoy? par le serveur." - -#~ msgid "libshout (icecast) output" -#~ msgstr "Sortie Icecast" - -#~ msgid "Override preset bands gain in dB (-20 ... 20)" -#~ msgstr "Outrepasser le gain des bandes du pr?r?glage, en dB (de -20 ? 20)" - -#~ msgid "Filter twice the audio" -#~ msgstr "Filtrer l?audio deux fois" - -#~ msgid "Output channels number" -#~ msgstr "Nombre de canaux en sortie" - -#~ msgid "X coordinate of the subpicture" -#~ msgstr "Position X du sous-titre" - -#~ msgid "You can reposition the subpicture by providing another value here." -#~ msgstr "" -#~ "Vous pouvez repositionner le sous-titre en fournissant une autre valeur " -#~ "ici." - -#~ msgid "Y coordinate of the subpicture" -#~ msgstr "Position Y du sous-titre" - -#~ msgid "Timeout of subpictures" -#~ msgstr "D?lai d?expiration des sous-titres" - -#~ msgid "Allows you to specify the output video width." -#~ msgstr "Ceci vous permet de sp?cifier la largeur de la vid?o." - -#~ msgid "Allows you to specify the output video height." -#~ msgstr "Ceci vous permet de sp?cifier la hauteur de la vid?o." - -#~ msgid "Allows you to specify the video bitrate tolerance in kbit/s." -#~ msgstr "" -#~ "Ceci vous permet de modifier la tol?rance du d?bit de la vid?o en kbits/s." - -#~ msgid "Allows you to enable the pre motion estimation." -#~ msgstr "Ceci vous permet d?activer la pr?-pr?diction de mouvement." - -#~ msgid "Allows you to specify the rate control buffer aggressiveness." -#~ msgstr "Ceci vous permet de sp?cifier l?efficacit? du contr?le de d?bit." - -#~ msgid "Allows you to specify the minimum video quantizer scale." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le minimum de l??chelle de quantisation " -#~ "vid?o." - -#~ msgid "Allows you to specify the maximum video quantizer scale." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le maximum de l??chelle de quantization " -#~ "vid?o." - -#~ msgid "Use fixed video quantizer scale" -#~ msgstr "Utiliser une ?chelle de quantisation vid?o fix?e" - -#~ msgid "Select how stereo streams will be handled" -#~ msgstr "Sp?cifiez permet de sp?cifier le mode de traitement des flux st?r?o" - -#, fuzzy -#~ msgid "Sets the allowed variance in average. bitrate." -#~ msgstr "Permet de r?gler la variance dans le d?bit moyen" - -#, fuzzy -#~ msgid "Sets an averaging period for the maximum local bitrate in kbits/s." -#~ msgstr "Ceci r?gle une p?riode de moyenage pour le d?bit local maximim." - -#, fuzzy -#~ msgid "Trellis RD quantization (0,1,2). Requires CABAC" -#~ msgstr "Active la quantization treillis" - -#~ msgid "You can set the address and port the http interface will bind to." -#~ msgstr "" -#~ "Indiquez l?adresse et le port par lesquelles l?interface HTTP sera " -#~ "joignable." - -#~ msgid "" -#~ "Allows you to specify if this client should act as the master client for " -#~ "the network synchronisation." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier si ce client doit se comporter comme un " -#~ "ma?tre pour la synchronisation r?seau." - -#~ msgid "If enabled the interface will uninstall the Service and exit." -#~ msgstr "" -#~ "Si ceci est activ?, l?interface d?sinstallera le service et quittera." - -#~ msgid "This allows you to change the display name of the Service." -#~ msgstr "Ceci vous permet de changer le nom du service." - -#~ msgid "Telnet Interface host" -#~ msgstr "H?te de l?interface telnet" - -#~ msgid "Default to listen on all network interfaces" -#~ msgstr "" -#~ "Le comportement par d?faut est d??couter sur toutes les interfaces r?seaux" - -#~ msgid "Telnet Interface port" -#~ msgstr "Port de l?interface telnet" - -#~ msgid "Telnet Interface password" -#~ msgstr "Mot de passe pour l?interface telnet" - -#~ msgid "set id of es to pid" -#~ msgstr "S?lectionner l?id de l?ES pour le PID" - -#~ msgid "Size offset" -#~ msgstr "Position" - -#~ msgid "You have to select two bookmarks." -#~ msgstr "Vous devez s?lectionner deux signets." - -#~ msgid "" -#~ "If you enable this settting, the equalizer filter will be applied twice. " -#~ "The effect will be sharper." -#~ msgstr "" -#~ "Si vous appliquez ce r?glage, le filtrage par l??galiseur sera fait deux " -#~ "fois, produisant un effet plus accentu?." - -#~ msgid "You haven?t experienced any heavy crashes yet." -#~ msgstr "Vous n?avez pas encore eu de plantage important." - -#~ msgid "" -#~ "Choose a number corresponding to a screen in you video device selection " -#~ "menu and this screen will be used by default as the screen for " -#~ "'fullscreen?." -#~ msgstr "" -#~ "Indiquez un num?ro correspondant ? un ?cran dans le menu de s?lection " -#~ "Vid?o et cet ?cran sera utilis? a priori comme ?cran pour le ? plein ?cran " -#~ "?." - -#~ msgid "" -#~ "Instead of keeping the aspect ratio of the movie when resizing the video, " -#~ "stretch the video to fill the entire window." -#~ msgstr "" -#~ "Au lieu de maintenir les proportions de l?image lors du redimensionnement " -#~ "de la fen?tre vid?o, ?tire l?image pour remplir toute la fen?tre." - -#~ msgid "Advanced output:" -#~ msgstr "Options de sortie avanc?es :" - -#~ msgid "Output Options" -#~ msgstr "Options de sortie" - -#~ msgid "Transcode options" -#~ msgstr "Options de transcodage" - -#~ msgid "If your stream has audio and you want to transcode it, enable this." -#~ msgstr "" -#~ "Si votre flux contient de l?audio et que vous d?sirez le transcoder, " -#~ "activez ceci." - -#~ msgid "If your stream has video and you want to transcode it, enable this." -#~ msgstr "" -#~ "Si votre flux contient de la vid?o et que vous d?sirez la transcoder, " -#~ "activez ceci." - -#, fuzzy -#~ msgid "You you need to select a file, you want to save to." -#~ msgstr "Vous devez choisir un fichier de destination" - -#~ msgid "Last skin used" -#~ msgstr "Derni?re skin utilis?e" - -#~ msgid "Select the path to the last skin used." -#~ msgstr "S?lectionnez le chemin de la derni?re skin utilis?e" - -#~ msgid "Config of last used skin." -#~ msgstr "Configuration de la derni?re skin utilis?e" - -#~ msgid "Destination Target:" -#~ msgstr "Destination :" - -#~ msgid "Miscellaneous options" -#~ msgstr "Options diverses" - -#~ msgid "Subtitles options" -#~ msgstr "Options de sous-titres" - -#~ msgid "Show bookmarks dialog when the interface starts." -#~ msgstr "Affiche la fen?tre des signets au d?marrage de l?interface." - -#~ msgid "Show taskbar entry" -#~ msgstr "Montrer sur la barre des t?ches" - -#~ msgid "Opacity, 0..255" -#~ msgstr "Opacit?, 0 ? 255" - -#~ msgid "" -#~ "The color of overlay text. 1 byte for each color, hexadecimal. #000000 = " -#~ "all colors off, 0xFF0000 = just Red, 0xFFFFFF = all color on [White]" -#~ msgstr "" -#~ "Couleur du texte superpos?. 1 octet pour chaque couleur, en h?xad?cimal. " -#~ "#000000 = pas de couleur, 0xFF0000 = rouge uniquement, 0xFFFFFF = toutes " -#~ "couleurs activ?es [blanc]" - -#~ msgid "The size of the fonts used by the osd module" -#~ msgstr "Taille de caract?res utilis?e par le module OSD" - -#~ msgid "" -#~ "Defines the delay before resumed TLS sessions will be expired (in " -#~ "seconds)." -#~ msgstr "" -#~ "D?finit le d?lai d?expiration des sessions TLS reprises (en secondes)." - -#~ msgid "Allows you to define the title that will be put in ASF comments." -#~ msgstr "" -#~ "Ceci vous permet de d?finir le titre qui sera mis dans les commentaires " -#~ "ASF." - -#~ msgid "Allows you to define the comment that will be put in ASF comments." -#~ msgstr "" -#~ "Ceci vous permet de d?finir le commentaire qui sera mis dans les " -#~ "commentaires ASF." - -#~ msgid "PMT Program numbers (requires --sout-ts-es-id-pid)" -#~ msgstr "Num?ros de programmes PMT (n?cessite l?option sout-ts-es-id-pid)" - -#~ msgid "Assigns a program number to each PMT" -#~ msgstr "Affecte un num?ro de programme ? chaque PMT." - -#~ msgid "Defines the pids to add to each pmt." -#~ msgstr "D?finit les PID ? ajouter ? chaque PMT" - -#~ msgid "Defines the descriptors of each SDT" -#~ msgstr "D?finit les descripteurs de chaque SDT" - -#~ msgid "set PID to id of es" -#~ msgstr "R?gler le PID ? l?ID de l?ES" - -#, fuzzy -#~ msgid "Podcast '|' (pipe) seperated URLs list" -#~ msgstr "URLs des feeds RSS, s?par?es par des \"|\"" - -#~ msgid "" -#~ "Set this if you want the SAP module to listen to IPv4 announcements on " -#~ "the standard address." -#~ msgstr "" -#~ "Activez ceci pour que le module SAP ?coute les annonces IPv4 sur " -#~ "l?adresse standard." - -#~ msgid "" -#~ "Set this if you want the SAP module to listen to IPv6 announcements on " -#~ "the standard address." -#~ msgstr "" -#~ "Activez ceci pour que le module SAP ?coute les annonces IPv6 sur " -#~ "l?adresse standard." - -#~ msgid "Specify an identifier integer for this elementary stream" -#~ msgstr "Entier identifiant ce flux ?l?mentaire" - -#~ msgid "" -#~ "Allows you to specify the output access method used for the streaming " -#~ "output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier la m?thode de sortie pour la diffusion." - -#~ msgid "Allows you to specify the muxer used for the streaming output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le multiplexeur utilis? pour la diffusion." - -#~ msgid "Allows you to specify the muxer used for the audio streaming output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le multiplexeur utilis? pour le flux de " -#~ "sortie audio." - -#~ msgid "Allows you to specify the muxer used for the video streaming output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le multiplexeur utilis? pour le flux de " -#~ "sortie vid?o." - -#~ msgid "Allows you to specify the output URL used for the streaming output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier l?URL de sortie utilis?e pour la diffusion." - -#~ msgid "" -#~ "Allows you to specify the output URL used for the audio streaming output." -#~ msgstr "Ceci vous permet de sp?cifier une URL de sortie pour le flux audio." - -#~ msgid "" -#~ "Allows you to specify the output URL used for the video streaming output." -#~ msgstr "Ceci vous permet de sp?cifier une URL de sortie pour le flux vid?o." - -#~ msgid "" -#~ "Allows you to specify the session name used for the streaming output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le nom de session utilis? pour la diffusion." - -#~ msgid "" -#~ "Allows you to specify a URL with additional information on the stream." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier une URI avec plus d?informations sur la " -#~ "session." - -#~ msgid "Allows you to specify contact e-mail address for this session." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier l?adresse e-mail de contact pour cette " -#~ "session." - -#~ msgid "" -#~ "Allows you to specify the output muxer method used for the streaming " -#~ "output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le multiplexeur de sortie pour la diffusion." - -#~ msgid "Output URL (deprecated)" -#~ msgstr "URL de sortie (d?pr?ci?)" - -#~ msgid "" -#~ "Allows you to specify the output destination used for the streaming " -#~ "output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier l?URL de sortie utilis?e pour la diffusion." - -#~ msgid "" -#~ "Allows you to specify the destination video codec used for the streaming " -#~ "output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le codec vid?o de destination pour la " -#~ "diffusion." - -#~ msgid "" -#~ "Allows you to specify the video bitrate used for the streaming output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le d?bit vid?o utilis? pour la diffusion." - -#~ msgid "Allows you to scale the video before encoding." -#~ msgstr "Ceci vous permet de redimensionner la vid?o avant l?encodage." - -#~ msgid "Allows you to specify an output frame rate for the video." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier un d?bit d?images en sortie pour la vid?o." - -#~ msgid "Allows you to specify a maximum output video width." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier la largeur maximale de la vid?o diffus?e." - -#~ msgid "Allows you to specify a maximum output video height." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier la hauteur maximale de la vid?o diffus?e." - -#~ msgid "" -#~ "Allows you to specify video filters used after the video transcoding and " -#~ "subpictures overlaying." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier les filtres vid?o ? utiliser apr?s le " -#~ "transcodage et l?incrustation" - -#~ msgid "Allows you to specify the top coordinate for the video cropping." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier la coordonn?e sup?rieure pour la coupe de " -#~ "l?image." - -#~ msgid "Allows you to specify the left coordinate for the video cropping." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier la coordonn?e gauche pour la coupe de " -#~ "l?image." - -#~ msgid "Allows you to specify the bottom coordinate for the video cropping." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier la coordonn?e inf?rieure pour la coupe de " -#~ "l?image." - -#~ msgid "Allows you to specify the right coordinate for the video cropping." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier la coordonn?e droite pour la coupe de " -#~ "l?image." - -#~ msgid "" -#~ "Allows you to specify the audio bitrate used for the streaming output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le d?bit audio utilis? pour la diffusion." - -#~ msgid "" -#~ "Allows you to specify the audio sample rate used for the streaming output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier la fr?quence d??chantillonnage audio " -#~ "utilis?e pour la diffusion." - -#~ msgid "" -#~ "Allows you to specify the number of audio channels used for the streaming " -#~ "output." -#~ msgstr "" -#~ "Ceci vous permet de modifier le nombre de canaux audios utilis?s pour la " -#~ "diffusion." - -#~ msgid "" -#~ "Allows you to specify the destination subtitles codec used for the " -#~ "streaming output." -#~ msgstr "" -#~ "Ceci vous permet de sp?cifier le codec de sous-titres de destination pour " -#~ "la diffusion." - -#~ msgid "Subpictures filter" -#~ msgstr "Incrustations" - -#~ msgid "List of video output modules" -#~ msgstr "Liste des modules de sortie vid?o" - -#~ msgid "Select the specific video output modules that you want to activate." -#~ msgstr "Indiquez les modules de sortie vid?o ? activer" - -#~ msgid "Marquee text" -#~ msgstr "Texte" - -#~ msgid "X offset, from left" -#~ msgstr "D?calage horizontal" - -#~ msgid "Y offset, from the top" -#~ msgstr "D?calage vertical" - -#~ msgid "Marquee display sub filter" -#~ msgstr "Filtre d?incrustation de texte" - -#~ msgid "Alpha blending" -#~ msgstr "Niveau alpha" - -#~ msgid "Alpha blending (0 -> 255). Default is 255" -#~ msgstr "Niveau alpha (de 0 ? 255). La valeur par d?faut est 255" - -#~ msgid "Top left corner y coordinate" -#~ msgstr "Ordonn?e du coin en haut ? gauche" - -#~ msgid "Order as a comma separated list of picture-id(s)" -#~ msgstr "" -#~ "Ordonner comme une liste d?identifiant(s) d?image s?par?s par des virgules" - -#~ msgid "An OSD menu configuration file that menu actions with button images" -#~ msgstr "" -#~ "Un fichier de configuration du menu OSD contient les actions et les " -#~ "images des boutons" - -#~ msgid "X coordinate of the OSD menu" -#~ msgstr "Position X du menu OSD" - -#~ msgid "Y coordinate of the OSD menu" -#~ msgstr "Position Y du menu OSD" - -#~ msgid "Timeout of OSD menu" -#~ msgstr "Timeout du menu OSD" - -#~ msgid "Update speed of OSD menu" -#~ msgstr "Position X du menu OSD" - -#~ msgid "On Screen Display menu subfilter" -#~ msgstr "Menu OSD" - -#, fuzzy -#~ msgid "RSS/Atom feed URLs" -#~ msgstr "URLs des feeds RSS" - -#, fuzzy -#~ msgid "RSS/Atom feed speed" -#~ msgstr "Vitesse du flux RSS" - -#, fuzzy -#~ msgid "RSS/Atom feed max number of chars displayed" -#~ msgstr "Nombre maximal de caract?res du flux RSS affich?s" - -#~ msgid "Number of seconds between each forced refresh of the feeds" -#~ msgstr "Nombre de secondes entre le rafraichissement" - -#~ msgid "You can choose the default scaling mode." -#~ msgstr "Vous pouvez choisir le mode de redimensionnement par d?faut" - -#~ msgid "" -#~ "If the OpenGL cube effect is enabled, this controls its rotation speed." -#~ msgstr "" -#~ "Si l?effet de cube OpenGL est activ?, ce param?tre contr?le sa vitesse de " -#~ "rotation." - -#~ msgid "Allows you to select different visual effects." -#~ msgstr "Ceci vous permet de s?lectionner diff?rents effets visuels." - -#~ msgid "Allows you to reduce the speed of the animation (default 6, max 10)." -#~ msgstr "" -#~ "Ceci vous permet de r?suire la vitesse de l?animation (par d?faut 6, " -#~ "maximum 10)." - -#~ msgid "Defines whether to draw peaks." -#~ msgstr "D?finit s?il faut dessiner des pics ou non" - -#~ msgid "Defines whether to draw the original spectrum graphic routine." -#~ msgstr "" -#~ "Ceci d?finit s?il faut aussi afficher l?analyseur de spectre lin?aire (1)" - -#~ msgid "Defines whether to draw the bands." -#~ msgstr "D?finit s?il faut dessiner des bandes" - -#~ msgid "Vertical offset in pixels of the displayed text" -#~ msgstr "D?calage vertical du texte affich?, en points" - -#~ msgid "Offset in pixels of the shadow" -#~ msgstr "D?calage en pixels de l?ombre" - -#~ msgid "Mega bass cut off (10-100Hz)" -#~ msgstr "Fr?quence de coupure de Mega Bass (10-100Hz)" - -#~ msgid "Allows you to set the desired frame rate." -#~ msgstr "Ceci vous permet de sp?cifier le nombre d?images par seconde." - -#~ msgid "MPEG-I/II audio demuxer" -#~ msgstr "D?multiplexeur de flux audio MPEG I/II" - -#~ msgid "Ogg stream demuxer" -#~ msgstr "D?multiplexeur de flux Ogg" - -#, fuzzy -#~ msgid "Podcast playlist import" -#~ msgstr "Import de liste de lecture PLS" - -#~ msgid "Text subtitles demux" -#~ msgstr "D?multiplexeur de sous-titres texte" - -#~ msgid "ID3 tag parser using libid3tag" -#~ msgstr "Parseur de tags ID3 utilisant libid3tag" - -#~ msgid "Minimum quantizer parameter" -#~ msgstr "Quantisateur minimal" - -#~ msgid "Maximum quantizer parameter" -#~ msgstr "Quantisateur maximal" - -#~ msgid "This selects the analysing mode." -#~ msgstr "Ceci s?lectionne le mode d?analyse" - -#~ msgid "Sets maximum interval between IDR-frames" -#~ msgstr "S?lectionner l?intervale maximal entre deux images IDR" - -#~ msgid "Sets minimum interval between IDR-frames" -#~ msgstr "" -#~ "S?lectionner l?intervalle maximal entre deux images I (images " -#~ "compl?tement cod?es)." - -#~ msgid "B pyramid" -#~ msgstr "Pyramide B" - -#~ msgid "" -#~ "Allows B-frames to be used as references for predicting other frames." -#~ msgstr "" -#~ "Ceci autorise l?utilisation d?images B en tant que r?f?rences pour " -#~ "pr?dire d?autres images" - -#~ msgid "Number of previous frames used as predictors." -#~ msgstr "Nombre d?images pr?c?dentes utilis?es pour la pr?diction" - -#~ msgid "Scene-cut detection." -#~ msgstr "D?tection de changement de sc?ne" - -#~ msgid "Sub-pixel refinement quality." -#~ msgstr "Qualit? de raffinement du sous-pixel." - -#~ msgid "Netsync" -#~ msgstr "Netsync" - -#~ msgid "Interface showing control interface" -#~ msgstr "Interface permettant d?afficher la GUI" - -#~ msgid "Item Info" -#~ msgstr "Infos sur l??lement" - -#~ msgid "Time To Live" -#~ msgstr "TTL" - -#~ msgid "Force options for separate subtitle files." -#~ msgstr "R?gler les options pour les fichiers de sous-titres s?par?s." - -#~ msgid "audio filter using CoreAudio for resampling" -#~ msgstr "Filtre audio de r??chantillonnage CoreAudio" - -#~ msgid "CoreAudio output" -#~ msgstr "Sortie CoreAudio" - -#~ msgid "SLP announce" -#~ msgstr "Annonce SLP" - -#~ msgid "&Undock Ext. GUI" -#~ msgstr "D?tacher l?interface ?tendue" - -#~ msgid "SLP announcing" -#~ msgstr "Annonce SLP" - -#~ msgid "Announce this session with SLP" -#~ msgstr "Annonce cette session par SLP" - -#~ msgid "Select the hotkey to jump 10 seconds backwards." -#~ msgstr "" -#~ "S?lectionnez la combinaison de touches ? utiliser pour reculer de 10 " -#~ "secondes." - -#~ msgid "Select the hotkey to jump 10 seconds forward." -#~ msgstr "" -#~ "S?lectionnez la combinaison de touches ? utiliser pour avancer de 10 " -#~ "secondes." - -#~ msgid "Select the hotkey to jump 5 minutes forward." -#~ msgstr "" -#~ "S?lectionnez la combinaison de touches ? utiliser pour avancer de 5 " -#~ "minutes." - -#~ msgid "1:1" -#~ msgstr "1:1" - -#~ msgid "4:3" -#~ msgstr "4:3" - -#~ msgid "221:100" -#~ msgstr "221:100" - -#~ msgid "Entry " -#~ msgstr "Entr?e " - -#~ msgid "Stretch Aspect Ratio" -#~ msgstr "?tirer l?image" - -#~ msgid "" -#~ "A free audio codec dedicated to compression of voice (useable with OGG" -#~ msgstr "" -#~ "Un codec audio libre d?di? ? la compression de la voix (utilisable avec " -#~ "OGG)" - -#~ msgid "Audio output volume" -#~ msgstr "Volume de la sortie audio" - -#~ msgid "Disable this option to disable frame drops on MPEG-2 streams." -#~ msgstr "" -#~ "D?sactivez cette option pour d?sactiver la suppression d?images sur les " -#~ "flux MPEG-2" - -#~ msgid "Network interface address" -#~ msgstr "Adresse de l?interface r?seau" - -#~ msgid "" -#~ "If you have several interfaces on your machine and use the multicast " -#~ "solution, you will probably have to indicate the IP address of your " -#~ "multicasting interface here." -#~ msgstr "" -#~ "Si vous avez plusieurs interfaces r?seau sur votre machine et utilisez le " -#~ "multicast, vous devrez probablement indiquer ici l?adresse IP de " -#~ "l?interface que vous souhaitez utiliser pour les requ?tes de multicast." - -#~ msgid "This is a legacy entry to let you configure access modules." -#~ msgstr "" -#~ "Cette entr?e n?a d?autre utilit? que de vous permettre de configurer les " -#~ "modules d?acc?s au flux." - -#~ msgid "Select maximum bitrate stream" -#~ msgstr "S?lectionner le flux dont le d?bit est le plus ?lev?" - -#~ msgid "live.com (RTSP/RTP/SDP) demuxer" -#~ msgstr "d?multiplexeur live.com (RTSP/RTP/SDP)" - -#~ msgid "Old playlist open" -#~ msgstr "Ouvrir une ancienne liste de lecture" - -#~ msgid "SAP announces" -#~ msgstr "Annonces SAP" - -#~ msgid "" -#~ "This allows you to choose a specific audio channel mixer. For instance, " -#~ "you can use the \"headphone\" mixer that gives 5.1 feeling with a " -#~ "headphone." -#~ msgstr "" -#~ "Cette option vous permet de choisir un m?langeur de canaux sp?cifique.Par " -#~ "exemple le m?langeur ??headphone?? qui donne l?impression d?avoir du son " -#~ "5.1 avec un casque." - -#, fuzzy -#~ msgid "Wizard..." -#~ msgstr "Assistant de diffusion?\tCtrl-W" - -#~ msgid "Random effect" -#~ msgstr "Al?atoire Off" - -#~ msgid "SLP attribute identifiers" -#~ msgstr "Identifiants d?attributs SLP" - -#~ msgid "" -#~ "This string is a comma separated list of attribute identifiers to search " -#~ "for a playlist title or empty to use all attributes." -#~ msgstr "" -#~ "Cette cha?ne est une liste s?par?e par des virgules d?identifiants " -#~ "d?attributs ? rechercher comme titre de liste de lecture, ou rien, pour " -#~ "tous les attributs." - -#~ msgid "SLP scopes list" -#~ msgstr "Liste des port?es SLP" - -#~ msgid "" -#~ "This string is a comma separated list of scope names or empty if you want " -#~ "to use the default scopes. It is used in all SLP queries." -#~ msgstr "" -#~ "Cette cha?ne est une liste s?par?e par des virgules de noms de port?es, " -#~ "ou rien si vous d?sirez utiliser les port?es par d?faut. Elle est " -#~ "utilis?e dans toutes les requ?tes SLP." - -#~ msgid "SLP naming authority" -#~ msgstr "Autorit? de nommage SLP" - -#~ msgid "" -#~ "This string is a list of naming authorities to search. Use \"*\" for all " -#~ "and the empty string for the default of IANA." -#~ msgstr "" -#~ "Cette cha?ne est une liste s?par?e par des virgules d?autorit?s de " -#~ "nommage ? rechercher. Utilisez ??*?? pour tout et une cha?ne vide pour le " -#~ "d?faut (IANA)." - -#~ msgid "SLP LDAP filter" -#~ msgstr "Filtre LDAP SLP" - -#~ msgid "" -#~ "This is a query formulated of attribute pattern matching expressions in " -#~ "the form of an LDAPv3 search filter or empty for all answers." -#~ msgstr "" -#~ "Ceci est une requ?te constitu?e de motifs de reconnaissances d?attributs, " -#~ "sous forme d?un filtre de recherche LDAPv3, ou rien pour avoir toutes les " -#~ "r?ponses." - -#~ msgid "Language requested in SLP requests" -#~ msgstr "Langage demand? dans les requ?tes SLP" - -#~ msgid "" -#~ "RFC 1766 Language tag for the natural language locale of requests, leave " -#~ "empty to use the default locale. It is used in all SLP queries." -#~ msgstr "" -#~ "Tag de langue RFC 1766 pour la langue des requ?tes. Laisser vide pour " -#~ "utiliser la locale par d?faut. Il est utilis? dans toutes les requ?tes " -#~ "SLP." - -#~ msgid "SLP input" -#~ msgstr "Entr?e SLP" - -#~ msgid "" -#~ "Amount of joystick movement required for a movement to be recorded (0-" -#~ ">32767)." -#~ msgstr "" -#~ "Quantit? de mouvement requise pour enregistrer un mouvement de joystick " -#~ "( 0-32767 )." - -#~ msgid "Joystick device" -#~ msgstr "P?riph?rique du Joystick" - -#~ msgid "The joystick device (usually /dev/js0 or /dev/input/js0)." -#~ msgstr "Le p?riph?rique du Joystick (souvent /dev/js0 ou /dev/input/js0)." - -#~ msgid "Repeat time (ms)" -#~ msgstr "Temps de r?p?tition" - -#~ msgid "" -#~ "Delay waited before the action is repeated if it is still triggered, in " -#~ "milliseconds." -#~ msgstr "" -#~ "Le temps en millisecondes ? attendre avant que l?action soit r?p?t?e." - -#~ msgid "Wait time (ms)" -#~ msgstr "Temps d?attente" - -#~ msgid "The time waited before the repeat starts, in milliseconds." -#~ msgstr "Le temps avant que la r?p?tition commence, en millisecondes." - -#~ msgid "Max seek interval (seconds)" -#~ msgstr "Intervalle de d?placement maximal" - -#~ msgid "The maximum number of seconds that will be sought at a time." -#~ msgstr "Le nombre maximal de secondes du d?placement." - -#~ msgid "Action mapping" -#~ msgstr "Association des actions" - -#~ msgid "Allows you to remap the actions." -#~ msgstr "Ceci vous permet de r?associer les actions." - -#~ msgid "Joystick control interface" -#~ msgstr "Interface de contr?le par joystick" - -#~ msgid "Show tooltips" -#~ msgstr "Afficher les bulles d?aide" - -#~ msgid "Show tooltips for configuration options." -#~ msgstr "Affiche des bulles d?aide pour les options de configuration" - -#~ msgid "Maximum height for the configuration windows" -#~ msgstr "Hauteur maximale des fen?tres de configuration" - -#~ msgid "" -#~ "You can set the maximum height that the configuration windows in the " -#~ "preferences menu will occupy." -#~ msgstr "" -#~ "Vous pouvez sp?cifier la hauteur maximale qu?occuperont les fen?tres de " -#~ "configuration dans le menu pr?f?rences." - -#~ msgid "Interface default search path" -#~ msgstr "Chemin de recherche d?interfaces pr?d?fini" - -#~ msgid "" -#~ "This option allows you to set the default path that the interface will " -#~ "open when looking for a file." -#~ msgstr "" -#~ "Cette option permet de choisir le chemin pr?d?fini que l?interface " -#~ "utilisera pour ouvrir un fichier." - -#~ msgid "_Network stream..." -#~ msgstr "Flux r?seau?" - -#~ msgid "_Hide interface" -#~ msgstr "Masquer l?interface" - -#~ msgid "Progr_am" -#~ msgstr "Progr_amme" - -#~ msgid "Choose the program" -#~ msgstr "Choisir le programme" - -#~ msgid "Choose title" -#~ msgstr "Choisir le titre" - -#~ msgid "Choose chapter" -#~ msgstr "Choisir le chapitre" - -#~ msgid "_Playlist..." -#~ msgstr "Liste de lecture?" - -#~ msgid "_Modules..." -#~ msgstr "_Modules?" - -#~ msgid "Open the module manager" -#~ msgstr "Ouvrir le gestionnaire de modules" - -#~ msgid "Open the messages window" -#~ msgstr "Ouvrir la fen?tre de messages" - -#~ msgid "Select audio channel" -#~ msgstr "S?lectionner la piste audio" - -#~ msgid "Select subtitles channel" -#~ msgstr "S?lectionner la piste de sous-titres" - -#~ msgid "Open disc" -#~ msgstr "Ouvrir disque" - -#~ msgid "Sat" -#~ msgstr "Sat" - -#~ msgid "Open a satellite card" -#~ msgstr "Ouvrir une carte satellite" - -#~ msgid "Stop stream" -#~ msgstr "Arr?ter le flux" - -#~ msgid "Select previous title" -#~ msgstr "S?lectionner le titre pr?c?dent" - -#~ msgid "Select previous chapter" -#~ msgstr "S?lectionner le chapitre pr?c?dent" - -#~ msgid "_Jump..." -#~ msgstr "Sauter ??" - -#~ msgid "Switch program" -#~ msgstr "Changer de programme" - -#~ msgid "_Navigation" -#~ msgstr "_Navigation" - -#~ msgid "Navigate through titles and chapters" -#~ msgstr "Naviguer ? travers les titres et les chapitres" - -#~ msgid "Toggle _Interface" -#~ msgstr "Masquer/afficher l?_interface" - -#~ msgid "(c) 1996-2004 the VideoLAN team" -#~ msgstr "? 1996-2004 l??quipe VideoLAN" - -#~ msgid "" -#~ "This is the VLC media player, a DVD, MPEG and DivX player. It can play " -#~ "MPEG and MPEG2 files from a file or from a network source." -#~ msgstr "" -#~ "Ceci est le client VideoLAN, un lecteur de DVD, MPEG et DivX. Il peut " -#~ "jouer des flux MPEG et MPEG2 ? partir d?un fichier ou d?une source r?seau." - -#~ msgid "Open Stream" -#~ msgstr "Ouvrir un flux" - -#~ msgid "Symbol Rate" -#~ msgstr "D?bit de symboles" - -#~ msgid "Satellite" -#~ msgstr "Satellite" - -#~ msgid "stream output" -#~ msgstr "Flux de sortie" - -#~ msgid "" -#~ "Sorry, the module manager isn?t functional yet. Please retry in a later " -#~ "version." -#~ msgstr "" -#~ "D?sol?, le gestionnaire de modules ne fonctionne pas encore. Veuillez " -#~ "r?essayer dans une prochaine version." - -#~ msgid "Item" -#~ msgstr "?l?ment" - -#~ msgid "stream output (MRL)" -#~ msgstr "Flux de sortie (MRL)" - -#~ msgid "Destination Target: " -#~ msgstr "Destination : " - -#~ msgid "Couldn?t create pixmap from file: %s" -#~ msgstr "Impossible de cr?er le pixmap du fichier %s" - -#~ msgid "Close the window" -#~ msgstr "Fermer la fen?tre" - -#~ msgid "Hide the main interface window" -#~ msgstr "Masquer la fen?tre d?interface" - -#~ msgid "Navigate through the stream" -#~ msgstr "Se d?placer dans le flux" - -#~ msgid "_Preferences..." -#~ msgstr "_Pr?f?rences?" - -#~ msgid "Configure the application" -#~ msgstr "Configurer l?application" - -#~ msgid "Open a Satellite Card" -#~ msgstr "Ouvrir une carte satellite" - -#~ msgid "Go Backward" -#~ msgstr "Retour arri?re" - -#~ msgid "Open Playlist" -#~ msgstr "Ouvrir la liste de lecture" - -#~ msgid "Previous File" -#~ msgstr "Fichier pr?c?dent" - -#~ msgid "the VideoLAN team " -#~ msgstr "L??quipe VideoLAN " - -#~ msgid "Open Target" -#~ msgstr "Ouvrir un flux" - -#~ msgid "Set the number of Frames Per Second" -#~ msgstr "Fixer le nombre d?images par seconde" - -#~ msgid "Use stream output" -#~ msgstr "Activer le flux de sortie" - -#~ msgid "Go To:" -#~ msgstr "Aller ? :" - -#~ msgid "s." -#~ msgstr "s." - -#~ msgid "m:" -#~ msgstr "m :" - -#~ msgid "h:" -#~ msgstr "h :" - -#~ msgid "Selected" -#~ msgstr "S?lectionn?" - -#~ msgid "_Crop" -#~ msgstr "Rogner" - -#~ msgid "Stream output (MRL)" -#~ msgstr "Flux de sortie (MRL)" - -#~ msgid "Error loading pixmap file: %s" -#~ msgstr "Erreur de chargement du fichier pixmap?: %s" - -#~ msgid "PBC LID" -#~ msgstr "PBC LID" - -#~ msgid "Disk type" -#~ msgstr "Type de disque" - -#~ msgid "Title " -#~ msgstr "Titre " - -#~ msgid "Chapter " -#~ msgstr "Chapitre " - -#~ msgid "Device name " -#~ msgstr "Nom du p?riph?rique " - -#~ msgid "language" -#~ msgstr "Langue" - -#~ msgid "Open &Disk" -#~ msgstr "Ouvrir &disque" - -#~ msgid "Open &Stream" -#~ msgstr "Ouvrir un &flux" - -#~ msgid "&Stop" -#~ msgstr "&Stop" - -#~ msgid "P&ause" -#~ msgstr "P&ause" - -#~ msgid "&Slow" -#~ msgstr "Ra&lentir" - -#~ msgid "Fas&t" -#~ msgstr "Ac&c?l?rer" - -#~ msgid "Opens an existing document" -#~ msgstr "Ouvrir un document existant" - -#~ msgid "Opens a recently used file" -#~ msgstr "Ouvrir un fichier r?cemment utilis?" - -#~ msgid "Quits the application" -#~ msgstr "Quitter l?application" - -#~ msgid "Enables/disables the toolbar" -#~ msgstr "Activer/D?sactiver la barre d?outils" - -#~ msgid "Enables/disables the status bar" -#~ msgstr "Activer/D?sactiver la barre de statut" - -#~ msgid "Opens a disk" -#~ msgstr "Ouvrir un disque" - -#~ msgid "Opens a network stream" -#~ msgstr "Ouvrir un flux r?seau" - -#~ msgid "Ready." -#~ msgstr "Pr?t" - -#~ msgid "Opening file..." -#~ msgstr "Ouverture du fichier?" - -#~ msgid "Exiting..." -#~ msgstr "Sortie?" - -#~ msgid "Toggling toolbar..." -#~ msgstr "Activation de la barre d?outils?" - -#~ msgid "Toggle the status bar..." -#~ msgstr "Active la barre de status?" - -#~ msgid "Messages:" -#~ msgstr "Messages :" - -#~ msgid "Address " -#~ msgstr "Adresse " - -#~ msgid "Port " -#~ msgstr "Port " - -#~ msgid "Demux number" -#~ msgstr "Num?ro du module de d?multiplexage" - -#~ msgid "Satellite default transponder frequency (kHz)" -#~ msgstr "Fr?quence par d?faut du transpondeur satellite (kHz)" - -#~ msgid "Satellite default transponder polarization" -#~ msgstr "Polarisation par d?faut du transpondeur satellite" - -#~ msgid "Satellite default transponder FEC" -#~ msgstr "FEC pr?d?fini du transpondeur satellite" - -#~ msgid "Satellite default transponder symbol rate (kHz)" -#~ msgstr "D?bit de symbole par d?faut du transpondeur satellite (kHz)" - -#~ msgid "Use diseqc with antenna" -#~ msgstr "Utiliser diseqc pour l?antenne" - -#, fuzzy -#~ msgid "< Back" -#~ msgstr "Retour" - -#, fuzzy -#~ msgid "Next >" -#~ msgstr "Suivant" - -#~ msgid "This wizard helps you to stream, transcode or save a stream" -#~ msgstr "" -#~ "Cet assistant vous aide ? diffuser, transcoder ou enregistrer un flux." - -#~ msgid "" -#~ "This wizard only gives access to a small subset of VLC's streaming and " -#~ "transcoding capabilities. Use the Open and Stream Output dialogs to get " -#~ "all of them" -#~ msgstr "" -#~ "Cet assistant ne vous donne acc?s qu?? une petite partie des capacit?s de " -#~ "diffusion et de transcodage de VLC. Utilisez les boites de dialogue " -#~ "??Ouvrir?? et ??Flux de sortie?? pour avoir toutes les options." - -#~ msgid "Choose here your input stream" -#~ msgstr "Choisissez ici votre flux d?entr?e" - -#~ msgid "If your stream has audio and you want to transcode it, enable this" -#~ msgstr "" -#~ "Si votre flux contient de l?audio et que vous d?sirez le transcoder, " -#~ "activez ceci." - -#~ msgid "If your stream has video and you want to transcode it, enable this" -#~ msgstr "" -#~ "Si votre flux contient de la vid?o et que vous d?sirez la transcoder, " -#~ "activez ceci." - -#~ msgid "MPEG-1 Video codec" -#~ msgstr "Codec vid?o MPEG-1" - -#~ msgid "MPEG-2 Video codec" -#~ msgstr "Codec vid?o MPEG-2" - -#~ msgid "MPEG-4 Video codec" -#~ msgstr "Codec vid?o MPEG-4" - -#~ msgid "DivX first version" -#~ msgstr "Premi?re version de DivX" - -#~ msgid "DivX second version" -#~ msgstr "Seconde version de DivX" - -#~ msgid "DivX third version" -#~ msgstr "Troisi?me version de DivX" - -#~ msgid "WMV (Windows Media Video) 1" -#~ msgstr "WMV (Windows Media Video) 1" - -#~ msgid "WMV (Windows Media Video) 2" -#~ msgstr "WMV (Windows Media Video) 2" - -#~ msgid "Dummy codec (do not transcode)" -#~ msgstr "Codec qui ne fait rien (pas de transcodage)" - -#~ msgid "The standard MPEG audio (1/2) format" -#~ msgstr "Format audio MPEG (1/2)" - -#~ msgid "MPEG Audio Layer 3" -#~ msgstr "MPEG Audio niveau 3 (MP3)" - -#~ msgid "Audio format for MPEG4" -#~ msgstr "Format audio MPEG4" - -#~ msgid "DVD audio format" -#~ msgstr "Format audio DVD" - -#~ msgid "MPEG4" -#~ msgstr "MPEG4" - -#~ msgid "WAV" -#~ msgstr "WAV" - -#~ msgid "Execution of extern programs interface function" -#~ msgstr "Ex?cution de fonctions d?interface de programmes externes" - -#~ msgid "Greek" -#~ msgstr "Grec" - -#~ msgid "Pashto" -#~ msgstr "Pachto" - -#~ msgid "Brazilian" -#~ msgstr "Br?silien" - -#~ msgid "Tetum" -#~ msgstr "Tetum" - -#~ msgid "Faux" -#~ msgstr "TTY factice" - -#~ msgid "" -#~ "Allows you to modify the user name that will be used for the connection " -#~ "(Basic authentication only)." -#~ msgstr "" -#~ "Ceci vous permet de modifier le nom d?utilisateur qui sera utilis? pour " -#~ "la connexion (authentification basique seulement)." - -#~ msgid "Late delay (ms)" -#~ msgstr "D?lai de retard (ms)" - -#~ msgid "" -#~ "Late packets are dropped. This allows you to give the time (in " -#~ "milliseconds) a packet is allowed to be late." -#~ msgstr "" -#~ "Les paquets en retard ne sont pas consid?r?s. Ceci permet de sp?cifier le " -#~ "d?lai (en millisecondes) de retard autoris? pour les paquets." - -#~ msgid "I263" -#~ msgstr "I263" - -#~ msgid "I263 is an Intel conferencing codec" -#~ msgstr "I263 est un codec de vid?oconf?rence fait par Intel" - -#~ msgid "SAP IPv6 announcing" -#~ msgstr "Annonce SAP IPv6" - -#~ msgid "Use IPv6 to announce this session with SAP" -#~ msgstr "Utilise l?IPv6 pour annoncer cette session par SAP" - -#, fuzzy -#~ msgid "Big" -#~ msgstr "Pont" - -#, fuzzy -#~ msgid "Extra Audio File" -#~ msgstr "Filtres audio" - -#, fuzzy -#~ msgid "Media File" -#~ msgstr "M?dia: %s" - -#, fuzzy -#~ msgid "QWidget" -#~ msgstr "Largeur" - -#, fuzzy -#~ msgid "margin" -#~ msgstr "Amharique" - -#, fuzzy -#~ msgid "spacing" -#~ msgstr "Mise en cache" - -#, fuzzy -#~ msgid "QPushButton" -#~ msgstr "Pachto" - -#, fuzzy -#~ msgid "Line" -#~ msgstr "Lin?aire" - -#, fuzzy -#~ msgid "line" -#~ msgstr "Contour" - -#, fuzzy -#~ msgid "orientation" -#~ msgstr "D?tails" - -#, fuzzy -#~ msgid "QGroupBox" -#~ msgstr "Groupe" - -#, fuzzy -#~ msgid "enabled" -#~ msgstr "Activer" - -#, fuzzy -#~ msgid "checkable" -#~ msgstr "Activer" - -#, fuzzy -#~ msgid "horizontalLayout_3" -#~ msgstr "Horizontale" - -#, fuzzy -#~ msgid "Disk" -#~ msgstr "Disque" - -#, fuzzy -#~ msgid "Justification" -#~ msgstr "Amplification" - -#, fuzzy -#~ msgid "Audioscrobbler username" -#~ msgstr "Nom du p?riph?rique audio" - -#, fuzzy -#~ msgid "Audioscrobbler password" -#~ msgstr "Mot de passe" - -#, fuzzy -#~ msgid "Connecting..." -#~ msgstr "Param?tres?" - -#, fuzzy -#~ msgid "Dummy video filter" -#~ msgstr "Filtre vid?o ffmpeg" - -#, fuzzy -#~ msgid "Dummy VF" -#~ msgstr "Inutile" - -#~ msgid "choose the screen to be used for fullscreen mode." -#~ msgstr "Choisissez l??cran ? utiliser pour le mode plein ?cran" - -#~ msgid "Jump" -#~ msgstr "Aller ?" +msgstr "Analyseur de spectre" \ No newline at end of file -- 1.6.1.2 _____________________________________________________________ For the best in Progressive Rock on the internet, check out PROGROCK.COM! http://www.progrock.com From git at videolan.org Tue Feb 10 17:35:49 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 17:35:49 +0100 (CET) Subject: [vlc-devel] commit: Add .iso to the video files extensions (untested) (Anthony Loiseau ) Message-ID: <20090210163549.4C3182EFDE@skanda.videolan.org> vlc | branch: master | Anthony Loiseau | Thu Jan 8 15:34:37 2009 +0100| [2c8cdc30b827a523c61b8660b83a5acf8ed9a882] | committer: R?mi Denis-Courmont Add .iso to the video files extensions (untested) Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2c8cdc30b827a523c61b8660b83a5acf8ed9a882 --- include/vlc_interface.h | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/include/vlc_interface.h b/include/vlc_interface.h index 2c63d4a..ecd43a4 100644 --- a/include/vlc_interface.h +++ b/include/vlc_interface.h @@ -179,7 +179,8 @@ typedef enum vlc_dialog { "*.m2t;*.m2ts;*.m4v;*.mkv;*.mov;*.mp2;*.mp4;*.mpeg;*.mpeg1;" \ "*.mpeg2;*.mpeg4;*.mpg;*.mts;*.mxf;*.nuv;" \ "*.ogg;*.ogm;*.ogv;*.ogx;" \ - "*.ps;*.rm;*.rmvb;*.ts;*.vob;*.wmv" + "*.ps;*.rm;*.rmvb;*.ts;*.vob;*.wmv;" \ + "*.iso" #define EXTENSIONS_PLAYLIST "*.asx;*.b4s;*.m3u;*.pls;*.vlc;*.xspf" From jb at videolan.org Tue Feb 10 17:36:54 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 10 Feb 2009 17:36:54 +0100 Subject: [vlc-devel] commit: Add .iso to the video files extensions (untested) (Anthony Loiseau ) In-Reply-To: <20090210163549.4C3182EFDE@skanda.videolan.org> References: <20090210163549.4C3182EFDE@skanda.videolan.org> Message-ID: <20090210163654.GA15341@videolan.org> On Tue, Feb 10, 2009 at 05:35:49PM +0100, git version control wrote : > vlc | branch: master | Anthony Loiseau | Thu Jan 8 15:34:37 2009 +0100| [2c8cdc30b827a523c61b8660b83a5acf8ed9a882] | committer: R?mi Denis-Courmont > > Add .iso to the video files extensions (untested) Why not keep the alphabetical order? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From thannoy at actech-innovation.com Tue Feb 10 17:57:17 2009 From: thannoy at actech-innovation.com (Anthony Loiseau) Date: Tue, 10 Feb 2009 16:57:17 +0000 Subject: [vlc-devel] commit: Add .iso to the video files extensions (untested) (Anthony Loiseau ) In-Reply-To: <20090210163654.GA15341@videolan.org> References: <20090210163549.4C3182EFDE@skanda.videolan.org> <20090210163654.GA15341@videolan.org> Message-ID: <1234285037.4331.37.camel@localhost.localdomain> Sorry, I didn't see it was sorted, so I added it at the end. I can provide a patch to keep the sorted order. Should I send one correcting the old patch or ignoring it (which will require a revert before)? regards, Anthony On Tue, 2009-02-10 at 17:36 +0100, Jean-Baptiste Kempf wrote: > On Tue, Feb 10, 2009 at 05:35:49PM +0100, git version control wrote : > > vlc | branch: master | Anthony Loiseau | Thu Jan 8 15:34:37 2009 +0100| [2c8cdc30b827a523c61b8660b83a5acf8ed9a882] | committer: R?mi Denis-Courmont > > > > Add .iso to the video files extensions (untested) > > Why not keep the alphabetical order? > > Best Regards, From sebastien-devel at celeos.eu Tue Feb 10 18:10:50 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Tue, 10 Feb 2009 18:10:50 +0100 Subject: [vlc-devel] timeshift issue Message-ID: <1234285850.4991b51a0e884@imp.celeos.eu> Hi I am reading a network stream with non constant bitrate. And sometimes, I see vlc messages "adjusting rate" and then the timeshift module is called to delay my stream. Then I see my stream with late, and that is what I would like to avoid. This delay can grow very much after a while. My question is, is there a way to deactivates timeshift functionality for some input ? Thanks From thannoy at actech-innovation.com Tue Feb 10 18:21:49 2009 From: thannoy at actech-innovation.com (Anthony Loiseau) Date: Tue, 10 Feb 2009 18:21:49 +0100 Subject: [vlc-devel] commit: Add .iso to the video files extensions (untested) (Anthony Loiseau ) In-Reply-To: <1234285037.4331.37.camel@localhost.localdomain> References: <20090210163549.4C3182EFDE@skanda.videolan.org> <20090210163654.GA15341@videolan.org> <1234285037.4331.37.camel@localhost.localdomain> Message-ID: <1234286509.4331.43.camel@localhost.localdomain> Attached is the alphabetical-sorted version if you want to keep it sorted. I have done a commit --amend, so it requires a revert of the old patch. By the way, I make the modified part no longer than 80-characters. _Anthony On Tue, 2009-02-10 at 16:57 +0000, Anthony Loiseau wrote: > Sorry, I didn't see it was sorted, so I added it at the end. > > I can provide a patch to keep the sorted order. Should I send one > correcting the old patch or ignoring it (which will require a revert > before)? > > regards, > Anthony > > On Tue, 2009-02-10 at 17:36 +0100, Jean-Baptiste Kempf wrote: > > On Tue, Feb 10, 2009 at 05:35:49PM +0100, git version control wrote : > > > vlc | branch: master | Anthony Loiseau | Thu Jan 8 15:34:37 2009 +0100| [2c8cdc30b827a523c61b8660b83a5acf8ed9a882] | committer: R?mi Denis-Courmont > > > > > > Add .iso to the video files extensions (untested) > > > > Why not keep the alphabetical order? > > > > Best Regards, > > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Add-.iso-to-the-video-files-extensions.patch Type: text/x-patch Size: 1447 bytes Desc: not available URL: From git at videolan.org Tue Feb 10 18:39:52 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 18:39:52 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_ncurses=3A_redirect_standard_erro?= =?utf-8?q?r_to_/dev/null_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090210173952.15C142F04E@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 19:38:41 2009 +0200| [3af97bb6d9d638a783c27f687f72b989d5b7455c] | committer: R?mi Denis-Courmont ncurses: redirect standard error to /dev/null Changing the verbosity at that point is not thread-safe (and trying to restore the value at ext is somwehat logically flawed). Luckily all the standard functions are thread-safe. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3af97bb6d9d638a783c27f687f72b989d5b7455c --- modules/gui/ncurses.c | 15 ++------------- 1 files changed, 2 insertions(+), 13 deletions(-) diff --git a/modules/gui/ncurses.c b/modules/gui/ncurses.c index aadf1fb..e5099b3 100644 --- a/modules/gui/ncurses.c +++ b/modules/gui/ncurses.c @@ -227,8 +227,6 @@ struct intf_sys_t struct pl_item_t **pp_plist; int i_plist_entries; bool b_need_update; /* for playlist view */ - - int i_verbose; /* stores verbosity level */ }; static void DrawBox( WINDOW *win, int y, int x, int h, int w, const char *title, bool b_color ); @@ -291,12 +289,8 @@ static int Open( vlc_object_t *p_this ) /* exported function */ p_intf->pf_run = Run; - /* Remember verbosity level */ - var_Get( p_intf->p_libvlc, "verbose", &val ); - p_sys->i_verbose = val.i_int; - /* Set quiet mode */ - val.i_int = -1; - var_Set( p_intf->p_libvlc, "verbose", val ); + /* Stop printing errors to the console */ + freopen( "/dev/null", "wb", stderr ); /* Set defaul playlist view */ p_sys->i_current_view = VIEW_CATEGORY; @@ -365,11 +359,6 @@ static void Close( vlc_object_t *p_this ) // FIXME msg_Unsubscribe( p_intf, p_sys->p_sub ); - /* Restores initial verbose setting */ - vlc_value_t val; - val.i_int = p_sys->i_verbose; - var_Set( p_intf->p_libvlc, "verbose", val ); - /* Destroy structure */ free( p_sys ); } From git at videolan.org Tue Feb 10 18:44:06 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 18:44:06 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_the_verbose_callback=2E_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090210174406.A6DA72EB33@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 19:43:36 2009 +0200| [d5f982b37091f3b340d3e8f3dacd1f874f03550a] | committer: R?mi Denis-Courmont Remove the verbose callback. It was not thread-safe, and only used by ncurses (fixed earlier). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d5f982b37091f3b340d3e8f3dacd1f874f03550a --- src/libvlc.c | 26 ++++---------------------- 1 files changed, 4 insertions(+), 22 deletions(-) diff --git a/src/libvlc.c b/src/libvlc.c index 95f10cb..e8c9f2d 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -222,9 +222,6 @@ static void PauseConsole ( void ); #endif static int ConsoleWidth ( void ); -static int VerboseCallback( vlc_object_t *, char const *, - vlc_value_t, vlc_value_t, void * ); - static void InitDeviceValues( libvlc_int_t * ); static vlc_mutex_t global_lock = VLC_STATIC_MUTEX; @@ -730,14 +727,14 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, free( psz_verbose_objects ); } + /* Last change to set the verbosity. Once we start interfaces and other + * threads, verbosity becomes read-only. */ var_Create( p_libvlc, "verbose", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT ); if( config_GetInt( p_libvlc, "quiet" ) > 0 ) { - val.i_int = -1; - var_Set( p_libvlc, "verbose", val ); + var_SetInteger( p_libvlc, "verbose", -1 ); + priv->i_verbose = -1; } - var_AddCallback( p_libvlc, "verbose", VerboseCallback, NULL ); - var_TriggerCallback( p_libvlc, "verbose" ); if( priv->b_color ) priv->b_color = config_GetInt( p_libvlc, "color" ) > 0; @@ -2075,21 +2072,6 @@ static int ConsoleWidth( void ) return i_width; } -static int VerboseCallback( vlc_object_t *p_this, const char *psz_variable, - vlc_value_t old_val, vlc_value_t new_val, void *param) -{ - libvlc_int_t *p_libvlc = (libvlc_int_t *)p_this; - (void)psz_variable; - (void)old_val; - (void)param; - - if( new_val.i_int >= -1 ) - { - libvlc_priv (p_libvlc)->i_verbose = __MIN( new_val.i_int, 2 ); - } - return VLC_SUCCESS; -} - /***************************************************************************** * InitDeviceValues: initialize device values ***************************************************************************** From git at videolan.org Tue Feb 10 18:55:26 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 18:55:26 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_libvlc_log=3A_stop_abusing_intern?= =?utf-8?q?al_i=5Fverbosity_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090210175526.6AE932EFD2@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 19:55:01 2009 +0200| [7bdcd022287f5f99e68ea6f422edbee6cfc54e62] | committer: R?mi Denis-Courmont libvlc log: stop abusing internal i_verbosity > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7bdcd022287f5f99e68ea6f422edbee6cfc54e62 --- src/control/core.c | 1 + src/control/libvlc_internal.h | 1 + src/control/log.c | 25 +++++++++++-------------- 3 files changed, 13 insertions(+), 14 deletions(-) diff --git a/src/control/core.c b/src/control/core.c index adf8428..f475f44 100644 --- a/src/control/core.c +++ b/src/control/core.c @@ -136,6 +136,7 @@ libvlc_instance_t * libvlc_new( int argc, const char *const *argv, p_new->p_vlm = NULL; p_new->b_playlist_locked = 0; p_new->ref_count = 1; + p_new->verbosity = 1; p_new->p_callback_list = NULL; vlc_mutex_init(&p_new->instance_lock); vlc_mutex_init(&p_new->event_callback_lock); diff --git a/src/control/libvlc_internal.h b/src/control/libvlc_internal.h index 9509735..d54b437 100644 --- a/src/control/libvlc_internal.h +++ b/src/control/libvlc_internal.h @@ -65,6 +65,7 @@ struct libvlc_instance_t vlm_t *p_vlm; int b_playlist_locked; unsigned ref_count; + int verbosity; vlc_mutex_t instance_lock; vlc_mutex_t event_callback_lock; struct libvlc_callback_entry_list_t *p_callback_list; diff --git a/src/control/log.c b/src/control/log.c index 96ef452..8986eea 100644 --- a/src/control/log.c +++ b/src/control/log.c @@ -23,7 +23,6 @@ *****************************************************************************/ #include "libvlc_internal.h" -#include "../libvlc.h" #include #include @@ -42,10 +41,14 @@ struct msg_cb_data_t vlc_spinlock_t lock; msg_item_t *items[VLC_MSG_QSIZE]; unsigned count; + int verbosity; }; static void handler( msg_cb_data_t *d, msg_item_t *p_item, unsigned i_drop ) { + if (p_item->i_type > d->verbosity) + return; + vlc_spin_lock (&d->lock); if (d->count < VLC_MSG_QSIZE) { @@ -72,23 +75,16 @@ struct libvlc_log_iterator_t unsigned libvlc_get_log_verbosity( const libvlc_instance_t *p_instance, libvlc_exception_t *p_e ) { - if( p_instance ) - { - libvlc_priv_t *p_priv = libvlc_priv( p_instance->p_libvlc_int ); - return p_priv->i_verbose; - } - RAISEZERO("Invalid VLC instance!"); + assert( p_instance ); + (void)p_e; + return p_instance->verbosity; } void libvlc_set_log_verbosity( libvlc_instance_t *p_instance, unsigned level, libvlc_exception_t *p_e ) { - if( p_instance ) - { - libvlc_priv_t *p_priv = libvlc_priv( p_instance->p_libvlc_int ); - p_priv->i_verbose = level; - } - else - RAISEVOID("Invalid VLC instance!"); + assert( p_instance ); + (void)p_e; + p_instance->verbosity = level; } libvlc_log_t *libvlc_log_open( libvlc_instance_t *p_instance, libvlc_exception_t *p_e ) @@ -99,6 +95,7 @@ libvlc_log_t *libvlc_log_open( libvlc_instance_t *p_instance, libvlc_exception_t if( !p_log ) RAISENULL( "Out of memory" ); p_log->p_instance = p_instance; + p_log->data.verbosity = p_instance->verbosity; p_log->p_messages = msg_Subscribe(p_instance->p_libvlc_int, handler, &p_log->data); if( !p_log->p_messages ) From git at videolan.org Tue Feb 10 19:16:32 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 19:16:32 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Restore_the_libvlc_logger_lock_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090210181632.762B02F02D@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 20:03:17 2009 +0200| [2d7c798a3e3781c72212c1c5bec141f12e0ffaa8] | committer: R?mi Denis-Courmont Restore the libvlc logger lock This API is completely idiotic. By design, it requires (very active) polling to work. Also, it is almost impossible to make it thread-safe. Anyway, through violating a few constant pointers, we can fix half of that. However, message item reference counting remains broken. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2d7c798a3e3781c72212c1c5bec141f12e0ffaa8 --- src/control/log.c | 34 ++++++++++++++++++++-------------- 1 files changed, 20 insertions(+), 14 deletions(-) diff --git a/src/control/log.c b/src/control/log.c index 8986eea..3a9f808 100644 --- a/src/control/log.c +++ b/src/control/log.c @@ -68,7 +68,7 @@ struct libvlc_log_t struct libvlc_log_iterator_t { - const msg_cb_data_t *p_data; + msg_cb_data_t *p_data; unsigned i_pos; unsigned i_end; }; @@ -95,6 +95,8 @@ libvlc_log_t *libvlc_log_open( libvlc_instance_t *p_instance, libvlc_exception_t if( !p_log ) RAISENULL( "Out of memory" ); p_log->p_instance = p_instance; + vlc_spin_init( &p_log->data.lock ); + p_log->data.count = 0; p_log->data.verbosity = p_instance->verbosity; p_log->p_messages = msg_Subscribe(p_instance->p_libvlc_int, handler, &p_log->data); @@ -115,6 +117,7 @@ void libvlc_log_close( libvlc_log_t *p_log, libvlc_exception_t *p_e ) assert( p_log->p_messages ); msg_Unsubscribe(p_log->p_messages); libvlc_release( p_log->p_instance ); + vlc_spin_destroy( &p_log->data.lock ); free(p_log); } else @@ -125,13 +128,14 @@ unsigned libvlc_log_count( const libvlc_log_t *p_log, libvlc_exception_t *p_e ) { if( p_log ) { + msg_cb_data_t *data = &((libvlc_log_t *)p_log)->data; unsigned ret; - /* We cannot lock due to pointer constraints. - * Even then, this would not be thread safe anyway. */ - /*vlc_spin_lock (&p_log->data.lock);*/ - ret = p_log->data.count; - /*vlc_spin_unlock (&p_log->data.lock);*/ + /* We cannot lock due to constant pointer constraints. Break them. + * Even then, this si not really thread safe anyway. */ + vlc_spin_lock (&data->lock); + ret = data->count; + vlc_spin_unlock (&data->lock); return ret; } RAISEZERO("Invalid log object!"); @@ -141,10 +145,10 @@ void libvlc_log_clear( libvlc_log_t *p_log, libvlc_exception_t *p_e ) { if( p_log ) { - /*vlc_spin_lock (&p_log->data.lock);*/ + vlc_spin_lock (&p_log->data.lock); p_log->data.count = 0; /* FIXME: release items */ - /*vlc_spin_unlock (&p_log->data.lock);*/ + vlc_spin_unlock (&p_log->data.lock); } else RAISEVOID("Invalid log object!"); @@ -156,14 +160,16 @@ libvlc_log_iterator_t *libvlc_log_get_iterator( const libvlc_log_t *p_log, libvl { struct libvlc_log_iterator_t *p_iter = (struct libvlc_log_iterator_t *)malloc(sizeof(struct libvlc_log_iterator_t)); + /* FIXME: break constant pointer constraints */ + msg_cb_data_t *data = &((libvlc_log_t *)p_log)->data; if( !p_iter ) RAISENULL( "Out of memory" ); - /*vlc_spin_lock (&p_log->data.lock);*/ - p_iter->p_data = &p_log->data; + vlc_spin_lock (&data->lock); + p_iter->p_data = data; p_iter->i_pos = 0; - p_iter->i_end = p_log->data.count; - /*vlc_spin_unlock (&p_log->data.lock);*/ + p_iter->i_end = data->count; + vlc_spin_unlock (&data->lock); return p_iter; } @@ -204,14 +210,14 @@ libvlc_log_message_t *libvlc_log_iterator_next( libvlc_log_iterator_t *p_iter, if( i_pos != p_iter->i_end ) { msg_item_t *msg; - /*vlc_spin_lock (&p_iter->p_data->lock);*/ + vlc_spin_lock (&p_iter->p_data->lock); msg = p_iter->p_data->items[i_pos]; buffer->i_severity = msg->i_type; buffer->psz_type = msg->psz_object_type; buffer->psz_name = msg->psz_module; buffer->psz_header = msg->psz_header; buffer->psz_message = msg->psz_msg; - /*vlc_spin_unlock (&p_iter->p_data->lock);*/ + vlc_spin_unlock (&p_iter->p_data->lock); p_iter->i_pos++; return buffer; From git at videolan.org Tue Feb 10 19:16:32 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 19:16:32 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Implement_reference_counting_in_t?= =?utf-8?q?he_libvlc_logger_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090210181632.8481C2F058@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 20:15:20 2009 +0200| [92ed31deedfd5f79e9dc580de04ae699550a8883] | committer: R?mi Denis-Courmont Implement reference counting in the libvlc logger Now, this should work safely, although it requires heavy polling. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=92ed31deedfd5f79e9dc580de04ae699550a8883 --- src/control/log.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/control/log.c b/src/control/log.c index 3a9f808..b87d5d8 100644 --- a/src/control/log.c +++ b/src/control/log.c @@ -53,7 +53,7 @@ static void handler( msg_cb_data_t *d, msg_item_t *p_item, unsigned i_drop ) if (d->count < VLC_MSG_QSIZE) { d->items[d->count++] = p_item; - /* FIXME FIXME: yield the message item */ + msg_Hold (p_item); } vlc_spin_unlock (&d->lock); (void)i_drop; @@ -117,6 +117,7 @@ void libvlc_log_close( libvlc_log_t *p_log, libvlc_exception_t *p_e ) assert( p_log->p_messages ); msg_Unsubscribe(p_log->p_messages); libvlc_release( p_log->p_instance ); + libvlc_log_clear( p_log, p_e ); vlc_spin_destroy( &p_log->data.lock ); free(p_log); } @@ -146,9 +147,13 @@ void libvlc_log_clear( libvlc_log_t *p_log, libvlc_exception_t *p_e ) if( p_log ) { vlc_spin_lock (&p_log->data.lock); + msg_item_t *tab[p_log->data.count]; + memcpy (tab, p_log->data.items, sizeof (tab)); p_log->data.count = 0; - /* FIXME: release items */ vlc_spin_unlock (&p_log->data.lock); + + for (unsigned i = 0; i < sizeof (tab) / sizeof (tab[0]); i++) + msg_Release (tab[i]); } else RAISEVOID("Invalid log object!"); From git at videolan.org Tue Feb 10 19:41:46 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 19:41:46 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_mozilla=3A__make_sure_we_set_the_?= =?utf-8?q?correct_file_rights_before_we_distribute_the_plugin_=28_Felix_P?= =?utf-8?b?YXVsIEvDvGhuZSAp?= Message-ID: <20090210184146.49B372F046@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Tue Feb 10 19:41:20 2009 +0100| [5c3476e5aadb48fdf2b174b9beef21a2d2cc6f18] | committer: Felix Paul K?hne mozilla: make sure we set the correct file rights before we distribute the plugin > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5c3476e5aadb48fdf2b174b9beef21a2d2cc6f18 --- projects/mozilla/Makefile.am | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index f68950c..774ad93 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -116,6 +116,8 @@ VLC\ Plugin.plugin: npvlc.rsrc $(lib_LTLIBRARIES) cp -r "$(top_builddir)/extras/package/macosx/plugin/English.lproj" "VLC-Plugin.plugin/Contents/Resources/" $(INSTALL) "$(top_builddir)/extras/package/macosx/plugin/Info.plist" "VLC-Plugin.plugin/Contents/Info.plist" mv "VLC-Plugin.plugin" "VLC Plugin.plugin" + find "VLC Plugin.plugin" -type d -exec chmod ugo+rx '{}' \; + find "VLC Plugin.plugin" -type f -exec chmod ugo+r '{}' \; # uncomment if dependencies on XPCOM libs is sought # if test -d "$(MOZILLA_SDK_PATH)/lib"; then \ From git at videolan.org Tue Feb 10 19:46:10 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 19:46:10 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Withdraw_the_=27fixed_Mozilla/Saf?= =?utf-8?q?ari_plugin=27_from_NEWS_as_it_won=27_t_be_finished_in_time_=28_?= =?utf-8?q?Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090210184610.DE1052F04D@skanda.videolan.org> vlc | branch: 0.9-bugfix | Felix Paul K?hne | Tue Feb 10 19:39:54 2009 +0100| [ca2c6ad6cc469f5e71cbea1457cdcaa726f7ba42] | committer: Felix Paul K?hne Withdraw the 'fixed Mozilla/Safari plugin' from NEWS as it won't be finished in time > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ca2c6ad6cc469f5e71cbea1457cdcaa726f7ba42 --- NEWS | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/NEWS b/NEWS index 02794d0..6333111 100644 --- a/NEWS +++ b/NEWS @@ -13,7 +13,6 @@ Mac OS X Interface: Mac OS X Port: * Improved video playback performance - * The Safari/Mozilla web browser plugin is distributed again. New Localizations: * Indonesian From jb at videolan.org Tue Feb 10 20:01:00 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 10 Feb 2009 20:01:00 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Withdraw_the_=27fixed_Mozill?= =?iso-8859-1?q?a/Safari_plugin=27_from_NEWS_as_it_won=27_t_be_fini?= =?iso-8859-1?q?shed_in_time_=28_Felix_Paul_K=FChne_=29?= In-Reply-To: <20090210184610.DE1052F04D@skanda.videolan.org> References: <20090210184610.DE1052F04D@skanda.videolan.org> Message-ID: <20090210190100.GA10879@videolan.org> On Tue, Feb 10, 2009 at 07:46:10PM +0100, git version control wrote : > vlc | branch: 0.9-bugfix | Felix Paul K?hne | Tue Feb 10 19:39:54 2009 +0100| [ca2c6ad6cc469f5e71cbea1457cdcaa726f7ba42] | committer: Felix Paul K?hne > > Withdraw the 'fixed Mozilla/Safari plugin' from NEWS as it won't be finished in time How much time do you need? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Tue Feb 10 20:05:23 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 20:05:23 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_FSC_memory_leaks_=28_R=C3=A9mi_De?= =?utf-8?q?nis-Courmont_=29?= Message-ID: <20090210190523.EA43B2F069@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 21:05:01 2009 +0200| [1463e7cbbc437f8e7b4ab246861ae55ddadeb763] | committer: R?mi Denis-Courmont FSC memory leaks > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1463e7cbbc437f8e7b4ab246861ae55ddadeb763 --- modules/gui/qt4/components/controller.cpp | 46 +++++++++++----------- modules/gui/qt4/components/controller.hpp | 2 +- modules/gui/qt4/components/controller_widget.hpp | 8 ++++ modules/gui/qt4/main_interface.cpp | 2 +- 4 files changed, 33 insertions(+), 25 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=1463e7cbbc437f8e7b4ab246861ae55ddadeb763 From jb at videolan.org Tue Feb 10 20:20:19 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 10 Feb 2009 20:20:19 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_FSC_memory_leaks_=28_R=E9mi_?= =?iso-8859-1?q?Denis-Courmont_=29?= In-Reply-To: <20090210190523.EA43B2F069@skanda.videolan.org> References: <20090210190523.EA43B2F069@skanda.videolan.org> Message-ID: <20090210192019.GB11827@videolan.org> On Tue, Feb 10, 2009 at 08:05:23PM +0100, git version control wrote : > vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 21:05:01 2009 +0200| [1463e7cbbc437f8e7b4ab246861ae55ddadeb763] | committer: R?mi Denis-Courmont > > FSC memory leaks Adding a parent at creation is useless, if you are adding the widget a layout, because the layout will reparent it, according to the doc. So, to me, most of this commit is useless. Maybe I am wrong. "When you use a layout, you don't need to pass a parent when constructing the child widgets. The layout will automatically reparent the widgets (using QWidget::setParent()) so that they are children of the widget on which the layout is installed." Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Tue Feb 10 20:22:57 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 20:22:57 +0100 (CET) Subject: [vlc-devel] commit: Added support for shortname in bd access (avchd ?) (Laurent Aimar ) Message-ID: <20090210192257.A106C2F070@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 10 20:21:05 2009 +0100| [a430cde79d4832edcb8dcfe594569b64250b07f3] | committer: Laurent Aimar Added support for shortname in bd access (avchd ?) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a430cde79d4832edcb8dcfe594569b64250b07f3 --- modules/access/bd/bd.c | 81 +++++++++++++++++++++++++++++++++--------------- 1 files changed, 56 insertions(+), 25 deletions(-) diff --git a/modules/access/bd/bd.c b/modules/access/bd/bd.c index e2b4923..232b10f 100644 --- a/modules/access/bd/bd.c +++ b/modules/access/bd/bd.c @@ -83,6 +83,7 @@ vlc_module_end () struct demux_sys_t { char *psz_base; + bool b_shortname; /* */ int i_mpls; @@ -118,7 +119,7 @@ struct demux_sys_t static int Control( demux_t *, int, va_list ); static int Demux( demux_t * ); -static char *FindPathBase( const char * ); +static char *FindPathBase( const char *, bool *pb_shortname ); static int LoadPlaylist( demux_t * ); static int LoadClip( demux_t * ); @@ -155,7 +156,8 @@ static int Open( vlc_object_t *p_this ) return VLC_EGENERIC; /* */ - char *psz_base = FindPathBase( p_demux->psz_path ); + bool b_shortname; + char *psz_base = FindPathBase( p_demux->psz_path, &b_shortname ); if( !psz_base ) return VLC_EGENERIC; @@ -166,6 +168,7 @@ static int Open( vlc_object_t *p_this ) if( !p_sys ) return VLC_EGENERIC; p_sys->psz_base = psz_base; + p_sys->b_shortname = b_shortname; TAB_INIT( p_sys->i_mpls, p_sys->pp_mpls ); TAB_INIT( p_sys->i_clpi, p_sys->pp_clpi ); TAB_INIT( p_sys->i_title, p_sys->pp_title ); @@ -616,7 +619,8 @@ static int SetPlayItem( demux_t *p_demux, int i_mpls, int i_play_item ) if( !b_same_clpi ) { char *psz_m2ts; - if( asprintf( &psz_m2ts, "%s/STREAM/%05d.m2ts", p_sys->psz_base, p_mpls_clpi->i_id ) < 0 ) + if( asprintf( &psz_m2ts, "%s/STREAM/%05d.%s", + p_sys->psz_base, p_mpls_clpi->i_id, p_sys->b_shortname ? "MTS" : "m2ts" ) < 0 ) return VLC_EGENERIC; p_m2ts = stream_UrlNew( p_demux, psz_m2ts ); @@ -927,8 +931,26 @@ static void ReorderPlaylist( demux_t *p_demux ) /***************************************************************************** * Helpers: *****************************************************************************/ +static int CheckFileList( const char *psz_base, const char *ppsz_name[] ) +{ + for( int i = 0; ppsz_name[i] != NULL ; i++ ) + { + struct stat s; + char *psz_tmp; + + if( asprintf( &psz_tmp, "%s/%s", psz_base, ppsz_name[i] ) < 0 ) + return VLC_EGENERIC; + + bool b_ok = utf8_stat( psz_tmp, &s ) == 0 && S_ISREG( s.st_mode ); + + free( psz_tmp ); + if( !b_ok ) + return VLC_EGENERIC; + } + return VLC_SUCCESS; +} /* */ -static char *FindPathBase( const char *psz_path ) +static char *FindPathBase( const char *psz_path, bool *pb_shortname ) { struct stat s; char *psz_tmp; @@ -960,26 +982,23 @@ static char *FindPathBase( const char *psz_path ) } /* Check presence of mandatory files */ - for( int i = 0;; i++ ) + static const char *ppsz_name_long[] = { + "index.bdmv", + "MovieObject.bdmv", + NULL + }; + static const char *ppsz_name_short[] = { + "INDEX.BDM", + "MOVIEOBJ.BDM", + NULL + }; + *pb_shortname = false; + if( CheckFileList( psz_base, ppsz_name_long ) ) { - static const char *ppsz_name[] = { - "index.bdmv", - "MovieObject.bdmv", - NULL - }; - if( !ppsz_name[i] ) - break; - - if( asprintf( &psz_tmp, "%s/%s", psz_base, ppsz_name[i] ) < 0 ) - goto error; - - bool b_ok = utf8_stat( psz_tmp, &s ) == 0 && S_ISREG( s.st_mode ); - - free( psz_tmp ); - if( !b_ok ) + if( CheckFileList( psz_base, ppsz_name_short ) ) goto error; + *pb_shortname = true; } - return psz_base; error: @@ -1006,11 +1025,16 @@ static block_t *LoadBlock( demux_t *p_demux, const char *psz_name ) } /* */ -static int FilterMpls( const char *psz_name ) +static int FilterMplsLong( const char *psz_name ) { return strlen( psz_name ) == strlen( "xxxxx.mpls" ) && !strcmp( &psz_name[5], ".mpls" ); } +static int FilterMplsShort( const char *psz_name ) +{ + return strlen( psz_name ) == strlen( "xxxxx.MPL" ) && + !strcmp( &psz_name[5], ".MPL" ); +} static void LoadMpls( demux_t *p_demux, const char *psz_name, int i_id ) { @@ -1095,11 +1119,16 @@ error: } /* */ -static int FilterClpi( const char *psz_name ) +static int FilterClpiLong( const char *psz_name ) { return strlen( psz_name ) == strlen( "xxxxx.clpi" ) && !strcmp( &psz_name[5], ".clpi" ); } +static int FilterClpiShort( const char *psz_name ) +{ + return strlen( psz_name ) == strlen( "xxxxx.CPI" ) && + !strcmp( &psz_name[5], ".CPI" ); +} static void LoadClpi( demux_t *p_demux, const char *psz_name, int i_id ) { @@ -1205,11 +1234,13 @@ static int Load( demux_t *p_demux, static int LoadPlaylist( demux_t *p_demux ) { - return Load( p_demux, "PLAYLIST", FilterMpls, LoadMpls ); + return Load( p_demux, "PLAYLIST", + p_demux->p_sys->b_shortname ? FilterMplsShort : FilterMplsLong, LoadMpls ); } static int LoadClip( demux_t *p_demux ) { - return Load( p_demux, "CLIPINF", FilterClpi, LoadClpi ); + return Load( p_demux, "CLIPINF", + p_demux->p_sys->b_shortname ? FilterClpiShort : FilterClpiLong, LoadClpi ); } /* */ From fkuehne.videolan at googlemail.com Tue Feb 10 20:16:26 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Tue, 10 Feb 2009 20:16:26 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Withdraw_the_=27fixed_Mozill?= =?iso-8859-1?q?a/Safari_plugin=27_from_NEWS_as_it_won=27_t_be_finished_in?= =?iso-8859-1?q?_time_=28_Felix_Paul_K=FChne_=29?= In-Reply-To: <20090210190100.GA10879@videolan.org> References: <20090210184610.DE1052F04D@skanda.videolan.org> <20090210190100.GA10879@videolan.org> Message-ID: Am 10.02.2009 um 20:01 schrieb Jean-Baptiste Kempf: > On Tue, Feb 10, 2009 at 07:46:10PM +0100, git version control wrote : >> vlc | branch: 0.9-bugfix | Felix Paul K?hne >> | Tue Feb 10 19:39:54 2009 +0100| >> [ca2c6ad6cc469f5e71cbea1457cdcaa726f7ba42] | committer: Felix Paul >> K?hne >> >> Withdraw the 'fixed Mozilla/Safari plugin' from NEWS as it won't be >> finished in time > How much time do you need? libvlc doesn't instantiate correctly on this branch, while it does on master. So, it is probably easier to wait for the 1.0 release (or VLC 0.9.10 if applicable), as I'm currently focussing to get _any_ video output at all on the unstable branch... there is no urgent need for me to fix the plugin on the 0.9-branch, so please don't wait for this :-) Besides this, I've got nothing urgent left to fix on the OS X port for 0.9.9, but please give me the following day to do proper tests before setting the tag. Best regards, Felix From rem at videolan.org Tue Feb 10 20:48:13 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Tue, 10 Feb 2009 21:48:13 +0200 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_FSC_memory_leaks_=28_R=E9mi_?= =?iso-8859-1?q?Denis-Courmont_=29?= In-Reply-To: <20090210192019.GB11827@videolan.org> References: <20090210190523.EA43B2F069@skanda.videolan.org> <20090210192019.GB11827@videolan.org> Message-ID: <200902102148.14193.rem@videolan.org> Le mardi 10 f?vrier 2009 21:20:19 Jean-Baptiste Kempf, vous avez ?crit?: > On Tue, Feb 10, 2009 at 08:05:23PM +0100, git version control wrote : > > vlc | branch: master | R?mi Denis-Courmont | > > Tue Feb 10 21:05:01 2009 +0200| > > [1463e7cbbc437f8e7b4ab246861ae55ddadeb763] | committer: R?mi > > Denis-Courmont > > > > FSC memory leaks > > Adding a parent at creation is useless, if you are adding the widget a > layout, because the layout will reparent it, according to the doc. So, > to me, most of this commit is useless. If you are more intelligent, you're welcome to fix those leaks in a better way. They've been in Trac for ages, and valgrind is not exactly bleeding-edge these days. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Tue Feb 10 20:51:23 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 20:51:23 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Qt4=3A_more_leaks_=28_R=C3=A9mi_D?= =?utf-8?q?enis-Courmont_=29?= Message-ID: <20090210195123.8A9522F075@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 21:15:09 2009 +0200| [14bdc015ae724f5c77cd5fc75afeb12759478ea8] | committer: R?mi Denis-Courmont Qt4: more leaks > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=14bdc015ae724f5c77cd5fc75afeb12759478ea8 --- modules/gui/qt4/components/interface_widgets.cpp | 5 +++-- modules/gui/qt4/components/interface_widgets.hpp | 2 +- modules/gui/qt4/main_interface.cpp | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/modules/gui/qt4/components/interface_widgets.cpp b/modules/gui/qt4/components/interface_widgets.cpp index 2b6a305..b84f567 100644 --- a/modules/gui/qt4/components/interface_widgets.cpp +++ b/modules/gui/qt4/components/interface_widgets.cpp @@ -280,8 +280,9 @@ void VisualSelector::next() } #endif -SpeedLabel::SpeedLabel( intf_thread_t *_p_intf, const QString text ) - : QLabel( text ), p_intf( _p_intf ) +SpeedLabel::SpeedLabel( intf_thread_t *_p_intf, const QString& text, + QWidget *parent ) + : QLabel( text, parent ), p_intf( _p_intf ) { setToolTip( qtr( "Current playback speed.\nRight click to adjust" ) ); setContextMenuPolicy ( Qt::CustomContextMenu ); diff --git a/modules/gui/qt4/components/interface_widgets.hpp b/modules/gui/qt4/components/interface_widgets.hpp index b3c2ba6..f889d78 100644 --- a/modules/gui/qt4/components/interface_widgets.hpp +++ b/modules/gui/qt4/components/interface_widgets.hpp @@ -156,7 +156,7 @@ class SpeedLabel : public QLabel { Q_OBJECT public: - SpeedLabel( intf_thread_t *, const QString ); + SpeedLabel( intf_thread_t *, const QString&, QWidget * ); protected: virtual void mouseDoubleClickEvent ( QMouseEvent * event ) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index ee799eb..17b3d45 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -316,10 +316,10 @@ inline void MainInterface::createStatusBar() ****************/ /* Widgets Creation*/ TimeLabel *timeLabel = new TimeLabel( p_intf ); - nameLabel = new QLabel; + nameLabel = new QLabel( this ); nameLabel->setTextInteractionFlags( Qt::TextSelectableByMouse | Qt::TextSelectableByKeyboard ); - SpeedLabel *speedLabel = new SpeedLabel( p_intf, "1.00x" ); + SpeedLabel *speedLabel = new SpeedLabel( p_intf, "1.00x", this ); /* Styling those labels */ timeLabel->setFrameStyle( QFrame::Sunken | QFrame::Panel ); From git at videolan.org Tue Feb 10 20:51:23 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 20:51:23 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Qt4_menu_leaks_=28_R=C3=A9mi_Deni?= =?utf-8?q?s-Courmont_=29?= Message-ID: <20090210195123.9A7EA2F08E@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 21:46:14 2009 +0200| [347834f0f1e77f002eee16773da9402a1d342a4b] | committer: R?mi Denis-Courmont Qt4 menu leaks > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=347834f0f1e77f002eee16773da9402a1d342a4b --- modules/gui/qt4/menus.cpp | 72 ++++++++++++++++++++++++++++----------------- modules/gui/qt4/menus.hpp | 12 +++++-- 2 files changed, 53 insertions(+), 31 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 3400027..87bee62 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -289,17 +289,17 @@ void QVLCMenu::createMenuBar( MainInterface *mi, gives the QProcess::destroyed timeout issue on Cleanlooks style with setDesktopAware set to false */ QMenuBar *bar = mi->menuBar(); - BAR_ADD( FileMenu( p_intf ), qtr( "&Media" ) ); + BAR_ADD( FileMenu( p_intf, bar ), qtr( "&Media" ) ); - BAR_DADD( AudioMenu( p_intf, NULL ), qtr( "&Audio" ), 1 ); - BAR_DADD( VideoMenu( p_intf, NULL ), qtr( "&Video" ), 2 ); - BAR_DADD( NavigMenu( p_intf, NULL ), qtr( "P&layback" ), 3 ); + BAR_DADD( AudioMenu( p_intf, bar ), qtr( "&Audio" ), 1 ); + BAR_DADD( VideoMenu( p_intf, bar ), qtr( "&Video" ), 2 ); + BAR_DADD( NavigMenu( p_intf, bar ), qtr( "P&layback" ), 3 ); - BAR_ADD( ToolsMenu( NULL ), qtr( "&Tools" ) ); + BAR_ADD( ToolsMenu( bar ), qtr( "&Tools" ) ); BAR_ADD( ViewMenu( p_intf, NULL, mi, visual_selector_enabled, true ), qtr( "V&iew" ) ); - BAR_ADD( HelpMenu( NULL ), qtr( "&Help" ) ); + BAR_ADD( HelpMenu( bar ), qtr( "&Help" ) ); } #undef BAR_ADD #undef BAR_DADD @@ -308,9 +308,9 @@ void QVLCMenu::createMenuBar( MainInterface *mi, * Media ( File ) Menu * Opening, streaming and quit **/ -QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf ) +QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf, QWidget *parent ) { - QMenu *menu = new QMenu(); + QMenu *menu = new QMenu( parent ); addDPStaticEntry( menu, qtr( "&Open File..." ), ":/file-asym", SLOT( simpleOpenDialog() ), "Ctrl+O" ); @@ -352,13 +352,8 @@ QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf ) } /* Playlist/MediaLibrary Control */ -QMenu *QVLCMenu::ToolsMenu( QMenu *parent ) +QMenu *QVLCMenu::ToolsMenu( QMenu *menu ) { - QMenu *menu; - if( parent == NULL ) - menu = new QMenu(); - else - menu = parent; addDPStaticEntry( menu, qtr( I_MENU_EXT ), ":/settings", SLOT( extendedDialog() ), "Ctrl+E" ); @@ -388,6 +383,11 @@ QMenu *QVLCMenu::ToolsMenu( QMenu *parent ) return menu; } +QMenu *QVLCMenu::ToolsMenu( QWidget *parent ) +{ + return ToolsMenu( new QMenu( parent ) ); +} + /** * View Menu * This menu can be an interface menu but also a right click menu. @@ -398,7 +398,11 @@ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, bool visual_selector_enabled, bool with_intf ) { - QMenu *menu = new QMenu( current ); + QMenu *menu; + if( current ) + menu = new QMenu( current ); + else + menu = new QMenu( mi ); QAction *act; if( mi ) { @@ -407,7 +411,7 @@ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, SLOT( togglePlaylist() ), qtr( "Ctrl+L" ) ); act->setData( true ); } - act = menu->addMenu( SDMenu( p_intf ) ); + act = menu->addMenu( SDMenu( p_intf, menu ) ); act->setData( true ); /*menu->addSeparator(); menu->addAction( qtr( "Undock from Interface" ), mi, @@ -489,8 +493,6 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) aout_instance_t *p_aout; input_thread_t *p_input; - if( !current ) current = new QMenu(); - if( current->isEmpty() ) { ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); @@ -528,6 +530,11 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) return Populate( p_intf, current, varnames, objects ); } +QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QWidget *parent ) +{ + return AudioMenu( p_intf, new QMenu( parent ) ); +} + /** * Main Video Menu * Subtitles are part of Video. @@ -539,8 +546,6 @@ QMenu *QVLCMenu::VideoMenu( intf_thread_t *p_intf, QMenu *current ) vector objects; vector varnames; - if( !current ) current = new QMenu(); - if( current->isEmpty() ) { ACT_ADD( current, "video-es", qtr( "Video &Track" ) ); @@ -583,14 +588,17 @@ QMenu *QVLCMenu::VideoMenu( intf_thread_t *p_intf, QMenu *current ) return Populate( p_intf, current, varnames, objects ); } +QMenu *QVLCMenu::VideoMenu( intf_thread_t *p_intf, QWidget *parent ) +{ + return VideoMenu( p_intf, new QMenu( parent ) ); +} + /** * Navigation Menu * For DVD, MP4, MOV and other chapter based format **/ QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QMenu *menu ) { - if( !menu ) menu = new QMenu(); - if( menu->isEmpty() ) { addDPStaticEntry( menu, qtr( I_MENU_GOTOTIME ),"", @@ -624,12 +632,17 @@ QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QMenu *menu ) return Populate( p_intf, menu, varnames, objects ); } +QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QWidget *parent ) +{ + return NavigMenu( p_intf, new QMenu( parent ) ); +} + /** * Service Discovery SubMenu **/ -QMenu *QVLCMenu::SDMenu( intf_thread_t *p_intf ) +QMenu *QVLCMenu::SDMenu( intf_thread_t *p_intf, QWidget *parent ) { - QMenu *menu = new QMenu(); + QMenu *menu = new QMenu( parent ); menu->setTitle( qtr( I_PL_SD ) ); char **ppsz_longnames; char **ppsz_names = vlc_sd_GetNames( &ppsz_longnames ); @@ -661,12 +674,13 @@ QMenu *QVLCMenu::SDMenu( intf_thread_t *p_intf ) free( ppsz_longnames ); return menu; } + /** * Help/About Menu **/ -QMenu *QVLCMenu::HelpMenu( QMenu *current ) +QMenu *QVLCMenu::HelpMenu( QWidget *parent ) { - QMenu *menu = new QMenu( current ); + QMenu *menu = new QMenu( parent ); addDPStaticEntry( menu, qtr( "&Help..." ) , ":/help", SLOT( helpDialog() ), "F1" ); #ifdef UPDATE_CHECK @@ -994,7 +1008,11 @@ QMenu * QVLCMenu::Populate( intf_thread_t *p_intf, vector & objects ) { QMenu *menu = current; - if( !menu ) menu = new QMenu(); + if( !menu ) + { + msg_Warn( p_intf, "%s leaking a menu", __func__ ); + menu = new QMenu(); + } currentGroup = NULL; diff --git a/modules/gui/qt4/menus.hpp b/modules/gui/qt4/menus.hpp index 93b4dbe..abae25c 100644 --- a/modules/gui/qt4/menus.hpp +++ b/modules/gui/qt4/menus.hpp @@ -100,16 +100,20 @@ public: private: /* All main Menus */ - static QMenu *FileMenu( intf_thread_t * ); - static QMenu *SDMenu( intf_thread_t * ); + static QMenu *FileMenu( intf_thread_t *, QWidget * ); + static QMenu *SDMenu( intf_thread_t *, QWidget * ); static QMenu *ToolsMenu( QMenu * ); + static QMenu *ToolsMenu( QWidget * ); static QMenu *ViewMenu( intf_thread_t *, QMenu *, MainInterface *, bool, bool with = true ); static QMenu *NavigMenu( intf_thread_t *, QMenu * ); + static QMenu *NavigMenu( intf_thread_t *, QWidget * ); static QMenu *VideoMenu( intf_thread_t *, QMenu * ); + static QMenu *VideoMenu( intf_thread_t *, QWidget * ); static QMenu *AudioMenu( intf_thread_t *, QMenu * ); + static QMenu *AudioMenu( intf_thread_t *, QWidget * ); static QMenu *InterfacesMenu( intf_thread_t *p_intf, QMenu * ); - static QMenu *HelpMenu( QMenu * ); + static QMenu *HelpMenu( QWidget * ); /* Popups Menus */ static void PopupMenuStaticEntries( QMenu *menu ); @@ -147,7 +151,7 @@ public: case 3: QVLCMenu::NavigMenu( p_intf, menu ); break; case 4: QVLCMenu::InterfacesMenu( p_intf, menu ); break; } - }; + } private: int id; QMenu *menu; From git at videolan.org Tue Feb 10 20:59:56 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 20:59:56 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_taglib=3A_manualy_backport_5e567c?= =?utf-8?q?cf38689401d366e0479cd8373aa44e6fa6_=28_and_normally_fix_=232280?= =?utf-8?b?KSAoIFLDqW1pIER1cmFmZm9ydCAp?= Message-ID: <20090210195956.7F6012F08A@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Duraffort | Tue Feb 10 20:55:59 2009 +0100| [3b61028e3e8b78173dd542b29aad5c2996055e44] | committer: R?mi Duraffort taglib: manualy backport 5e567ccf38689401d366e0479cd8373aa44e6fa6 (and normally fix #2280) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3b61028e3e8b78173dd542b29aad5c2996055e44 --- modules/meta_engine/taglib.cpp | 23 +++++++++++++++++++++-- 1 files changed, 21 insertions(+), 2 deletions(-) diff --git a/modules/meta_engine/taglib.cpp b/modules/meta_engine/taglib.cpp index e08f5e7..2b39059 100644 --- a/modules/meta_engine/taglib.cpp +++ b/modules/meta_engine/taglib.cpp @@ -1,7 +1,7 @@ /***************************************************************************** * taglib.cpp: Taglib tag parser/writer ***************************************************************************** - * Copyright (C) 2003-2006 the VideoLAN team + * Copyright (C) 2003-2009 the VideoLAN team * $Id$ * * Authors: Cl?ment Stenac @@ -437,6 +437,7 @@ static int WriteMeta( vlc_object_t *p_this ) playlist_t *p_playlist = (playlist_t *)p_this; meta_export_t *p_export = (meta_export_t *)p_playlist->p_private; input_item_t *p_item = p_export->p_item; + FileRef f; if( p_item == NULL ) { @@ -444,7 +445,25 @@ static int WriteMeta( vlc_object_t *p_this ) return VLC_EGENERIC; } - FileRef f( p_export->psz_file ); +#if defined(WIN32) || defined (UNDER_CE) + if(GetVersion() < 0x80000000) + { + wchar_t wpath[MAX_PATH + 1]; + if( !MultiByteToWideChar( CP_UTF8, 0, p_export->psz_file, -1, wpath, MAX_PATH) ) + return VLC_EGENERIC; + wpath[MAX_PATH] = L'\0'; + f = FileRef( wpath ); + } + else + return VLC_EGENERIC; +#else + const char* local_name = ToLocale( p_export->psz_file ); + if( !local_name ) + return VLC_EGENERIC; + f = FileRef( local_name ); + LocaleFree( local_name ); +#endif + if( f.isNull() || !f.tag() || f.file()->readOnly() ) { msg_Err( p_this, "File %s can't be opened for tag writing\n", From git at videolan.org Tue Feb 10 21:27:01 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 21:27:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Qt4_leak_=28_R=C3=A9mi_Denis-Cour?= =?utf-8?q?mont_=29?= Message-ID: <20090210202701.B79CD2F091@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 22:26:54 2009 +0200| [75c5fe13f0856619fbefd056fbec53f63e179a19] | committer: R?mi Denis-Courmont Qt4 leak > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=75c5fe13f0856619fbefd056fbec53f63e179a19 --- modules/gui/qt4/components/interface_widgets.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/interface_widgets.cpp b/modules/gui/qt4/components/interface_widgets.cpp index b84f567..ea3cd80 100644 --- a/modules/gui/qt4/components/interface_widgets.cpp +++ b/modules/gui/qt4/components/interface_widgets.cpp @@ -336,7 +336,7 @@ SpeedControlWidget::SpeedControlWidget( intf_thread_t *_p_i, QWidget *_parent ) sizePolicy.setHorizontalStretch( 0 ); sizePolicy.setVerticalStretch( 0 ); - speedSlider = new QSlider; + speedSlider = new QSlider( this ); speedSlider->setSizePolicy( sizePolicy ); speedSlider->setMaximumSize( QSize( 80, 200 ) ); speedSlider->setOrientation( Qt::Vertical ); From git at videolan.org Tue Feb 10 21:37:54 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 21:37:54 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Qt4_unparented_widgets_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont__=29?= Message-ID: <20090210203754.A5C152F05E@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 10 22:35:02 2009 +0200| [72268285a6ad32f3480ae9339e279952268aa79c] | committer: R?mi Denis-Courmont Qt4 unparented widgets > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=72268285a6ad32f3480ae9339e279952268aa79c --- modules/gui/qt4/components/controller.cpp | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp index f41037c..46ecdbc 100644 --- a/modules/gui/qt4/components/controller.cpp +++ b/modules/gui/qt4/components/controller.cpp @@ -487,7 +487,7 @@ QFrame *AbstractController::telexFrame() telexFrame, setVisible( bool ) ); /* On/Off button */ - QToolButton *telexOn = new QToolButton; + QToolButton *telexOn = new QToolButton( this ); telexFrame->telexOn = telexOn; setupButton( telexOn ); BUTTON_SET_BAR2( telexOn, tv, qtr( "Teletext Activation" ) ); @@ -501,7 +501,7 @@ QFrame *AbstractController::telexFrame() /* Transparency button */ - QToolButton *telexTransparent = new QToolButton; + QToolButton *telexTransparent = new QToolButton( this ); telexFrame->telexTransparent = telexTransparent; setupButton( telexTransparent ); BUTTON_SET_BAR2( telexTransparent, tvtelx, @@ -518,7 +518,7 @@ QFrame *AbstractController::telexFrame() /* Page setting */ - QSpinBox *telexPage = new QSpinBox; + QSpinBox *telexPage = new QSpinBox( this ); telexFrame->telexPage = telexPage; telexPage->setRange( 0, 999 ); telexPage->setValue( 100 ); From hartman at videolan.org Tue Feb 10 21:44:20 2009 From: hartman at videolan.org (Derk-Jan Hartman) Date: Tue, 10 Feb 2009 21:44:20 +0100 Subject: [vlc-devel] [RFC] Plugins removal In-Reply-To: <20090201113950.GB20329@via.ecp.fr> References: <200901312210.17763.rem@videolan.org> <20090201113950.GB20329@via.ecp.fr> Message-ID: <97CFE9F7-BBA3-4FE9-891D-9F17B5DA6F63@videolan.org> On 1 feb 2009, at 12:39, R?mi Duraffort wrote: > Hello, >> Different people (incredibly enough, not _me_) have recently >> suggested >> removing this: >> - CMML: unmaintained, buggy, mostly useless. > I'm one of the guys who would like to remove this plugin because of > the > really buggy implementation. I'm planning to completelly rewrite this > plugin later on (after the release). But for the moment this plugin is > really bad and IMHO can cause security problems. Let's see if andre still reads this email address of him. He might be interested i guess. DJ From git at videolan.org Tue Feb 10 22:57:47 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 22:57:47 +0100 (CET) Subject: [vlc-devel] commit: l10n: Russian update (Roustam Ghizdatov ) Message-ID: <20090210215747.787102F02F@skanda.videolan.org> vlc | branch: 0.9-bugfix | Roustam Ghizdatov | Tue Feb 10 21:57:17 2009 +0000| [59b8a17cde5f93f6170fc52eb2c1e7398d2139ac] | committer: Christophe Mutricy l10n: Russian update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=59b8a17cde5f93f6170fc52eb2c1e7398d2139ac --- po/ru.po | 733 +++++++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 492 insertions(+), 241 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=59b8a17cde5f93f6170fc52eb2c1e7398d2139ac From git at videolan.org Tue Feb 10 23:32:00 2009 From: git at videolan.org (git version control) Date: Tue, 10 Feb 2009 23:32:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_playlist=5Fsearch=3A_=28_R=C3=A9m?= =?utf-8?q?i_Duraffort_=29?= Message-ID: <20090210223200.C58902F028@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Tue Feb 10 13:23:20 2009 +0100| [e4a5bfc074fda60acd494ad0afec43e11c837643] | committer: R?mi Duraffort playlist_search: * use psz_name when an item doesn't have a title * proper locking * little speed up (thanks fenrir for the reviews) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e4a5bfc074fda60acd494ad0afec43e11c837643 --- src/playlist/search.c | 65 +++++++++++++++++++++++++++++++------------------ 1 files changed, 41 insertions(+), 24 deletions(-) diff --git a/src/playlist/search.c b/src/playlist/search.c index c3f661f..45b0c6d 100644 --- a/src/playlist/search.c +++ b/src/playlist/search.c @@ -152,42 +152,59 @@ static void playlist_LiveSearchClean( playlist_item_t *p_root ) static bool playlist_LiveSearchUpdateInternal( playlist_item_t *p_root, const char *psz_string ) { - int i; - bool b_match = false; - for( i = 0 ; i < p_root->i_children ; i ++ ) - { + int i; + bool b_match = false; + for( i = 0 ; i < p_root->i_children ; i ++ ) + { + bool b_enable = false; playlist_item_t *p_item = p_root->pp_children[i]; - if( p_item->i_children > -1 ) + // Go recurssively if their is some children + if( p_item->i_children >= 0 && + playlist_LiveSearchUpdateInternal( p_item, psz_string ) ) { - if( playlist_LiveSearchUpdateInternal( p_item, psz_string ) || - strcasestr( p_item->p_input->psz_name, psz_string ) ) - { - p_item->i_flags &= ~PLAYLIST_DBL_FLAG; - b_match = true; - } - else - { - p_item->i_flags |= PLAYLIST_DBL_FLAG; - } + b_enable = true; } - else + + if( !b_enable ) { - if( input_item_MetaMatch( p_item->p_input, vlc_meta_Title, psz_string ) || - input_item_MetaMatch( p_item->p_input, vlc_meta_Album, psz_string ) || - input_item_MetaMatch( p_item->p_input, vlc_meta_Artist, psz_string ) ) + vlc_mutex_lock( &p_item->p_input->lock ); + // Do we have some meta ? + if( p_item->p_input->p_meta ) { - p_item->i_flags &= ~PLAYLIST_DBL_FLAG; - b_match = true; + // Use Title or fall back to psz_name + const char *psz_title = vlc_meta_Get( p_item->p_input->p_meta, vlc_meta_Title ); + if( !psz_title ) + psz_title = p_item->p_input->psz_name; + const char *psz_album = vlc_meta_Get( p_item->p_input->p_meta, vlc_meta_Album ); + const char *psz_artist = vlc_meta_Get( p_item->p_input->p_meta, vlc_meta_Artist ); + b_enable = ( psz_title && strcasestr( psz_title, psz_string ) ) || + ( psz_album && strcasestr( psz_album, psz_string ) ) || + ( psz_artist && strcasestr( psz_artist, psz_string ) ); } else - { - p_item->i_flags |= PLAYLIST_DBL_FLAG; - } + b_enable = p_item->p_input->psz_name && strcasestr( p_item->p_input->psz_name, psz_string ); + vlc_mutex_unlock( &p_item->p_input->lock ); } + + if( b_enable ) + p_item->i_flags &= ~PLAYLIST_DBL_FLAG; + else + p_item->i_flags |= PLAYLIST_DBL_FLAG; + + b_match |= b_enable; } return b_match; } + + +/** + * Launch the recursive search in the playlist + * @param p_playlist: the playlist + * @param p_root: the current root item + * @param psz_string: the string to find + * @return VLC_SUCCESS + */ int playlist_LiveSearchUpdate( playlist_t *p_playlist, playlist_item_t *p_root, const char *psz_string ) { From git at videolan.org Wed Feb 11 00:51:55 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 00:51:55 +0100 (CET) Subject: [vlc-devel] commit: Mozilla SDK libxul 1.9.1 - preliminary support (Nicolas Chauvet ( kwizart ) Message-ID: <20090210235155.4347B2EFEC@skanda.videolan.org> vlc | branch: master | Nicolas Chauvet (kwizart | Tue Jan 13 19:32:36 2009 +0100| [ba41cc1ad7ff8d9e0584546c72a2d98447e4766b] | committer: Christophe Mutricy Mozilla SDK libxul 1.9.1 - preliminary support According to https://bugzilla.mozilla.org/show_bug.cgi?id=455458 npupp.h has been renamed to npfunctions.h with libxul 1.9.1 Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ba41cc1ad7ff8d9e0584546c72a2d98447e4766b --- configure.ac | 1 + projects/mozilla/support/npmac.cpp | 6 ++++++ projects/mozilla/support/npunix.c | 6 ++++++ projects/mozilla/support/npwin.cpp | 4 ++++ 4 files changed, 17 insertions(+), 0 deletions(-) diff --git a/configure.ac b/configure.ac index 319677f..e70c83e 100644 --- a/configure.ac +++ b/configure.ac @@ -5563,6 +5563,7 @@ then AS_IF( [test $found = 1],[ CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}" MOZILLA_REQUIRED_HEADERS=1 + AC_CHECK_HEADERS([npfunctions.h]) AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0) AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0, [#if HAVE_NPAPI_H diff --git a/projects/mozilla/support/npmac.cpp b/projects/mozilla/support/npmac.cpp index ccc3945..d5901bf 100644 --- a/projects/mozilla/support/npmac.cpp +++ b/projects/mozilla/support/npmac.cpp @@ -4,6 +4,8 @@ // //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +#include "config.h" + #include #include @@ -54,7 +56,11 @@ #undef XP_UNIX #endif +#ifdef HAVE_NPFUNCTIONS_H +#include "npfunctions.h" +#else #include "npupp.h" +#endif #ifdef __MWERKS__ #ifndef powerc diff --git a/projects/mozilla/support/npunix.c b/projects/mozilla/support/npunix.c index afeed1a..319c0e1 100644 --- a/projects/mozilla/support/npunix.c +++ b/projects/mozilla/support/npunix.c @@ -38,12 +38,18 @@ *---------------------------------------------------------------------- */ +#include "config.h" + #define XP_UNIX 1 #define OJI 1 #include #include +#ifdef HAVE_NPFUNCTIONS_H +#include +#else #include +#endif /* * Define PLUGIN_TRACE to have the wrapper functions print diff --git a/projects/mozilla/support/npwin.cpp b/projects/mozilla/support/npwin.cpp index c277f84..d9a0a9c 100644 --- a/projects/mozilla/support/npwin.cpp +++ b/projects/mozilla/support/npwin.cpp @@ -42,7 +42,11 @@ #endif #include "npapi.h" +#ifdef HAVE_NPFUNCTIONS_H +#include "npfunctions.h" +#else #include "npupp.h" +#endif //\\// DEFINE #define NP_EXPORT From xtophe at chewa.net Wed Feb 11 00:53:21 2009 From: xtophe at chewa.net (Christophe Mutricy) Date: Wed, 11 Feb 2009 00:53:21 +0100 Subject: [vlc-devel] [PATCH] Mozilla SDK libxul 1.9.1 - preliminary support In-Reply-To: References: <1231871556-32713-1-git-send-email-kwizart@gmail.com> Message-ID: <20090210235321.GF23228@chewa.net> On Fri, Jan 16, 09 at 17:22 +0100, Nicolas Chauvet wrote: > 2009/1/13 Nicolas Chauvet : > > 2009/1/13 Nicolas Chauvet (kwizart) : > >> According to https://bugzilla.mozilla.org/show_bug.cgi?id=455458 > >> npupp.h has been renamed to npfunctions.h with libxul 1.9.1 > >> --- > >> configure.ac | 1 + > >> projects/mozilla/support/npmac.cpp | 4 ++++ > >> projects/mozilla/support/npunix.c | 4 ++++ > >> projects/mozilla/support/npwin.cpp | 4 ++++ > >> 4 files changed, 13 insertions(+), 0 deletions(-) > > > > Please note that this patch wasn't tested at this time. > > (neither from 0.9-bugfix which it was made against nor from 1.0.0) > > Other tweak might be needed. > > There is another patch needed for building against libxul 1.9.1. > I don't know why only npwin.cpp had hit, but I expect it was already > needed previously. Squashed and merged. Thanks -- Xtophe From jb at videolan.org Wed Feb 11 01:46:01 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 11 Feb 2009 01:46:01 +0100 Subject: [vlc-devel] Tag 0.9.9-rc : Jean-Baptiste Kempf : VLC 0.9.9-rc, release candidate for the VLC 0.9.9 In-Reply-To: <20090209190709.6BB4E2EFCE@skanda.videolan.org> References: <20090209190709.6BB4E2EFCE@skanda.videolan.org> Message-ID: <20090211004601.GA13202@videolan.org> On Mon, Feb 09, 2009 at 08:07:09PM +0100, git version control wrote : > [vlc] [branch: refs/tags/0.9.9-rc] ftp://ftp.videolan.org/pub/testing/vlc-0.9.9-rc/vlc-0.9.9-rc.tar.bz2 This is a RC, not a Release. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Wed Feb 11 01:58:53 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 01:58:53 +0100 (CET) Subject: [vlc-devel] commit: Qt menus: SD go in the media menu as on Mac. (Jean-Baptiste Kempf ) Message-ID: <20090211005853.A4E482EDA1@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 01:57:50 2009 +0100| [197578bbe674572bbe3952bf2143bd49470e87da] | committer: Jean-Baptiste Kempf Qt menus: SD go in the media menu as on Mac. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=197578bbe674572bbe3952bf2143bd49470e87da --- modules/gui/qt4/menus.cpp | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 87bee62..d688b50 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -184,8 +184,8 @@ static int InputAutoMenuBuilder( input_thread_t *p_object, PUSH_VAR( "bookmark" ); PUSH_VAR( "title" ); PUSH_VAR( "chapter" ); - PUSH_VAR( "program" ); PUSH_VAR( "navigation" ); + PUSH_VAR( "program" ); PUSH_VAR( "dvd_menus" ); return VLC_SUCCESS; } @@ -334,6 +334,8 @@ QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf, QWidget *parent ) updateRecents( p_intf ); menu->addMenu( recentsMenu ); menu->addSeparator(); + menu->addMenu( SDMenu( p_intf, menu ) ); + menu->addSeparator(); addDPStaticEntry( menu, qtr( I_PL_SAVE ), "", SLOT( saveAPlaylist() ), "Ctrl+Y" ); @@ -411,8 +413,6 @@ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, SLOT( togglePlaylist() ), qtr( "Ctrl+L" ) ); act->setData( true ); } - act = menu->addMenu( SDMenu( p_intf, menu ) ); - act->setData( true ); /*menu->addSeparator(); menu->addAction( qtr( "Undock from Interface" ), mi, SLOT( undockPlaylist() ), qtr( "Ctrl+U" ) );*/ @@ -608,8 +608,8 @@ QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QMenu *menu ) ACT_ADD( menu, "bookmark", qtr( "&Bookmarks" ) ); ACT_ADD( menu, "title", qtr( "T&itle" ) ); ACT_ADD( menu, "chapter", qtr( "&Chapter" ) ); - ACT_ADD( menu, "program", qtr( "&Program" ) ); ACT_ADD( menu, "navigation", qtr( "&Navigation" ) ); + ACT_ADD( menu, "program", qtr( "&Program" ) ); } input_thread_t *p_object; From git at videolan.org Wed Feb 11 02:02:30 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 02:02:30 +0100 (CET) Subject: [vlc-devel] commit: Correct NEWS and naming of 0.9.9-rc (Jean-Baptiste Kempf ) Message-ID: <20090211010230.0BF6A2EFC5@skanda.videolan.org> vlc | branch: 0.9-bugfix | Jean-Baptiste Kempf | Wed Feb 11 02:01:08 2009 +0100| [726f824c2d2864ccf61be371aee57ddce8d64fb2] | committer: Jean-Baptiste Kempf Correct NEWS and naming of 0.9.9-rc > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=726f824c2d2864ccf61be371aee57ddce8d64fb2 --- NEWS | 4 ++-- configure.ac | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/NEWS b/NEWS index 6333111..115c7c8 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,5 @@ -Changes between 0.9.8a and 0.9.9 (not-yet-released): ----------------------------------------------------- +Changes between 0.9.8a and 0.9.9-rc: +------------------------------------ Decoders: * Experimental new decoder for Real Video 3.0 & 4.0 diff --git a/configure.ac b/configure.ac index 8d15df6..96df16a 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ dnl Autoconf settings for vlc -AC_INIT(vlc, 0.9.9) +AC_INIT(vlc, 0.9.9-rc) VERSION_MAJOR="0" VERSION_MINOR="9" VERSION_REVISION="9" From jb at videolan.org Wed Feb 11 02:05:49 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 11 Feb 2009 02:05:49 +0100 Subject: [vlc-devel] commit: Release Candidate for 0.9.9 (Jean-Baptiste Kempf ) In-Reply-To: <49909CF1.5010102@videolan.org> References: <20090209190508.DAABC2EF93@skanda.videolan.org> <499092E8.7060203@videolan.org> <20090209204913.GB3562@videolan.org> <49909CF1.5010102@videolan.org> Message-ID: <20090211010549.GA16944@videolan.org> On Mon, Feb 09, 2009 at 10:15:29PM +0100, Jean-Paul Saman wrote : > Jean-Baptiste Kempf wrote: > > On Mon, Feb 09, 2009 at 09:32:40PM +0100, Jean-Paul Saman wrote : > >> Make sure to announce release candidates and releases on Freshmeat too. > > > > OK, but what is the policy? > > > > All rc? pre? > > > > Adding to testing? Adding to stable? > > > > Best Regards, > > > Sam, maybe you remember how this was done previously? Since no answer on that topic, I announced it on the testing branch/category and hidding it from frontpage, since it is a RC. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Wed Feb 11 02:10:14 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 02:10:14 +0100 (CET) Subject: [vlc-devel] commit: Sort by alphabetical order the extensions. (Anthony Loiseau ) Message-ID: <20090211011014.EEC1F2F02C@skanda.videolan.org> vlc | branch: master | Anthony Loiseau | Wed Feb 11 02:09:26 2009 +0100| [63dcebf71fe8e31a8968b871217b85df18f5b680] | committer: Jean-Baptiste Kempf Sort by alphabetical order the extensions. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=63dcebf71fe8e31a8968b871217b85df18f5b680 --- include/vlc_interface.h | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff --git a/include/vlc_interface.h b/include/vlc_interface.h index ecd43a4..7e85503 100644 --- a/include/vlc_interface.h +++ b/include/vlc_interface.h @@ -175,12 +175,11 @@ typedef enum vlc_dialog { "*.mod;*.mp1;*.mp2;*.mp3;*.oga;*.ogg;*.oma;*.spx;" \ "*.wav;*.wma;*.xm" -#define EXTENSIONS_VIDEO "*.asf;*.avi;*.divx;*.dv;*.flv;*.gxf;*.m1v;*.m2v;" \ +#define EXTENSIONS_VIDEO "*.asf;*.avi;*.divx;*.dv;*.flv;*.gxf;*.iso;*.m1v;*.m2v;" \ "*.m2t;*.m2ts;*.m4v;*.mkv;*.mov;*.mp2;*.mp4;*.mpeg;*.mpeg1;" \ "*.mpeg2;*.mpeg4;*.mpg;*.mts;*.mxf;*.nuv;" \ "*.ogg;*.ogm;*.ogv;*.ogx;" \ - "*.ps;*.rm;*.rmvb;*.ts;*.vob;*.wmv;" \ - "*.iso" + "*.ps;*.rm;*.rmvb;*.ts;*.vob;*.wmv;" #define EXTENSIONS_PLAYLIST "*.asx;*.b4s;*.m3u;*.pls;*.vlc;*.xspf" From jb at videolan.org Wed Feb 11 02:11:09 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 11 Feb 2009 02:11:09 +0100 Subject: [vlc-devel] commit: Add .iso to the video files extensions (untested) (Anthony Loiseau ) In-Reply-To: <1234286509.4331.43.camel@localhost.localdomain> References: <20090210163549.4C3182EFDE@skanda.videolan.org> <20090210163654.GA15341@videolan.org> <1234285037.4331.37.camel@localhost.localdomain> <1234286509.4331.43.camel@localhost.localdomain> Message-ID: <20090211011109.GA17667@videolan.org> On Tue, Feb 10, 2009 at 06:21:49PM +0100, Anthony Loiseau wrote : > Attached is the alphabetical-sorted version if you want to keep it Applied. Thanks. Btw, what is the policy about the minors filetypes like s3m or mod? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Wed Feb 11 02:13:44 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 11 Feb 2009 02:13:44 +0100 Subject: [vlc-devel] [PATCH] realvideo bug fix and document In-Reply-To: <20090205193138.GA21011@via.ecp.fr> References: <1233727120-5510-1-git-send-email-silencewang@msn.com> <20090205193138.GA21011@via.ecp.fr> Message-ID: <20090211011344.GB17667@videolan.org> Wang, any updates? On Thu, Feb 05, 2009 at 08:31:38PM +0100, Laurent Aimar wrote : > Hi, > > It seems to me that your patch should be splitted in two: > 1. Correction to make the plugin work after the demuxer changes > 2. The dll/so path changes. > > I would prefer it as it is easier to review/comments and then eases > regression searches. > > (Some of the following comments apply to the code that you may not have > been responsible for.) > > > diff --git a/modules/codec/realvideo.c b/modules/codec/realvideo.c > > index 6e5c512..92e9da1 100644 > > --- a/modules/codec/realvideo.c > > +++ b/modules/codec/realvideo.c > > @@ -31,6 +31,8 @@ > > #include > > #include > > > > +#include > > + > > #ifdef LOADER > > /* Need the w32dll loader from mplayer */ > > # include > > @@ -89,9 +91,9 @@ struct rv_init_t > > short h; > > short unk3; > > int unk2; > > - unsigned int * subformat; > > + int subformat; > > int unk5; > > - unsigned int * format; > > + int format; > > } rv_init_t; > > > > struct decoder_sys_t > > @@ -241,19 +243,85 @@ static int InitVideo(decoder_t *p_dec) > > init_data.h = p_dec->fmt_in.video.i_height ; > > init_data.unk3 = 0; > > init_data.unk2 = 0; > > - init_data.subformat = (unsigned int*)p_vide[0]; > > + init_data.subformat = ntohl( p_vide[0] ); > > init_data.unk5 = 1; > > - init_data.format = (unsigned int*)p_vide[1]; > > + init_data.format = ntohl( p_vide[1]); > > Using GetDWBE would be better and would avoid vlc_network.h inclusion. > You have to use it directky on p_dec->fmt_in.p_extra and compute yourself the > offset (it would also remove the implicit ugly unsigned int * cast). > > > /* first try to load linux dlls, if failed and we're supporting win32 dlls, > > then try to load the windows ones */ > > - bool b_so_opened = false; > > + > > + p_sys->rv_handle = NULL; > > > > #ifdef WIN32 > > - g_decode_path="plugins\\drv43260.dll"; > > > > - if( (p_sys->rv_handle = load_syms(p_dec, g_decode_path)) ) > > - b_so_opened = true; > > + const char psz_paths[MAX_PATH*3] ; > The const should be removed as you modify it. > Now using an array would be really better, like > char ppsz_path[3][MAX_PATH+1] > as it would simplify a lot the code. > > > + { > > + HKEY h_key; > > + DWORD i_type, i_data = MAX_PATH + 1; > > > + char psz_codecs[MAX_PATH+1]; > > + char * p_data ; > > + char * p_end = psz_paths; > With char ppsz_path[3][MAX_PATH+1] they can be removed I think. > > + > > + p_data = psz_codecs; > > + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, > > + _T("Software\\RealNetworks\\Preferences\\DT_Codecs"), > > + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) > > + { > > + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, > > + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS > > + && i_type == REG_SZ ) > > + { > > + int i_len = strlen( p_data ); > > + if ( i_len && p_data[i_len-1] == '\\' ) > > + p_data[i_len - 1] = '\0'; > > + memcpy( p_end, p_data, strlen( p_data) + 1 ); > > + p_end += strlen( p_data ) + 1; > > + } > > + RegCloseKey( h_key ); > > + } > > + > > + p_data = psz_codecs; > > + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, > > + _T("Helix\\HelixSDK\\10.0\\Preferences\\DT_Codecs"), > > + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) > > + { > > + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, > > + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS > > + && i_type == REG_SZ ) > > + { > > + int i_len = strlen( p_data ); > > + if ( i_len && p_data[i_len-1] == '\\' ) > > + p_data[i_len - 1] = '\0'; > > + memcpy( p_end, p_data, strlen( p_data) + 1 ); > > + p_end += strlen( p_data ) + 1; > > + } > > + RegCloseKey( h_key ); > > + } > > + > > + memcpy( p_end, ".\0codecs\0plugins\0\0\0", 20 ); > > + } > > + > > + for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) > > + { > > + if( asprintf( &g_decode_path, "%s/drv4.dll", psz_paths + i ) != -1 ) > > + { > > + p_sys->rv_handle = load_syms(p_dec, g_decode_path); > > + free( g_decode_path ); > > + } > > + if( p_sys->rv_handle ) > > + break; > > + > > + if( asprintf( &g_decode_path, "%s/drv43260.dll", psz_paths + i ) != -1 ) > > + { > > + p_sys->rv_handle = load_syms(p_dec, g_decode_path); > > + free( g_decode_path ); > > + } > > + if( p_sys->rv_handle ) > > + break; > > + > > + /*msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path);*/ > > + } > > #else > > static const char psz_paths[] = > > { > > @@ -272,7 +340,10 @@ static int InitVideo(decoder_t *p_dec) > > "/usr/lib64/RealPlayer10/codecs\0" > > "/usr/lib64/RealPlayer10GOLD/codecs\0" > > "/usr/local/lib/codecs\0" > > - "\0" > > + ".\0" > > + "codecs\0" > > + "plugins\0" > > + "\0\0" > > }; > Same here (array). > > > > for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) > > @@ -283,10 +354,7 @@ static int InitVideo(decoder_t *p_dec) > > free( g_decode_path ); > > } > > if( p_sys->rv_handle ) > > - { > > - b_so_opened = true; > > break; > > - } > > > > if( asprintf( &g_decode_path, "%s/drv3.so.6.0", psz_paths + i ) != -1 ) > > { > > @@ -294,16 +362,13 @@ static int InitVideo(decoder_t *p_dec) > > free( g_decode_path ); > > } > > if( p_sys->rv_handle ) > > - { > > - b_so_opened = true; > > break; > > - } > > > > - msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); > > + /*msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path);*/ > > } > > #endif > > > > - if(!b_so_opened ) > > + if( p_sys->rv_handle == NULL ) > > { > > msg_Err( p_dec, "Cannot any real decoder library" ); > > free( p_sys ); > > @@ -321,24 +386,27 @@ static int InitVideo(decoder_t *p_dec) > > result=(*rvyuv_init)(&init_data, &p_sys->handle); > > if (result) > > { > > - msg_Err( p_dec, "Cannot Init real decoder library: %s", g_decode_path); > > + msg_Err( p_dec, "Cannot Init real decoder, error code: %X", result ); > > free( p_sys ); > > return VLC_EGENERIC; > > } > > > > + msg_Dbg( p_dec, "codec id: 0x%8X subid: 0x%8X\n", ntohl(p_vide[1]), ntohl(p_vide[0]) ); > > + > > /* setup rv30 codec (codec sub-type and image dimensions): */ > > /*if ( p_dec->fmt_in.i_codec == VLC_FOURCC('R','V','3','0') )*/ > > - if (p_vide[1]>=0x20200002) > > + if ( ntohl( p_vide[1])>=0x20200002) > Why not storing the ntohl( p_vide[1]) (same with p_vide[0]) values in a local variables ? > > > { > > - int i, cmsg_cnt; > > + int cmsg_cnt; > > + unsigned char * p_extrahdr = (unsigned char *) p_vide ; > uint8_t > > > uint32_t cmsg24[16]={p_dec->fmt_in.video.i_width,p_dec->fmt_in.video.i_height}; > > - cmsg_data_t cmsg_data={0x24,1+(p_vide[1]&7), &cmsg24[0]}; > > - cmsg_cnt = (p_vide[1]&7)*2; > > + cmsg_data_t cmsg_data={0x24,1+(p_extrahdr[1]&7), &cmsg24[0]}; > > + cmsg_cnt = (p_extrahdr[1]&7)*2; > > if (i_vide - 8 < cmsg_cnt) { > > cmsg_cnt = i_vide - 8; > > } > > - for (i = 0; i < cmsg_cnt; i++) > > - cmsg24[2+i] = p_vide[8+i]*4; > > + for (int i = 0; i < cmsg_cnt; i++) > > + cmsg24[2+i] = p_extrahdr[8+i]*4; > > #ifdef WIN32 > > if (dll_type == 1) > > (*wrvyuv_custom_message)(&cmsg_data,p_sys->handle); > > @@ -349,7 +417,7 @@ static int InitVideo(decoder_t *p_dec) > > /* > > es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','V','1','2' )); > > es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','U','Y','2' )); > > - */ > > + */ > > es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'I', '4', '2', '0')); > > > > p_dec->fmt_out.video.i_width = p_dec->fmt_in.video.i_width; > > @@ -467,25 +535,20 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) > > if ( p_pic ) > > { > > unsigned int transform_out[5]; > > - dp_hdr_t dp_hdr; > > transform_in_t transform_in; > > - uint32_t pkg_len = ((uint32_t*)p_block->p_buffer)[0]; > > - unsigned char* dp_data=((unsigned char*)p_block->p_buffer)+8; > > - uint32_t* extra=(uint32_t*)(((char*)p_block->p_buffer)+8+pkg_len); > > - uint32_t img_size; > > - > > > > - dp_hdr.len = pkg_len; > > - dp_hdr.chunktab = 8 + pkg_len; > > - dp_hdr.chunks = ((uint32_t*)p_block->p_buffer)[1]-1; > > - dp_hdr.timestamp = i_pts; > > + uint8_t i_chunks = p_block->p_buffer[0]; > > + uint32_t pkg_len = p_block->i_buffer - 2*4*(i_chunks + 1) - 1; > i_ prefix. > > > + unsigned char* dp_data=p_block->p_buffer + 2*4*(i_chunks+1) + 1; > uint8_t > > > + uint32_t* extra=(uint32_t*)(p_block->p_buffer + 1); > pi_ prefix. > > + uint32_t img_size; > > > > memset(&transform_in, 0, sizeof(transform_in_t)); > > > > - transform_in.len = dp_hdr.len; > > + transform_in.len = pkg_len; > > transform_in.extra = extra; > You can simply avoid the need of a local extra variable. > > > - transform_in.chunks = dp_hdr.chunks; > > - transform_in.timestamp = dp_hdr.timestamp; > > + transform_in.chunks = i_chunks; > > + transform_in.timestamp = i_pts; > > > > memset (p_sys->plane, 0, p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height *3/2 ); > > > > @@ -496,17 +559,7 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) > > #endif > > result=(*rvyuv_transform)(dp_data, p_sys->plane, &transform_in, transform_out, p_sys->handle); > > > > - /* msg_Warn(p_dec, "Real Size %d X %d", transform_out[3], > > - transform_out[4]); */ > > - /* some bug rm file will print the messages : > > - [00000551] realvideo decoder warning: Real Size 320 X 240 > > - [00000551] realvideo decoder warning: Real Size 480 X 272 > > - [00000551] realvideo decoder warning: Real Size 320 X 240 > > - [00000551] realvideo decoder warning: Real Size 320 X 240 > > - ... > > - so it needs fixing! > > - */ > > - if ( p_sys->inited == 0 ) > > + if ( result == 0 && p_sys->inited == 0 ) > > { > > /* fix and get the correct image size! */ > > if ( p_dec->fmt_in.video.i_width != transform_out[3] > > @@ -540,16 +593,19 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) > > p_sys->inited = 1; > > } > > > > - img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; > > - memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); > > - memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); > > - memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); > > - p_pic->date = i_pts ; > > + if ( result == 0 ) > > + { > > + img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; > > + memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); > > + memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); > > + memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); > > + p_pic->date = i_pts ; > Using vlc_memcpy here would probably be faster. > > > > > /* real video frame is small( frame and frame's time-shift is short), > > so it will become late picture easier (when render-time changed)and > > droped by video-output.*/ > > - p_pic->b_force = 1; > > + p_pic->b_force = 1; > Using true is prefered. > > + } > > } > > > > vlc_mutex_unlock( &rm_mutex ); > > Regards, > > -- > fenrir > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel -- Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Wed Feb 11 03:06:11 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 03:06:11 +0100 (CET) Subject: [vlc-devel] commit: Qt: remove small leaks in menus.hpp (Jean-Baptiste Kempf ) Message-ID: <20090211020611.C84112ED4B@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 03:05:56 2009 +0100| [4ff01dbb13277b42255b0d75fed83691faf3276f] | committer: Jean-Baptiste Kempf Qt: remove small leaks in menus.hpp > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4ff01dbb13277b42255b0d75fed83691faf3276f --- modules/gui/qt4/menus.hpp | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/menus.hpp b/modules/gui/qt4/menus.hpp index abae25c..8741e9e 100644 --- a/modules/gui/qt4/menus.hpp +++ b/modules/gui/qt4/menus.hpp @@ -141,7 +141,9 @@ class MenuFunc : public QObject Q_OBJECT public: - MenuFunc( QMenu *_menu, int _id ) { menu = _menu; id = _id; }; + MenuFunc( QMenu *_menu, int _id ) : QObject( (QObject *)_menu ), + menu( _menu ), id( _id ){} + void doFunc( intf_thread_t *p_intf) { switch( id ) From git at videolan.org Wed Feb 11 04:17:08 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 04:17:08 +0100 (CET) Subject: [vlc-devel] commit: Qt: force the deletion that doesn't seem to happen correctly ( Jean-Baptiste Kempf ) Message-ID: <20090211031708.A9F902F02C@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 04:00:53 2009 +0100| [2a94c4bbefd6cc673ec4bb50c1aa8d0d16497269] | committer: Jean-Baptiste Kempf Qt: force the deletion that doesn't seem to happen correctly > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2a94c4bbefd6cc673ec4bb50c1aa8d0d16497269 --- modules/gui/qt4/components/interface_widgets.cpp | 6 +++++- modules/gui/qt4/components/interface_widgets.hpp | 1 + 2 files changed, 6 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/interface_widgets.cpp b/modules/gui/qt4/components/interface_widgets.cpp index ea3cd80..a57cae1 100644 --- a/modules/gui/qt4/components/interface_widgets.cpp +++ b/modules/gui/qt4/components/interface_widgets.cpp @@ -306,7 +306,11 @@ SpeedLabel::SpeedLabel( intf_thread_t *_p_intf, const QString& text, CONNECT( THEMIM, inputChanged( input_thread_t * ), speedControl, activateOnState() ); } - +SpeedLabel::~SpeedLabel() +{ + delete speedControl; + delete speedControlMenu; +} /**************************************************************************** * Small right-click menu for rate control ****************************************************************************/ diff --git a/modules/gui/qt4/components/interface_widgets.hpp b/modules/gui/qt4/components/interface_widgets.hpp index f889d78..206c579 100644 --- a/modules/gui/qt4/components/interface_widgets.hpp +++ b/modules/gui/qt4/components/interface_widgets.hpp @@ -157,6 +157,7 @@ class SpeedLabel : public QLabel Q_OBJECT public: SpeedLabel( intf_thread_t *, const QString&, QWidget * ); + virtual ~SpeedLabel(); protected: virtual void mouseDoubleClickEvent ( QMouseEvent * event ) From git at videolan.org Wed Feb 11 04:17:09 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 04:17:09 +0100 (CET) Subject: [vlc-devel] commit: Qt: simplify and solve a leak and make a previous commit unecessary . (Jean-Baptiste Kempf ) Message-ID: <20090211031709.126302F052@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 04:01:24 2009 +0100| [ad55dcbc133dc6e494f54be0c02e02c6bc2eaa78] | committer: Jean-Baptiste Kempf Qt: simplify and solve a leak and make a previous commit unecessary. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ad55dcbc133dc6e494f54be0c02e02c6bc2eaa78 --- modules/gui/qt4/components/controller.cpp | 16 +++++++--------- modules/gui/qt4/components/controller_widget.cpp | 7 ------- modules/gui/qt4/components/controller_widget.hpp | 16 ---------------- 3 files changed, 7 insertions(+), 32 deletions(-) diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp index 46ecdbc..39aaec6 100644 --- a/modules/gui/qt4/components/controller.cpp +++ b/modules/gui/qt4/components/controller.cpp @@ -480,15 +480,14 @@ QFrame *AbstractController::telexFrame() /** * Telextext QFrame **/ - TeletextController *telexFrame = new TeletextController( this ); + QFrame *telexFrame = new QFrame; QHBoxLayout *telexLayout = new QHBoxLayout( telexFrame ); telexLayout->setSpacing( 0 ); telexLayout->setMargin( 0 ); CONNECT( THEMIM->getIM(), teletextPossible( bool ), telexFrame, setVisible( bool ) ); /* On/Off button */ - QToolButton *telexOn = new QToolButton( this ); - telexFrame->telexOn = telexOn; + QToolButton *telexOn = new QToolButton; setupButton( telexOn ); BUTTON_SET_BAR2( telexOn, tv, qtr( "Teletext Activation" ) ); telexLayout->addWidget( telexOn ); @@ -496,13 +495,10 @@ QFrame *AbstractController::telexFrame() /* Teletext Activation and set */ CONNECT( telexOn, clicked( bool ), THEMIM->getIM(), activateTeletext( bool ) ); - CONNECT( THEMIM->getIM(), teletextActivated( bool ), - telexFrame, enableTeletextButtons( bool ) ); /* Transparency button */ - QToolButton *telexTransparent = new QToolButton( this ); - telexFrame->telexTransparent = telexTransparent; + QToolButton *telexTransparent = new QToolButton; setupButton( telexTransparent ); BUTTON_SET_BAR2( telexTransparent, tvtelx, qtr( "Toggle Transparency " ) ); @@ -518,8 +514,7 @@ QFrame *AbstractController::telexFrame() /* Page setting */ - QSpinBox *telexPage = new QSpinBox( this ); - telexFrame->telexPage = telexPage; + QSpinBox *telexPage = new QSpinBox( telexFrame ); telexPage->setRange( 0, 999 ); telexPage->setValue( 100 ); telexPage->setAccelerated( true ); @@ -535,6 +530,9 @@ QFrame *AbstractController::telexFrame() CONNECT( THEMIM->getIM(), newTelexPageSet( int ), telexPage, setValue( int ) ); + CONNECT( THEMIM->getIM(), teletextActivated( bool ), telexPage, setEnabled( bool ) ); + CONNECT( THEMIM->getIM(), teletextActivated( bool ), telexTransparent, setEnabled( bool ) ); + CONNECT( THEMIM->getIM(), teletextActivated( bool ), telexOn, setChecked( bool ) ); return telexFrame; } #undef CONNECT_MAP diff --git a/modules/gui/qt4/components/controller_widget.cpp b/modules/gui/qt4/components/controller_widget.cpp index 31f0063..4b95784 100644 --- a/modules/gui/qt4/components/controller_widget.cpp +++ b/modules/gui/qt4/components/controller_widget.cpp @@ -188,13 +188,6 @@ void SoundWidget::updateVolume() } } -void TeletextController::enableTeletextButtons( bool b_enabled ) -{ - telexOn->setChecked( b_enabled ); - telexTransparent->setEnabled( b_enabled ); - telexPage->setEnabled( b_enabled ); -} - void PlayButton::updateButton( bool b_playing ) { setIcon( b_playing ? QIcon( ":/pause_b" ) : QIcon( ":/play_b" ) ); diff --git a/modules/gui/qt4/components/controller_widget.hpp b/modules/gui/qt4/components/controller_widget.hpp index 3bb7e49..4a7c768 100644 --- a/modules/gui/qt4/components/controller_widget.hpp +++ b/modules/gui/qt4/components/controller_widget.hpp @@ -66,22 +66,6 @@ private slots: void setIcons( bool, bool ); }; -class TeletextController : public QFrame -{ - Q_OBJECT - friend class AbstractController; - -public: - TeletextController( QWidget *parent ) : QFrame( parent ) { } - -private: - QToolButton *telexTransparent, *telexOn; - QSpinBox *telexPage; - -private slots: - void enableTeletextButtons( bool ); -}; - #define VOLUME_MAX 200 class VolumeClickHandler; From git at videolan.org Wed Feb 11 04:17:09 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 04:17:09 +0100 (CET) Subject: [vlc-devel] commit: Revert "FSC memory leaks" (Jean-Baptiste Kempf ) Message-ID: <20090211031709.270FF2F06A@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 04:06:48 2009 +0100| [69a7b4d24e210b246595a54b19ccd139d4f2d6b3] | committer: Jean-Baptiste Kempf Revert "FSC memory leaks" This reverts commit 1463e7cbbc437f8e7b4ab246861ae55ddadeb763. Conflicts: modules/gui/qt4/components/controller.cpp modules/gui/qt4/components/controller_widget.hpp > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=69a7b4d24e210b246595a54b19ccd139d4f2d6b3 --- modules/gui/qt4/components/controller.cpp | 44 +++++++++++----------- modules/gui/qt4/components/controller.hpp | 2 +- modules/gui/qt4/components/controller_widget.hpp | 4 -- modules/gui/qt4/main_interface.cpp | 2 +- 4 files changed, 24 insertions(+), 28 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=69a7b4d24e210b246595a54b19ccd139d4f2d6b3 From git at videolan.org Wed Feb 11 04:17:09 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 04:17:09 +0100 (CET) Subject: [vlc-devel] commit: Qt: don't leak the FSC on exit. (Jean-Baptiste Kempf ) Message-ID: <20090211031709.A79552F052@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 04:15:48 2009 +0100| [3694dd181dbfb731ad5d0185a5894f008e1e2938] | committer: Jean-Baptiste Kempf Qt: don't leak the FSC on exit. This should really be a singleton or at least not built when you play only audio. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3694dd181dbfb731ad5d0185a5894f008e1e2938 --- modules/gui/qt4/main_interface.cpp | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index 4955db9..a35bb7d 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -278,6 +278,8 @@ MainInterface::~MainInterface() ActionsManager::killInstance(); + if( fullscreenControls ) delete fullscreenControls; + settings->beginGroup( "MainWindow" ); settings->setValue( "pl-dock-status", (int)i_pl_dock ); From git at videolan.org Wed Feb 11 04:39:44 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 04:39:44 +0100 (CET) Subject: [vlc-devel] commit: Qt: reparent the first-time dialog and make it die correctly. ( Jean-Baptiste Kempf ) Message-ID: <20090211033944.601772F067@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 04:27:56 2009 +0100| [ff83b31b15f25512876846f333a5b00378166477] | committer: Jean-Baptiste Kempf Qt: reparent the first-time dialog and make it die correctly. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ff83b31b15f25512876846f333a5b00378166477 --- modules/gui/qt4/main_interface.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index a35bb7d..eb5b7ed 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -468,7 +468,7 @@ inline void MainInterface::askForPrivacy() int MainInterface::privacyDialog( QList *controls ) { - QDialog *privacy = new QDialog(); + QDialog *privacy = new QDialog( this ); privacy->setWindowTitle( qtr( "Privacy and Network Policies" ) ); From git at videolan.org Wed Feb 11 04:39:44 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 04:39:44 +0100 (CET) Subject: [vlc-devel] commit: Qt: reparent a textEdit. (Jean-Baptiste Kempf ) Message-ID: <20090211033944.718CA2F080@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 04:35:37 2009 +0100| [887a7c5bfcd2b3ab8611a6d8217e4a50fcc94aa8] | committer: Jean-Baptiste Kempf Qt: reparent a textEdit. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=887a7c5bfcd2b3ab8611a6d8217e4a50fcc94aa8 --- modules/gui/qt4/dialogs/help.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/dialogs/help.cpp b/modules/gui/qt4/dialogs/help.cpp index 2f876be..cc72ff7 100644 --- a/modules/gui/qt4/dialogs/help.cpp +++ b/modules/gui/qt4/dialogs/help.cpp @@ -221,7 +221,7 @@ UpdateDialog::UpdateDialog( intf_thread_t *_p_intf ) : QVLCFrame( _p_intf ) updateLabelDown->setWordWrap( true ); updateLabelDown->hide(); - updateText = new QTextEdit; + updateText = new QTextEdit( this ); updateText->setAcceptRichText(false); updateText->setTextInteractionFlags( Qt::TextSelectableByKeyboard| Qt::TextSelectableByMouse); From git at videolan.org Wed Feb 11 09:52:00 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 09:52:00 +0100 (CET) Subject: [vlc-devel] commit: zvbi: clear zvbi page holder before usage. (Jean-Paul Saman ) Message-ID: <20090211085200.37C492E5FC@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Wed Feb 4 08:21:24 2009 +0100| [b9b8bcc1de8fcd3999e2d8422513cd7083d72dec] | committer: Jean-Paul Saman zvbi: clear zvbi page holder before usage. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b9b8bcc1de8fcd3999e2d8422513cd7083d72dec --- modules/codec/zvbi.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/codec/zvbi.c b/modules/codec/zvbi.c index c9d7e29..06bffe0 100644 --- a/modules/codec/zvbi.c +++ b/modules/codec/zvbi.c @@ -357,6 +357,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block ) vlc_mutex_unlock( &p_sys->lock ); /* Try to see if the page we want is in the cache yet */ + memset( &p_page, 0, sizeof(vbi_page) ); b_cached = vbi_fetch_vt_page( p_sys->p_vbi_dec, &p_page, vbi_dec2bcd( i_wanted_page ), i_wanted_subpage, VBI_WST_LEVEL_3p5, From git at videolan.org Wed Feb 11 09:52:00 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 09:52:00 +0100 (CET) Subject: [vlc-devel] commit: activex: take lock before accessing libvlc_playlist_items_count(). (Jean-Paul Saman ) Message-ID: <20090211085200.4FB842EFCA@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Wed Feb 11 09:45:52 2009 +0100| [e166ec152cd4f5add7d40b92d3ad59ca23675e77] | committer: Jean-Paul Saman activex: take lock before accessing libvlc_playlist_items_count(). Patch by jan-paul dinger (jpd at m2x dot nl). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e166ec152cd4f5add7d40b92d3ad59ca23675e77 --- include/vlc/deprecated.h | 2 ++ projects/activex/plugin.cpp | 12 +++++++++--- projects/activex/vlccontrol.cpp | 2 ++ projects/activex/vlccontrol2.cpp | 4 ++++ 4 files changed, 17 insertions(+), 3 deletions(-) diff --git a/include/vlc/deprecated.h b/include/vlc/deprecated.h index df0ba04..e3c0d56 100644 --- a/include/vlc/deprecated.h +++ b/include/vlc/deprecated.h @@ -173,6 +173,8 @@ VLC_DEPRECATED_API int libvlc_playlist_isplaying( libvlc_instance_t *, /** * Get the number of items in the playlist * + * Expects the playlist instance to be locked already. + * * \param p_instance the playlist instance * \param p_e an initialized exception pointer * \return the number of items diff --git a/projects/activex/plugin.cpp b/projects/activex/plugin.cpp index 6a8c3f8..ec8cc44 100644 --- a/projects/activex/plugin.cpp +++ b/projects/activex/plugin.cpp @@ -726,10 +726,16 @@ HRESULT VLCPlugin::onActivateInPlace(LPMSG lpMesg, HWND hwndParent, LPCRECT lprc libvlc_video_set_parent(p_libvlc, reinterpret_cast(_inplacewnd), NULL); - if( _b_autoplay & (libvlc_playlist_items_count(p_libvlc, NULL) > 0) ) + if( _b_autoplay ) { - libvlc_playlist_play(p_libvlc, 0, 0, NULL, NULL); - fireOnPlayEvent(); + libvlc_playlist_lock(p_libvlc); + unsigned count = libvlc_playlist_items_count(p_libvlc, &ex); + if( count > 0 ) + { + libvlc_playlist_play(p_libvlc, 0, 0, NULL, NULL); + fireOnPlayEvent(); + } + libvlc_playlist_unlock(p_libvlc); } } diff --git a/projects/activex/vlccontrol.cpp b/projects/activex/vlccontrol.cpp index 298a449..75da2de 100644 --- a/projects/activex/vlccontrol.cpp +++ b/projects/activex/vlccontrol.cpp @@ -939,7 +939,9 @@ STDMETHODIMP VLCControl::get_PlaylistCount(int *count) libvlc_exception_t ex; libvlc_exception_init(&ex); + libvlc_playlist_lock(p_libvlc); *count = libvlc_playlist_items_count(p_libvlc, &ex); + libvlc_playlist_unlock(p_libvlc); if( libvlc_exception_raised(&ex) ) { _p_instance->setErrorInfo(IID_IVLCControl, diff --git a/projects/activex/vlccontrol2.cpp b/projects/activex/vlccontrol2.cpp index 2a3c62b..8e3957d 100644 --- a/projects/activex/vlccontrol2.cpp +++ b/projects/activex/vlccontrol2.cpp @@ -1526,7 +1526,9 @@ STDMETHODIMP VLCPlaylistItems::get_count(long* count) libvlc_exception_t ex; libvlc_exception_init(&ex); + libvlc_playlist_lock(p_libvlc); *count = libvlc_playlist_items_count(p_libvlc, &ex); + libvlc_playlist_unlock(p_libvlc); if( libvlc_exception_raised(&ex) ) { _p_instance->setErrorInfo(IID_IVLCPlaylistItems, @@ -1676,7 +1678,9 @@ STDMETHODIMP VLCPlaylist::get_itemCount(long* count) libvlc_exception_t ex; libvlc_exception_init(&ex); + libvlc_playlist_lock(p_libvlc); *count = libvlc_playlist_items_count(p_libvlc, &ex); + libvlc_playlist_unlock(p_libvlc); if( libvlc_exception_raised(&ex) ) { _p_instance->setErrorInfo(IID_IVLCPlaylist, From jpsaman at videolan.org Wed Feb 11 09:52:09 2009 From: jpsaman at videolan.org (Jean-Paul Saman) Date: Wed, 11 Feb 2009 09:52:09 +0100 Subject: [vlc-devel] [patch] Crudely add locking around libvlc_playlist_items_count() calls. In-Reply-To: <1f6cb6aac12af7a3954ba27588d13166.squirrel@m2x.nl> References: <1f6cb6aac12af7a3954ba27588d13166.squirrel@m2x.nl> Message-ID: <499291B9.7090606@videolan.org> jpd at m2x.nl wrote: > This patch, at least the mozilla part of it, stops epiphany from crashing > on an unlocked libvlc_playlist_items_count() call. Firefox 3 so far didn't > crash but didn't do anything else either, might be a safety feature. The > activex part has not been tested yet, but is very similar in concept. > Patch applied. Gtz Jean-Paul Saman. From git at videolan.org Wed Feb 11 10:06:28 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 10:06:28 +0100 (CET) Subject: [vlc-devel] commit: Win32 configures: mingw can compile mkv and taglib. Only Windows cannot. (Jean-Baptiste Kempf ) Message-ID: <20090211090628.64BB92EBF0@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 10:05:17 2009 +0100| [11ad4d7d9c6b149ca807eed438947c116488601d] | committer: Jean-Baptiste Kempf Win32 configures: mingw can compile mkv and taglib. Only Windows cannot. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=11ad4d7d9c6b149ca807eed438947c116488601d --- extras/package/win32/configure-common.sh | 3 +-- extras/package/win32/configure-mingw-release.sh | 2 +- extras/package/win32/configure-mingw.sh | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/extras/package/win32/configure-common.sh b/extras/package/win32/configure-common.sh index 8453c56..1565112 100755 --- a/extras/package/win32/configure-common.sh +++ b/extras/package/win32/configure-common.sh @@ -16,7 +16,6 @@ --enable-dca \ --enable-libass \ --enable-x264 \ - --enable-zvbi --disable-telx \ --enable-dvdread --with-dvdnav-config-path=/usr/win32/bin \ --enable-shout \ --enable-goom \ @@ -32,5 +31,5 @@ --enable-activex \ --disable-gnomevfs --disable-hal --disable-gtk \ --disable-cddax --disable-vcdx \ - --disable-libcddb --disable-dvb --disable-zvbi --enable-telx\ + --disable-libcddb --disable-dvb --disable-zvbi --enable-telx \ --disable-pulse diff --git a/extras/package/win32/configure-mingw-release.sh b/extras/package/win32/configure-mingw-release.sh index 4cb634d..290c562 100755 --- a/extras/package/win32/configure-mingw-release.sh +++ b/extras/package/win32/configure-mingw-release.sh @@ -8,5 +8,5 @@ CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" \ LDFLAGS="-L/usr/win32/lib" \ CC=i586-mingw32msvc-gcc CXX=i586-mingw32msvc-g++ \ CONFIG="${root}configure --host=i586-mingw32msvc --build=i386-linux - --enable-mkv --enable-release --enable-nls" \ + --enable-mkv --enable-taglib --enable-release --enable-nls" \ sh ${root}extras/package/win32/configure-common.sh diff --git a/extras/package/win32/configure-mingw.sh b/extras/package/win32/configure-mingw.sh index 789c304..45fb99c 100755 --- a/extras/package/win32/configure-mingw.sh +++ b/extras/package/win32/configure-mingw.sh @@ -8,5 +8,5 @@ CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" \ LDFLAGS="-L/usr/win32/lib" \ CC=i586-mingw32msvc-gcc CXX=i586-mingw32msvc-g++ \ CONFIG="${root}configure --host=i586-mingw32msvc --build=i386-linux - --disable-mkv --disable-taglib --enable-debug" \ + --enable-mkv --enable-taglib --enable-debug" \ sh ${root}extras/package/win32/configure-common.sh From kwizart at gmail.com Wed Feb 11 10:46:53 2009 From: kwizart at gmail.com (Nicolas Chauvet (kwizart)) Date: Wed, 11 Feb 2009 10:46:53 +0100 Subject: [vlc-devel] [PATCH] ZIP Module - Use the system minizip when available Message-ID: <1234345613-12957-1-git-send-email-kwizart@gmail.com> - Ship the vlc module header zip.h (rename isn't needed once the file in ship) - Detect minizip presence with pkgconfig - if .pc not available, try to assume presence from unzip.h - Move the zlib.h detection in one place (after pkgconfig macro) minizip in bundled within zlib in some distro - Adds -lz in module that needs it in one place - Prevent the compilation of libs/unzip if minizip is available (it shound't prevent this directory to be bundled with the sources) --- Makefile.am | 2 + configure.ac | 58 ++++++++++++++++++++-------------------- modules/access/zip/Modules.am | 1 + 3 files changed, 32 insertions(+), 29 deletions(-) diff --git a/Makefile.am b/Makefile.am index b60031d..e3a87d2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -21,8 +21,10 @@ if HAVE_LIBGCRYPT SUBDIRS += libs/srtp endif if HAVE_ZLIB +if !HAVE_MINIZIP SUBDIRS += libs/unzip endif +endif if BUILD_VLC SUBDIRS += bin endif diff --git a/configure.ac b/configure.ac index e70c83e..0a3083d 100644 --- a/configure.ac +++ b/configure.ac @@ -550,9 +550,6 @@ AC_CHECK_FUNCS(send,,[ ]) ]) -AC_CHECK_HEADERS(zlib.h, [ - VLC_ADD_LIBS([access_http],[-lz]) -]) dnl Check for socklen_t AH_TEMPLATE(socklen_t, [Define to `int' if does not define.]) @@ -877,6 +874,33 @@ AC_ARG_VAR(PKG_CONFIG_PATH, [Paths where to find .pc not at the default location]) PKG_PROG_PKG_CONFIG() +dnl +dnl Check for zlib.h and -lz along with system -lminizip if available +dnl +AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) +AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) +if test "${have_zlib}" = "yes" +then + VLC_ADD_LIBS([access_http gme mp4 skins2 sap mkv unzip zip],[-lz]) + PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [ + AC_CHECK_HEADERS([unzip.h], [ + have_minizip=yes + MINIZIP_LIBS="-lminizip -lz" + ], [ + have_minizip=no + MINIZIP_CFLAGS="-I\$(top_builddir)/libs/unzip" + MINIZIP_LIBS="\$(top_builddir)/libs/unzip/libunzip.la" + ]) + ]) + AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) + VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) + VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS]) + VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS]) + VLC_ADD_PLUGIN([unzip]) + VLC_ADD_PLUGIN([zip]) +fi + + dnl Check for hal AC_ARG_ENABLE(hal, [ --enable-hal Linux HAL services discovery (default enabled)]) @@ -2977,10 +3001,10 @@ AC_ARG_ENABLE( id3tag, [ --disable-id3tag id3tag metadata reader plugin (default disabled)]) AS_IF([test "${enable_id3tag}" = "yes"], [ AC_CHECK_HEADERS(id3tag.h, [ - AC_CHECK_HEADERS(zlib.h, [ + if test "${have_zlib}" = "yes" VLC_ADD_LIBS([id3tag],[-lid3tag -lz]) VLC_ADD_PLUGIN([id3tag]) - ]) + fi ]) ]) @@ -3257,15 +3281,6 @@ if test "${enable_realrtsp}" = "yes"; then VLC_ADD_PLUGIN([access_realrtsp]) fi -dnl -dnl MP4 module -dnl -AC_CHECK_HEADERS(zlib.h, [ - VLC_ADD_LIBS([mp4 skins2 sap mkv gme],[-lz]) - VLC_ADD_CPPFLAGS([skins2],[-I../../../@top_srcdir@/libs/unzip]) - VLC_ADD_LIBS([skins2],[../../../libs/unzip/libunzip.la]) -] ) - AC_ARG_ENABLE(libsysfs, [ --enable-libsysfs Get user key from firewire connected iPod via libsysfs (default enabled)]) @@ -5412,21 +5427,6 @@ fi dnl -dnl ZIP files demuxer -dnl -AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) -AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) -if test "${have_zlib}" = "yes" -then - VLC_ADD_PLUGIN([unzip]) - VLC_ADD_LIBS([zip],[-lz]) - VLC_ADD_PLUGIN([zip]) - VLC_ADD_CFLAGS([zip],[-I../../../@top_srcdir@/libs/unzip]) - VLC_ADD_LIBS([zip],[../../../libs/unzip/libunzip.la]) -fi - - -dnl dnl Endianness check dnl AC_C_BIGENDIAN diff --git a/modules/access/zip/Modules.am b/modules/access/zip/Modules.am index 303c29f..b8b1f9a 100644 --- a/modules/access/zip/Modules.am +++ b/modules/access/zip/Modules.am @@ -1,5 +1,6 @@ if HAVE_ZLIB SOURCES_zip = \ + zip.h \ zipstream.c \ zipaccess.c \ $(NULL) -- 1.6.0.6 From git at videolan.org Wed Feb 11 11:38:35 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 11:38:35 +0100 (CET) Subject: [vlc-devel] commit: Contrib: Don't build FFmpeg dca decoder on Win32 ( Jean-Baptiste Kempf ) Message-ID: <20090211103835.086392EFBC@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 11:37:47 2009 +0100| [51f7f4192b9caec6f217c6b609fa82236030f363] | committer: Jean-Baptiste Kempf Contrib: Don't build FFmpeg dca decoder on Win32 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=51f7f4192b9caec6f217c6b609fa82236030f363 --- extras/contrib/src/Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 2943a27..d358d39 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -1108,7 +1108,7 @@ endif FFMPEGCONF += --enable-gpl --enable-postproc --disable-vhook --disable-ffserver --disable-ffmpeg --disable-ffplay --disable-devices --disable-protocols --disable-network --enable-swscale ifdef HAVE_WIN32 -FFMPEGCONF += --disable-bzlib +FFMPEGCONF += --disable-bzlib --disable-decoder=dca endif ifdef HAVE_WINCE From thannoy at actech-innovation.com Wed Feb 11 11:39:09 2009 From: thannoy at actech-innovation.com (Anthony Loiseau) Date: Wed, 11 Feb 2009 11:39:09 +0100 Subject: [vlc-devel] commit: activex: take lock before accessing libvlc_playlist_items_count(). (Jean-Paul Saman ) In-Reply-To: <20090211085200.4FB842EFCA@skanda.videolan.org> References: <20090211085200.4FB842EFCA@skanda.videolan.org> Message-ID: <1234348749.3469.5.camel@localhost.localdomain> Hi, This commit break my activex compilation due to "&ex" usage (undefined). Attached is a patch proposal to fix it. regards, Anthony On Wed, 2009-02-11 at 09:52 +0100, git version control wrote: > vlc | branch: master | Jean-Paul Saman | Wed Feb 11 09:45:52 2009 +0100| [e166ec152cd4f5add7d40b92d3ad59ca23675e77] | committer: Jean-Paul Saman > > activex: take lock before accessing libvlc_playlist_items_count(). > > Patch by jan-paul dinger (jpd at m2x dot nl). > > > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e166ec152cd4f5add7d40b92d3ad59ca23675e77 > [...] > > - if( _b_autoplay & (libvlc_playlist_items_count(p_libvlc, NULL) > 0) ) > + if( _b_autoplay ) > { > - libvlc_playlist_play(p_libvlc, 0, 0, NULL, NULL); > - fireOnPlayEvent(); > + libvlc_playlist_lock(p_libvlc); > + unsigned count = libvlc_playlist_items_count(p_libvlc, &ex); > + if( count > 0 ) > + { > + libvlc_playlist_play(p_libvlc, 0, 0, NULL, NULL); > + fireOnPlayEvent(); > + } > + libvlc_playlist_unlock(p_libvlc); > } > } > -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-activex-create-ex-before-using-this-exception-var.patch Type: text/x-patch Size: 1331 bytes Desc: not available URL: From thannoy at actech-innovation.com Wed Feb 11 11:46:32 2009 From: thannoy at actech-innovation.com (Anthony Loiseau) Date: Wed, 11 Feb 2009 11:46:32 +0100 Subject: [vlc-devel] [PATCH] activex: a small patch proposal to fix compilation Message-ID: <1234349192.3469.13.camel@localhost.localdomain> Hi, The attached patch is a modification which was useful for me to properly compile activex (using mingw32/fedora10). I am not sure it is needed by everyone, but in case, here it is. It adds stdio includes where snprintf is used. NB: I also modified qt4.cpp to comment out the Q_IMPORT_PLUGIN of qtaccessiblewidgets (around line 57) for my crosscompile to succeed, but it is quite ugly I think, so no patch for it :) _Anthony -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-activex-snprintf-is-defined-in-stdio.h-include-it.patch Type: text/x-patch Size: 1958 bytes Desc: not available URL: From git at videolan.org Wed Feb 11 12:03:45 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 12:03:45 +0100 (CET) Subject: [vlc-devel] commit: activex: create "ex" before using this exception variable ( Anthony Loiseau ) Message-ID: <20090211110345.D7FD42EFBC@skanda.videolan.org> vlc | branch: master | Anthony Loiseau | Wed Feb 11 10:21:17 2009 +0100| [e0e941ea6ce17b0e4acd7ff6bd60c55efd0bf937] | committer: Jean-Baptiste Kempf activex: create "ex" before using this exception variable Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e0e941ea6ce17b0e4acd7ff6bd60c55efd0bf937 --- projects/activex/plugin.cpp | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/projects/activex/plugin.cpp b/projects/activex/plugin.cpp index ec8cc44..f9410c6 100644 --- a/projects/activex/plugin.cpp +++ b/projects/activex/plugin.cpp @@ -672,6 +672,8 @@ BOOL VLCPlugin::isInPlaceActive(void) HRESULT VLCPlugin::onActivateInPlace(LPMSG lpMesg, HWND hwndParent, LPCRECT lprcPosRect, LPCRECT lprcClipRect) { RECT clipRect = *lprcClipRect; + libvlc_exception_t ex; + libvlc_exception_init(&ex); /* ** record keeping of control geometry within container From git at videolan.org Wed Feb 11 12:08:48 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 12:08:48 +0100 (CET) Subject: [vlc-devel] commit: Contribs: Kate, update to 0.3. 0 and disable-doc by default without patching. (Jean-Baptiste Kempf ) Message-ID: <20090211110848.0A8662F011@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 12:08:17 2009 +0100| [d8704994aa813b256a42764e5edae3c2a9a26d23] | committer: Jean-Baptiste Kempf Contribs: Kate, update to 0.3.0 and disable-doc by default without patching. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d8704994aa813b256a42764e5edae3c2a9a26d23 --- extras/contrib/src/Makefile | 3 +- extras/contrib/src/Patches/libkate-nodocs.patch | 24 ----------------------- extras/contrib/src/packages.mak | 2 +- 3 files changed, 2 insertions(+), 27 deletions(-) diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index d358d39..71bc1fc 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -2321,8 +2321,7 @@ libkate: libkate-$(KATE_VERSION).tar.gz $(EXTRACT_GZ) .kate: libkate .ogg - (cd $<; patch -p1) < Patches/libkate-nodocs.patch - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-valgrind && make && make install) + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-valgrind --disable-doc && make && make install) $(INSTALL_NAME) touch $@ diff --git a/extras/contrib/src/Patches/libkate-nodocs.patch b/extras/contrib/src/Patches/libkate-nodocs.patch deleted file mode 100644 index 93ebc60..0000000 --- a/extras/contrib/src/Patches/libkate-nodocs.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -ru libkate-0.1.7/doc/Makefile libkate/doc/Makefile -diff -ru libkate-0.1.7/doc/Makefile.am libkate/doc/Makefile.am ---- libkate-0.1.7/doc/Makefile.am 2008-08-11 01:59:03.000000000 +0300 -+++ libkate/doc/Makefile.am 2009-02-09 23:41:53.000000000 +0200 -@@ -31,7 +31,6 @@ - else - .doc-dummy-target: - echo "doxygen not found, cannot build docs" -- /bin/false - endif - - dist-hook: .doc-dummy-target -Seulement dans libkate/doc: Makefile.am~ -diff -ru libkate-0.1.7/doc/Makefile.in libkate/doc/Makefile.in ---- libkate-0.1.7/doc/Makefile.in 2008-08-11 01:59:03.000000000 +0300 -+++ libkate/doc/Makefile.in 2009-02-09 23:42:13.000000000 +0200 -@@ -389,7 +389,6 @@ - @HAVE_DOXYGEN_TRUE@ doxygen kate.doxygen - @HAVE_DOXYGEN_FALSE at .doc-dummy-target: - @HAVE_DOXYGEN_FALSE@ echo "doxygen not found, cannot build docs" -- at HAVE_DOXYGEN_FALSE@ /bin/false - - dist-hook: .doc-dummy-target - cp -fR * $(distdir) diff --git a/extras/contrib/src/packages.mak b/extras/contrib/src/packages.mak index b564ca6..816e980 100644 --- a/extras/contrib/src/packages.mak +++ b/extras/contrib/src/packages.mak @@ -218,7 +218,7 @@ FLUID_URL=http://download.savannah.gnu.org/releases/fluid/fluidsynth-$(FLUID_VER YASM_VERSION=0.7.2 #YASM_URL=$(VIDEOLAN)/testing/contrib/yasm-$(YASM_VERSION).tar.gz YASM_URL=http://www.tortall.net/projects/yasm/releases/yasm-$(YASM_VERSION).tar.gz -KATE_VERSION=0.1.7 +KATE_VERSION=0.3.0 KATE_URL=http://libkate.googlecode.com/files/libkate-$(KATE_VERSION).tar.gz TIGER_VERSION=0.3.1 TIGER_URL=http://libtiger.googlecode.com/files/libtiger-$(TIGER_VERSION).tar.gz From noxelia at gmail.com Wed Feb 11 12:21:39 2009 From: noxelia at gmail.com (basos g) Date: Wed, 11 Feb 2009 13:21:39 +0200 Subject: [vlc-devel] [PATCH] 4 patches to commit: [PATCH] ADD/CLEAN Added text_style_* methods. Cleaned modules In-Reply-To: <20090210084809.GA15563@via.ecp.fr> References: <9d98edc70902020352h1155cabbsd138f3008f313a11@mail.gmail.com> <9d98edc70902021000k4ff3271dne2bb15359f612346@mail.gmail.com> <9d98edc70902021004i2e4ab388j8e182f9bbcf26561@mail.gmail.com> <20090210084809.GA15563@via.ecp.fr> Message-ID: <9d98edc70902110321k35a6e0b4k9c3e4a93877bf564@mail.gmail.com> 2009/2/10 Laurent Aimar : > Hi, > > On Mon, Feb 02, 2009, basos g wrote: >> Damn i can not sent this monster. I provide it inline below as a last resort > > I will not apply this patch for the 1.0 release. > > While I agree it is wanted (and welcomed), I prefer to avoid regression as it > modifies heavily the existing code/code path and was submitted a (tiny) bit too > late. > > I will apply/look at it once the freeze period is over. > Please bug me if I don't. Thanks for your work. > > Regards, > > -- That's ok for this. To be continued... From noxelia at gmail.com Wed Feb 11 15:15:48 2009 From: noxelia at gmail.com (basos g) Date: Wed, 11 Feb 2009 16:15:48 +0200 Subject: [vlc-devel] [PATCH] FIX: Dshow "none" device open (#2201). Some cleaning Message-ID: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> These 2 patches address the issue in dshow as well as some other fixes -Fix dshow "none" deivice be recognized as none Note that another patch concerning var_optionParse string dequoting should be applied for this to be fixed ( the concept is not to provide quoted strings to dshow options ) -Account for the case when BOTH devices could not be opened (file an error, instead of seeming to play) -Cleaned a little -Added dbg and error msgs -Added coments -------------- next part -------------- A non-text attachment was scrubbed... Name: 0007-FIX-DSHOW-none-device-open-2201-.-Some-cleaning.patch Type: text/x-diff Size: 18461 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0008-var_OptionParse-was-made-quote-aware.patch Type: text/x-diff Size: 1474 bytes Desc: not available URL: From rem at videolan.org Wed Feb 11 16:46:04 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Wed, 11 Feb 2009 17:46:04 +0200 Subject: [vlc-devel] [PATCH] ZIP Module - Use the system minizip when available In-Reply-To: <1234345613-12957-1-git-send-email-kwizart@gmail.com> References: <1234345613-12957-1-git-send-email-kwizart@gmail.com> Message-ID: <200902111746.04674.rem@videolan.org> Le mercredi 11 f?vrier 2009 11:46:53 Nicolas Chauvet (kwizart), vous avez ?crit?: > - Ship the vlc module header zip.h > (rename isn't needed once the file in ship) > - Detect minizip presence with pkgconfig > - if .pc not available, try to assume presence from unzip.h > - Move the zlib.h detection in one place (after pkgconfig macro) > minizip in bundled within zlib in some distro > - Adds -lz in module that needs it in one place > - Prevent the compilation of libs/unzip if minizip is available > (it shound't prevent this directory to be bundled with the sources) This looks good, and I'll merge it, but... why do we duplicate minizip then? If it is a proper third party library, it should go to contrib, not to libs... -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 11 16:48:52 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 16:48:52 +0100 (CET) Subject: [vlc-devel] commit: fb: unmap mmap'ed area when closing framebuffer display. ( Jean-Paul Saman ) Message-ID: <20090211154852.C0E352F0F1@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Wed Feb 11 16:03:05 2009 +0100| [5d40c7d41dafc119c83aea43b5fbc7cf56aaa3d3] | committer: Jean-Paul Saman fb: unmap mmap'ed area when closing framebuffer display. Closing of filedescriptor to /dev/fbx does not remove the mmap'ed areas. A call to munmap() is needed for this. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5d40c7d41dafc119c83aea43b5fbc7cf56aaa3d3 --- modules/video_output/fb.c | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/modules/video_output/fb.c b/modules/video_output/fb.c index 4accdb2..092b621 100644 --- a/modules/video_output/fb.c +++ b/modules/video_output/fb.c @@ -920,7 +920,7 @@ static int OpenDisplay( vout_thread_t *p_vout ) p_sys->i_bytes_per_pixel; /* Map a framebuffer at the beginning */ - p_sys->p_video = mmap( 0, p_sys->i_page_size, + p_sys->p_video = mmap( NULL, p_sys->i_page_size, PROT_READ | PROT_WRITE, MAP_SHARED, p_sys->i_fd, 0 ); @@ -952,8 +952,12 @@ static int OpenDisplay( vout_thread_t *p_vout ) *****************************************************************************/ static void CloseDisplay( vout_thread_t *p_vout ) { - /* Clear display */ - memset( p_vout->p_sys->p_video, 0, p_vout->p_sys->i_page_size ); + if( p_vout->p_sys->p_video ) + { + /* Clear display */ + memset( p_vout->p_sys->p_video, 0, p_vout->p_sys->i_page_size ); + munmap( p_vout->p_sys->p_video, p_vout->p_sys->i_page_size ); + } /* Restore palette */ if( p_vout->p_sys->var_info.bits_per_pixel == 8 ) From git at videolan.org Wed Feb 11 16:48:52 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 16:48:52 +0100 (CET) Subject: [vlc-devel] commit: fb: Cleanup properly after failing OpenDisplay. (Jean-Paul Saman ) Message-ID: <20090211154852.D1B1C2F103@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Wed Feb 11 16:17:38 2009 +0100| [a0b49d79a0da09aedf7f0bed2f6cadb593cac8bc] | committer: Jean-Paul Saman fb: Cleanup properly after failing OpenDisplay. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a0b49d79a0da09aedf7f0bed2f6cadb593cac8bc --- modules/video_output/fb.c | 37 ++++++++++++++++--------------------- 1 files changed, 16 insertions(+), 21 deletions(-) diff --git a/modules/video_output/fb.c b/modules/video_output/fb.c index 092b621..602a888 100644 --- a/modules/video_output/fb.c +++ b/modules/video_output/fb.c @@ -361,15 +361,7 @@ static int Create( vlc_object_t *p_this ) if( OpenDisplay( p_vout ) ) { - if( p_sys->b_tty ) - { - ioctl( p_sys->i_tty, VT_SETMODE, &p_vout->p_sys->vt_mode ); - sigaction( SIGUSR1, &p_vout->p_sys->sig_usr1, NULL ); - sigaction( SIGUSR2, &p_vout->p_sys->sig_usr2, NULL ); - tcsetattr(0, 0, &p_vout->p_sys->old_termios); - TextMode( p_sys->i_tty ); - } - free( p_vout->p_sys ); + Destroy( VLC_OBJECT(p_vout) ); return VLC_EGENERIC; } @@ -959,21 +951,24 @@ static void CloseDisplay( vout_thread_t *p_vout ) munmap( p_vout->p_sys->p_video, p_vout->p_sys->i_page_size ); } - /* Restore palette */ - if( p_vout->p_sys->var_info.bits_per_pixel == 8 ) + if( p_vout->p_sys->i_fd >= 0 ) { - ioctl( p_vout->p_sys->i_fd, - FBIOPUTCMAP, &p_vout->p_sys->fb_cmap ); - free( p_vout->p_sys->p_palette ); - p_vout->p_sys->p_palette = NULL; - } + /* Restore palette */ + if( p_vout->p_sys->var_info.bits_per_pixel == 8 ) + { + ioctl( p_vout->p_sys->i_fd, + FBIOPUTCMAP, &p_vout->p_sys->fb_cmap ); + free( p_vout->p_sys->p_palette ); + p_vout->p_sys->p_palette = NULL; + } - /* Restore fb config */ - ioctl( p_vout->p_sys->i_fd, - FBIOPUT_VSCREENINFO, &p_vout->p_sys->old_info ); + /* Restore fb config */ + ioctl( p_vout->p_sys->i_fd, + FBIOPUT_VSCREENINFO, &p_vout->p_sys->old_info ); - /* Close fb */ - close( p_vout->p_sys->i_fd ); + /* Close fb */ + close( p_vout->p_sys->i_fd ); + } } /***************************************************************************** From rem at videolan.org Wed Feb 11 16:49:27 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 11 Feb 2009 17:49:27 +0200 Subject: [vlc-devel] [PATCH] activex: a small patch proposal to fix compilation In-Reply-To: <1234349192.3469.13.camel@localhost.localdomain> References: <1234349192.3469.13.camel@localhost.localdomain> Message-ID: <200902111749.27507.rem@videolan.org> Le mercredi 11 f?vrier 2009 12:46:32 Anthony Loiseau, vous avez ?crit?: > The attached patch is a modification which was useful for me to properly > compile activex (using mingw32/fedora10). I am not sure it is needed by > everyone, but in case, here it is. It adds stdio includes where snprintf > is used. Merged, thanks. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 11 16:52:50 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 16:52:50 +0100 (CET) Subject: [vlc-devel] commit: ZIP Module - Use the system minizip when available ( Nicolas Chauvet (kwizart ) Message-ID: <20090211155250.32CDF2F0FE@skanda.videolan.org> vlc | branch: master | Nicolas Chauvet (kwizart | Wed Feb 11 10:46:53 2009 +0100| [35fa551f95211e9ca4b9b52eb7a73de6b9c94484] | committer: R?mi Denis-Courmont ZIP Module - Use the system minizip when available - Ship the vlc module header zip.h (rename isn't needed once the file in ship) - Detect minizip presence with pkgconfig - if .pc not available, try to assume presence from unzip.h - Move the zlib.h detection in one place (after pkgconfig macro) minizip in bundled within zlib in some distro - Adds -lz in module that needs it in one place - Prevent the compilation of libs/unzip if minizip is available (it shound't prevent this directory to be bundled with the sources) Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=35fa551f95211e9ca4b9b52eb7a73de6b9c94484 --- Makefile.am | 2 + configure.ac | 58 ++++++++++++++++++++-------------------- modules/access/zip/Modules.am | 1 + 3 files changed, 32 insertions(+), 29 deletions(-) diff --git a/Makefile.am b/Makefile.am index b60031d..e3a87d2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -21,8 +21,10 @@ if HAVE_LIBGCRYPT SUBDIRS += libs/srtp endif if HAVE_ZLIB +if !HAVE_MINIZIP SUBDIRS += libs/unzip endif +endif if BUILD_VLC SUBDIRS += bin endif diff --git a/configure.ac b/configure.ac index e70c83e..0a3083d 100644 --- a/configure.ac +++ b/configure.ac @@ -550,9 +550,6 @@ AC_CHECK_FUNCS(send,,[ ]) ]) -AC_CHECK_HEADERS(zlib.h, [ - VLC_ADD_LIBS([access_http],[-lz]) -]) dnl Check for socklen_t AH_TEMPLATE(socklen_t, [Define to `int' if does not define.]) @@ -877,6 +874,33 @@ AC_ARG_VAR(PKG_CONFIG_PATH, [Paths where to find .pc not at the default location]) PKG_PROG_PKG_CONFIG() +dnl +dnl Check for zlib.h and -lz along with system -lminizip if available +dnl +AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) +AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) +if test "${have_zlib}" = "yes" +then + VLC_ADD_LIBS([access_http gme mp4 skins2 sap mkv unzip zip],[-lz]) + PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [ + AC_CHECK_HEADERS([unzip.h], [ + have_minizip=yes + MINIZIP_LIBS="-lminizip -lz" + ], [ + have_minizip=no + MINIZIP_CFLAGS="-I\$(top_builddir)/libs/unzip" + MINIZIP_LIBS="\$(top_builddir)/libs/unzip/libunzip.la" + ]) + ]) + AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) + VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) + VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS]) + VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS]) + VLC_ADD_PLUGIN([unzip]) + VLC_ADD_PLUGIN([zip]) +fi + + dnl Check for hal AC_ARG_ENABLE(hal, [ --enable-hal Linux HAL services discovery (default enabled)]) @@ -2977,10 +3001,10 @@ AC_ARG_ENABLE( id3tag, [ --disable-id3tag id3tag metadata reader plugin (default disabled)]) AS_IF([test "${enable_id3tag}" = "yes"], [ AC_CHECK_HEADERS(id3tag.h, [ - AC_CHECK_HEADERS(zlib.h, [ + if test "${have_zlib}" = "yes" VLC_ADD_LIBS([id3tag],[-lid3tag -lz]) VLC_ADD_PLUGIN([id3tag]) - ]) + fi ]) ]) @@ -3257,15 +3281,6 @@ if test "${enable_realrtsp}" = "yes"; then VLC_ADD_PLUGIN([access_realrtsp]) fi -dnl -dnl MP4 module -dnl -AC_CHECK_HEADERS(zlib.h, [ - VLC_ADD_LIBS([mp4 skins2 sap mkv gme],[-lz]) - VLC_ADD_CPPFLAGS([skins2],[-I../../../@top_srcdir@/libs/unzip]) - VLC_ADD_LIBS([skins2],[../../../libs/unzip/libunzip.la]) -] ) - AC_ARG_ENABLE(libsysfs, [ --enable-libsysfs Get user key from firewire connected iPod via libsysfs (default enabled)]) @@ -5412,21 +5427,6 @@ fi dnl -dnl ZIP files demuxer -dnl -AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) -AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) -if test "${have_zlib}" = "yes" -then - VLC_ADD_PLUGIN([unzip]) - VLC_ADD_LIBS([zip],[-lz]) - VLC_ADD_PLUGIN([zip]) - VLC_ADD_CFLAGS([zip],[-I../../../@top_srcdir@/libs/unzip]) - VLC_ADD_LIBS([zip],[../../../libs/unzip/libunzip.la]) -fi - - -dnl dnl Endianness check dnl AC_C_BIGENDIAN diff --git a/modules/access/zip/Modules.am b/modules/access/zip/Modules.am index 303c29f..b8b1f9a 100644 --- a/modules/access/zip/Modules.am +++ b/modules/access/zip/Modules.am @@ -1,5 +1,6 @@ if HAVE_ZLIB SOURCES_zip = \ + zip.h \ zipstream.c \ zipaccess.c \ $(NULL) From git at videolan.org Wed Feb 11 16:52:50 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 16:52:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_trainling_white_spaces_=28?= =?utf-8?q?_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090211155250.435BE2F104@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 17:48:16 2009 +0200| [3fc830f0b58e7e48dc45d9c1496da50cbf770aa0] | committer: R?mi Denis-Courmont Remove trainling white spaces > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3fc830f0b58e7e48dc45d9c1496da50cbf770aa0 --- configure.ac | 158 +++++++++++++++++++++++++++++----------------------------- 1 files changed, 79 insertions(+), 79 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=3fc830f0b58e7e48dc45d9c1496da50cbf770aa0 From git at videolan.org Wed Feb 11 16:52:50 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 16:52:50 +0100 (CET) Subject: [vlc-devel] commit: activex: snprintf is defined in stdio.h, include it ( Anthony Loiseau ) Message-ID: <20090211155250.5AEC82F103@skanda.videolan.org> vlc | branch: master | Anthony Loiseau | Wed Feb 11 10:24:18 2009 +0100| [484a11efab77b387b18a3ed93f717e886603ac97] | committer: R?mi Denis-Courmont activex: snprintf is defined in stdio.h, include it This applies for plugin.cpp, vlccontrol2.cpp and persistpropbag. Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=484a11efab77b387b18a3ed93f717e886603ac97 --- projects/activex/persistpropbag.h | 1 + projects/activex/plugin.cpp | 1 + projects/activex/vlccontrol2.cpp | 1 + 3 files changed, 3 insertions(+), 0 deletions(-) diff --git a/projects/activex/persistpropbag.h b/projects/activex/persistpropbag.h index bd1dd88..4a4878d 100644 --- a/projects/activex/persistpropbag.h +++ b/projects/activex/persistpropbag.h @@ -23,6 +23,7 @@ #ifndef __PERSISTPROPBAG_H__ #define __PERSISTPROPBAG_H__ +#include #include class VLCPersistPropertyBag : public IPersistPropertyBag diff --git a/projects/activex/plugin.cpp b/projects/activex/plugin.cpp index f9410c6..445bd59 100644 --- a/projects/activex/plugin.cpp +++ b/projects/activex/plugin.cpp @@ -40,6 +40,7 @@ #include "utils.h" +#include #include #include #include diff --git a/projects/activex/vlccontrol2.cpp b/projects/activex/vlccontrol2.cpp index 8e3957d..3ce374c 100644 --- a/projects/activex/vlccontrol2.cpp +++ b/projects/activex/vlccontrol2.cpp @@ -27,6 +27,7 @@ #include "utils.h" +#include #include #include #include From git at videolan.org Wed Feb 11 16:52:50 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 16:52:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_framebuffer=3A_Remove_pointless_t?= =?utf-8?q?est_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090211155250.6BB032F0E2@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 17:51:25 2009 +0200| [e86bc7ed04159cbe8ac5b9fb5f2cbc7d1c6001f6] | committer: R?mi Denis-Courmont framebuffer: Remove pointless test The error value for mmap() is MAP_FAILED, which is not nul. But we check for that case in Open() anyway. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e86bc7ed04159cbe8ac5b9fb5f2cbc7d1c6001f6 --- modules/video_output/fb.c | 9 +++------ 1 files changed, 3 insertions(+), 6 deletions(-) diff --git a/modules/video_output/fb.c b/modules/video_output/fb.c index 602a888..eac3c2a 100644 --- a/modules/video_output/fb.c +++ b/modules/video_output/fb.c @@ -944,12 +944,9 @@ static int OpenDisplay( vout_thread_t *p_vout ) *****************************************************************************/ static void CloseDisplay( vout_thread_t *p_vout ) { - if( p_vout->p_sys->p_video ) - { - /* Clear display */ - memset( p_vout->p_sys->p_video, 0, p_vout->p_sys->i_page_size ); - munmap( p_vout->p_sys->p_video, p_vout->p_sys->i_page_size ); - } + /* Clear display */ + memset( p_vout->p_sys->p_video, 0, p_vout->p_sys->i_page_size ); + munmap( p_vout->p_sys->p_video, p_vout->p_sys->i_page_size ); if( p_vout->p_sys->i_fd >= 0 ) { From git at videolan.org Wed Feb 11 16:54:37 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 16:54:37 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Use_MAP=5FFAILED_=28_R=C3=A9mi_De?= =?utf-8?q?nis-Courmont_=29?= Message-ID: <20090211155437.F3EFA2F0E2@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 17:54:27 2009 +0200| [e52f15b9ac4620a144a7f271c41d6066ae7aa7ab] | committer: R?mi Denis-Courmont Use MAP_FAILED > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e52f15b9ac4620a144a7f271c41d6066ae7aa7ab --- modules/video_output/fb.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/video_output/fb.c b/modules/video_output/fb.c index eac3c2a..acec4c9 100644 --- a/modules/video_output/fb.c +++ b/modules/video_output/fb.c @@ -916,7 +916,7 @@ static int OpenDisplay( vout_thread_t *p_vout ) PROT_READ | PROT_WRITE, MAP_SHARED, p_sys->i_fd, 0 ); - if( p_sys->p_video == ((void*)-1) ) + if( p_sys->p_video == MAP_FAILED ) { msg_Err( p_vout, "cannot map video memory (%m)" ); From rem at videolan.org Wed Feb 11 16:56:17 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 11 Feb 2009 17:56:17 +0200 Subject: [vlc-devel] [PATCH] FIX: Dshow "none" device open (#2201). Some cleaning In-Reply-To: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> References: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> Message-ID: <200902111756.18051.rem@videolan.org> Le mercredi 11 f?vrier 2009 16:15:48 basos g, vous avez ?crit?: > These 2 patches address the issue in dshow as well as some other fixes > > -Fix dshow "none" deivice be recognized as none > Note that another patch concerning var_optionParse string > dequoting should be applied for this to be fixed > ( the concept is not to provide quoted strings to dshow options ) > -Account for the case when BOTH devices could not be opened > (file an error, instead of seeming to play) > -Cleaned a little > -Added dbg and error msgs > -Added coments I am not against removing quotes there, but we have to be consistent. Discarding quotes is wrong. There has to be a way to pass a value that does include quotes. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 11 16:59:51 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 16:59:51 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Revert_=22ZIP_Module_-_Use_the_sy?= =?utf-8?q?stem_minizip_when_available=22_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090211155951.74B1F2F107@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 17:59:29 2009 +0200| [2b58c54283ae9463556efdb80e0a044378bb8fc9] | committer: R?mi Denis-Courmont Revert "ZIP Module - Use the system minizip when available" This reverts commit 35fa551f95211e9ca4b9b52eb7a73de6b9c94484. Conflicts: configure.ac > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2b58c54283ae9463556efdb80e0a044378bb8fc9 --- Makefile.am | 2 - configure.ac | 58 ++++++++++++++++++++-------------------- modules/access/zip/Modules.am | 1 - 3 files changed, 29 insertions(+), 32 deletions(-) diff --git a/Makefile.am b/Makefile.am index e3a87d2..b60031d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -21,10 +21,8 @@ if HAVE_LIBGCRYPT SUBDIRS += libs/srtp endif if HAVE_ZLIB -if !HAVE_MINIZIP SUBDIRS += libs/unzip endif -endif if BUILD_VLC SUBDIRS += bin endif diff --git a/configure.ac b/configure.ac index a6d95b2..0cbf6af 100644 --- a/configure.ac +++ b/configure.ac @@ -550,6 +550,9 @@ AC_CHECK_FUNCS(send,,[ ]) ]) +AC_CHECK_HEADERS(zlib.h, [ + VLC_ADD_LIBS([access_http],[-lz]) +]) dnl Check for socklen_t AH_TEMPLATE(socklen_t, [Define to `int' if does not define.]) @@ -874,33 +877,6 @@ AC_ARG_VAR(PKG_CONFIG_PATH, [Paths where to find .pc not at the default location]) PKG_PROG_PKG_CONFIG() -dnl -dnl Check for zlib.h and -lz along with system -lminizip if available -dnl -AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) -AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) -if test "${have_zlib}" = "yes" -then - VLC_ADD_LIBS([access_http gme mp4 skins2 sap mkv unzip zip],[-lz]) - PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [ - AC_CHECK_HEADERS([unzip.h], [ - have_minizip=yes - MINIZIP_LIBS="-lminizip -lz" - ], [ - have_minizip=no - MINIZIP_CFLAGS="-I\$(top_builddir)/libs/unzip" - MINIZIP_LIBS="\$(top_builddir)/libs/unzip/libunzip.la" - ]) - ]) - AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) - VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) - VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS]) - VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS]) - VLC_ADD_PLUGIN([unzip]) - VLC_ADD_PLUGIN([zip]) -fi - - dnl Check for hal AC_ARG_ENABLE(hal, [ --enable-hal Linux HAL services discovery (default enabled)]) @@ -3001,10 +2977,10 @@ AC_ARG_ENABLE( id3tag, [ --disable-id3tag id3tag metadata reader plugin (default disabled)]) AS_IF([test "${enable_id3tag}" = "yes"], [ AC_CHECK_HEADERS(id3tag.h, [ - if test "${have_zlib}" = "yes" + AC_CHECK_HEADERS(zlib.h, [ VLC_ADD_LIBS([id3tag],[-lid3tag -lz]) VLC_ADD_PLUGIN([id3tag]) - fi + ]) ]) ]) @@ -3281,6 +3257,15 @@ if test "${enable_realrtsp}" = "yes"; then VLC_ADD_PLUGIN([access_realrtsp]) fi +dnl +dnl MP4 module +dnl +AC_CHECK_HEADERS(zlib.h, [ + VLC_ADD_LIBS([mp4 skins2 sap mkv gme],[-lz]) + VLC_ADD_CPPFLAGS([skins2],[-I../../../@top_srcdir@/libs/unzip]) + VLC_ADD_LIBS([skins2],[../../../libs/unzip/libunzip.la]) +] ) + AC_ARG_ENABLE(libsysfs, [ --enable-libsysfs Get user key from firewire connected iPod via libsysfs (default enabled)]) @@ -5427,6 +5412,21 @@ fi dnl +dnl ZIP files demuxer +dnl +AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) +AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) +if test "${have_zlib}" = "yes" +then + VLC_ADD_PLUGIN([unzip]) + VLC_ADD_LIBS([zip],[-lz]) + VLC_ADD_PLUGIN([zip]) + VLC_ADD_CFLAGS([zip],[-I../../../@top_srcdir@/libs/unzip]) + VLC_ADD_LIBS([zip],[../../../libs/unzip/libunzip.la]) +fi + + +dnl dnl Endianness check dnl AC_C_BIGENDIAN diff --git a/modules/access/zip/Modules.am b/modules/access/zip/Modules.am index b8b1f9a..303c29f 100644 --- a/modules/access/zip/Modules.am +++ b/modules/access/zip/Modules.am @@ -1,6 +1,5 @@ if HAVE_ZLIB SOURCES_zip = \ - zip.h \ zipstream.c \ zipaccess.c \ $(NULL) From rem at videolan.org Wed Feb 11 17:00:37 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Wed, 11 Feb 2009 18:00:37 +0200 Subject: [vlc-devel] [PATCH] ZIP Module - Use the system minizip when available In-Reply-To: <1234345613-12957-1-git-send-email-kwizart@gmail.com> References: <1234345613-12957-1-git-send-email-kwizart@gmail.com> Message-ID: <200902111800.37882.rem@videolan.org> Le mercredi 11 f?vrier 2009 11:46:53 Nicolas Chauvet (kwizart), vous avez ?crit?: > - Ship the vlc module header zip.h > (rename isn't needed once the file in ship) > - Detect minizip presence with pkgconfig > - if .pc not available, try to assume presence from unzip.h > - Move the zlib.h detection in one place (after pkgconfig macro) > minizip in bundled within zlib in some distro > - Adds -lz in module that needs it in one place > - Prevent the compilation of libs/unzip if minizip is available > (it shound't prevent this directory to be bundled with the sources) Again, you sent a broken untested patch. You're now on my blacklist. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 11 17:24:17 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 17:24:17 +0100 (CET) Subject: [vlc-devel] commit: Fix handling of AAC ADTS (Christophe Massiot ) Message-ID: <20090211162417.9A25F2F115@skanda.videolan.org> vlc | branch: master | Christophe Massiot | Wed Feb 11 17:17:21 2009 +0100| [f3334ccb2f26fc984779015d37df7ea5b8dd88d0] | committer: Christophe Mutricy Fix handling of AAC ADTS Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f3334ccb2f26fc984779015d37df7ea5b8dd88d0 --- modules/mux/mpeg/ts.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/mux/mpeg/ts.c b/modules/mux/mpeg/ts.c index 2865082..209f334 100644 --- a/modules/mux/mpeg/ts.c +++ b/modules/mux/mpeg/ts.c @@ -1072,7 +1072,7 @@ static int AddStream( sout_mux_t *p_mux, sout_input_t *p_input ) * is implemented for AAC in TS */ //p_stream->i_stream_type = 0x11; /* LOAS/LATM */ p_stream->i_stream_type = 0x0f; /* ADTS */ - p_stream->i_stream_id = 0xfa; + p_stream->i_stream_id = 0xc0; p_sys->i_mpeg4_streams++; p_stream->i_es_id = p_stream->i_pid; break; From brezhoneg1 at yahoo.fr Wed Feb 11 17:34:33 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Wed, 11 Feb 2009 17:34:33 +0100 Subject: [vlc-devel] [PATCH] - issue with mouse-x/mouse-y on Linux Message-ID: <003001c98c66$9fde7940$b01bfac1@CCCC> In xcommon.c and sdl.c, mouse-x and mouse-y lower/upper limits are wrongly computed. Lower limits set to zero may be considered a convention, but upper limit is short of an x or y offset. Only xcommon.c and sdl.c have got this problem. The other vout modules just don't set limits at all. (Actually, that may be the best solution). This problem can be met, for example, when using the logo vout-filter and setting crop to a non-default value. The logo cannot be moved with the mouse to the upper boundaries by a x or y offset value. Erwan10 -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-corrects-a-bug-when-computing-boundaries-for-mouse-x.patch Type: application/octet-stream Size: 1641 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0003-mouse-x-and-mouse-y-wrong-boundary-calculation.patch Type: application/octet-stream Size: 1561 bytes Desc: not available URL: From rem at videolan.org Wed Feb 11 17:58:15 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 11 Feb 2009 18:58:15 +0200 Subject: [vlc-devel] [PATCH] - issue with mouse-x/mouse-y on Linux In-Reply-To: <003001c98c66$9fde7940$b01bfac1@CCCC> References: <003001c98c66$9fde7940$b01bfac1@CCCC> Message-ID: <200902111858.16179.rem@videolan.org> Le mercredi 11 f?vrier 2009 18:34:33 brezhoneg1, vous avez ?crit?: > In xcommon.c and sdl.c, mouse-x and mouse-y lower/upper limits are > wrongly computed. > Lower limits set to zero may be considered a convention, but upper limit > is short of an x or y offset. > > Only xcommon.c and sdl.c have got this problem. The other vout modules > just don't set limits at all. (Actually, that may be the best solution). To me, these patches look like they create an asymetry between top/left and bottom/right borders. That looks suspicious, or I am missing something. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 11 18:39:23 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 18:39:23 +0100 (CET) Subject: [vlc-devel] commit: Regroup AC_CONFIG_FILES, because neither MSys and Cygwin like it. This improves the building on windows. (Jean-Baptiste Kempf ) Message-ID: <20090211173923.723962F0EE@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 18:36:50 2009 +0100| [90f8447d3390e51da83788c16d984fb015f4a709] | committer: Jean-Baptiste Kempf Regroup AC_CONFIG_FILES, because neither MSys and Cygwin like it. This improves the building on windows. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=90f8447d3390e51da83788c16d984fb015f4a709 --- configure.ac | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 0cbf6af..4806174 100644 --- a/configure.ac +++ b/configure.ac @@ -5906,9 +5906,6 @@ AC_CONFIG_FILES([ src/test/Makefile bin/Makefile test/Makefile -]) - -AC_CONFIG_FILES([ modules/access/Makefile modules/access/bd/Makefile modules/access/bda/Makefile From brezhoneg1 at yahoo.fr Wed Feb 11 18:54:06 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Wed, 11 Feb 2009 18:54:06 +0100 Subject: [vlc-devel] [PATCH] - issue with mouse-x/mouse-y on Linux Message-ID: <000001c98c71$bd17daa0$1f0ff8c1@CCCC> ?Le mercredi 11 f?vrier 2009 18:34:33 brezhoneg1, vous avez ?crit?: >> In xcommon.c and sdl.c, mouse-x and mouse-y lower/upper limits are >> wrongly computed. >> Lower limits set to zero may be considered a convention, but upper limit >> is short of an x or y offset. >> >> Only xcommon.c and sdl.c have got this problem. The other vout modules >> just don't set limits at all. (Actually, that may be the best solution). >To me, these patches look like they create an asymetry between top/left and >bottom/right borders. That looks suspicious, or I am missing something. Yes, it is asymmetric because I just corrected the upper limit which leads to a real bug. I should have corrected to lower limit too for beauty of symmetry. Here is the formula used in xcommon.c : /* Compute the x coordinate and check if the value is in [0,p_vout->fmt_in.i_visible_width] */ val.i_int = ( xevent.xmotion.x - i_x ) * p_vout->fmt_in.i_visible_width / i_width + p_vout->fmt_in.i_x_offset; This formula __doesn't__ give [ 0 , p_vout->fmt_in.i_visible_width ] as stated in the comment but [ p_vout->fmt_in.i_x_offset, p_vout->fmt_in.i_visible_width + p_vout->fmt_in.i_x_offset ] And limits (against which tests must be done) are : xevent.xmotion.x - i_x = 0 xevent.xmotion.x - i_x = i_width Now, do we need [ p_vout->fmt_in.i_x_offset, p_vout->fmt_in.i_visible_width + p_vout->fmt_in.i_x_offset ] as the range of value is another question ? But, if this formula is used, this is the segment that results from it. Erwan10 From git at videolan.org Wed Feb 11 19:32:03 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 19:32:03 +0100 (CET) Subject: [vlc-devel] commit: ZIP Module - Use the system minizip when available ( Nicolas Chauvet (kwizart) ) Message-ID: <20090211183203.17AEB2F105@skanda.videolan.org> vlc | branch: master | Nicolas Chauvet (kwizart) | Wed Feb 11 10:46:53 2009 +0100| [005855e07d17af7f3900962bed415c565c562dd3] | committer: Jean-Baptiste Kempf ZIP Module - Use the system minizip when available - Ship the vlc module header zip.h (rename isn't needed once the file in ship) - Detect minizip presence with pkgconfig - if .pc not available, try to assume presence from unzip.h - Move the zlib.h detection in one place (after pkgconfig macro) minizip in bundled within zlib in some distro - Adds -lz in module that needs it in one place - Prevent the compilation of libs/unzip if minizip is available (it shound't prevent this directory to be bundled with the sources) Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=005855e07d17af7f3900962bed415c565c562dd3 --- Makefile.am | 2 + configure.ac | 58 ++++++++++++++++++++-------------------- modules/access/zip/Modules.am | 1 + 3 files changed, 32 insertions(+), 29 deletions(-) diff --git a/Makefile.am b/Makefile.am index b60031d..e3a87d2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -21,8 +21,10 @@ if HAVE_LIBGCRYPT SUBDIRS += libs/srtp endif if HAVE_ZLIB +if !HAVE_MINIZIP SUBDIRS += libs/unzip endif +endif if BUILD_VLC SUBDIRS += bin endif diff --git a/configure.ac b/configure.ac index 4806174..f9dafbc 100644 --- a/configure.ac +++ b/configure.ac @@ -550,9 +550,6 @@ AC_CHECK_FUNCS(send,,[ ]) ]) -AC_CHECK_HEADERS(zlib.h, [ - VLC_ADD_LIBS([access_http],[-lz]) -]) dnl Check for socklen_t AH_TEMPLATE(socklen_t, [Define to `int' if does not define.]) @@ -877,6 +874,33 @@ AC_ARG_VAR(PKG_CONFIG_PATH, [Paths where to find .pc not at the default location]) PKG_PROG_PKG_CONFIG() +dnl +dnl Check for zlib.h and -lz along with system -lminizip if available +dnl +AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) +AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) +if test "${have_zlib}" = "yes" +then + VLC_ADD_LIBS([access_http gme mp4 skins2 sap mkv unzip zip],[-lz]) + PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [ + AC_CHECK_HEADERS([unzip.h], [ + have_minizip=yes + MINIZIP_LIBS="-lminizip -lz" + ], [ + have_minizip=no + MINIZIP_CFLAGS="-I\$(top_builddir)/libs/unzip" + MINIZIP_LIBS="\$(top_builddir)/libs/unzip/libunzip.la" + ]) + ]) + AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) + VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) + VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS]) + VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS]) + VLC_ADD_PLUGIN([unzip]) + VLC_ADD_PLUGIN([zip]) +fi + + dnl Check for hal AC_ARG_ENABLE(hal, [ --enable-hal Linux HAL services discovery (default enabled)]) @@ -2977,10 +3001,10 @@ AC_ARG_ENABLE( id3tag, [ --disable-id3tag id3tag metadata reader plugin (default disabled)]) AS_IF([test "${enable_id3tag}" = "yes"], [ AC_CHECK_HEADERS(id3tag.h, [ - AC_CHECK_HEADERS(zlib.h, [ + if test "${have_zlib}" = "yes" VLC_ADD_LIBS([id3tag],[-lid3tag -lz]) VLC_ADD_PLUGIN([id3tag]) - ]) + fi ]) ]) @@ -3257,15 +3281,6 @@ if test "${enable_realrtsp}" = "yes"; then VLC_ADD_PLUGIN([access_realrtsp]) fi -dnl -dnl MP4 module -dnl -AC_CHECK_HEADERS(zlib.h, [ - VLC_ADD_LIBS([mp4 skins2 sap mkv gme],[-lz]) - VLC_ADD_CPPFLAGS([skins2],[-I../../../@top_srcdir@/libs/unzip]) - VLC_ADD_LIBS([skins2],[../../../libs/unzip/libunzip.la]) -] ) - AC_ARG_ENABLE(libsysfs, [ --enable-libsysfs Get user key from firewire connected iPod via libsysfs (default enabled)]) @@ -5412,21 +5427,6 @@ fi dnl -dnl ZIP files demuxer -dnl -AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) -AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) -if test "${have_zlib}" = "yes" -then - VLC_ADD_PLUGIN([unzip]) - VLC_ADD_LIBS([zip],[-lz]) - VLC_ADD_PLUGIN([zip]) - VLC_ADD_CFLAGS([zip],[-I../../../@top_srcdir@/libs/unzip]) - VLC_ADD_LIBS([zip],[../../../libs/unzip/libunzip.la]) -fi - - -dnl dnl Endianness check dnl AC_C_BIGENDIAN diff --git a/modules/access/zip/Modules.am b/modules/access/zip/Modules.am index 303c29f..b8b1f9a 100644 --- a/modules/access/zip/Modules.am +++ b/modules/access/zip/Modules.am @@ -1,5 +1,6 @@ if HAVE_ZLIB SOURCES_zip = \ + zip.h \ zipstream.c \ zipaccess.c \ $(NULL) From git at videolan.org Wed Feb 11 19:32:03 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 19:32:03 +0100 (CET) Subject: [vlc-devel] commit: Fix configure syntax. Please test. (Jean-Baptiste Kempf ) Message-ID: <20090211183203.284772F110@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 19:31:04 2009 +0100| [3f15f9d9c02cf11f45fe18924fcc71809a38be18] | committer: Jean-Baptiste Kempf Fix configure syntax. Please test. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3f15f9d9c02cf11f45fe18924fcc71809a38be18 --- configure.ac | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-) diff --git a/configure.ac b/configure.ac index f9dafbc..b0af3a2 100644 --- a/configure.ac +++ b/configure.ac @@ -888,8 +888,8 @@ then MINIZIP_LIBS="-lminizip -lz" ], [ have_minizip=no - MINIZIP_CFLAGS="-I\$(top_builddir)/libs/unzip" - MINIZIP_LIBS="\$(top_builddir)/libs/unzip/libunzip.la" + MINIZIP_CFLAGS="-I../../../@top_srcdir@//libs/unzip" + MINIZIP_LIBS="../../../libs/unzip/libunzip.la" ]) ]) AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) @@ -3001,11 +3001,11 @@ AC_ARG_ENABLE( id3tag, [ --disable-id3tag id3tag metadata reader plugin (default disabled)]) AS_IF([test "${enable_id3tag}" = "yes"], [ AC_CHECK_HEADERS(id3tag.h, [ - if test "${have_zlib}" = "yes" - VLC_ADD_LIBS([id3tag],[-lid3tag -lz]) - VLC_ADD_PLUGIN([id3tag]) - fi - ]) + AS_IF([test "${have_zlib}" = "yes"],[ + VLC_ADD_LIBS([id3tag],[-lid3tag -lz]) + VLC_ADD_PLUGIN([id3tag]) + ]) + ]) ]) dnl From jb at videolan.org Wed Feb 11 19:32:38 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 11 Feb 2009 19:32:38 +0100 Subject: [vlc-devel] [PATCH] ZIP Module - Use the system minizip when available In-Reply-To: <200902111800.37882.rem@videolan.org> References: <1234345613-12957-1-git-send-email-kwizart@gmail.com> <200902111800.37882.rem@videolan.org> Message-ID: <20090211183238.GB26943@videolan.org> On Wed, Feb 11, 2009 at 06:00:37PM +0200, R?mi Denis-Courmont wrote : > Le mercredi 11 f?vrier 2009 11:46:53 Nicolas Chauvet (kwizart), vous avez > ?crit?: > > - Ship the vlc module header zip.h > > (rename isn't needed once the file in ship) > > - Detect minizip presence with pkgconfig > > - if .pc not available, try to assume presence from unzip.h > > - Move the zlib.h detection in one place (after pkgconfig macro) > > minizip in bundled within zlib in some distro > > - Adds -lz in module that needs it in one place > > - Prevent the compilation of libs/unzip if minizip is available > > (it shound't prevent this directory to be bundled with the sources) > > Again, you sent a broken untested patch. Fixed in [3f15f9d9c02cf11f45fe18924fcc71809a38be18] Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Wed Feb 11 19:33:24 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 19:33:24 +0100 (CET) Subject: [vlc-devel] commit: Change tab order in effects. (Jean-Baptiste Kempf ) Message-ID: <20090211183324.082C42F124@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 19:33:07 2009 +0100| [35103a19f16ef8544e73d31d07f9885eb89c7bc9] | committer: Jean-Baptiste Kempf Change tab order in effects. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=35103a19f16ef8544e73d31d07f9885eb89c7bc9 --- modules/gui/qt4/ui/video_effects.ui | 208 +++++++++++++++++----------------- 1 files changed, 104 insertions(+), 104 deletions(-) diff --git a/modules/gui/qt4/ui/video_effects.ui b/modules/gui/qt4/ui/video_effects.ui index 88c0e56..a0f256b 100644 --- a/modules/gui/qt4/ui/video_effects.ui +++ b/modules/gui/qt4/ui/video_effects.ui @@ -5,8 +5,8 @@ 0 0 - 472 - 290 + 533 + 275 @@ -224,106 +224,6 @@
- - - _("Color fun") - - - - - - _("Color extraction") - - - true - - - false - - - - - - _("Color") - - - - - - - >HHHHHH;# - - - - - - - - - - _("Invert colors") - - - - - - - _("Color threshold") - - - true - - - false - - - - - - _("Similarity") - - - - - - - Qt::Horizontal - - - - - - - Qt::Horizontal - - - - - - - _("Saturation") - - - - - - - _("Color") - - - - - - - >HHHHHH;# - - - - - - - - _("Crop") @@ -419,7 +319,7 @@ QSizePolicy::Expanding - + 20 40 @@ -437,7 +337,7 @@ - _("Magnification") + _("Magnification/Zoom") @@ -540,6 +440,106 @@
+ + + _("Color fun") + + + + + + _("Color extraction") + + + true + + + false + + + + + + _("Color") + + + + + + + >HHHHHH;# + + + + + + + + + + _("Invert colors") + + + + + + + _("Color threshold") + + + true + + + false + + + + + + _("Similarity") + + + + + + + Qt::Horizontal + + + + + + + Qt::Horizontal + + + + + + + _("Saturation") + + + + + + + _("Color") + + + + + + + >HHHHHH;# + + + + + + + + _("Image modification") From rem at videolan.org Wed Feb 11 19:42:52 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Wed, 11 Feb 2009 20:42:52 +0200 Subject: [vlc-devel] [PATCH] ZIP Module - Use the system minizip when available In-Reply-To: <20090211183238.GB26943@videolan.org> References: <1234345613-12957-1-git-send-email-kwizart@gmail.com> <200902111800.37882.rem@videolan.org> <20090211183238.GB26943@videolan.org> Message-ID: <200902112042.53203.rem@videolan.org> Le mercredi 11 f?vrier 2009 20:32:38 Jean-Baptiste Kempf, vous avez ?crit?: > On Wed, Feb 11, 2009 at 06:00:37PM +0200, R?mi Denis-Courmont wrote : > > Le mercredi 11 f?vrier 2009 11:46:53 Nicolas Chauvet (kwizart), vous avez > > > > ?crit?: > > > - Ship the vlc module header zip.h > > > (rename isn't needed once the file in ship) > > > - Detect minizip presence with pkgconfig > > > - if .pc not available, try to assume presence from unzip.h > > > - Move the zlib.h detection in one place (after pkgconfig macro) > > > minizip in bundled within zlib in some distro > > > - Adds -lz in module that needs it in one place > > > - Prevent the compilation of libs/unzip if minizip is available > > > (it shound't prevent this directory to be bundled with the sources) > > > > Again, you sent a broken untested patch. > > Fixed in [3f15f9d9c02cf11f45fe18924fcc71809a38be18] If there is no push back against crappy patches, there is no incentive for people to test and fix their crap before they submit it. This is not fair to those who do test, and creates an incentive to not test properly. And the more crap, the less reviewers, the more crap, the less reviewers, etc. Besides, it is highly objectionable from an educational perspective. This patch was in no way time-critical, that it would have needed to be fixed. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From rem at videolan.org Wed Feb 11 19:44:13 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Wed, 11 Feb 2009 20:44:13 +0200 Subject: [vlc-devel] [PATCH] - issue with mouse-x/mouse-y on Linux In-Reply-To: <000001c98c71$bd17daa0$1f0ff8c1@CCCC> References: <000001c98c71$bd17daa0$1f0ff8c1@CCCC> Message-ID: <200902112044.13997.rem@videolan.org> Le mercredi 11 f?vrier 2009 19:54:06 brezhoneg1, vous avez ?crit?: > Now, do we need [ p_vout->fmt_in.i_x_offset, > p_vout->fmt_in.i_visible_width + p_vout->fmt_in.i_x_offset ] as the > range of value is another question ? But, if this formula is used, this > is the segment that results from it. mouse-x and mouse-y are used by plugins to determine where (in the original format reference) the user clicks. DVD menus and puzzles are the two users that I know. IMHO, no matter how you look at it, there is no way to obtain a general correct formula with non zero offsets. As far as I understand, the video offsets is nothing but the amount of padding at the beginning of each scan line and the number of initial unused scan lines. How that corelates to the original width should not be known. IMHO, this is just yet another bug in the video filter architecture. The mouse coordinates should be translated by filters as appropriate. Anyway, that exceeds my competences already. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From jb at videolan.org Wed Feb 11 19:47:06 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 11 Feb 2009 19:47:06 +0100 Subject: [vlc-devel] [PATCH] ZIP Module - Use the system minizip when available In-Reply-To: <200902112042.53203.rem@videolan.org> References: <1234345613-12957-1-git-send-email-kwizart@gmail.com> <200902111800.37882.rem@videolan.org> <20090211183238.GB26943@videolan.org> <200902112042.53203.rem@videolan.org> Message-ID: <20090211184706.GA28702@videolan.org> On Wed, Feb 11, 2009 at 08:42:52PM +0200, R?mi Denis-Courmont wrote : > Besides, it is highly objectionable from an educational perspective. This > patch was in no way time-critical, that it would have needed to be fixed. While you are right here, you forgot something: Understanding autotools is highly educational for me. Working on that patch helped me to better understand autotools. I know it is a bit selfish, but I work on VLC because I can learn technical things. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Wed Feb 11 20:19:45 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 20:19:45 +0100 (CET) Subject: [vlc-devel] commit: Qt: code simplification and usage simplification for SpeedLabel ( Jean-Baptiste Kempf ) Message-ID: <20090211191945.A87D02F118@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 20:18:33 2009 +0100| [40352944d62388fe9a7da6a99a700eb2e1bcbb4d] | committer: Jean-Baptiste Kempf Qt: code simplification and usage simplification for SpeedLabel Clicking on it brings the adjustable slider. DoubleClicking doesn't do anything anymore. This way the behaviour is more usable and less complex (don't be too KDEish!) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=40352944d62388fe9a7da6a99a700eb2e1bcbb4d --- modules/gui/qt4/components/interface_widgets.cpp | 9 ++------- modules/gui/qt4/components/interface_widgets.hpp | 5 ++--- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/modules/gui/qt4/components/interface_widgets.cpp b/modules/gui/qt4/components/interface_widgets.cpp index a57cae1..7249022 100644 --- a/modules/gui/qt4/components/interface_widgets.cpp +++ b/modules/gui/qt4/components/interface_widgets.cpp @@ -284,8 +284,7 @@ SpeedLabel::SpeedLabel( intf_thread_t *_p_intf, const QString& text, QWidget *parent ) : QLabel( text, parent ), p_intf( _p_intf ) { - setToolTip( qtr( "Current playback speed.\nRight click to adjust" ) ); - setContextMenuPolicy ( Qt::CustomContextMenu ); + setToolTip( qtr( "Current playback speed.\nClick to adjust" ) ); /* Create the Speed Control Widget */ speedControl = new SpeedControlWidget( p_intf, this ); @@ -295,16 +294,12 @@ SpeedLabel::SpeedLabel( intf_thread_t *_p_intf, const QString& text, widgetAction->setDefaultWidget( speedControl ); speedControlMenu->addAction( widgetAction ); - /* Speed Label behaviour: - - right click gives the vertical speed slider */ - CONNECT( this, customContextMenuRequested( QPoint ), - this, showSpeedMenu( QPoint ) ); - /* Change the SpeedRate in the Status Bar */ CONNECT( THEMIM->getIM(), rateChanged( int ), this, setRate( int ) ); CONNECT( THEMIM, inputChanged( input_thread_t * ), speedControl, activateOnState() ); + } SpeedLabel::~SpeedLabel() { diff --git a/modules/gui/qt4/components/interface_widgets.hpp b/modules/gui/qt4/components/interface_widgets.hpp index 206c579..3b7d01b 100644 --- a/modules/gui/qt4/components/interface_widgets.hpp +++ b/modules/gui/qt4/components/interface_widgets.hpp @@ -160,10 +160,9 @@ public: virtual ~SpeedLabel(); protected: - virtual void mouseDoubleClickEvent ( QMouseEvent * event ) + virtual void mousePressEvent ( QMouseEvent * event ) { - event->accept(); - THEMIM->getIM()->setRate( INPUT_RATE_DEFAULT ); + showSpeedMenu( event->pos() ); } private slots: void showSpeedMenu( QPoint ); From git at videolan.org Wed Feb 11 20:24:27 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 20:24:27 +0100 (CET) Subject: [vlc-devel] commit: s/Buffering/Buff: this was too long and resized the timeLabel too much. ( Jean-Baptiste Kempf ) Message-ID: <20090211192427.BB6932F118@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 20:24:04 2009 +0100| [ed8fa00386df33fc0eb1b296c36ab3b3dbdc6ee8] | committer: Jean-Baptiste Kempf s/Buffering/Buff: this was too long and resized the timeLabel too much. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ed8fa00386df33fc0eb1b296c36ab3b3dbdc6ee8 --- modules/gui/qt4/components/interface_widgets.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/interface_widgets.cpp b/modules/gui/qt4/components/interface_widgets.cpp index 7249022..3f40b2f 100644 --- a/modules/gui/qt4/components/interface_widgets.cpp +++ b/modules/gui/qt4/components/interface_widgets.cpp @@ -501,7 +501,7 @@ void TimeLabel::setCaching( float f_cache ) QString amount; amount.setNum( (int)(100 * f_cache) ); msg_Dbg( p_intf, "New caching: %d", (int)(100*f_cache)); - setText( "Buffering " + amount + "%" ); + setText( "Buff: " + amount + "%" ); } From brezhoneg1 at yahoo.fr Wed Feb 11 21:32:59 2009 From: brezhoneg1 at yahoo.fr (brezhoneg Breizh) Date: Wed, 11 Feb 2009 20:32:59 +0000 (GMT) Subject: [vlc-devel] Re : [PATCH] - issue with mouse-x/mouse-y on Linux References: <000001c98c71$bd17daa0$1f0ff8c1@CCCC> <200902112044.13997.rem@videolan.org> Message-ID: <464895.38210.qm@web28605.mail.ukl.yahoo.com> ________________________________ De : R?mi Denis-Courmont Le mercredi 11 f?vrier 2009 19:54:06 brezhoneg1, vous avez ?crit : >> Now, do we need [ p_vout->fmt_in.i_x_offset, >> p_vout->fmt_in.i_visible_width + p_vout->fmt_in.i_x_offset ] as the >> range of value is another question ? But, if this formula is used, this >> is the segment that results from it. >mouse-x and mouse-y are used by plugins to determine where (in the original >format reference) the user clicks. DVD menus and puzzles are the two users >that I know. IMHO, no matter how you look at it, there is no way to obtain a >general correct formula with non zero offsets. As far as I understand, the >video offsets is nothing but the amount of padding at the beginning of each >scan line and the number of initial unused scan lines. You just gave me the element I was missing, : mouse-x and mouse-y have to be in the original format reference for DVD menus and puzzles to exactly pinpoint things. Actually, x_offset and y_offset are only used (in my tests) when cropping. Since a picture is never actually truncated, a (x_offset, y_offset, visible_width, visible_height) tells everybody the subset of pixels that are really used in memory. Yet, DVD menus still need the full non-truncated picture to figure out things. So the [ xoffset, x_offset + visible_width] is indeed the right reference since it refers to the full untouched initial picture ( whereas [0, visible_width] would be plainly wrong ) Now, for xcommon.c and sdl.c, we should do something because the way it is done is not consistent. Either we remove testing the limits (vout in msw, mac and others seem to live without them ?) or we guarantee the entire segment (not a truncated one!) is available (Right now, we have { 0 } U [x_offset, visible_width - x_offset ] set !!!!) Which solution do you prefer ? >How that corelates to the original width should not be known. IMHO, this is >just yet another bug in the video filter architecture. The mouse coordinates >should be translated by filters as appropriate. Anyway, that exceeds my >competences already. -- __________________________________________________________________________________________________ Ne pleurez pas si votre Webmail ferme ! R?cup?rez votre historique sur Yahoo! Mail ! http://fr.docs.yahoo.com/mail/transfert_mails.html From rem at videolan.org Wed Feb 11 22:10:37 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Wed, 11 Feb 2009 23:10:37 +0200 Subject: [vlc-devel] Re : [PATCH] - issue with mouse-x/mouse-y on Linux In-Reply-To: <464895.38210.qm@web28605.mail.ukl.yahoo.com> References: <000001c98c71$bd17daa0$1f0ff8c1@CCCC> <200902112044.13997.rem@videolan.org> <464895.38210.qm@web28605.mail.ukl.yahoo.com> Message-ID: <200902112310.37762.rem@videolan.org> Le mercredi 11 f?vrier 2009 22:32:59 brezhoneg Breizh, vous avez ?crit?: > Actually, x_offset and y_offset are only used (in my tests) when cropping. As far as I can tell, that is not true with scale, rotate and drop-mode deinterlacing. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 11 22:11:23 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 22:11:23 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_The_playlist_have_to_be_locked_wh?= =?utf-8?q?en_calling_playlist=5FItemGetById_=28_not_tested_for_wince_and_?= =?utf-8?q?pda_interface=29=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090211211123.630762F15A@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 11 15:29:51 2009 +0100| [7e4419bcc6ed629cd9a06863965260b96b9cb1fa] | committer: R?mi Duraffort The playlist have to be locked when calling playlist_ItemGetById (not tested for wince and pda interface). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7e4419bcc6ed629cd9a06863965260b96b9cb1fa --- include/vlc_playlist.h | 2 +- modules/control/dbus.c | 2 +- modules/control/http/http.c | 4 +- modules/control/http/macro.c | 3 +- modules/control/http/rpn.c | 8 ++- modules/gui/pda/pda_callbacks.c | 2 +- .../gui/qt4/components/playlist/playlist_model.cpp | 55 +++++++++---------- .../gui/qt4/components/playlist/standardpanel.cpp | 3 +- modules/gui/skins2/vars/playtree.cpp | 10 +++- modules/gui/wince/playlist.cpp | 34 ++++++++----- modules/misc/lua/libs/playlist.c | 5 +- src/playlist/item.c | 3 +- src/playlist/search.c | 22 +++----- 13 files changed, 81 insertions(+), 72 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=7e4419bcc6ed629cd9a06863965260b96b9cb1fa From git at videolan.org Wed Feb 11 22:11:23 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 22:11:23 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Playlist_have_to_be_lock_for_play?= =?utf-8?q?list=5FItemGetByInput_too=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090211211123.7DEB62F17F@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 11 15:50:00 2009 +0100| [f88693fed217b8df6b359dcec63f7a35494e0c10] | committer: R?mi Duraffort Playlist have to be lock for playlist_ItemGetByInput too. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f88693fed217b8df6b359dcec63f7a35494e0c10 --- include/vlc_playlist.h | 2 +- modules/control/http/rpn.c | 5 +++-- modules/gui/macosx/playlist.m | 4 ++-- modules/gui/macosx/wizard.m | 2 +- src/playlist/search.c | 23 ++++++++--------------- 5 files changed, 15 insertions(+), 21 deletions(-) diff --git a/include/vlc_playlist.h b/include/vlc_playlist.h index c339b82..c30a09b 100644 --- a/include/vlc_playlist.h +++ b/include/vlc_playlist.h @@ -323,7 +323,7 @@ VLC_EXPORT( playlist_item_t*, playlist_ItemToNode, (playlist_t *,playlist_item_t /********************************** Item search *************************/ VLC_EXPORT( playlist_item_t *, playlist_ItemGetById, (playlist_t *, int ) ); -VLC_EXPORT( playlist_item_t *, playlist_ItemGetByInput, (playlist_t *,input_item_t *, bool ) ); +VLC_EXPORT( playlist_item_t *, playlist_ItemGetByInput, (playlist_t *,input_item_t * ) ); VLC_EXPORT( playlist_item_t *, playlist_ItemGetByInputId, (playlist_t *, int, playlist_item_t *) ); VLC_EXPORT( int, playlist_LiveSearchUpdate, (playlist_t *, playlist_item_t *, const char *) ); diff --git a/modules/control/http/rpn.c b/modules/control/http/rpn.c index e58bcf5..e4689ff 100644 --- a/modules/control/http/rpn.c +++ b/modules/control/http/rpn.c @@ -854,11 +854,12 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t *vars, { playlist_item_t *p_item; msg_Dbg( p_intf, "requested mrl add: %s", mrl ); + playlist_Lock( p_sys->p_playlist ); p_item = playlist_ItemGetByInput( p_sys->p_playlist, - p_input, - pl_Unlocked ); + p_input ); if( p_item ) i_ret = p_item->i_id; + playlist_Unlock( p_sys->p_playlist ); } else msg_Warn( p_intf, "adding mrl %s failed", mrl ); diff --git a/modules/gui/macosx/playlist.m b/modules/gui/macosx/playlist.m index de5fff9..14018c6 100644 --- a/modules/gui/macosx/playlist.m +++ b/modules/gui/macosx/playlist.m @@ -1120,7 +1120,7 @@ { playlist_item_t *p_item = NULL; playlist_item_t *p_node = NULL; - p_item = playlist_ItemGetByInput( p_playlist, p_input, pl_Locked ); + p_item = playlist_ItemGetByInput( p_playlist, p_input ); if( p_item ) { if( p_item->i_children == -1 ) @@ -1173,7 +1173,7 @@ if( i_item == 0 && !b_enqueue ) { playlist_item_t *p_item; - p_item = playlist_ItemGetByInput( p_playlist, p_input, pl_Locked ); + p_item = playlist_ItemGetByInput( p_playlist, p_input ); playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, pl_Locked, p_node, p_item ); } PL_UNLOCK; diff --git a/modules/gui/macosx/wizard.m b/modules/gui/macosx/wizard.m index e2344ae..52c3086 100644 --- a/modules/gui/macosx/wizard.m +++ b/modules/gui/macosx/wizard.m @@ -1312,7 +1312,7 @@ static VLCWizard *_o_sharedInstance = nil; { /* play the first item and add the others afterwards */ PL_LOCK; - playlist_item_t *p_item = playlist_ItemGetByInput( p_playlist, p_input, pl_Locked ); + playlist_item_t *p_item = playlist_ItemGetByInput( p_playlist, p_input ); playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, pl_Locked, NULL, p_item ); PL_UNLOCK; diff --git a/src/playlist/search.c b/src/playlist/search.c index f7708b5..66bd3ad 100644 --- a/src/playlist/search.c +++ b/src/playlist/search.c @@ -53,36 +53,29 @@ playlist_item_t* playlist_ItemGetById( playlist_t * p_playlist , int i_id ) /** * Search an item by its input_item_t - * - * \param p_playlist the playlist - * \param p_item the input_item_t to find - * \return the item, or NULL on failure + * The playlist have to be locked + * @param p_playlist: the playlist + * @param p_item: the input_item_t to find + * @return the item, or NULL on failure */ -playlist_item_t * playlist_ItemGetByInput( playlist_t * p_playlist , - input_item_t *p_item, - bool b_locked ) +playlist_item_t* playlist_ItemGetByInput( playlist_t * p_playlist, + input_item_t *p_item ) { int i; - PL_LOCK_IF( !b_locked ); + PL_ASSERT_LOCKED; if( get_current_status_item( p_playlist ) && get_current_status_item( p_playlist )->p_input == p_item ) { - /* FIXME: this is potentially dangerous, we could destroy - * p_ret any time soon */ - playlist_item_t *p_ret = get_current_status_item( p_playlist ); - PL_UNLOCK_IF( !b_locked ); - return p_ret; + return get_current_status_item( p_playlist ); } /** \todo Check if this is always incremental and whether we can bsearch */ for( i = 0 ; i < p_playlist->all_items.i_size; i++ ) { if( ARRAY_VAL(p_playlist->all_items, i)->p_input->i_id == p_item->i_id ) { - PL_UNLOCK_IF( !b_locked ); return ARRAY_VAL(p_playlist->all_items, i); } } - PL_UNLOCK_IF( !b_locked ); return NULL; } From git at videolan.org Wed Feb 11 22:12:37 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 22:12:37 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Stop_spamming_the_debug_logs_=28_?= =?utf-8?q?R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090211211237.E225C2F159@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 21:58:32 2009 +0200| [c9c8a74b78f9187a2343d778406a8823219db710] | committer: R?mi Denis-Courmont Stop spamming the debug logs > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c9c8a74b78f9187a2343d778406a8823219db710 --- src/misc/variables.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/misc/variables.c b/src/misc/variables.c index 26d79d0..be81856 100644 --- a/src/misc/variables.c +++ b/src/misc/variables.c @@ -1406,8 +1406,9 @@ static int InheritValue( vlc_object_t *p_this, const char *psz_name, /* Duplicate value if needed */ p_var->ops->pf_dup( p_val ); - msg_Dbg( p_this, "Inherited value for var %s from object %s", psz_name ? : "(null)", - p_this->psz_object_name ? : "(Unknown)" ) ; + /*msg_Dbg( p_this, "Inherited value for var %s from object %s", + psz_name ? : "(null)", + p_this->psz_object_name ? : "(Unknown)" );*/ return VLC_SUCCESS; } else if ( p_this->p_parent ) /* We are still not there */ @@ -1462,11 +1463,12 @@ static int InheritValue( vlc_object_t *p_this, const char *psz_name, break; } default: - msg_Warn( p_this, "Could not inherit value for var %s from config. Invalid Type", psz_name ) ; + msg_Warn( p_this, "Could not inherit value for var %s " + "from config. Invalid Type", psz_name ); return VLC_ENOOBJ; break; } - msg_Dbg( p_this, "Inherited value for var %s from config", psz_name ) ; + /*msg_Dbg( p_this, "Inherited value for var %s from config", psz_name );*/ return VLC_SUCCESS; } From git at videolan.org Wed Feb 11 22:12:37 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 22:12:37 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Privatize_input=5FPreparse_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090211211238.03E5A2F186@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 22:24:17 2009 +0200| [604115295431529b06812fc7598fae25c633188b] | committer: R?mi Denis-Courmont Privatize input_Preparse > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=604115295431529b06812fc7598fae25c633188b --- include/vlc_input.h | 3 --- src/input/input.c | 4 ++-- src/input/input_interface.h | 2 ++ src/libvlccore.sym | 1 - src/playlist/preparser.c | 2 +- 5 files changed, 5 insertions(+), 7 deletions(-) diff --git a/include/vlc_input.h b/include/vlc_input.h index 5d336fd..55173d3 100644 --- a/include/vlc_input.h +++ b/include/vlc_input.h @@ -439,9 +439,6 @@ VLC_EXPORT( input_thread_t *, __input_CreateThread, ( vlc_object_t *, input_item VLC_EXPORT( void, input_StopThread, ( input_thread_t * ) ); -#define input_Preparse(a,b) __input_Preparse(VLC_OBJECT(a),b) -VLC_EXPORT( int, __input_Preparse, ( vlc_object_t *, input_item_t * ) ); - #define input_Read(a,b,c) __input_Read(VLC_OBJECT(a),b, c) VLC_EXPORT( int, __input_Read, ( vlc_object_t *, input_item_t *, bool ) ); diff --git a/src/input/input.c b/src/input/input.c index 53b6caf..79e42eb 100644 --- a/src/input/input.c +++ b/src/input/input.c @@ -412,13 +412,13 @@ int __input_Read( vlc_object_t *p_parent, input_item_t *p_item, /** * Initialize an input and initialize it to preparse the item - * This function is blocking. It will only accept to parse files + * This function is blocking. It will only accept parsing regular files. * * \param p_parent a vlc_object_t * \param p_item an input item * \return VLC_SUCCESS or an error */ -int __input_Preparse( vlc_object_t *p_parent, input_item_t *p_item ) +int input_Preparse( vlc_object_t *p_parent, input_item_t *p_item ) { input_thread_t *p_input; diff --git a/src/input/input_interface.h b/src/input/input_interface.h index ae963b5..e113944 100644 --- a/src/input/input_interface.h +++ b/src/input/input_interface.h @@ -38,6 +38,8 @@ void input_item_SetPreparsed( input_item_t *p_i, bool b_preparsed ); void input_item_SetArtNotFound( input_item_t *p_i, bool b_not_found ); void input_item_SetArtFetched( input_item_t *p_i, bool b_art_fetched ); +int input_Preparse( vlc_object_t *, input_item_t * ); + /* misc/stats.c * FIXME it should NOT be defined here or not coded in misc/stats.c */ input_stats_t *stats_NewInputStats( input_thread_t *p_input ); diff --git a/src/libvlccore.sym b/src/libvlccore.sym index ac593f7..b022e75 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -182,7 +182,6 @@ input_item_SetMeta input_item_SetName input_item_SetURI input_MetaTypeToLocalizedString -__input_Preparse __input_Read input_SplitMRL input_StopThread diff --git a/src/playlist/preparser.c b/src/playlist/preparser.c index c8c52ca..74b3961 100644 --- a/src/playlist/preparser.c +++ b/src/playlist/preparser.c @@ -127,7 +127,7 @@ static void Preparse( playlist_t *p_playlist, input_item_t *p_item ) /* Do not preparse if it is already done (like by playing it) */ if( !input_item_IsPreparsed( p_item ) ) { - input_Preparse( p_playlist, p_item ); + input_Preparse( VLC_OBJECT(p_playlist), p_item ); input_item_SetPreparsed( p_item, true ); var_SetInteger( p_playlist, "item-change", p_item->i_id ); From git at videolan.org Wed Feb 11 22:12:38 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 22:12:38 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Preparsers_are_quiet_objects=2C_n?= =?utf-8?q?o_need_to_check_when_logging_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090211211238.164D72F159@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 22:38:54 2009 +0200| [61f1c0ba02bf26281b96f5815def50c85e7c059d] | committer: R?mi Denis-Courmont Preparsers are quiet objects, no need to check when logging > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=61f1c0ba02bf26281b96f5815def50c85e7c059d --- src/input/input.c | 8 ++------ 1 files changed, 2 insertions(+), 6 deletions(-) diff --git a/src/input/input.c b/src/input/input.c index 79e42eb..4d2ac51 100644 --- a/src/input/input.c +++ b/src/input/input.c @@ -1217,12 +1217,8 @@ static int Init( input_thread_t * p_input ) InputUpdateMeta( p_input, p_meta ); } - if( !p_input->b_preparsing ) - { - msg_Dbg( p_input, "`%s' successfully opened", - p_input->p->p_item->psz_uri ); - - } + msg_Dbg( p_input, "`%s' successfully opened", + p_input->p->p_item->psz_uri ); /* initialization is complete */ input_ChangeState( p_input, PLAYING_S ); From git at videolan.org Wed Feb 11 22:12:38 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 22:12:38 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_one_=28of_several=29_leaks_in?= =?utf-8?q?_interaction_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090211211238.5107E2F186@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 23:11:23 2009 +0200| [3d5b9c5c3df14106ccb8d8706d2b32ddc30f99be] | committer: R?mi Denis-Courmont Fix one (of several) leaks in interaction > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3d5b9c5c3df14106ccb8d8706d2b32ddc30f99be --- src/interface/interaction.c | 22 +++++++++++++++++----- 1 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/interface/interaction.c b/src/interface/interaction.c index 9103236..31110aa 100644 --- a/src/interface/interaction.c +++ b/src/interface/interaction.c @@ -88,6 +88,14 @@ static int DialogSend( interaction_dialog_t * ); return VLC_EGENERIC; \ va_end( args ) +static inline int DialogFireForget( interaction_dialog_t *d ) +{ + int ret = DialogSend( d ); + if( ret == VLC_EGENERIC ) + DialogDestroy( d ); + return ret; +} + /** * Send an error message, both in a blocking and non-blocking way * @@ -112,7 +120,7 @@ int __intf_UserFatal( vlc_object_t *p_this, bool b_blocking, else p_new->i_flags = DIALOG_NONBLOCKING_ERROR; - return DialogSend( p_new ); + return DialogFireForget( p_new ); } /** @@ -135,7 +143,7 @@ int __intf_UserWarn( vlc_object_t *p_this, p_new->i_flags = DIALOG_WARNING; - return DialogSend( p_new ); + return DialogFireForget( p_new ); } /** @@ -165,7 +173,7 @@ int __intf_UserYesNo( vlc_object_t *p_this, p_new->psz_alternate_button = strdup( psz_alternate ); p_new->psz_other_button = psz_other ? strdup( psz_other ) : NULL; - return DialogSend( p_new ); + return DialogFireForget( p_new ); } /** @@ -277,7 +285,9 @@ int __intf_UserLoginPassword( vlc_object_t *p_this, i_ret = DialogSend( p_new ); - if( i_ret != DIALOG_CANCELLED && i_ret != VLC_EGENERIC ) + if( i_ret == VLC_EGENERIC ) + DialogDestroy( p_new ); + else if( i_ret != DIALOG_CANCELLED ) { *ppsz_login = p_new->psz_returned[0]? strdup( p_new->psz_returned[0] ) : NULL; @@ -311,7 +321,9 @@ int __intf_UserStringInput( vlc_object_t *p_this, i_ret = DialogSend( p_new ); - if( i_ret != DIALOG_CANCELLED ) + if( i_ret == VLC_EGENERIC ) + DialogDestroy( p_new ); + else if( i_ret != DIALOG_CANCELLED ) { *ppsz_usersString = p_new->psz_returned[0]? strdup( p_new->psz_returned[0] ) : NULL; From git at videolan.org Wed Feb 11 22:12:38 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 22:12:38 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Cleanup_input_stats_when_sout_fai?= =?utf-8?q?ls_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090211211238.2CB8B2F183@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 22:41:02 2009 +0200| [f90f0553f7e7d1ac8e6e02a92613abc17206473d] | committer: R?mi Denis-Courmont Cleanup input stats when sout fails > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f90f0553f7e7d1ac8e6e02a92613abc17206473d --- src/input/input.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/src/input/input.c b/src/input/input.c index 4d2ac51..49abe70 100644 --- a/src/input/input.c +++ b/src/input/input.c @@ -1142,7 +1142,7 @@ static int Init( input_thread_t * p_input ) #ifdef ENABLE_SOUT ret = InitSout( p_input ); if( ret != VLC_SUCCESS ) - return ret; /* FIXME: goto error; should be better here */ + goto error_stats; #endif /* Create es out */ @@ -1240,6 +1240,9 @@ error: input_ressource_SetInput( p_input->p->p_ressource, NULL ); } +#ifdef ENABLE_SOUT +error_stats: +#endif if( !p_input->b_preparsing && libvlc_stats( p_input ) ) { #define EXIT_COUNTER( c ) do { if( p_input->p->counters.p_##c ) \ From jpd at m2x.nl Wed Feb 11 22:07:06 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Wed, 11 Feb 2009 22:07:06 +0100 (CET) Subject: [vlc-devel] [patch] Alter symbol-globalising dlopen(RTLD_NOLOAD) call to succeed Message-ID: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> Always run dlopen(vlccore,RTLD_NOLOAD) when available and add RTLD_NOW to prevent the call from failing with an invalid argument error. diff --git a/src/modules/os.c b/src/modules/os.c index 53368e4..79f227d 100644 --- a/src/modules/os.c +++ b/src/modules/os.c @@ -136,9 +136,11 @@ int module_Call( vlc_object_t *obj, module_t *p_module ) /* Make sure libvlccore is in the global namespace */ static void load_libvlccore( void ) { - if( !dlsym( RTLD_DEFAULT, "libvlc_Quit" ) - && !dlopen( "libvlccore.so", RTLD_GLOBAL|RTLD_NOLOAD ) ) - fprintf( stderr, "ERROR: failed loading libvlccore\n" ); + // Need either RTLD_NOW or RTLD_LAZY or the call will fail even with + // RTLD_NOLOAD set. + if( !dlopen( "libvlccore.so", RTLD_GLOBAL|RTLD_NOLOAD|RTLD_NOW ) ) + fprintf( stderr, "ERROR: failed loading libvlccore (%s)\n", + dlerror() ); } #endif From fkuehne.videolan at googlemail.com Wed Feb 11 22:59:10 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Wed, 11 Feb 2009 22:59:10 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Segregate_vout_window_types_?= =?iso-8859-1?q?=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <20090131184040.21C6D2E746@skanda.videolan.org> References: <20090131184040.21C6D2E746@skanda.videolan.org> Message-ID: <42761EC4-FD74-4AF3-BB1C-EFB4A0695086@gmail.com> Hello there, this commit (and some following) breaks the video output at all on Mac OS X, as kind of visible even in the former mail by reading closely. [1] I'm wondering whether this commit is really necessary. I don't have the time and more importantly not the knowledge to fix this for Mac OS X. So, it is up to fellow OS X developers (which seem to lack time too) and other people with vout knowledge. Or we just revert and post- pone this API change with no user impact to VLC 1.1. Additionally, I would like to underline that committing this kind of stuff one day ahead of a Feature Freeze and especially not documenting the _obvious_ breakage of an entire port which got the 2nd largest user base of VLC (okay, you surely don't care about the latter) is no good move. I had to spend a couple of hours of my spare time to find this commit as "Segregate vout window types" without any explanation is not exactly obvious. A person who blames people on this list about missing documentation and bad behaviour should know better! (still) Best regards, Felix [1] vout_RequestWindow is only handled for XWindow and HWND, etc. From git at videolan.org Wed Feb 11 23:30:40 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 23:30:40 +0100 (CET) Subject: [vlc-devel] commit: GSoC: MTP Devices initial release (Fabio Ritrovato ) Message-ID: <20090211223040.B7C592F186@skanda.videolan.org> vlc | branch: master | Fabio Ritrovato | Mon Feb 2 19:06:28 2009 +0100| [7f04d5a370677c4b6b81342a5b3441b1b180f38d] | committer: Laurent Aimar GSoC: MTP Devices initial release I have modified the original author patch to fix: - vlc_cancelrestore (mtp). - libmtp initialisation (race condition). Signed-off-by: Laurent Aimar > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7f04d5a370677c4b6b81342a5b3441b1b180f38d --- configure.ac | 15 ++ modules/access/Modules.am | 1 + modules/access/mtp.c | 325 +++++++++++++++++++++++++++++++++ modules/services_discovery/Modules.am | 1 + modules/services_discovery/mtp.c | 289 +++++++++++++++++++++++++++++ 5 files changed, 631 insertions(+), 0 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=7f04d5a370677c4b6b81342a5b3441b1b180f38d From git at videolan.org Wed Feb 11 23:30:40 2009 From: git at videolan.org (git version control) Date: Wed, 11 Feb 2009 23:30:40 +0100 (CET) Subject: [vlc-devel] commit: Fixed msg_Info abuses. (Laurent Aimar ) Message-ID: <20090211223040.C79E22F192@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 11 22:38:02 2009 +0100| [dbb3a9c9b4472ef09ea6c9dbd32399f67984d670] | committer: Laurent Aimar Fixed msg_Info abuses. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dbb3a9c9b4472ef09ea6c9dbd32399f67984d670 --- modules/services_discovery/mtp.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) diff --git a/modules/services_discovery/mtp.c b/modules/services_discovery/mtp.c index 55c104e..ecffca5 100644 --- a/modules/services_discovery/mtp.c +++ b/modules/services_discovery/mtp.c @@ -147,7 +147,7 @@ static void *Run( void *data ) i_status == 0 ) { /* Found a new device, add it */ - msg_Info( p_sd, "New device found" ); + msg_Dbg( p_sd, "New device found" ); if( AddDevice( p_sd, &p_rawdevices[0] ) == VLC_SUCCESS ) i_status = 1; } @@ -191,7 +191,9 @@ static int AddDevice( services_discovery_t *p_sd, p_sd->p_sys->i_product_id = p_raw_device->device_entry.product_id; if( ( p_track = LIBMTP_Get_Tracklisting_With_Callback( p_device, CountTracks, p_sd ) ) == NULL ) - msg_Info( p_sd, "No tracks on the device" ); + { + msg_Warn( p_sd, "No tracks on the device" ); + } else { if( !( p_sd->p_sys->pp_items = calloc( p_sd->p_sys->i_tracks_num, @@ -214,7 +216,7 @@ static int AddDevice( services_discovery_t *p_sd, } else { - msg_Info( p_sd, "No device found, after all" ); + msg_Warn( p_sd, "No device found, after all" ); return VLC_EGENERIC; } } From fenrir at via.ecp.fr Wed Feb 11 23:35:30 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Wed, 11 Feb 2009 23:35:30 +0100 Subject: [vlc-devel] [PATCH] GSoC: MTP Devices initial release In-Reply-To: <57529f2d0902021003q1dbe608cv9346699a77d6782d@mail.gmail.com> References: <57529f2d0901241136l548e1ce9h2a5239a6517c01cc@mail.gmail.com> <20090128091102.GA8430@via.ecp.fr> <57529f2d0901281203m28aeb901v8eeada8a2a8c546@mail.gmail.com> <200901282228.16027.rem@videolan.org> <57529f2d0901281409u1b3efac8l3dd2362f436f58f6@mail.gmail.com> <0319c492fed4e6cbf701150d6b61c526@chewa.net> <57529f2d0902021003q1dbe608cv9346699a77d6782d@mail.gmail.com> Message-ID: <20090211223530.GA11276@via.ecp.fr> Hi, On Mon, Feb 02, 2009, Fabio Ritrovato wrote: > Here's the new patch, I hope the way I check if libmtp has already > been initialized is ok... > > tempnam() is still there, I couldn't find any other way to have the > file name and not the handle... Merged by 7f04d5a370677c4b6b81342a5b3441b1b180f38d with a few modifications. Could you confirm everything is ok for you ? I successfully retreive the list of files from the device I own but I cannot play any of them (the device seems to loose the connection at this point). Btw, you require libmtp >= 0.3.0, is that really necessary ? (debian sid only propose 0.2.6.1 for example). Regards, -- fenrir From git at videolan.org Thu Feb 12 00:08:08 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 00:08:08 +0100 (CET) Subject: [vlc-devel] commit: Do not create empty title (avformat). (Laurent Aimar ) Message-ID: <20090211230808.BB2E22ED02@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 12 00:07:20 2009 +0100| [371a27f5231037f884926195ee90d43dae3848f7] | committer: Laurent Aimar Do not create empty title (avformat). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=371a27f5231037f884926195ee90d43dae3848f7 --- modules/demux/avformat/demux.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/modules/demux/avformat/demux.c b/modules/demux/avformat/demux.c index 237c168..4017b77 100644 --- a/modules/demux/avformat/demux.c +++ b/modules/demux/avformat/demux.c @@ -321,7 +321,8 @@ int OpenDemux( vlc_object_t *p_this ) p_sys->ic->duration * 1000000 / AV_TIME_BASE : -1 ); #ifdef HAVE_FFMPEG_CHAPTERS - p_sys->p_title = vlc_input_title_New(); + if( p_sys->ic->nb_chapters > 0 ) + p_sys->p_title = vlc_input_title_New(); for( i = 0; i < p_sys->ic->nb_chapters; i++ ) { seekpoint_t *s = vlc_seekpoint_New(); From brezhoneg1 at yahoo.fr Thu Feb 12 01:41:00 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Thu, 12 Feb 2009 01:41:00 +0100 Subject: [vlc-devel] RE : [PATCH] - issue with mouse-x/mouse-y on Linux In-Reply-To: <200902112310.37762.rem@videolan.org> Message-ID: <000201c98caa$96785fd0$c122fac1@CCCC> These updated patches should be better. My understanding is that the person who developed this mouse-x/mouse-y stuff slightly changed the formula to take into account the video offsets, but forgot to update the comments and the additional boundary tests. Erwan10 > -----Message d'origine----- > De?: vlc-devel-bounces at videolan.org [mailto:vlc-devel- > bounces at videolan.org] De la part de R?mi Denis-Courmont > Envoy??: mercredi 11 f?vrier 2009 22:11 > ??: vlc-devel at videolan.org > Objet?: Re: [vlc-devel] Re : [PATCH] - issue with mouse-x/mouse-y on Linux > > Le mercredi 11 f?vrier 2009 22:32:59 brezhoneg Breizh, vous avez ?crit?: > > Actually, x_offset and y_offset are only used (in my tests) when > cropping. > > As far as I can tell, that is not true with scale, rotate and drop-mode > deinterlacing. > -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-corrects-mouse-x-and-mouse-y-wrong-boundary-tests-in.patch Type: application/octet-stream Size: 1789 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-corrects-mouse-x-and-mouse-y-wrong-boundary-tests-in.patch Type: application/octet-stream Size: 2856 bytes Desc: not available URL: From rdenis at simphalempin.com Thu Feb 12 10:31:58 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 12 Feb 2009 10:31:58 +0100 Subject: [vlc-devel] =?utf-8?q?=5Bpatch=5D_Alter_symbol-globalising_dlopen?= =?utf-8?q?=28RTLD=5FNOLOAD=29_call_to_succeed?= In-Reply-To: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> Message-ID: <51fb597f0b579b120625599173e9ed11@chewa.net> This patch is wrong. We don't want to load libvlccore unconditionnally. Otherwise, we would link plugins against it in the first place, and get rid of this hack altogether. On Wed, 11 Feb 2009 22:07:06 +0100 (CET), jpd at m2x.nl wrote: > Always run dlopen(vlccore,RTLD_NOLOAD) when available and add RTLD_NOW to > prevent the call from failing with an invalid argument error. > > diff --git a/src/modules/os.c b/src/modules/os.c > index 53368e4..79f227d 100644 > --- a/src/modules/os.c > +++ b/src/modules/os.c > @@ -136,9 +136,11 @@ int module_Call( vlc_object_t *obj, module_t > *p_module ) > /* Make sure libvlccore is in the global namespace */ > static void load_libvlccore( void ) > { > - if( !dlsym( RTLD_DEFAULT, "libvlc_Quit" ) > - && !dlopen( "libvlccore.so", RTLD_GLOBAL|RTLD_NOLOAD ) ) > - fprintf( stderr, "ERROR: failed loading libvlccore\n" ); > + // Need either RTLD_NOW or RTLD_LAZY or the call will fail even with > + // RTLD_NOLOAD set. > + if( !dlopen( "libvlccore.so", RTLD_GLOBAL|RTLD_NOLOAD|RTLD_NOW ) ) > + fprintf( stderr, "ERROR: failed loading libvlccore (%s)\n", > + dlerror() ); > } > #endif -- R?mi Denis-Courmont From git at videolan.org Thu Feb 12 12:54:40 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 12:54:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_qt4=5Fopenfile=3A_accept_files_wi?= =?utf-8?q?thout_extensions_=28fix_=232511=29_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090212115440.041432F1B2@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Duraffort | Thu Feb 12 12:37:50 2009 +0100| [f0764ce4b9e170277fa79849def5188e8637e4c4] | committer: R?mi Duraffort qt4_openfile: accept files without extensions (fix #2511) This was already done in the trunk. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f0764ce4b9e170277fa79849def5188e8637e4c4 --- modules/gui/qt4/dialogs_provider.hpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/dialogs_provider.hpp b/modules/gui/qt4/dialogs_provider.hpp index d69e9f5..fe7d02b 100644 --- a/modules/gui/qt4/dialogs_provider.hpp +++ b/modules/gui/qt4/dialogs_provider.hpp @@ -68,7 +68,7 @@ string += ");;"; #define ADD_FILTER_ALL( string ) \ string += qtr( "All Files" ); \ - string += " (*.*)"; + string += " (*)"; enum { EXT_FILTER_MEDIA = 0x01, From jpd at m2x.nl Thu Feb 12 13:09:03 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Thu, 12 Feb 2009 13:09:03 +0100 (CET) Subject: [vlc-devel] [patch] Alter symbol-globalising dlopen(RTLD_NOLOAD) call to succeed In-Reply-To: <51fb597f0b579b120625599173e9ed11@chewa.net> References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <51fb597f0b579b120625599173e9ed11@chewa.net> Message-ID: <6a9d9be46b641b6bf55dd7e81ae7bc02.squirrel@m2x.nl> On Thu, February 12, 2009 10:31 am, R\xc3\x83\xc2\xa9mi Denis-Courmont wrote: > On Wed, 11 Feb 2009 22:07:06 +0100 (CET), jpd at m2x.nl wrote: >> Always run dlopen(vlccore,RTLD_NOLOAD) when available and add RTLD_NOW >> to prevent the call from failing with an invalid argument error. > > This patch is wrong. We don't want to load libvlccore > unconditionnally. Otherwise, we would link plugins against it in the > first place, and get rid of this hack altogether. As you'll note, RTLD_NOLOAD is still set. If you know of a better way to make dlopen() succeed without RTLD_NOW _or_ RTLD_LAZY, I'd love to hear it. From rdenis at simphalempin.com Thu Feb 12 13:40:29 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 12 Feb 2009 13:40:29 +0100 Subject: [vlc-devel] =?utf-8?q?=5Bpatch=5D_Alter_symbol-globalising_dlopen?= =?utf-8?q?=28RTLD=5FNOLOAD=29_call_to_succeed?= In-Reply-To: <6a9d9be46b641b6bf55dd7e81ae7bc02.squirrel@m2x.nl> References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <51fb597f0b579b120625599173e9ed11@chewa.net> <6a9d9be46b641b6bf55dd7e81ae7bc02.squirrel@m2x.nl> Message-ID: On Thu, 12 Feb 2009 13:09:03 +0100 (CET), jpd at m2x.nl wrote: > On Thu, February 12, 2009 10:31 am, R\xc3\x83\xc2\xa9mi Denis-Courmont > wrote: >> On Wed, 11 Feb 2009 22:07:06 +0100 (CET), jpd at m2x.nl wrote: >>> Always run dlopen(vlccore,RTLD_NOLOAD) when available and add RTLD_NOW >>> to prevent the call from failing with an invalid argument error. >> >> This patch is wrong. We don't want to load libvlccore >> unconditionnally. Otherwise, we would link plugins against it in the >> first place, and get rid of this hack altogether. > > As you'll note, RTLD_NOLOAD is still set. So what? That's not the point. -- R?mi Denis-Courmont From rdenis at simphalempin.com Thu Feb 12 13:47:46 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 12 Feb 2009 13:47:46 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_Segregate_vout_window_types_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <42761EC4-FD74-4AF3-BB1C-EFB4A0695086@gmail.com> References: <20090131184040.21C6D2E746@skanda.videolan.org> <42761EC4-FD74-4AF3-BB1C-EFB4A0695086@gmail.com> Message-ID: <63962987e265bc5e5322b2042cfca2ca@chewa.net> On Wed, 11 Feb 2009 22:59:10 +0100, "Felix Paul K?hne" wrote: > I'm wondering whether this commit is really necessary. I don't have > the time and more importantly not the knowledge to fix this for Mac OS > X. So, it is up to fellow OS X developers (which seem to lack time > too) and other people with vout knowledge. Or we just revert and post- > pone this API change with no user impact to VLC 1.1. Yeah, lets continue to ship libvlc with broken-by-design APIs. > Additionally, I would like to underline that committing this kind of > stuff one day ahead of a Feature Freeze One day ahead of the feature freeze is one day ahead of the feature freeze is one day *ahead* of the feature freeze. > the _obvious_ breakage of an entire port which got the 2nd largest It might be obvious to someone who knows the OSX port. > user base of VLC (okay, you surely don't care about the latter) is no > good move. Indeed, I don't. If we had been waiting for the OSX port, we would not even have half of the enhancements we have in 1.0. > I had to spend a couple of hours of my spare time to find > this commit as "Segregate vout window types" without any explanation > is not exactly obvious. A person who blames people on this list about > missing documentation and bad behaviour should know better! It was discussed on this very mailing list several days ahead, even with Olivier supporting the change -- R?mi Denis-Courmont From jpd at m2x.nl Thu Feb 12 14:10:26 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Thu, 12 Feb 2009 14:10:26 +0100 (CET) Subject: [vlc-devel] [patch] Alter symbol-globalising dlopen(RTLD_NOLOAD) call to succeed In-Reply-To: References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <51fb597f0b579b120625599173e9ed11@chewa.net> <6a9d9be46b641b6bf55dd7e81ae7bc02.squirrel@m2x.nl> Message-ID: On Thu, February 12, 2009 1:40 pm, R??mi Denis-Courmont wrote: >> As you'll note, RTLD_NOLOAD is still set. > > So what? That's not the point. Pray tell, what is your point then? I submitted the patch because it solves a problem. If you can do that in a better way, do share. From rziegler42 at yahoo.com Thu Feb 12 14:11:52 2009 From: rziegler42 at yahoo.com (Robert Ziegler) Date: Thu, 12 Feb 2009 05:11:52 -0800 (PST) Subject: [vlc-devel] [patch] Alter symbol-globalising dlopen(RTLD_NOLOAD) call to succeed References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <51fb597f0b579b120625599173e9ed11@chewa.net> <6a9d9be46b641b6bf55dd7e81ae7bc02.squirrel@m2x.nl> Message-ID: <325589.10114.qm@web31005.mail.mud.yahoo.com> >On Thu, 12 Feb 2009 13:09:03 +0100 (CET), jpd at m2x.nl wrote: >> On Thu, February 12, 2009 10:31 am, R\xc3\x83\xc2\xa9mi Denis-Courmont >> wrote: >>> On Wed, 11 Feb 2009 22:07:06 +0100 (CET), jpd at m2x.nl wrote: >>>> Always run dlopen(vlccore,RTLD_NOLOAD) when available and add RTLD_NOW >>>> to prevent the call from failing with an invalid argument error. >>> >>> This patch is wrong. We don't want to load libvlccore >>> unconditionnally. Otherwise, we would link plugins against it in the >>> first place, and get rid of this hack altogether. >> >> As you'll note, RTLD_NOLOAD is still set. > >So what? That's not the point. >From the linux man page for dlopen(): One of the following two values must be included in flag:RTLD_LAZY or RTLD_NOW Zero of more of the following values may also be ORed in flag:RTLD_GLOBAL, RTLD_LOCAL, RTLD_NODELETE, RTLD_NOLOAD, RTLD_DEEPBIND My understanding (which may be incorrect), with linux, if one of RDLD_LAZY or RTLD_NOW is not included in the flags, the dlopen() call fails and returns with NULL. From olivier.aubert at liris.cnrs.fr Thu Feb 12 14:17:36 2009 From: olivier.aubert at liris.cnrs.fr (Olivier Aubert) Date: Thu, 12 Feb 2009 14:17:36 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Segregate_vout_window_types_?= =?iso-8859-1?q?=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <63962987e265bc5e5322b2042cfca2ca@chewa.net> References: <20090131184040.21C6D2E746@skanda.videolan.org> <42761EC4-FD74-4AF3-BB1C-EFB4A0695086@gmail.com> <63962987e265bc5e5322b2042cfca2ca@chewa.net> Message-ID: <1234444656.3780.23.camel@pennylane> > It was discussed on this very mailing list several days ahead, even with > Olivier supporting the change Indeed. I agreed on the inadequacy of the current API, which did not take into account 64bit platforms, neither the fact that there could potentially be different types of drawables, esp. on Mac OS X. A better solution is definitely needed. However, I also agree with Felix that the solution you propose (which seems appropriate to me, although I did not take the time to measure the implications of the dedicated drawable backend plugin) was rather quickly implemented. It is at the same time a very Good Thing, since ideas are best when implemented, and a hassle for developers *using* VLC, since there was no intermediary steps taken (mark the current API as deprecated, etc) to ensure a smoother transition. Well, all in all, I think the move is for the better, but it will take some time to stabilize, and will lead to some bad user experience. Not that I care that much, since my app also supports gstreamer, so I am not entirely dependant of the fast-evolving VLC. Olivier From git at videolan.org Thu Feb 12 14:18:45 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 14:18:45 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_No_need_to_translate_warnings_mes?= =?utf-8?q?sages=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090212131845.A04042F1E1@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Thu Feb 12 14:17:22 2009 +0100| [e127458fe312d58877f94e0299f90f96e02cb027] | committer: R?mi Duraffort No need to translate warnings messages. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e127458fe312d58877f94e0299f90f96e02cb027 --- modules/access/vcdx/access.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/access/vcdx/access.c b/modules/access/vcdx/access.c index bbbfe24..017d7c9 100644 --- a/modules/access/vcdx/access.c +++ b/modules/access/vcdx/access.c @@ -107,8 +107,8 @@ cdio_log_handler (cdio_log_level_t level, const char message[]) break; default: msg_Warn( p_vcd_access, "%s\n%s %d", message, - _("The above message had unknown log level"), - level); + "The above message had unknown log level", + level); } return; } @@ -133,8 +133,8 @@ vcd_log_handler (vcd_log_level_t level, const char message[]) break; default: msg_Warn( p_vcd_access, "%s\n%s %d", message, - _("The above message had unknown vcdimager log level"), - level); + "The above message had unknown vcdimager log level", + level); } return; } From rem at videolan.org Thu Feb 12 15:05:07 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Thu, 12 Feb 2009 16:05:07 +0200 Subject: [vlc-devel] [patch] Alter symbol-globalising dlopen(RTLD_NOLOAD) call to succeed In-Reply-To: References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> Message-ID: <200902121605.08149.rem@videolan.org> Le jeudi 12 f?vrier 2009 15:10:26 jpd at m2x.nl, vous avez ?crit?: > Pray tell, what is your point then? I submitted the patch because it > solves a problem. If you can do that in a better way, do share. Le jeudi 12 f?vrier 2009 11:31:58 R?mi Denis-Courmont, vous avez ?crit : > This patch is wrong. We don't want to load libvlccore unconditionnally. > Otherwise, we would link plugins against it in the first place, and get rid > of this hack altogether. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From noxelia at gmail.com Thu Feb 12 15:05:46 2009 From: noxelia at gmail.com (basos g) Date: Thu, 12 Feb 2009 16:05:46 +0200 Subject: [vlc-devel] [PATCH] FIX: Dshow "none" device open (#2201). Some cleaning In-Reply-To: <200902111756.18051.rem@videolan.org> References: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> <200902111756.18051.rem@videolan.org> Message-ID: <9d98edc70902120605p4579d2c5rfe7aa3be2da4626e@mail.gmail.com> 2009/2/11 R?mi Denis-Courmont : > Le mercredi 11 f?vrier 2009 16:15:48 basos g, vous avez ?crit : >> These 2 patches address the issue in dshow as well as some other fixes >> >> -Fix dshow "none" deivice be recognized as none >> Note that another patch concerning var_optionParse string >> dequoting should be applied for this to be fixed >> ( the concept is not to provide quoted strings to dshow options ) >> -Account for the case when BOTH devices could not be opened >> (file an error, instead of seeming to play) >> -Cleaned a little >> -Added dbg and error msgs >> -Added coments > > I am not against removing quotes there, but we have to be consistent. > Discarding quotes is wrong. There has to be a way to pass a value that does > include quotes. > > -- > R?mi Denis-Courmont > http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > The point is that for the dshow we don't need quotes. Do we need them elsewhere ? I think quotes mean: take the hole following string including spaces. As long as the delimiting is done correctly i am not sure that we actualy need the quotes inside psz_data. eg. :adev="Create sound blaster" :vdev="vid1" :type=pal etc here psz_value for adev should be Creative sound blaster and not "Creative sound blaster" From rem at videolan.org Thu Feb 12 15:17:14 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Thu, 12 Feb 2009 16:17:14 +0200 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Segregate_vout_window_types_?= =?iso-8859-1?q?=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <1234444656.3780.23.camel@pennylane> References: <20090131184040.21C6D2E746@skanda.videolan.org> <63962987e265bc5e5322b2042cfca2ca@chewa.net> <1234444656.3780.23.camel@pennylane> Message-ID: <200902121617.14547.rem@videolan.org> Le jeudi 12 f?vrier 2009 15:17:36 Olivier Aubert, vous avez ?crit?: > However, I also agree with Felix that the solution you propose (which > seems appropriate to me, although I did not take the time to measure the > implications of the dedicated drawable backend plugin) was rather > quickly implemented. It is at the same time a very Good Thing, since > ideas are best when implemented, and a hassle for developers *using* > VLC, since there was no intermediary steps taken (mark the current API > as deprecated, etc) to ensure a smoother transition. The old API is *still* there, although it will necessarily fail on non-X11 64-bits platform. We promised that we would not break libvlc from 0.9 to 1.0. Oh well, nevermind that we inherit crap such as this or the logging API. This commit does one thing. It splits the vout_window capability into two distinct ones (XID and HWND). I designed the vout_window capability in the first place, without OSX support. That was before the 0.9.0 and nobody complained until today. I (and others) have spent hours fixing issues with embedding the video output. We agreed this was a _*CRITICAL*_ feature at the last meeting. I'd like to remind everybody that this -critical- feature does NOT work at all (at least on Linux, probably on Windows) in 0.9.*. We have received a huge ammount of complaints about the lack of embedded video in VLC 0.9, as well as the bindings crashing when using that (esp. JVLC). And _now_ that we fix it, the OSX maintainer comes and start whining. Sorry, that's just pissing me off. Let the OSX port can go to hell then. -- R?mi Denis-Courmont From rem at videolan.org Thu Feb 12 15:44:21 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Thu, 12 Feb 2009 16:44:21 +0200 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Segregate_vout_window_types_?= =?iso-8859-1?q?=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <42761EC4-FD74-4AF3-BB1C-EFB4A0695086@gmail.com> References: <20090131184040.21C6D2E746@skanda.videolan.org> <42761EC4-FD74-4AF3-BB1C-EFB4A0695086@gmail.com> Message-ID: <200902121644.21584.rem@videolan.org> By the way... Le mercredi 11 f?vrier 2009 23:59:10 Felix Paul K?hne, vous avez ?crit?: > I had to spend a couple of hours of my spare time to find ? > this commit as "Segregate vout window types" without any explanation ? > is not exactly obvious. This commit is self-sufficient, and only a few lines. All (of the 4) calls to vout_RequestWindow() in the tree were fixed alongside. The OSX interface does not even use that function. I'm afradi you lost me. I honestly wonder what extra explanation you expected. -- R?mi Denis-Courmont From hartman at videolan.org Thu Feb 12 15:44:54 2009 From: hartman at videolan.org (Derk-Jan Hartman) Date: Thu, 12 Feb 2009 15:44:54 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Segregate_vout_window_types_?= =?iso-8859-1?q?=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <42761EC4-FD74-4AF3-BB1C-EFB4A0695086@gmail.com> References: <20090131184040.21C6D2E746@skanda.videolan.org> <42761EC4-FD74-4AF3-BB1C-EFB4A0695086@gmail.com> Message-ID: On 11 feb 2009, at 22:59, Felix Paul K?hne wrote: > Hello there, > > this commit (and some following) breaks the video output at all on Mac > OS X, as kind of visible even in the former mail by reading closely. > [1] I see no reason why these commits would cause the OSX vout to break. No, it's the "drawable" redesign that was done shortly after this. It seems there is no drawable variable anymore, and the OSX opengl module still uses it. DJ From rem at videolan.org Thu Feb 12 16:11:51 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Thu, 12 Feb 2009 17:11:51 +0200 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Segregate_vout_window_types_?= =?iso-8859-1?q?=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: References: <20090131184040.21C6D2E746@skanda.videolan.org> <42761EC4-FD74-4AF3-BB1C-EFB4A0695086@gmail.com> Message-ID: <200902121711.51358.rem@videolan.org> Le jeudi 12 f?vrier 2009 16:44:54 Derk-Jan Hartman, vous avez ?crit?: > On 11 feb 2009, at 22:59, Felix Paul K?hne wrote: > > Hello there, > > > > this commit (and some following) breaks the video output at all on Mac > > OS X, as kind of visible even in the former mail by reading closely. > > [1] > > I see no reason why these commits would cause the OSX vout to break. > No, it's the "drawable" redesign that was done shortly after this. > > It seems there is no drawable variable anymore, and the OSX opengl > module still uses it. Then create it again, but I don't really expect a pointer in an integer variable. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Thu Feb 12 16:38:00 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 16:38:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Add_missing_dlopen_flag_=28if_and?= =?utf-8?q?_only_if_=5Fneeded=5F=29=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090212153800.AFE582F1B1@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 12 16:03:35 2009 +0200| [432b3d357214518e20987f438cfd8eec2f01e850] | committer: R?mi Denis-Courmont Add missing dlopen flag (if and only if _needed_). Pointed-out-by: jpd at m2x.nl > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=432b3d357214518e20987f438cfd8eec2f01e850 --- src/modules/os.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/modules/os.c b/src/modules/os.c index 53368e4..82e2ee8 100644 --- a/src/modules/os.c +++ b/src/modules/os.c @@ -137,7 +137,7 @@ int module_Call( vlc_object_t *obj, module_t *p_module ) static void load_libvlccore( void ) { if( !dlsym( RTLD_DEFAULT, "libvlc_Quit" ) - && !dlopen( "libvlccore.so", RTLD_GLOBAL|RTLD_NOLOAD ) ) + && !dlopen( "libvlccore.so", RTLD_LAZY|RTLD_GLOBAL|RTLD_NOLOAD ) ) fprintf( stderr, "ERROR: failed loading libvlccore\n" ); } #endif From git at videolan.org Thu Feb 12 16:38:00 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 16:38:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_OSX=3A_keep_the_=28misdesigned=29?= =?utf-8?q?_drawable_variable_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090212153800.C15DD2F1DC@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 12 17:37:45 2009 +0200| [b15994bd7d1994c5d39726152c5cdae74ce70c3c] | committer: R?mi Denis-Courmont OSX: keep the (misdesigned) drawable variable > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b15994bd7d1994c5d39726152c5cdae74ce70c3c --- src/libvlc.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/src/libvlc.c b/src/libvlc.c index e8c9f2d..9a53ee7 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -982,6 +982,9 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, */ var_Create( p_libvlc, "drawable-xid", VLC_VAR_INTEGER ); var_Create( p_libvlc, "drawable-hwnd", VLC_VAR_ADDRESS ); +#ifdef __APPLE__ + var_Create( p_libvlc, "drawable", VLC_VAR_INTERGER ); +#endif var_Create( p_libvlc, "drawable-view-top", VLC_VAR_INTEGER ); var_Create( p_libvlc, "drawable-view-left", VLC_VAR_INTEGER ); var_Create( p_libvlc, "drawable-view-bottom", VLC_VAR_INTEGER ); From thannoy at actech-innovation.com Thu Feb 12 18:09:10 2009 From: thannoy at actech-innovation.com (Anthony Loiseau) Date: Thu, 12 Feb 2009 18:09:10 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_OSX=3A_keep_the_=28misdesign?= =?iso-8859-1?q?ed=29_drawable_variable_=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <20090212153800.C15DD2F1DC@skanda.videolan.org> References: <20090212153800.C15DD2F1DC@skanda.videolan.org> Message-ID: <1234458550.3468.57.camel@localhost.localdomain> This commit contains a mistake in "VLC_VAR_INTERGER". Regards Anthony On Thu, 2009-02-12 at 16:38 +0100, git version control wrote: > +#ifdef __APPLE__ > + var_Create( p_libvlc, "drawable", VLC_VAR_INTERGER ); > +#endif From noxelia at gmail.com Thu Feb 12 19:57:37 2009 From: noxelia at gmail.com (basos g) Date: Thu, 12 Feb 2009 20:57:37 +0200 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Stop_spamming_the_debug_logs?= =?iso-8859-1?q?_=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <20090211211237.E225C2F159@skanda.videolan.org> References: <20090211211237.E225C2F159@skanda.videolan.org> Message-ID: <9d98edc70902121057l3bd71b6ajcbadbe0516b995@mail.gmail.com> 2009/2/11 git version control : > vlc | branch: master | R?mi Denis-Courmont | Wed Feb 11 21:58:32 2009 +0200| [c9c8a74b78f9187a2343d778406a8823219db710] | committer: R?mi Denis-Courmont > > Stop spamming the debug logs > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c9c8a74b78f9187a2343d778406a8823219db710 > --- > > src/misc/variables.c | 10 ++++++---- > 1 files changed, 6 insertions(+), 4 deletions(-) > > diff --git a/src/misc/variables.c b/src/misc/variables.c > index 26d79d0..be81856 100644 > --- a/src/misc/variables.c > +++ b/src/misc/variables.c > @@ -1406,8 +1406,9 @@ static int InheritValue( vlc_object_t *p_this, const char *psz_name, > /* Duplicate value if needed */ > p_var->ops->pf_dup( p_val ); > > - msg_Dbg( p_this, "Inherited value for var %s from object %s", psz_name ? : "(null)", > - p_this->psz_object_name ? : "(Unknown)" ) ; > + /*msg_Dbg( p_this, "Inherited value for var %s from object %s", > + psz_name ? : "(null)", > + p_this->psz_object_name ? : "(Unknown)" );*/ > return VLC_SUCCESS; > } > else if ( p_this->p_parent ) /* We are still not there */ > @@ -1462,11 +1463,12 @@ static int InheritValue( vlc_object_t *p_this, const char *psz_name, > break; > } > default: > - msg_Warn( p_this, "Could not inherit value for var %s from config. Invalid Type", psz_name ) ; > + msg_Warn( p_this, "Could not inherit value for var %s " > + "from config. Invalid Type", psz_name ); > return VLC_ENOOBJ; > break; > } > - msg_Dbg( p_this, "Inherited value for var %s from config", psz_name ) ; > + /*msg_Dbg( p_this, "Inherited value for var %s from config", psz_name );*/ > return VLC_SUCCESS; > } > > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > It was me, trying to clarify the inheritable variables obscurity... I thought i might me usefull to others too. Anyway. That's ok. From git at videolan.org Thu Feb 12 19:59:43 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 19:59:43 +0100 (CET) Subject: [vlc-devel] commit: Fixed audio transcoding when channel mixing or resampling is needed . (Laurent Aimar ) Message-ID: <20090212185943.0B74D2F2AE@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 12 19:51:18 2009 +0100| [48318a703e90cd577835e6cc55fa5c0e9580de42] | committer: Laurent Aimar Fixed audio transcoding when channel mixing or resampling is needed. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=48318a703e90cd577835e6cc55fa5c0e9580de42 --- modules/stream_out/transcode.c | 245 ++++++++++++++++++++-------------------- 1 files changed, 123 insertions(+), 122 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=48318a703e90cd577835e6cc55fa5c0e9580de42 From git at videolan.org Thu Feb 12 21:23:11 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 21:23:11 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_typo_=28_R=C3=A9mi_Denis-Courmont?= =?utf-8?q?_=29?= Message-ID: <20090212202311.87E2E2F23E@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 12 22:22:10 2009 +0200| [edfdafc7f05c78d5995ff32cb9aae71074d119a9] | committer: R?mi Denis-Courmont typo > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=edfdafc7f05c78d5995ff32cb9aae71074d119a9 --- src/libvlc.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/libvlc.c b/src/libvlc.c index 9a53ee7..4ae289f 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -983,7 +983,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, var_Create( p_libvlc, "drawable-xid", VLC_VAR_INTEGER ); var_Create( p_libvlc, "drawable-hwnd", VLC_VAR_ADDRESS ); #ifdef __APPLE__ - var_Create( p_libvlc, "drawable", VLC_VAR_INTERGER ); + var_Create( p_libvlc, "drawable", VLC_VAR_INTEGER ); #endif var_Create( p_libvlc, "drawable-view-top", VLC_VAR_INTEGER ); var_Create( p_libvlc, "drawable-view-left", VLC_VAR_INTEGER ); From git at videolan.org Thu Feb 12 21:23:11 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 21:23:11 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Add_libvlc=5Fmedia=5Fplayer=5Fget?= =?utf-8?q?=5F=28hwnd=7Cxwindow=29_as_requested_on_forum_=28_R=C3=A9mi_Den?= =?utf-8?q?is-Courmont_=29?= Message-ID: <20090212202311.98A172F253@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 12 22:22:34 2009 +0200| [f2f24f4915d16e223b5716938c7aa2c5c7f2f6cd] | committer: R?mi Denis-Courmont Add libvlc_media_player_get_(hwnd|xwindow) as requested on forum > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f2f24f4915d16e223b5716938c7aa2c5c7f2f6cd --- include/vlc/libvlc.h | 21 +++++++++++++++++++++ src/control/media_player.c | 10 ++++++++++ src/libvlc.sym | 2 ++ 3 files changed, 33 insertions(+), 0 deletions(-) diff --git a/include/vlc/libvlc.h b/include/vlc/libvlc.h index 57c88b2..3b8d8fc 100644 --- a/include/vlc/libvlc.h +++ b/include/vlc/libvlc.h @@ -569,6 +569,16 @@ VLC_PUBLIC_API void libvlc_media_player_stop ( libvlc_media_player_t *, libvlc_e VLC_PUBLIC_API void libvlc_media_player_set_xwindow ( libvlc_media_player_t *p_mi, uint32_t drawable, libvlc_exception_t *p_e ); /** + * Get the X Window System window identifier previously set with + * libvlc_media_player_set_xwindow(). Note that this will return the identifier + * even if VLC is not currently using it (for instance if it is playing an + * audio-only input). + * + * \return an X window ID, or 0 if none where set. + */ +VLC_PUBLIC_API uint32_t libvlc_media_player_get_xwindow ( libvlc_media_player_t *p_mi ); + +/** * Set a Win32/Win64 API window handle (HWND) where the media player should * render its video output. If LibVLC was built without Win32/Win64 API output * support, then this has no effects. @@ -579,6 +589,17 @@ VLC_PUBLIC_API void libvlc_media_player_set_xwindow ( libvlc_media_player_t *p_m */ VLC_PUBLIC_API void libvlc_media_player_set_hwnd ( libvlc_media_player_t *p_mi, void *drawable, libvlc_exception_t *p_e ); +/** + * Get the Windows API window handle (HWND) previously set with + * libvlc_media_player_set_hwnd(). The handle will be returned even if LibVLC + * is not currently outputting any video to it. + * + * \return a window handle or NULL if there are none. + */ +VLC_PUBLIC_API void *libvlc_media_player_get_hwnd ( libvlc_media_player_t *p_mi ); + + + /** \bug This might go away ... to be replaced by a broader system */ /** diff --git a/src/control/media_player.c b/src/control/media_player.c index ec74c9b..aebe7d9 100644 --- a/src/control/media_player.c +++ b/src/control/media_player.c @@ -706,6 +706,11 @@ void libvlc_media_player_set_xwindow( libvlc_media_player_t *p_mi, p_mi->drawable.xid = drawable; } +uint32_t libvlc_media_player_get_xwindow( libvlc_media_player_t *p_mi ) +{ + return p_mi->drawable.xid; +} + void libvlc_media_player_set_hwnd( libvlc_media_player_t *p_mi, void *drawable, libvlc_exception_t *p_e ) @@ -714,6 +719,11 @@ void libvlc_media_player_set_hwnd( libvlc_media_player_t *p_mi, p_mi->drawable.hwnd = drawable; } +void *libvlc_media_player_get_hwnd( libvlc_media_player_t *p_mi ) +{ + return p_mi->drawable.hwnd; +} + /************************************************************************** * Set Drawable **************************************************************************/ diff --git a/src/libvlc.sym b/src/libvlc.sym index 45587b8..8de9c3f 100644 --- a/src/libvlc.sym +++ b/src/libvlc.sym @@ -125,6 +125,7 @@ libvlc_media_player_get_chapter_count libvlc_media_player_get_chapter_count_for_title libvlc_media_player_get_drawable libvlc_media_player_get_fps +libvlc_media_player_get_hwnd libvlc_media_player_get_length libvlc_media_player_get_media libvlc_media_player_get_position @@ -133,6 +134,7 @@ libvlc_media_player_get_state libvlc_media_player_get_time libvlc_media_player_get_title libvlc_media_player_get_title_count +libvlc_media_player_get_xwindow libvlc_media_player_has_vout libvlc_media_player_is_seekable libvlc_media_player_is_playing From rem at videolan.org Thu Feb 12 21:24:38 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Thu, 12 Feb 2009 22:24:38 +0200 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Stop_spamming_the_debug_logs?= =?iso-8859-1?q?_=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <9d98edc70902121057l3bd71b6ajcbadbe0516b995@mail.gmail.com> References: <20090211211237.E225C2F159@skanda.videolan.org> <9d98edc70902121057l3bd71b6ajcbadbe0516b995@mail.gmail.com> Message-ID: <200902122224.38561.rem@videolan.org> Le jeudi 12 f?vrier 2009 20:57:37 basos g, vous avez ?crit?: > It was me, > trying to clarify the inheritable variables obscurity... I thought i > might me usefull to others too. > Anyway. That's ok. It does clarify things, but it's also outputting so much debug that it overflows my virtual terminal buffer for simple runs of VLC. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Thu Feb 12 23:09:05 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 23:09:05 +0100 (CET) Subject: [vlc-devel] commit: Reorder qt4 audio menu to be more consistant with video menu. ( Laurent Aimar ) Message-ID: <20090212220905.BDB7F2F0EF@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 12 23:08:25 2009 +0100| [c81541fe010075c43d8d821346ec0252a3474e42] | committer: Laurent Aimar Reorder qt4 audio menu to be more consistant with video menu. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c81541fe010075c43d8d821346ec0252a3474e42 --- modules/gui/qt4/menus.cpp | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index d688b50..a6672a3 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -495,13 +495,14 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) if( current->isEmpty() ) { - ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); - current->addSeparator(); ACT_ADD( current, "audio-es", qtr( "Audio &Track" ) ); ACT_ADD( current, "audio-device", qtr( "Audio &Device" ) ); ACT_ADD( current, "audio-channels", qtr( "Audio &Channels" ) ); current->addSeparator(); + ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); + + current->addSeparator(); QAction *action = current->addAction( qtr( "Mute Audio" ), ActionsManager::getInstance( p_intf ), SLOT( toggleMuteAudio() ) ); From git at videolan.org Thu Feb 12 23:30:32 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 23:30:32 +0100 (CET) Subject: [vlc-devel] commit: Qt: dialog editor, add a widget to help understand the feature. ( Jean-Baptiste Kempf ) Message-ID: <20090212223032.EF3BF2F187@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Wed Feb 11 21:52:50 2009 +0100| [0fc3f644db3221321bec1b889c2233f6fb8ac195] | committer: Jean-Baptiste Kempf Qt: dialog editor, add a widget to help understand the feature. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0fc3f644db3221321bec1b889c2233f6fb8ac195 --- modules/gui/qt4/dialogs/toolbar.cpp | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/dialogs/toolbar.cpp b/modules/gui/qt4/dialogs/toolbar.cpp index d22f40a..5ee640e 100644 --- a/modules/gui/qt4/dialogs/toolbar.cpp +++ b/modules/gui/qt4/dialogs/toolbar.cpp @@ -55,14 +55,16 @@ ToolbarEditDialog::ToolbarEditDialog( intf_thread_t *_p_intf) QSizePolicy::MinimumExpanding ); QGridLayout *boxLayout = new QGridLayout( widgetBox ); + QLabel *styleLabel = new QLabel( qtr( "Next widget style:" ) ); flatBox = new QCheckBox( qtr( "Flat Button" ) ); bigBox = new QCheckBox( qtr( "Big Button" ) ); shinyBox = new QCheckBox( qtr( "Native Slider" ) ); boxLayout->addWidget( new WidgetListing( p_intf, this ), 0, 0, 1, -1); - boxLayout->addWidget( flatBox, 1, 0 ); - boxLayout->addWidget( bigBox, 1, 1 ); - boxLayout->addWidget( shinyBox, 1, 2 ); + boxLayout->addWidget( styleLabel, 1, 0 ); + boxLayout->addWidget( flatBox, 1, 1 ); + boxLayout->addWidget( bigBox, 1, 2 ); + boxLayout->addWidget( shinyBox, 1, 3 ); mainLayout->addWidget( widgetBox, 0, 0, 1, -1 ); From git at videolan.org Thu Feb 12 23:30:33 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 23:30:33 +0100 (CET) Subject: [vlc-devel] commit: Qt: menus, more cohenrency. (Jean-Baptiste Kempf ) Message-ID: <20090212223033.0B3DD2F256@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Thu Feb 12 23:29:29 2009 +0100| [6f54b381d537f9103737d3982d1e7cf0033e9a60] | committer: Jean-Baptiste Kempf Qt: menus, more cohenrency. Try to mimic a bit more the mac menus. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6f54b381d537f9103737d3982d1e7cf0033e9a60 --- modules/gui/qt4/menus.cpp | 44 +++++++++++++++++++++++++------------------- 1 files changed, 25 insertions(+), 19 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index a6672a3..b23c680 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -198,16 +198,16 @@ static int VideoAutoMenuBuilder( vout_thread_t *p_object, PUSH_INPUTVAR( "video-es" ); PUSH_INPUTVAR( "spu-es" ); PUSH_VAR( "fullscreen" ); - PUSH_VAR( "zoom" ); - PUSH_VAR( "scaling" ); - PUSH_VAR( "deinterlace" ); - PUSH_VAR( "aspect-ratio" ); - PUSH_VAR( "crop" ); PUSH_VAR( "video-on-top" ); #ifdef WIN32 PUSH_VAR( "directx-wallpaper" ); #endif PUSH_VAR( "video-snapshot" ); + PUSH_VAR( "zoom" ); + PUSH_VAR( "scale" ); + PUSH_VAR( "aspect-ratio" ); + PUSH_VAR( "crop" ); + PUSH_VAR( "deinterlace" ); /* Special case for postproc */ // FIXME @@ -241,10 +241,10 @@ static int AudioAutoMenuBuilder( aout_instance_t *p_object, vector &objects, vector &varnames ) { - PUSH_VAR( "visual" ); PUSH_INPUTVAR( "audio-es" ); - PUSH_VAR( "audio-device" ); PUSH_VAR( "audio-channels" ); + PUSH_VAR( "audio-device" ); + PUSH_VAR( "visual" ); return VLC_SUCCESS; } @@ -291,9 +291,9 @@ void QVLCMenu::createMenuBar( MainInterface *mi, QMenuBar *bar = mi->menuBar(); BAR_ADD( FileMenu( p_intf, bar ), qtr( "&Media" ) ); + BAR_DADD( NavigMenu( p_intf, bar ), qtr( "P&layback" ), 3 ); BAR_DADD( AudioMenu( p_intf, bar ), qtr( "&Audio" ), 1 ); BAR_DADD( VideoMenu( p_intf, bar ), qtr( "&Video" ), 2 ); - BAR_DADD( NavigMenu( p_intf, bar ), qtr( "P&layback" ), 3 ); BAR_ADD( ToolsMenu( bar ), qtr( "&Tools" ) ); BAR_ADD( ViewMenu( p_intf, NULL, mi, visual_selector_enabled, true ), @@ -330,7 +330,7 @@ QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf, QWidget *parent ) addDPStaticEntry( menu, qtr( "Paste &MRL" ), NULL, SLOT( openUrlDialog() ), "Ctrl+V" ); - recentsMenu = new QMenu( qtr( "Recently &Played" ), menu ); + recentsMenu = new QMenu( qtr( "&Recent Media" ), menu ); updateRecents( p_intf ); menu->addMenu( recentsMenu ); menu->addSeparator(); @@ -496,23 +496,25 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) if( current->isEmpty() ) { ACT_ADD( current, "audio-es", qtr( "Audio &Track" ) ); - ACT_ADD( current, "audio-device", qtr( "Audio &Device" ) ); ACT_ADD( current, "audio-channels", qtr( "Audio &Channels" ) ); + ACT_ADD( current, "audio-device", qtr( "Audio &Device" ) ); + current->addSeparator(); + ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); current->addSeparator(); ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); current->addSeparator(); - QAction *action = current->addAction( qtr( "Mute Audio" ), - ActionsManager::getInstance( p_intf ), SLOT( toggleMuteAudio() ) ); - action->setData( true ); - action = current->addAction( qtr( "Increase Volume" ), + QAction *action = current->addAction( qtr( "Increase Volume" ), ActionsManager::getInstance( p_intf ), SLOT( AudioUp() ) ); action->setData( true ); action = current->addAction( qtr( "Decrease Volume" ), ActionsManager::getInstance( p_intf ), SLOT( AudioDown() ) ); action->setData( true ); + action = current->addAction( qtr( "Mute" ), + ActionsManager::getInstance( p_intf ), SLOT( toggleMuteAudio() ) ); + action->setData( true ); } p_input = THEMIM->getInput(); @@ -558,18 +560,22 @@ QMenu *QVLCMenu::VideoMenu( intf_thread_t *p_intf, QMenu *current ) addDPStaticEntry( submenu, qtr( "Open File..." ), "", SLOT( loadSubtitlesFile() ) ); submenu->addSeparator(); + current->addSeparator(); ACT_ADD( current, "fullscreen", qtr( "&Fullscreen" ) ); - ACT_ADD( current, "zoom", qtr( "&Zoom" ) ); - ACT_ADD( current, "deinterlace", qtr( "&Deinterlace" ) ); - ACT_ADD( current, "aspect-ratio", qtr( "&Aspect Ratio" ) ); - ACT_ADD( current, "crop", qtr( "&Crop" ) ); ACT_ADD( current, "video-on-top", qtr( "Always &On Top" ) ); #ifdef WIN32 ACT_ADD( current, "directx-wallpaper", qtr( "DirectX Wallpaper" ) ); #endif ACT_ADD( current, "video-snapshot", qtr( "Sna&pshot" ) ); - ACT_ADD( current, "postproc-q", qtr( "Post processing" ) ); + current->addSeparator(); + + ACT_ADD( current, "zoom", qtr( "&Zoom" ) ); + ACT_ADD( current, "scale", qtr( "Sca&le" ) ); + ACT_ADD( current, "aspect-ratio", qtr( "&Aspect Ratio" ) ); + ACT_ADD( current, "crop", qtr( "&Crop" ) ); + ACT_ADD( current, "deinterlace", qtr( "&Deinterlace" ) ); + ACT_ADD( current, "postproc-q", qtr( "&Post processing" ) ); } p_input = THEMIM->getInput(); From git at videolan.org Thu Feb 12 23:59:03 2009 From: git at videolan.org (git version control) Date: Thu, 12 Feb 2009 23:59:03 +0100 (CET) Subject: [vlc-devel] commit: Emit INPUT_EVENT_TITLE/SEEKPOINT when needed. (Laurent Aimar ) Message-ID: <20090212225903.AF6B12F235@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 12 23:54:44 2009 +0100| [0e2340e0624b07b0fda8a26942ad311f2375f0ca] | committer: Laurent Aimar Emit INPUT_EVENT_TITLE/SEEKPOINT when needed. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0e2340e0624b07b0fda8a26942ad311f2375f0ca --- src/input/input.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/input/input.c b/src/input/input.c index 49abe70..cb9e6de 100644 --- a/src/input/input.c +++ b/src/input/input.c @@ -891,7 +891,7 @@ static void InitTitle( input_thread_t * p_input ) { /* Setup variables */ input_ControlVarNavigation( p_input ); - input_ControlVarTitle( p_input, 0 ); + input_SendEventTitle( p_input, 0 ); } /* Global flag */ @@ -1880,7 +1880,7 @@ static bool Control( input_thread_t *p_input, int i_type, es_out_SetTime( p_input->p->p_es_out, -1 ); demux_Control( p_demux, DEMUX_SET_TITLE, i_title ); - input_ControlVarTitle( p_input, i_title ); + input_SendEventTitle( p_input, i_title ); } } else if( p_input->p->input.i_title > 0 ) @@ -1901,6 +1901,7 @@ static bool Control( input_thread_t *p_input, int i_type, stream_Control( p_input->p->input.p_stream, STREAM_CONTROL_ACCESS, ACCESS_SET_TITLE, i_title ); + input_SendEventTitle( p_input, i_title ); } } break; @@ -1946,6 +1947,7 @@ static bool Control( input_thread_t *p_input, int i_type, es_out_SetTime( p_input->p->p_es_out, -1 ); demux_Control( p_demux, DEMUX_SET_SEEKPOINT, i_seekpoint ); + input_SendEventSeekpoint( p_input, p_demux->info.i_title, i_seekpoint ); } } else if( p_input->p->input.i_title > 0 ) @@ -1980,6 +1982,7 @@ static bool Control( input_thread_t *p_input, int i_type, stream_Control( p_input->p->input.p_stream, STREAM_CONTROL_ACCESS, ACCESS_SET_SEEKPOINT, i_seekpoint ); + input_SendEventSeekpoint( p_input, p_access->info.i_title, i_seekpoint ); } } break; From git at videolan.org Fri Feb 13 00:19:23 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 00:19:23 +0100 (CET) Subject: [vlc-devel] commit: Simplify/fix InputManager::customEvent. (Laurent Aimar ) Message-ID: <20090212231923.824742F1E1@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Fri Feb 13 00:18:21 2009 +0100| [9b9b344e94397b839a8cabcddec22641b9cc8cb0] | committer: Laurent Aimar Simplify/fix InputManager::customEvent. The DVD boutons (prev|menu|next)are now working again. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9b9b344e94397b839a8cabcddec22641b9cc8cb0 --- modules/gui/qt4/input_manager.cpp | 51 ++++++------------------------------ 1 files changed, 9 insertions(+), 42 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 2dc83e7..7ab3202 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -143,45 +143,7 @@ void InputManager::customEvent( QEvent *event ) int i_type = event->type(); IMEvent *ple = static_cast(event); - assert( !( i_type != PositionUpdate_Type && - i_type != ItemChanged_Type && - i_type != ItemRateChanged_Type && - i_type != ItemTitleChanged_Type && - i_type != ItemEsChanged_Type && - i_type != ItemTeletextChanged_Type && - i_type != ItemStateChanged_Type && - i_type != StatisticsUpdate_Type && - i_type != InterfaceVoutUpdate_Type && - i_type != MetaChanged_Type && - i_type != NameChanged_Type && - i_type != InfoChanged_Type && - i_type != SynchroChanged_Type && - i_type != CachingEvent_Type && - i_type != BookmarksChanged_Type && - i_type != InterfaceAoutUpdate_Type && - i_type != RecordingEvent_Type ) ); - - if( !hasInput() ) return; - - if( i_type == CachingEvent_Type ) - UpdateCaching(); - - if( ( i_type != PositionUpdate_Type && - i_type != ItemRateChanged_Type && - i_type != ItemEsChanged_Type && - i_type != ItemTeletextChanged_Type && - i_type != ItemStateChanged_Type && - i_type != StatisticsUpdate_Type && - i_type != InterfaceVoutUpdate_Type && - i_type != MetaChanged_Type && - i_type != NameChanged_Type && - i_type != InfoChanged_Type && - i_type != SynchroChanged_Type && - i_type != BookmarksChanged_Type && - i_type != InterfaceAoutUpdate_Type && - i_type != RecordingEvent_Type - ) - && ( i_input_id != ple->i_id ) ) + if( !hasInput() ) return; #ifndef NDEBUG @@ -200,9 +162,13 @@ void InputManager::customEvent( QEvent *event ) UpdateStats(); break; case ItemChanged_Type: - UpdateStatus(); - // UpdateName(); - UpdateArt(); + /* Ignore ItemChanged_Type event that does not apply to our input */ + if( i_input_id == ple->i_id ) + { + UpdateStatus(); + // UpdateName(); + UpdateArt(); + } break; case ItemStateChanged_Type: // TODO: Fusion with above state @@ -255,6 +221,7 @@ void InputManager::customEvent( QEvent *event ) break; default: msg_Warn( p_intf, "This shouldn't happen: %i", i_type ); + assert(0); } } From xxcv07 at gmail.com Fri Feb 13 01:23:25 2009 From: xxcv07 at gmail.com (xxcv) Date: Fri, 13 Feb 2009 11:23:25 +1100 Subject: [vlc-devel] GSoC 2008: WinCE port of VLC media player In-Reply-To: References: Message-ID: <4994BD7D.4040508@gmail.com> Geoffroy Couprie wrote: > Hello everyone! > > I was accepted for Google Summer of Code to work on the Windows CE > port of VLC, and I will be mentored by J?r?me Decoodt. > I will add support for some modules, and rebuild the interface, and > after this summer, I'll probably work on support of VLC on Windows > CE/XP/Vista... > > I am really happy to work on this project this summer :) > > Hi so far haven't seen the code from this project, what is the status of work on supporting Windows Mobile / CE ? I mean you did GSoc right, is there patch coming for vlc-1.0.0 support arm-mingw32ce ? Will there be any support for Windows Mobile ? Thanks in advance. From jb at videolan.org Fri Feb 13 01:49:39 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Fri, 13 Feb 2009 01:49:39 +0100 Subject: [vlc-devel] GSoC 2008: WinCE port of VLC media player In-Reply-To: <4994BD7D.4040508@gmail.com> References: <4994BD7D.4040508@gmail.com> Message-ID: <20090213004939.GA20033@videolan.org> On Fri, Feb 13, 2009 at 11:23:25AM +1100, xxcv wrote : > Geoffroy Couprie wrote: > > Hello everyone! > > > > I was accepted for Google Summer of Code to work on the Windows CE > > port of VLC, and I will be mentored by J?r?me Decoodt. > > I will add support for some modules, and rebuild the interface, and > > after this summer, I'll probably work on support of VLC on Windows > > CE/XP/Vista... > > > > I am really happy to work on this project this summer :) > > > > > Hi so far haven't seen the code from this project, > what is the status of work on supporting Windows Mobile / CE ? > I mean you did GSoc right, is there patch coming for vlc-1.0.0 support > arm-mingw32ce ? http://mailman.videolan.org/pipermail/vlc-devel/2008-September/049460.html For example. IIRC, everything works pretty well, except the video output. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From al-vlcdevel at none.at Fri Feb 13 01:54:23 2009 From: al-vlcdevel at none.at (Aleksandar Lazic) Date: Fri, 13 Feb 2009 01:54:23 +0100 Subject: [vlc-devel] JVLC and group_stream from vlc Message-ID: <20090213005422.GA24798@none.at> Hi JVLC/VLC developer(s), I'am new to VLC and JVLC and have take a look into the samples and examples. What is not clear for me does the current JVLC is able to decode a video/audio stream from a buffer? The examples and samples read always from file not from a socket or a buffer or a byte array. What I want to do is the following: I have a callback which gets an frameobject and this object have the follwoing method: ### byte[] getBuffer() ### into this byte array are the dates for one frame. This callback will be called always when a new frame is comming. Please can anybody help me to come to a solution. Maybe I have overseen something or should read a more deeper description for vlc and jvlc, then please point me to the right way / site ;-). I have seen in this mail that you plan to add the streaming possibility from vlc, maybe this is the solution? http://mailman.videolan.org/pipermail/vlc-devel/2008-December/053830.html Many thanks for your help Aleks From xxcv07 at gmail.com Fri Feb 13 03:38:57 2009 From: xxcv07 at gmail.com (xxcv) Date: Fri, 13 Feb 2009 13:38:57 +1100 Subject: [vlc-devel] GSoC 2008: WinCE port of VLC media player In-Reply-To: <20090213004939.GA20033@videolan.org> References: <4994BD7D.4040508@gmail.com> <20090213004939.GA20033@videolan.org> Message-ID: <4994DD41.7030300@gmail.com> Jean-Baptiste Kempf wrote: > On Fri, Feb 13, 2009 at 11:23:25AM +1100, xxcv wrote : > >> Geoffroy Couprie wrote: >> >>> Hello everyone! >>> >>> I was accepted for Google Summer of Code to work on the Windows CE >>> port of VLC, and I will be mentored by J?r?me Decoodt. >>> I will add support for some modules, and rebuild the interface, and >>> after this summer, I'll probably work on support of VLC on Windows >>> CE/XP/Vista... >>> >>> I am really happy to work on this project this summer :) >>> >>> >>> >> Hi so far haven't seen the code from this project, >> what is the status of work on supporting Windows Mobile / CE ? >> I mean you did GSoc right, is there patch coming for vlc-1.0.0 support >> arm-mingw32ce ? >> > > http://mailman.videolan.org/pipermail/vlc-devel/2008-September/049460.html > > For example. > > IIRC, everything works pretty well, except the video output. > > > Best Regards, > > I see updates for the GUI wince interface.. What about the libvlccore, vlc.exe compilation where the header files doesn't exist in mingw32ce errno.h, signal.h, locale.h which don't exist in current sf.net cegcc project ? Regards, -------------- next part -------------- An HTML attachment was scrubbed... URL: From geo.couprie at gmail.com Fri Feb 13 08:26:21 2009 From: geo.couprie at gmail.com (Geoffroy Couprie) Date: Fri, 13 Feb 2009 08:26:21 +0100 Subject: [vlc-devel] GSoC 2008: WinCE port of VLC media player In-Reply-To: <4994DD41.7030300@gmail.com> References: <4994BD7D.4040508@gmail.com> <20090213004939.GA20033@videolan.org> <4994DD41.7030300@gmail.com> Message-ID: On Fri, Feb 13, 2009 at 3:38 AM, xxcv wrote: > Jean-Baptiste Kempf wrote: > > On Fri, Feb 13, 2009 at 11:23:25AM +1100, xxcv wrote : > > > Hi so far haven't seen the code from this project, > what is the status of work on supporting Windows Mobile / CE ? > I mean you did GSoc right, is there patch coming for vlc-1.0.0 support > arm-mingw32ce ? You can see the code I wrote directly in the VLC source. I sent my patches a while ago. > > > http://mailman.videolan.org/pipermail/vlc-devel/2008-September/049460.html > For example. > IIRC, everything works pretty well, except the video output. Currently, it's broken :P There are bugs in the messages system. > > > I see updates for the GUI wince interface.. > What about the libvlccore, vlc.exe compilation > where the header files doesn't exist in mingw32ce > errno.h, signal.h, locale.h which don't exist in current sf.net cegcc > project ? Just look for the WinCECompile page on the wiki. I provide a contribs package, like the one for windows, with the headers and libs needed. Regards, Geoffroy From xxcv07 at gmail.com Fri Feb 13 08:56:54 2009 From: xxcv07 at gmail.com (xxcv) Date: Fri, 13 Feb 2009 18:56:54 +1100 Subject: [vlc-devel] GSoC 2008: WinCE port of VLC media player In-Reply-To: References: <4994BD7D.4040508@gmail.com> <20090213004939.GA20033@videolan.org> <4994DD41.7030300@gmail.com> Message-ID: <499527C6.2010307@gmail.com> Geoffroy Couprie wrote: > On Fri, Feb 13, 2009 at 3:38 AM, xxcv wrote: > >> Jean-Baptiste Kempf wrote: >> >> On Fri, Feb 13, 2009 at 11:23:25AM +1100, xxcv wrote : >> >> >> Hi so far haven't seen the code from this project, >> what is the status of work on supporting Windows Mobile / CE ? >> I mean you did GSoc right, is there patch coming for vlc-1.0.0 support >> arm-mingw32ce ? >> > > You can see the code I wrote directly in the VLC source. I sent my > patches a while ago. > > >> http://mailman.videolan.org/pipermail/vlc-devel/2008-September/049460.html >> For example. >> IIRC, everything works pretty well, except the video output. >> > > Currently, it's broken :P There are bugs in the messages system. > > wince.cpp: In function 'void Run(intf_thread_t*)': wince.cpp:201: error: 'p_priv' was not declared in this scope wince.cpp:202: error: 'p_priv' was not declared in this scope make[6]: *** [libwince_plugin_la-wince.lo] Error 1 Trying to compile with gcc version 4.1.0 from cegcc svn trunk -------------- next part -------------- An HTML attachment was scrubbed... URL: From rdenis at simphalempin.com Fri Feb 13 09:18:31 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 13 Feb 2009 09:18:31 +0100 Subject: [vlc-devel] GSoC 2008: WinCE port of VLC media player In-Reply-To: <4994BD7D.4040508@gmail.com> References: <4994BD7D.4040508@gmail.com> Message-ID: <8fba248532a8b6ef9887250dae5ef507@chewa.net> On Fri, 13 Feb 2009 11:23:25 +1100, xxcv wrote: > Hi so far haven't seen the code from this project, > what is the status of work on supporting Windows Mobile / CE ? Geoffroy, Pierre Y. (and J?r?me?) have continued improving the WinCE port. I think it's fair to say that it's currently the second most actively maintained port after Linux! And yeah, that means more so than Win32 and OSX. However, I guess it's still lacking some important features. -- R?mi Denis-Courmont From git at videolan.org Fri Feb 13 10:31:29 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 10:31:29 +0100 (CET) Subject: [vlc-devel] commit: Qt: menus/visualisation fix. (Jean-Baptiste Kempf ) Message-ID: <20090213093129.5A79E2F278@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 13 10:30:38 2009 +0100| [0ee99df52562eb1bd61da18a809b4b3e0ed89420] | committer: Jean-Baptiste Kempf Qt: menus/visualisation fix. 10l is 10l of Coke, not of Whisky... > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0ee99df52562eb1bd61da18a809b4b3e0ed89420 --- modules/gui/qt4/menus.cpp | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index b23c680..5cc738f 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -499,11 +499,8 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) ACT_ADD( current, "audio-channels", qtr( "Audio &Channels" ) ); ACT_ADD( current, "audio-device", qtr( "Audio &Device" ) ); current->addSeparator(); - ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); - current->addSeparator(); ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); - current->addSeparator(); QAction *action = current->addAction( qtr( "Increase Volume" ), @@ -568,6 +565,7 @@ QMenu *QVLCMenu::VideoMenu( intf_thread_t *p_intf, QMenu *current ) ACT_ADD( current, "directx-wallpaper", qtr( "DirectX Wallpaper" ) ); #endif ACT_ADD( current, "video-snapshot", qtr( "Sna&pshot" ) ); + current->addSeparator(); ACT_ADD( current, "zoom", qtr( "&Zoom" ) ); From git at videolan.org Fri Feb 13 11:10:44 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 11:10:44 +0100 (CET) Subject: [vlc-devel] commit: Qt: deinline createStatusBar() and explicit statusBar creation. ( Jean-Baptiste Kempf ) Message-ID: <20090213101044.AE5C82F2B1@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 13 11:10:09 2009 +0100| [f509b90d14a08b1fb6b4e6584c56e4ce5a6bb086] | committer: Jean-Baptiste Kempf Qt: deinline createStatusBar() and explicit statusBar creation. No feature change. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f509b90d14a08b1fb6b4e6584c56e4ce5a6bb086 --- modules/gui/qt4/main_interface.cpp | 13 ++++++++----- modules/gui/qt4/main_interface.hpp | 3 ++- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index eb5b7ed..e7dfb1e 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -148,7 +148,7 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf ) QVLCMenu::createMenuBar( this, p_intf, visualSelectorEnabled ); /* StatusBar Creation */ - createStatusBar(); + setStatusBar( createStatusBar() ); /******************** * Input Manager * @@ -311,8 +311,10 @@ MainInterface::~MainInterface() * Main UI handling * *****************************/ -inline void MainInterface::createStatusBar() +QStatusBar * MainInterface::createStatusBar() { + QStatusBar *statusBar = new QStatusBar; + /**************** * Status Bar * ****************/ @@ -329,15 +331,16 @@ inline void MainInterface::createStatusBar() nameLabel->setFrameStyle( QFrame::Sunken | QFrame::StyledPanel); /* and adding those */ - statusBar()->addWidget( nameLabel, 8 ); - statusBar()->addPermanentWidget( speedLabel, 0 ); - statusBar()->addPermanentWidget( timeLabel, 0 ); + statusBar->addWidget( nameLabel, 8 ); + statusBar->addPermanentWidget( speedLabel, 0 ); + statusBar->addPermanentWidget( timeLabel, 0 ); /* timeLabel behaviour: - double clicking opens the goto time dialog - right-clicking and clicking just toggle between remaining and elapsed time.*/ CONNECT( timeLabel, timeLabelDoubleClicked(), THEDP, gotoTimeDialog() ); + return statusBar; } inline void MainInterface::initSystray() diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp index 95e0a78..8528171 100644 --- a/modules/gui/qt4/main_interface.hpp +++ b/modules/gui/qt4/main_interface.hpp @@ -49,6 +49,7 @@ class FullscreenControllerWidget; class SpeedControlWidget; class QMenu; class QSize; +class QStatusBar; enum { CONTROLS_HIDDEN = 0x0, @@ -117,7 +118,7 @@ private: void createSystray(); void initSystray(); - void createStatusBar(); + QStatusBar * createStatusBar(); /* Video */ VideoWidget *videoWidget; From linkfanel at yahoo.fr Fri Feb 13 11:13:29 2009 From: linkfanel at yahoo.fr (Pierre Ynard) Date: Fri, 13 Feb 2009 11:13:29 +0100 Subject: [vlc-devel] [PATCH] Fix build when zip support is disabled Message-ID: <20090213101329.GA12845@via.ecp.fr> Move an AM_CONDITIONAL outside an if block diff --git a/configure.ac b/configure.ac index 0f2752d..a821ceb 100644 --- a/configure.ac +++ b/configure.ac @@ -892,13 +892,13 @@ then MINIZIP_LIBS="../../../libs/unzip/libunzip.la" ]) ]) - AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS]) VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS]) VLC_ADD_PLUGIN([unzip]) VLC_ADD_PLUGIN([zip]) fi +AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) dnl Check for hal Regards, -- Pierre Ynard "Une ?me dans un corps, c'est comme un dessin sur une feuille de papier." From git at videolan.org Fri Feb 13 11:30:15 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 11:30:15 +0100 (CET) Subject: [vlc-devel] commit: Use Jump to instead of Go to (Jean-Baptiste Kempf ) Message-ID: <20090213103015.E09462F2D4@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 13 11:29:55 2009 +0100| [bce370d338abe3e3521b87be032f578c2a44ff28] | committer: Jean-Baptiste Kempf Use Jump to instead of Go to > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bce370d338abe3e3521b87be032f578c2a44ff28 --- include/vlc_intf_strings.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/include/vlc_intf_strings.h b/include/vlc_intf_strings.h index ef0b677..de51b7d 100644 --- a/include/vlc_intf_strings.h +++ b/include/vlc_intf_strings.h @@ -43,7 +43,7 @@ #define I_MENU_CODECINFO N_("&Codec Information") #define I_MENU_MSG N_("&Messages") #define I_MENU_EXT N_("&Extended Settings") -#define I_MENU_GOTOTIME N_("Go to Specific &Time") +#define I_MENU_GOTOTIME N_("Jump to Specific &Time") #define I_MENU_BOOKMARK N_("&Bookmarks") #define I_MENU_VLM N_("&VLM Configuration") From jpd at m2x.nl Fri Feb 13 12:16:18 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Fri, 13 Feb 2009 12:16:18 +0100 (CET) Subject: [vlc-devel] [patch] Alter symbol-globalising dlopen(RTLD_NOLOAD) call to succeed In-Reply-To: <44c53239a0e89f47ffef2db684e8772a@chewa.net> References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <200902121742.55985.rem@videolan.org> <200902122209.23704.rem@videolan.org> <44c53239a0e89f47ffef2db684e8772a@chewa.net> Message-ID: [reinstating list-cc that went AWOL] On Fri, February 13, 2009 11:53 am, R??mi Denis-Courmont wrote: > On Fri, 13 Feb 2009 09:48:00 +0100 (CET), jpd at m2x.nl wrote: >> I think you're trying to do something that's rightfully the job of ld.so. >> I see no point in trusting dlsym over RTLD_NOLOAD. Worse, the dlsym call >> prevents the setting of RTLD_GLOBAL, which is needed for the plugin to >> work. > > Since you are obviously not trying to understand my point, I will put this > discussion to an end. I explicitly asked you to elaborate. The copy-pasted reply apparently didn't do the job, so I invite you again to explain why you think that the dlsym call is needed to do what RTLD_NOLOAD is supposed to do already. Please, do explain. AFAIK I need the dlsym call gone to make the plugin work, but alternative solutions are welcome too, of course. From rem at videolan.org Fri Feb 13 12:24:50 2009 From: rem at videolan.org (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 13 Feb 2009 12:24:50 +0100 Subject: [vlc-devel] =?utf-8?q?=5Bpatch=5D_Alter_symbol-globalising_dlopen?= =?utf-8?q?=28RTLD=5FNOLOAD=29_call_to_succeed?= In-Reply-To: References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <200902121742.55985.rem@videolan.org> <200902122209.23704.rem@videolan.org> <44c53239a0e89f47ffef2db684e8772a@chewa.net> Message-ID: On Fri, 13 Feb 2009 12:16:18 +0100 (CET), jpd at m2x.nl wrote: > I explicitly asked you to elaborate. The copy-pasted reply apparently > didn't do the job, so I invite you again to explain why you think that > the dlsym call is needed to do what RTLD_NOLOAD is supposed to do already. > > Please, do explain. AFAIK I need the dlsym call gone to make the plugin > work, but alternative solutions are welcome too, of course. AGAIN, the symbols can come from something ELSE than libvlccore.so. That's the whole point. If we _are_ a libvlccore(.a) linked into another object, we don't want to go and override ourselves with whatever _other_ image of libvlccore(.so) happens to be in our process space. What we want to expose it ourselves (whatever that means), not /usr/lib/libvlccore.so. And M2X cannot have it both ways. You guys are pushing for revision.c, and for linking the plugins against libvlccore. You need to choose, because we really cannot have both of these at the same time from the point of view of development. -- R?mi Denis-Courmont From jpd at m2x.nl Fri Feb 13 13:07:56 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Fri, 13 Feb 2009 13:07:56 +0100 (CET) Subject: [vlc-devel] [patch] Alter symbol-globalising dlopen(RTLD_NOLOAD) call to succeed In-Reply-To: References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <200902121742.55985.rem@videolan.org> <200902122209.23704.rem@videolan.org> <44c53239a0e89f47ffef2db684e8772a@chewa.net> Message-ID: <8a1f9cf0d43fb27e6b476ab92d85a56d.squirrel@m2x.nl> On Fri, February 13, 2009 12:24 pm, R??mi Denis-Courmont wrote: > AGAIN, the symbols can come from something ELSE than libvlccore.so. That's > the whole point. If we _are_ a libvlccore(.a) linked into another object, > we don't want to go and override ourselves with whatever _other_ image of > libvlccore(.so) happens to be in our process space. > > What we want to expose it ourselves (whatever that means), not > /usr/lib/libvlccore.so. I do not think that dlsym is the correct way to infer that case. In fact and despite my limited knowledge of ld.so, I am reasonably sure it is an incorrect way. It seems to me to be something for ld.so to do using weak symbols, and if not perhaps using the preprocessor. But even so, all I'm looking for is to solve a problem which appears to be solved by removing the dlsym call, and if you object to removing it, please explain how RTLD_GLOBAL can be set on the libvlccore{.a,.so} symbols needed by later modules, because without that flag the mozilla plugin certainly does not work. > And M2X cannot have it both ways. You guys are pushing for revision.c, and > for linking the plugins against libvlccore. You need to choose, because we > really cannot have both of these at the same time from the point of view of > development. Personally, I do not share your need to construe asking a question about the latter on irc as pushing for the thing. The former you will have to take up with Saman and the other companies that would like it, I'm sure they will be looking forward to your thoughtful arguments. From rem at videolan.org Fri Feb 13 13:46:34 2009 From: rem at videolan.org (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 13 Feb 2009 13:46:34 +0100 Subject: [vlc-devel] =?utf-8?q?=5Bpatch=5D_Alter_symbol-globalising_dlopen?= =?utf-8?q?=28RTLD=5FNOLOAD=29_call_to_succeed?= In-Reply-To: <8a1f9cf0d43fb27e6b476ab92d85a56d.squirrel@m2x.nl> References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <200902121742.55985.rem@videolan.org> <200902122209.23704.rem@videolan.org> <44c53239a0e89f47ffef2db684e8772a@chewa.net> <8a1f9cf0d43fb27e6b476ab92d85a56d.squirrel@m2x.nl> Message-ID: <0aa6706f94038edc57c8305a2fdf0380@chewa.net> On Fri, 13 Feb 2009 13:07:56 +0100 (CET), jpd at m2x.nl wrote: > On Fri, February 13, 2009 12:24 pm, R?mi Denis-Courmont wrote: >> AGAIN, the symbols can come from something ELSE than libvlccore.so. >> That's the whole point. If we _are_ a libvlccore(.a) linked into another >> object, we don't want to go and override ourselves with whatever >> _other_ image of libvlccore(.so) happens to be in our process space. >> >> What we want to expose it ourselves (whatever that means), not >> /usr/lib/libvlccore.so. > > I do not think that dlsym is the correct way to infer that case. Well, it is a hack. And so is the following dlopen(). But I am not aware of any way to do what we want/need with libdl other than that, or linking the plugins against libvlccore. The later, among other things, implies getting rid of revision.c, which I has been forced onto VLC by M2X in the first place. > In fact and despite my limited knowledge of ld.so, I am reasonably > sure it is an incorrect way. It seems to me to be something for ld.so > to do using weak symbols, and if not perhaps using the preprocessor. If you know a better solution, you're welcome to implement it. > But even so, all I'm looking for is to solve a problem which appears to > be solved by removing the dlsym call, and if you object to removing it, > please explain how RTLD_GLOBAL can be set on the libvlccore{.a,.so} > symbols needed by later modules, because without that flag the mozilla > plugin certainly does not work. > Personally, I do not share your need to construe asking a question about > the latter on irc as pushing for the thing. The former you will have to > take up with Saman and the other companies that would like it, I'm sure > they will be looking forward to your thoughtful arguments. revision.c was added (in a disruptive way) by M2X a long time ago, removed by me, re-added in complete disregard of my technical objections by M2X, then removed again by me, and finally fixed by not linking plugins against libvlccore. I have no problems linking the plugins via libvlccore again, but that implies: - getting rid of revision.c - for real this time, and - putting adequate safeguards against statically linked libvlccore, which have been missing this far. >From the your complaints and those of the bindings maintainers, I infer that we should revert to that model. But I will only do that if I have M2X word that they won't bring revision.c back in any form. Ever. I have waste too many hours on this annoyance. -- R?mi Denis-Courmont From xxcv07 at gmail.com Fri Feb 13 14:04:59 2009 From: xxcv07 at gmail.com (xxcv) Date: Sat, 14 Feb 2009 00:04:59 +1100 Subject: [vlc-devel] [PATCH] Fix build when zip support is disabled In-Reply-To: <20090213101329.GA12845@via.ecp.fr> References: <20090213101329.GA12845@via.ecp.fr> Message-ID: <49956FFB.5050203@gmail.com> Pierre Ynard wrote: > Move an AM_CONDITIONAL outside an if block > > > diff --git a/configure.ac b/configure.ac > index 0f2752d..a821ceb 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -892,13 +892,13 @@ then > MINIZIP_LIBS="../../../libs/unzip/libunzip.la" > ]) > ]) > - AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) > VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) > VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS]) > VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS]) > VLC_ADD_PLUGIN([unzip]) > VLC_ADD_PLUGIN([zip]) > fi > +AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) > > > dnl Check for hal > > > Regards, > > Thanks this happened to me while compiling to host=arm-mingw32ce without compile zlib From git at videolan.org Fri Feb 13 14:15:10 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 14:15:10 +0100 (CET) Subject: [vlc-devel] commit: Fix build when zip support is disabled (Pierre Ynard ) Message-ID: <20090213131510.9A45C2F295@skanda.videolan.org> vlc | branch: master | Pierre Ynard | Fri Feb 13 11:13:29 2009 +0100| [1fac4734ed7694d7a43af8db6b60de86871ed627] | committer: Jean-Baptiste Kempf Fix build when zip support is disabled Move an AM_CONDITIONAL outside an if block Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1fac4734ed7694d7a43af8db6b60de86871ed627 --- configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/configure.ac b/configure.ac index 0f2752d..299beeb 100644 --- a/configure.ac +++ b/configure.ac @@ -892,13 +892,13 @@ then MINIZIP_LIBS="../../../libs/unzip/libunzip.la" ]) ]) - AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS]) VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS]) VLC_ADD_PLUGIN([unzip]) VLC_ADD_PLUGIN([zip]) fi +AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) dnl Check for hal From brezhoneg1 at yahoo.fr Fri Feb 13 14:25:32 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Fri, 13 Feb 2009 14:25:32 +0100 Subject: [vlc-devel] [PATCH] -- autoscale/scalefactor issues Message-ID: <000001c98dde$8e5103e0$5152fac1@CCCC> After some more tests on Linux and Windows, this patch corrects the following issues : 1- A Windows specific limitation. On Windows (tested with vlc1.0-git-20060211 from jb's website), the 'Alt-o' hotkey leads to a black screen when zooming exceeds the container size. This patch makes sure we don't exceed this container size. 2 - Original width/height calculation When an original video doesn't have square pixel (sar != 1:1), original width and height is not straightforward. You need to choose one direction as a reference and either scale up or down the other direction. In vlc, scaling up was done in InitWindowSize and scaling down was done in Vout_PlacePicture (but never used before autoscale was introduced ) This patch changes Vout_PicturePlace to also scale up as InitWindowSize does. 3- small cosmetic change about i_zoom Though this may be a bit technical, this is really bug corrections (no new feature and no regression to be expected) Erwan10 -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-corrects-two-issues-related-to-autoscale-scalefactor.patch Type: application/octet-stream Size: 2806 bytes Desc: not available URL: From jb at videolan.org Fri Feb 13 14:29:06 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Fri, 13 Feb 2009 14:29:06 +0100 Subject: [vlc-devel] [PATCH] -- autoscale/scalefactor issues In-Reply-To: <000001c98dde$8e5103e0$5152fac1@CCCC> References: <000001c98dde$8e5103e0$5152fac1@CCCC> Message-ID: <20090213132906.GA4069@videolan.org> On Fri, Feb 13, 2009 at 02:25:32PM +0100, brezhoneg1 wrote : > After some more tests on Linux and Windows, this patch corrects the > following issues : > > 1- A Windows specific limitation. > > On Windows (tested with vlc1.0-git-20060211 from jb's website), the I think you meant 20090211 :D > 'Alt-o' hotkey leads to a black screen when zooming exceeds the > container size. This patch makes sure we don't exceed this container > size. Yes. I noticed that two. Thanks for fixing. > 2 - Original width/height calculation > > When an original video doesn't have square pixel (sar != 1:1), original > width and height is not straightforward. You need to choose one > direction as a reference and either scale up or down the other > direction. > > In vlc, scaling up was done in InitWindowSize and scaling down was done > in Vout_PlacePicture (but never used before autoscale was introduced ) > This patch changes Vout_PicturePlace to also scale up as InitWindowSize > does. > 3- small cosmetic change about i_zoom Can you separate patches, please? That helps a lot for regression tracking. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jpd at m2x.nl Fri Feb 13 14:45:10 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Fri, 13 Feb 2009 14:45:10 +0100 (CET) Subject: [vlc-devel] [patch] Alter symbol-globalising dlopen(RTLD_NOLOAD) call to succeed In-Reply-To: <0aa6706f94038edc57c8305a2fdf0380@chewa.net> References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <200902121742.55985.rem@videolan.org> <200902122209.23704.rem@videolan.org> <44c53239a0e89f47ffef2db684e8772a@chewa.net> <8a1f9cf0d43fb27e6b476ab92d85a56d.squirrel@m2x.nl> <0aa6706f94038edc57c8305a2fdf0380@chewa.net> Message-ID: <7b7f76701e1345d6882695b14b9b8607.squirrel@m2x.nl> On Fri, February 13, 2009 1:46 pm, R??mi Denis-Courmont wrote: > On Fri, 13 Feb 2009 13:07:56 +0100 (CET), jpd at m2x.nl wrote: >> On Fri, February 13, 2009 12:24 pm, R??mi Denis-Courmont wrote: >>> AGAIN, the symbols can come from something ELSE than libvlccore.so. >>> That's the whole point. If we _are_ a libvlccore(.a) linked into another >>> object, we don't want to go and override ourselves with whatever >>> _other_ image of libvlccore(.so) happens to be in our process space. >>> >>> What we want to expose it ourselves (whatever that means), not >>> /usr/lib/libvlccore.so. ITYM you want to expose the already loaded symbols regardless of the name of the shared object they were loaded from. If the shared object "we" were loaded from is named differently, dlopen("libvlccore.so",RTLD_NOLOAD|...) will fail and not load anything. If on the other hand you are concerned about multiple instances of vlccore.so in "our" address space, and manage to figure out which is which, the proper fix, such as it is, would be to use RTLD_DEEPBIND. It seems that the dlsym call thus does not safeguard against your stated case since it does not occur in this dlopen call, but it does break the plugin because it prevents RTLD_GLOBAL from being set. Besides, some adversary or ill-informed tinkerer can always LD_PRELOAD --a well-known issue with ld.so, for better or for worse-- so I'm not sure this intended safeguard ever has a positive effect. If you believe otherwise, please show how that would work. >> I do not think that dlsym is the correct way to infer that case. > > Well, it is a hack. And so is the following dlopen(). But I am not aware of > any way to do what we want/need with libdl other than that, or linking the > plugins against libvlccore. The later, among other things, implies getting > rid of revision.c, which I has been forced onto VLC by M2X in the first > place. I must confess that I have no idea why linking plugins against libvlccore or the existence of revision.c is in any way or form a factor in calling dlsym on something else entirely. I would say that calling dlsym this way checks for a link-time decision, and it probably would not be unreasonable to require a preprocessor symbol (given that vlc is open source) or probably more appropriately would be solved by telling the loader directly what is desired. I'm not aware of a way to tell webbrowsers to use RTLD_GLOBAL on the plugin directly. >> In fact and despite my limited knowledge of ld.so, I am reasonably >> sure it is an incorrect way. It seems to me to be something for ld.so >> to do using weak symbols, and if not perhaps using the preprocessor. > > If you know a better solution, you're welcome to implement it. I have to focus on the webbrowser plugins for the moment, not on loader trickery for what appear to be wilfully nonstandard cases. From xxcv07 at gmail.com Fri Feb 13 14:53:40 2009 From: xxcv07 at gmail.com (xxcv) Date: Sat, 14 Feb 2009 00:53:40 +1100 Subject: [vlc-devel] GSoC 2008: WinCE port of VLC media player In-Reply-To: <8fba248532a8b6ef9887250dae5ef507@chewa.net> References: <4994BD7D.4040508@gmail.com> <8fba248532a8b6ef9887250dae5ef507@chewa.net> Message-ID: <49957B64.2070306@gmail.com> R?mi Denis-Courmont wrote: > On Fri, 13 Feb 2009 11:23:25 +1100, xxcv wrote: > >> Hi so far haven't seen the code from this project, >> what is the status of work on supporting Windows Mobile / CE ? >> > > Geoffroy, Pierre Y. (and J?r?me?) have continued improving the WinCE > port. I think it's fair to say that it's currently the second most actively > maintained port after Linux! And yeah, that means more so than Win32 and > OSX. However, I guess it's still lacking some important features. > > ... I compiled vlc-1.0.0-git for arm-mingw32ce ... everything is compiled except vlc.exe where there's this error on linking, and it didn't exit the make, however resulted a 21.2 Kbytes binary. creating vlc.exe ./.libs/lt-vlc.c: In function 'main': ./.libs/lt-vlc.c:113: warning: implicit declaration of function 'execv' ./.libs/lt-vlc.c: In function 'find_executable': ./.libs/lt-vlc.c:226: warning: implicit declaration of function 'getenv' ./.libs/lt-vlc.c:226: warning: initialization makes pointer from integer without a cast /tmp/ccWENWUA.o:lt-vlc.c:(.text+0x194): undefined reference to `execv' /tmp/ccWENWUA.o:lt-vlc.c:(.text+0x59c): undefined reference to `getenv' /tmp/ccWENWUA.o:lt-vlc.c:(.text+0x660): undefined reference to `getcwd' /tmp/ccWENWUA.o:lt-vlc.c:(.text+0x7e4): undefined reference to `getcwd' collect2: ld returned 1 exit status ... g, probably need to compile libiconv ... :-$ Regards, -------------- next part -------------- An HTML attachment was scrubbed... URL: From rdenis at simphalempin.com Fri Feb 13 15:13:14 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 13 Feb 2009 15:13:14 +0100 Subject: [vlc-devel] =?utf-8?q?=5Bpatch=5D_Alter_symbol-globalising_dlopen?= =?utf-8?q?=28RTLD=5FNOLOAD=29_call_to_succeed?= In-Reply-To: <7b7f76701e1345d6882695b14b9b8607.squirrel@m2x.nl> References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <200902121742.55985.rem@videolan.org> <200902122209.23704.rem@videolan.org> <44c53239a0e89f47ffef2db684e8772a@chewa.net> <8a1f9cf0d43fb27e6b476ab92d85a56d.squirrel@m2x.nl> <0aa6706f94038edc57c8305a2fdf0380@chewa.net> <7b7f76701e1345d6882695b14b9b8607.squirrel@m2x.nl> Message-ID: <1e751486f2683be53c9c1fe351452602@chewa.net> Hello, On Fri, 13 Feb 2009 14:45:10 +0100 (CET), jpd at m2x.nl wrote: > I must confess that I have no idea why linking plugins against libvlccore > or the existence of revision.c is in any way or form a factor in calling > dlsym on something else entirely. revision.c, by essence, needs to be regenerated pretty much all the time. In theory, it depends on every single file in the source repository. In practice, the ony realistic way to implement that, is to be regenerate the file every time. That has the (expected) consequence that revision.c is recompiled every time, and then that libvlccore is relinked everytime. That typically takes a few seconds. But then, the way make works, we end up relinking any target that links against libvlccore, and recursively. Currently, that affects libvlc, vlc, and the web plugins, which is not very nice. If we link the plugins against libvlccore, then we need to relink almost every single target in the tree. That is entirely unacceptable for development. Lest someone "fixing" make, we have an exclusive choice between revision.c and linking plugins against libvlccore, as we arguably should. I have already stated several times that I would prefer removing revision.c, and so would a bunch of other developpers. The only one that I know is in the "camp" for not linking against libvlccore is Pierre d'H, because that anyway speeds up the build regardless of revision.c. *But*, inspite of my objections, M2X has on _several_ occasions brought revision.c back into the build. > I have to focus on the webbrowser plugins for the moment, not on > loader trickery for what appear to be wilfully nonstandard cases. That's typical M2X behavior. Focus on short term business-focused hacks, and put the fixing and long-term maintainance burden on volunteer developpers. And then blame me as I try to fix their bugs. Frankly, I have really had it with your employer. -- R?mi Denis-Courmont From brezhoneg1 at yahoo.fr Fri Feb 13 15:15:02 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Fri, 13 Feb 2009 15:15:02 +0100 Subject: [vlc-devel] RE : [PATCH] -- autoscale/scalefactor issues In-Reply-To: <20090213132906.GA4069@videolan.org> Message-ID: <000001c98de5$77450910$ce22fac1@CCCC> > > Can you separate patches, please? That helps a lot for regression > tracking. > Here we go .... Separated patches (but 1, 2, 3 order still required to apply them!) Regards Erwan10 -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Corrects-original-width-height-calculations-to-be-co.patch Type: application/octet-stream Size: 2037 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-Corrects-a-Windows-limitation-zooming-cannot-exceed.patch Type: application/octet-stream Size: 1264 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0003-Cosmetic-about-i_zoom-limitation-patch-3-3.patch Type: application/octet-stream Size: 982 bytes Desc: not available URL: From git at videolan.org Fri Feb 13 16:09:12 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 16:09:12 +0100 (CET) Subject: [vlc-devel] commit: Distribute the profile files (Christophe Mutricy ) Message-ID: <20090213150912.438582F2F7@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Fri Feb 13 14:26:17 2009 +0100| [f283fe2a09912415719a78156d9f2900d999f32e] | committer: Christophe Mutricy Distribute the profile files > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f283fe2a09912415719a78156d9f2900d999f32e --- modules/gui/qt4/Modules.am | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/Modules.am b/modules/gui/qt4/Modules.am index ea86067..dea66d6 100644 --- a/modules/gui/qt4/Modules.am +++ b/modules/gui/qt4/Modules.am @@ -7,6 +7,8 @@ # For each UI # - Add it to EXTRA_DIST # - Add the .h to nodist_SOURCES_qt4 +# For each ressource (icon, png, ...) +# - Add it to DEPS_res AUTOMAKE_OPTIONS = subdir-objects MOSTLYCLEANFILES = $(UIH) @@ -117,6 +119,7 @@ DEPS_res = \ pixmaps/prefs/spref_cone_Video_64.png \ pixmaps/previous.png \ pixmaps/previous_16px.png \ + pixmaps/profile_new.png \ pixmaps/slower.png \ pixmaps/space.png \ pixmaps/stop.png \ @@ -264,7 +267,7 @@ noinst_HEADERS = \ components/playlist/playlist.hpp \ components/playlist/selector.hpp \ components/playlist/sorting.h \ - components/sout/profile_selector.cpp \ + components/sout/profile_selector.hpp \ util/input_slider.hpp \ util/customwidgets.hpp \ util/qvlcframe.hpp \ From git at videolan.org Fri Feb 13 16:09:12 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 16:09:12 +0100 (CET) Subject: [vlc-devel] commit: Add/remove files from POTFILES.in and regenerate vlc.pot ( Christophe Mutricy ) Message-ID: <20090213150912.80B762F2F7@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Fri Feb 13 15:10:13 2009 +0100| [444fb88c745c0ef4f419676754ba9bb593ab5861] | committer: Christophe Mutricy Add/remove files from POTFILES.in and regenerate vlc.pot Note to translators: The 0.9.x translations are not merged yet. So if you don't know how to do it yourself and don't want to loose the work you did on 0.9.x, wait a bit. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=444fb88c745c0ef4f419676754ba9bb593ab5861 --- po/POTFILES.in | 7 +- po/POTFILES.skip | 5 + po/vlc.pot | 7614 ++++++++++++++++++++++++++++-------------------------- 3 files changed, 4026 insertions(+), 3600 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=444fb88c745c0ef4f419676754ba9bb593ab5861 From jpd at m2x.nl Fri Feb 13 16:21:07 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Fri, 13 Feb 2009 16:21:07 +0100 (CET) Subject: [vlc-devel] [patch] Alter symbol-globalising dlopen(RTLD_NOLOAD) call to succeed In-Reply-To: <1e751486f2683be53c9c1fe351452602@chewa.net> References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <200902121742.55985.rem@videolan.org> <200902122209.23704.rem@videolan.org> <44c53239a0e89f47ffef2db684e8772a@chewa.net> <8a1f9cf0d43fb27e6b476ab92d85a56d.squirrel@m2x.nl> <0aa6706f94038edc57c8305a2fdf0380@chewa.net> <7b7f76701e1345d6882695b14b9b8607.squirrel@m2x.nl> <1e751486f2683be53c9c1fe351452602@chewa.net> Message-ID: On Fri, February 13, 2009 3:13 pm, R??mi Denis-Courmont wrote: > On Fri, 13 Feb 2009 14:45:10 +0100 (CET), jpd at m2x.nl wrote: >> I must confess that I have no idea why linking plugins against libvlccore >> or the existence of revision.c is in any way or form a factor in calling >> dlsym on something else entirely. > > revision.c, by essence, needs to be regenerated pretty much all the time. > In theory, it depends on every single file in the source repository. In > practice, the ony realistic way to implement that, is to be regenerate the > file every time. [big snip] > > *But*, inspite of my objections, M2X has on _several_ occasions brought > revision.c back into the build. I will not comment on the merits of arguments either way, but this explanation still fails to impress me with the relation, if any, of that topic to the patch I originally submitted and the issues you found with it but are hard pressed to discuss in detail. >> I have to focus on the webbrowser plugins for the moment, not on >> loader trickery for what appear to be wilfully nonstandard cases. > > That's typical M2X behavior. Focus on short term business-focused hacks, > and put the fixing and long-term maintainance burden on volunteer > developpers. And then blame me as I try to fix their bugs. Frankly, I have > really had it with your employer. I somehow must have missed your rebuttal of my argument that to the best of my understanding that "fix" does no such thing and in fact breaks much-desired functionality elsewhere. I daresay the latter, in casu a working webbrowser plugin for the 1.0 release, has importance if not directly to the aestethics of the code, at least to the long-term viability of the project. That you apparently cannot find it in you to separate proposed bugfixes from your personal issues with my employer I regret. However, I can but wish you would work them out with him instead of taking them to me. From hartman at videolan.org Fri Feb 13 16:31:54 2009 From: hartman at videolan.org (Derk-Jan Hartman) Date: Fri, 13 Feb 2009 16:31:54 +0100 Subject: [vlc-devel] compiling VLC 1.0 on Mac OS X Message-ID: As some may know, we have been having some serious trouble with thread cancellation on OSX for some while now. Felix already reported that he had seen improvements with using LLVM, so i did a few tests, It seems indeed that with llvm the cancellation issues are solved. I'm thinking however that this is more related to usage of gcc-4.2, then due to llvm. Because I suddenly remembered that the default gcc on the CONSOLE is still gcc-4.0.* in the latest XCode versions. (still needs to be confirmed) Anyways the following works for me: cd extras/contrib CONTRIBS_CC_LLVM=yes ./bootstrap cd ../.. export CC="/Developer/usr/bin/llvm-gcc-4.2" export OBJC="/Developer/usr/bin/llvm-gcc-4.2" export CXX="/Developer/usr/bin/llvm-g++-4.2" ./bootstrap ./configure --disable-macosx-defaults --with-macosx-version-min=10.5 -- prefix=yourvlclocation/vlc_install_dir --enable-macosx --enable-faad -- enable-flac --enable-theora --enable-shout --enable-cddax --enable- vcdx --enable-caca --enable-goom --enable-ncurses --enable-twolame -- enable-realrtsp --enable-update-check --enable-libass --enable- asademux --disable-skins2 --disable-x11 --disable-glx --disable-xvid -- disable-nls --with-macosx-sdk=/Developer/SDKs/MacOSX10.5.sdk make I could revert: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=076dc4357cbe4eec9085a59162c6910a07d0b850 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3b6ed8084e27fa27f51d3abdeb37052ea9af38fb http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e1cb28a3a913418ac845c622e0d1647ed0d24d39 So my idea is that for 1.0.0 we switch to gcc-4.2 and SDK 10.5. I think that should solve most of our issues. Then we need to fixup the drawable usage a bit in my opinion, but it seems to me that vlc can be usable and in the neighbourhood of "releasable" when we do that work. DJ From rdenis at simphalempin.com Fri Feb 13 17:11:30 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 13 Feb 2009 17:11:30 +0100 Subject: [vlc-devel] =?utf-8?q?=5Bpatch=5D_Alter_symbol-globalising_dlopen?= =?utf-8?q?=28RTLD=5FNOLOAD=29_call_to_succeed?= In-Reply-To: References: <0899491f1e616c60ca10b37f88ef7c18.squirrel@www.m2x.nl> <200902121742.55985.rem@videolan.org> <200902122209.23704.rem@videolan.org> <44c53239a0e89f47ffef2db684e8772a@chewa.net> <8a1f9cf0d43fb27e6b476ab92d85a56d.squirrel@m2x.nl> <0aa6706f94038edc57c8305a2fdf0380@chewa.net> <7b7f76701e1345d6882695b14b9b8607.squirrel@m2x.nl> <1e751486f2683be53c9c1fe351452602@chewa.net> Message-ID: <84241645043c960dc4845f747ea71de4@chewa.net> On Fri, 13 Feb 2009 16:21:07 +0100 (CET), jpd at m2x.nl wrote: > I will not comment on the merits of arguments either way, but this > explanation still fails to impress me with the relation, if any, of that > topic to the patch I originally submitted and the issues you found with > it but are hard pressed to discuss in detail. Honestly, I don't know if DEEPBIND is the solution, but since you did not send a revised patch (or I missed it with my crappy webmail), I admit I did not bother to check. Anyhow, it does not look to me like it would fix the problem.If I understand properly, it would move libvlccore.so ahead. That is the exact opposite of what I wanted to get - have the plugin link against the image of the library which is executing dlopen(), rather than libvlccore. According to you, the dlsym() check does not work as I intended. Then I assume the problem lies with the handle parameter of the dlsym() call, rather than with the dlopen() parameters. Come to think of it, I wonder if this was not lost effort anyway. If I'm not mistaken this hack will break on other OSes, no matter what. In retrospect, I find not-linking libvlccore was a terrible idea. -- R?mi Denis-Courmont From hartman at videolan.org Fri Feb 13 17:15:29 2009 From: hartman at videolan.org (Derk-Jan Hartman) Date: Fri, 13 Feb 2009 17:15:29 +0100 Subject: [vlc-devel] compiling VLC 1.0 on Mac OS X In-Reply-To: References: Message-ID: On 13 feb 2009, at 16:31, Derk-Jan Hartman wrote: > > It seems indeed that with llvm the cancellation issues are solved. I'm > thinking however that this is more related to usage of gcc-4.2, then > due to llvm. Because I suddenly remembered that the default gcc on the > CONSOLE is still gcc-4.0.* in the latest XCode versions. (still needs > to be confirmed) Tested, it's definitely llvm, and not gcc-4.2 that does the trick. Awfully strange. DJ From git at videolan.org Fri Feb 13 17:23:04 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 17:23:04 +0100 (CET) Subject: [vlc-devel] commit: Qt: Open: sort MRLs (alphabetically) before adding them to the PL ( Jean-Philippe Andre ) Message-ID: <20090213162304.536402EA6E@skanda.videolan.org> vlc | branch: master | Jean-Philippe Andre | Sat Feb 14 00:16:47 2009 +0800| [0de3c72312e7e4bcb20a9cc6bf3c9e98e5f0b4c9] | committer: Jean-Philippe Andre Qt: Open: sort MRLs (alphabetically) before adding them to the PL By default, the open dialog will sort the MRL alphabetically. Then why would these MRLs not be sorted so? > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0de3c72312e7e4bcb20a9cc6bf3c9e98e5f0b4c9 --- modules/gui/qt4/dialogs/open.cpp | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/dialogs/open.cpp b/modules/gui/qt4/dialogs/open.cpp index 27ea868..89cad1f 100644 --- a/modules/gui/qt4/dialogs/open.cpp +++ b/modules/gui/qt4/dialogs/open.cpp @@ -331,6 +331,9 @@ void OpenDialog::finish( bool b_enqueue = false ) return; } + /* Sort alphabetically */ + itemsMRL.sort(); + /* Go through the item list */ for( int i = 0; i < itemsMRL.size(); i++ ) { From rdenis at simphalempin.com Fri Feb 13 18:10:34 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 13 Feb 2009 18:10:34 +0100 Subject: [vlc-devel] [RFC] Plugins linking Message-ID: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> Hello, There has been much trolling (especially from my own self) on the linking of VLC plugins against the VLC core since I changed to try to fix static builds a while ago. I would euphemistically say that this was probably not the brightest idea of mine. There are basically to somewhat dependent issues here: - Do we link plugins against libvlccore? - Do we include (accurate) revision information in the run-time? Lets try to summarize the pros and cons of each combination. Not linking the plugins against libvlccore: + avoids relinking all plugins whenever libvlccore is changed, + is necessary to link libvlccore statically into vlc (or another binary), - is considered ugly by some, - breaks the browsers plugins and some language bindings, unless some ugly run-time linking hack is used (see the JPD patch thread), - prevents missing symbols detection at build-time of plugins, - does not work on Windows (hence a special hack for Windows currently). Including the VCS revision information: + may be helpful for bug reports against non-release builds (not so much, since we don't ship debug symbols though), + looks cool in the About dialog, - breaks parallel make in some unclear cases (not sure how to fix this), - forces a relink of anything that links against libvlccore at every make invocation. What's the link between these two? If we include revision infos, we need to relink every plugin (200+) at every make. In my opinion, this is completely unacceptable. And then, when doing one-shot release builds, revision infos are hardly any use, since we have the release version number. Hence, I think, we can realistically only choose between. If we do keep not linking plugins, removing revision infos would fix the make race condition. On the other hand, it is perhaps silly to remove the revision infos in that case, as they're not nearly as harmful as if we did link plugins properly. In retrospect, I would prefer to remove revision infos and resume linking plugins. This is sorta what we had in 0.9. More exactly 0.9 had incorrect revision infos, which I think is worse than none at all. Another option is keep things as are, and merge JPD's hack on top of my earlier hack. -- R?mi Denis-Courmont From olivier.aubert at liris.cnrs.fr Fri Feb 13 18:31:41 2009 From: olivier.aubert at liris.cnrs.fr (Olivier Aubert) Date: Fri, 13 Feb 2009 18:31:41 +0100 Subject: [vlc-devel] [RFC] Plugins linking In-Reply-To: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> Message-ID: <1234546301.3843.32.camel@pennylane> On Fri, 2009-02-13 at 18:10 +0100, R?mi Denis-Courmont wrote: > In retrospect, I would prefer to remove revision infos and resume linking > plugins. +1 > Another option is keep things as are, and merge JPD's hack on top of > my earlier hack. -1, it would necessit hacks for each binding and the browser plugin, possibly different across platforms. Not a nice path IMHO. Olivier From jb at videolan.org Fri Feb 13 19:29:29 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Fri, 13 Feb 2009 19:29:29 +0100 Subject: [vlc-devel] compiling VLC 1.0 on Mac OS X In-Reply-To: References: Message-ID: <20090213182929.GB29118@videolan.org> On Fri, Feb 13, 2009 at 04:31:54PM +0100, Derk-Jan Hartman wrote : > seems to me that vlc can be usable and in the neighbourhood of > "releasable" when we do that work. Sorry to jump in, but what about the timing and clock changes pierre did only for 0.9.9 related to the regular freezes in VLC? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Fri Feb 13 23:07:51 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 23:07:51 +0100 (CET) Subject: [vlc-devel] commit: Factorized event with variable list code. (Laurent Aimar ) Message-ID: <20090213220751.322EA2F2EF@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Fri Feb 13 20:32:08 2009 +0100| [1a082467f805dd3bfbe37649755071c81ca305c1] | committer: Laurent Aimar Factorized event with variable list code. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1a082467f805dd3bfbe37649755071c81ca305c1 --- src/input/event.c | 130 ++++++++++++++++++++++++++++------------------------- 1 files changed, 68 insertions(+), 62 deletions(-) diff --git a/src/input/event.c b/src/input/event.c index 8f97340..0718dac 100644 --- a/src/input/event.c +++ b/src/input/event.c @@ -34,7 +34,17 @@ #include "event.h" #include -static void Trigger( input_thread_t *p_input, int i_type ); +/* */ +static void Trigger( input_thread_t *, int i_type ); +static void VarListAdd( input_thread_t *, + const char *psz_variable, int i_event, + int i_value, const char *psz_text ); +static void VarListDel( input_thread_t *, + const char *psz_variable, int i_event, + int i_value ); +static void VarListSelect( input_thread_t *, + const char *psz_variable, int i_event, + int i_value ); /***************************************************************************** * Event for input.c @@ -211,34 +221,15 @@ void input_SendEventMetaName( input_thread_t *p_input, const char *psz_name ) void input_SendEventProgramAdd( input_thread_t *p_input, int i_program, const char *psz_text ) { - vlc_value_t val; - vlc_value_t text; - - val.i_int = i_program; - text.psz_string = (char*)psz_text; - - var_Change( p_input, "program", VLC_VAR_ADDCHOICE, - &val, psz_text ? &text : NULL ); - - Trigger( p_input, INPUT_EVENT_PROGRAM ); + VarListAdd( p_input, "program", INPUT_EVENT_PROGRAM, i_program, psz_text ); } void input_SendEventProgramDel( input_thread_t *p_input, int i_program ) { - vlc_value_t val; - - val.i_int = i_program; - var_Change( p_input, "program", VLC_VAR_DELCHOICE, &val, NULL ); - - Trigger( p_input, INPUT_EVENT_PROGRAM ); + VarListDel( p_input, "program", INPUT_EVENT_PROGRAM, i_program ); } void input_SendEventProgramSelect( input_thread_t *p_input, int i_program ) { - vlc_value_t val; - - val.i_int = i_program; - var_Change( p_input, "program", VLC_VAR_SETVALUE, &val, NULL ); - - Trigger( p_input, INPUT_EVENT_PROGRAM ); + VarListSelect( p_input, "program", INPUT_EVENT_PROGRAM, i_program ); } static const char *GetEsVarName( int i_cat ) @@ -256,52 +247,20 @@ static const char *GetEsVarName( int i_cat ) } void input_SendEventEsDel( input_thread_t *p_input, int i_cat, int i_id ) { - vlc_value_t val; - - if( i_cat == UNKNOWN_ES ) - return; - - if( i_id >= 0 ) - { - val.i_int = i_id; - var_Change( p_input, GetEsVarName( i_cat ), VLC_VAR_DELCHOICE, &val, NULL ); - } - else - { - var_Change( p_input, GetEsVarName( i_cat ), VLC_VAR_CLEARCHOICES, NULL, NULL ); - } - - Trigger( p_input, INPUT_EVENT_ES ); + if( i_cat != UNKNOWN_ES ) + VarListDel( p_input, GetEsVarName( i_cat ), INPUT_EVENT_ES, i_id ); } void input_SendEventEsAdd( input_thread_t *p_input, int i_cat, int i_id, const char *psz_text ) { - vlc_value_t val; - vlc_value_t text; - - if( i_cat == UNKNOWN_ES ) - return; - - val.i_int = i_id; - text.psz_string = (char*)psz_text; - - var_Change( p_input, GetEsVarName( i_cat ), VLC_VAR_ADDCHOICE, - &val, psz_text ? &text : NULL ); - - Trigger( p_input, INPUT_EVENT_ES ); + if( i_cat != UNKNOWN_ES ) + VarListAdd( p_input, GetEsVarName( i_cat ), INPUT_EVENT_ES, + i_id, psz_text ); } - /* i_id == -1 will unselect */ void input_SendEventEsSelect( input_thread_t *p_input, int i_cat, int i_id ) { - vlc_value_t val; - - if( i_cat == UNKNOWN_ES ) - return; - - val.i_int = i_id; - var_Change( p_input, GetEsVarName( i_cat ), VLC_VAR_SETVALUE, &val, NULL ); - - Trigger( p_input, INPUT_EVENT_ES ); + if( i_cat != UNKNOWN_ES ) + VarListSelect( p_input, GetEsVarName( i_cat ), INPUT_EVENT_ES, i_id ); } void input_SendEventTeletext( input_thread_t *p_input, int i_id ) @@ -312,6 +271,7 @@ void input_SendEventTeletext( input_thread_t *p_input, int i_id ) var_Change( p_input, "teletext-es", VLC_VAR_SETVALUE, &val, NULL ); Trigger( p_input, INPUT_EVENT_TELETEXT ); + } void input_SendEventVout( input_thread_t *p_input ) @@ -339,3 +299,49 @@ static void Trigger( input_thread_t *p_input, int i_type ) { var_SetInteger( p_input, "intf-event", i_type ); } +static void VarListAdd( input_thread_t *p_input, + const char *psz_variable, int i_event, + int i_value, const char *psz_text ) +{ + vlc_value_t val; + vlc_value_t text; + + val.i_int = i_value; + text.psz_string = (char*)psz_text; + + var_Change( p_input, psz_variable, VLC_VAR_ADDCHOICE, + &val, psz_text ? &text : NULL ); + + Trigger( p_input, i_event ); +} +static void VarListDel( input_thread_t *p_input, + const char *psz_variable, int i_event, + int i_value ) +{ + vlc_value_t val; + + if( i_value >= 0 ) + { + val.i_int = i_value; + var_Change( p_input, psz_variable, VLC_VAR_DELCHOICE, &val, NULL ); + } + else + { + var_Change( p_input, psz_variable, VLC_VAR_CLEARCHOICES, &val, NULL ); + } + + Trigger( p_input, i_event ); +} +static void VarListSelect( input_thread_t *p_input, + const char *psz_variable, int i_event, + int i_value ) +{ + vlc_value_t val; + + val.i_int = i_value; + var_Change( p_input, psz_variable, VLC_VAR_SETVALUE, &val, NULL ); + + Trigger( p_input, i_event ); +} + + From git at videolan.org Fri Feb 13 23:07:51 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 23:07:51 +0100 (CET) Subject: [vlc-devel] commit: Changed "teletext-es" to be a list of teletext spu id. ( Laurent Aimar ) Message-ID: <20090213220751.437F62F32E@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Fri Feb 13 20:41:51 2009 +0100| [d4e9d57d43bf2d369b7cc75178f84ecdb9b5499e] | committer: Laurent Aimar Changed "teletext-es" to be a list of teletext spu id. This change is needed to fix teletext support. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d4e9d57d43bf2d369b7cc75178f84ecdb9b5499e --- include/vlc_input.h | 3 ++- src/input/es_out.c | 28 +++++++++++++++------------- src/input/event.c | 29 ++++++++++++++++------------- src/input/event.h | 5 ++++- 4 files changed, 37 insertions(+), 28 deletions(-) diff --git a/include/vlc_input.h b/include/vlc_input.h index 55173d3..650bb7b 100644 --- a/include/vlc_input.h +++ b/include/vlc_input.h @@ -298,7 +298,8 @@ struct input_thread_t * - "can-rate" * - "can-rewind" * - "can-record" (if a stream can be recorded while playing) - * - "teletext-es" to get the index of spu track that is teletext -1 if no teletext) + * - "teletext-es" (list of id from the spu tracks (spu-es) that are teletext, the + * variable value being the one currently selected, -1 if no teletext) * - "signal-quality" * - "signal-strength" * - "cache" (level of data cached [0 .. 1]) diff --git a/src/input/es_out.c b/src/input/es_out.c index 133f294..479f34e 100644 --- a/src/input/es_out.c +++ b/src/input/es_out.c @@ -205,7 +205,10 @@ static inline int EsOutGetClosedCaptionsChannel( vlc_fourcc_t fcc ) } return -1; } - +static inline bool EsFmtIsTeletext( const es_format_t *p_fmt ) +{ + return p_fmt->i_cat == SPU_ES && p_fmt->i_codec == VLC_FOURCC( 't', 'e', 'l', 'x' ); +} /***************************************************************************** * input_EsOutNew: @@ -853,19 +856,18 @@ static mtime_t EsOutGetBuffering( es_out_t *out ) return i_delay; } -static void EsOutESVarUpdateGeneric( es_out_t *out, int i_id, es_format_t *fmt, const char *psz_language, +static void EsOutESVarUpdateGeneric( es_out_t *out, int i_id, + const es_format_t *fmt, const char *psz_language, bool b_delete ) { es_out_sys_t *p_sys = out->p_sys; input_thread_t *p_input = p_sys->p_input; - const bool b_teletext = fmt->i_cat == SPU_ES && fmt->i_codec == VLC_FOURCC( 't', 'e', 'l', 'x' ); vlc_value_t val, text; if( b_delete ) { - /* TODO it should probably be a list */ - if( b_teletext ) - input_SendEventTeletext( p_sys->p_input, -1 ); + if( EsFmtIsTeletext( fmt ) ) + input_SendEventTeletextDel( p_sys->p_input, i_id ); input_SendEventEsDel( p_input, fmt->i_cat, i_id ); return; @@ -918,15 +920,10 @@ static void EsOutESVarUpdateGeneric( es_out_t *out, int i_id, es_format_t *fmt, } input_SendEventEsAdd( p_input, fmt->i_cat, i_id, text.psz_string ); + if( EsFmtIsTeletext( fmt ) ) + input_SendEventTeletextAdd( p_sys->p_input, i_id, NULL ); free( text.psz_string ); - - if( b_teletext ) - { - /* TODO it should probably be a list */ - if( var_GetInteger( p_sys->p_input, "teletext-es" ) < 0 ) - input_SendEventTeletext( p_sys->p_input, i_id ); - } } static void EsOutESVarUpdate( es_out_t *out, es_out_id_t *es, @@ -979,6 +976,7 @@ static void EsOutProgramSelect( es_out_t *out, es_out_pgrm_t *p_pgrm ) input_SendEventEsDel( p_input, AUDIO_ES, -1 ); input_SendEventEsDel( p_input, VIDEO_ES, -1 ); input_SendEventEsDel( p_input, SPU_ES, -1 ); + input_SendEventTeletextDel( p_input, -1 ); /* TODO event */ var_SetInteger( p_input, "teletext-es", -1 ); @@ -1577,6 +1575,8 @@ static void EsSelect( es_out_t *out, es_out_id_t *es ) /* Mark it as selected */ input_SendEventEsSelect( p_input, es->fmt.i_cat, es->i_id ); + if( EsFmtIsTeletext( &es->fmt ) ) + input_SendEventTeletextSelect( p_input, es->i_id ); } static void EsUnselect( es_out_t *out, es_out_id_t *es, bool b_update ) @@ -1629,6 +1629,8 @@ static void EsUnselect( es_out_t *out, es_out_id_t *es, bool b_update ) /* Mark it as unselected */ input_SendEventEsSelect( p_input, es->fmt.i_cat, -1 ); + if( EsFmtIsTeletext( &es->fmt ) ) + input_SendEventTeletextSelect( p_input, -1 ); } /** diff --git a/src/input/event.c b/src/input/event.c index 0718dac..9224478 100644 --- a/src/input/event.c +++ b/src/input/event.c @@ -245,17 +245,17 @@ static const char *GetEsVarName( int i_cat ) return "spu-es"; } } -void input_SendEventEsDel( input_thread_t *p_input, int i_cat, int i_id ) -{ - if( i_cat != UNKNOWN_ES ) - VarListDel( p_input, GetEsVarName( i_cat ), INPUT_EVENT_ES, i_id ); -} void input_SendEventEsAdd( input_thread_t *p_input, int i_cat, int i_id, const char *psz_text ) { if( i_cat != UNKNOWN_ES ) VarListAdd( p_input, GetEsVarName( i_cat ), INPUT_EVENT_ES, i_id, psz_text ); } +void input_SendEventEsDel( input_thread_t *p_input, int i_cat, int i_id ) +{ + if( i_cat != UNKNOWN_ES ) + VarListDel( p_input, GetEsVarName( i_cat ), INPUT_EVENT_ES, i_id ); +} /* i_id == -1 will unselect */ void input_SendEventEsSelect( input_thread_t *p_input, int i_cat, int i_id ) { @@ -263,15 +263,18 @@ void input_SendEventEsSelect( input_thread_t *p_input, int i_cat, int i_id ) VarListSelect( p_input, GetEsVarName( i_cat ), INPUT_EVENT_ES, i_id ); } -void input_SendEventTeletext( input_thread_t *p_input, int i_id ) +void input_SendEventTeletextAdd( input_thread_t *p_input, + int i_teletext, const char *psz_text ) { - vlc_value_t val; - - val.i_int = i_id; - var_Change( p_input, "teletext-es", VLC_VAR_SETVALUE, &val, NULL ); - - Trigger( p_input, INPUT_EVENT_TELETEXT ); - + VarListAdd( p_input, "teletext-es", INPUT_EVENT_TELETEXT, i_teletext, psz_text ); +} +void input_SendEventTeletextDel( input_thread_t *p_input, int i_teletext ) +{ + VarListDel( p_input, "teletext-es", INPUT_EVENT_TELETEXT, i_teletext ); +} +void input_SendEventTeletextSelect( input_thread_t *p_input, int i_teletext ) +{ + VarListSelect( p_input, "teletext-es", INPUT_EVENT_TELETEXT, i_teletext ); } void input_SendEventVout( input_thread_t *p_input ) diff --git a/src/input/event.h b/src/input/event.h index 5192390..2b68ff1 100644 --- a/src/input/event.h +++ b/src/input/event.h @@ -63,7 +63,10 @@ void input_SendEventEsDel( input_thread_t *p_input, int i_cat, int i_id ); void input_SendEventEsAdd( input_thread_t *p_input, int i_cat, int i_id, const char *psz_text ); void input_SendEventEsSelect( input_thread_t *p_input, int i_cat, int i_id ); /* i_id == -1 will unselect */ -void input_SendEventTeletext( input_thread_t *p_input, int i_id ); +void input_SendEventTeletextAdd( input_thread_t *p_input, + int i_teletext, const char *psz_text ); +void input_SendEventTeletextDel( input_thread_t *p_input, int i_teletext ); +void input_SendEventTeletextSelect( input_thread_t *p_input, int i_teletext ); /***************************************************************************** * Event for decoder.c From git at videolan.org Fri Feb 13 23:07:51 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 23:07:51 +0100 (CET) Subject: [vlc-devel] commit: Added a small var_CountChoices helper. (Laurent Aimar ) Message-ID: <20090213220751.5CBE62F301@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Fri Feb 13 22:28:58 2009 +0100| [3cbf3dff63d333ad1a5a40ab03c229860ff3ffb5] | committer: Laurent Aimar Added a small var_CountChoices helper. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3cbf3dff63d333ad1a5a40ab03c229860ff3ffb5 --- include/vlc_variables.h | 13 +++++++++++++ 1 files changed, 13 insertions(+), 0 deletions(-) diff --git a/include/vlc_variables.h b/include/vlc_variables.h index 79c95e3..fc49c83 100644 --- a/include/vlc_variables.h +++ b/include/vlc_variables.h @@ -634,6 +634,19 @@ static inline char *__var_CreateGetNonEmptyStringCommand( vlc_object_t *p_obj, */ #define var_CreateGetStringCommand(a,b) __var_CreateGetStringCommand( VLC_OBJECT(a),b) #define var_CreateGetNonEmptyStringCommand(a,b) __var_CreateGetNonEmptyStringCommand( VLC_OBJECT(a),b) + +static inline int __var_CountChoices( vlc_object_t *p_obj, const char *psz_name ) +{ + vlc_value_t count; + if( __var_Change( p_obj, psz_name, VLC_VAR_CHOICESCOUNT, &count, NULL ) ) + return 0; + return count.i_int; +} +/** + * __var_CountChoices() with automatic casting + */ +#define var_CountChoices(a,b) __var_CountChoices( VLC_OBJECT(a),b) + /** * @} */ From git at videolan.org Fri Feb 13 23:07:51 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 23:07:51 +0100 (CET) Subject: [vlc-devel] commit: Updated macosx intf after teletext-es change. (Laurent Aimar ) Message-ID: <20090213220751.804522F346@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Fri Feb 13 22:33:58 2009 +0100| [83010dc8fc0fcb8a9c0a1485092943d99b0139c4] | committer: Laurent Aimar Updated macosx intf after teletext-es change. It is untested. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=83010dc8fc0fcb8a9c0a1485092943d99b0139c4 --- modules/gui/macosx/controls.m | 9 +-------- 1 files changed, 1 insertions(+), 8 deletions(-) diff --git a/modules/gui/macosx/controls.m b/modules/gui/macosx/controls.m index 0d50a5b..ecbf79e 100644 --- a/modules/gui/macosx/controls.m +++ b/modules/gui/macosx/controls.m @@ -1041,15 +1041,8 @@ if( [[o_mi title] isEqualToString: _NS("Normal Size")] ); { NSMenuItem *item = [[o_mi menu] itemWithTitle:_NS("Teletext")]; - bool b_telx = false; - if( p_input ) - { - const int i_teletext_es = var_GetInteger( p_input, "teletext-es" ); - const int i_spu_es = var_GetInteger( p_input, "spu-es" ); + bool b_telx = p_input && var_GetInteger( p_input, "teletext-es" ) >= 0; - if( i_teletext_es >= 0 && i_teletext_es == i_spu_es ) - b_telx = true; - } [[item submenu] setAutoenablesItems:NO]; for( int k=0; k < [[item submenu] numberOfItems]; k++ ) { From git at videolan.org Fri Feb 13 23:07:51 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 23:07:51 +0100 (CET) Subject: [vlc-devel] commit: Fixed QT4 teletext buttons. (Laurent Aimar ) Message-ID: <20090213220751.9AEA02F347@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Fri Feb 13 23:05:45 2009 +0100| [ed2ceb36cdac4b997549726ccfc087c080c46185] | committer: Laurent Aimar Fixed QT4 teletext buttons. The page value is not yet correctly synchronized. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ed2ceb36cdac4b997549726ccfc087c080c46185 --- modules/gui/qt4/components/controller.cpp | 6 +++++- modules/gui/qt4/input_manager.cpp | 29 ++++++++++++++--------------- 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp index f3a30c4..b9e60d1 100644 --- a/modules/gui/qt4/components/controller.cpp +++ b/modules/gui/qt4/components/controller.cpp @@ -490,12 +490,16 @@ QFrame *AbstractController::telexFrame() QToolButton *telexOn = new QToolButton; setupButton( telexOn ); BUTTON_SET_BAR2( telexOn, tv, qtr( "Teletext Activation" ) ); + telexOn->setEnabled( false ); + telexOn->setCheckable( true ); + telexLayout->addWidget( telexOn ); /* Teletext Activation and set */ CONNECT( telexOn, clicked( bool ), THEMIM->getIM(), activateTeletext( bool ) ); - + CONNECT( THEMIM->getIM(), teletextPossible( bool ), + telexOn, setEnabled( bool ) ); /* Transparency button */ QToolButton *telexTransparent = new QToolButton; diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 7ab3202..f29a9ae 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -196,7 +196,8 @@ void InputManager::customEvent( QEvent *event ) UpdateRate(); break; case ItemEsChanged_Type: - // We don't do anything. Why ? + UpdateTeletext(); + // We don't do anything ES related. Why ? break; case ItemTeletextChanged_Type: UpdateTeletext(); @@ -455,7 +456,7 @@ bool InputManager::hasAudio() void InputManager::UpdateTeletext() { if( hasInput() ) - telexActivation( var_GetInteger( p_input, "teletext-es" ) >= 0 ); + telexActivation( var_CountChoices( p_input, "teletext-es" ) > 0 ); else telexActivation( false ); } @@ -639,9 +640,8 @@ void InputManager::telexSetPage( int page ) if( hasInput() ) { const int i_teletext_es = var_GetInteger( p_input, "teletext-es" ); - const int i_spu_es = var_GetInteger( p_input, "spu-es" ); - if( i_teletext_es >= 0 && i_teletext_es == i_spu_es ) + if( i_teletext_es >= 0 ) { vlc_object_t *p_vbi = (vlc_object_t *) vlc_object_find_name( p_input, "zvbi", FIND_ANYWHERE ); @@ -664,7 +664,7 @@ void InputManager::telexSetTransparency( bool b_transparentTelextext ) "zvbi", FIND_ANYWHERE ); if( p_vbi ) { - var_SetBool( p_vbi, "vbi-opaque", b_transparentTelextext ); + var_SetBool( p_vbi, "vbi-opaque", !b_transparentTelextext ); vlc_object_release( p_vbi ); emit teletextTransparencyActivated( b_transparentTelextext ); } @@ -676,18 +676,17 @@ void InputManager::telexActivation( bool b_enabled ) if( hasInput() ) { const int i_teletext_es = var_GetInteger( p_input, "teletext-es" ); - const int i_spu_es = var_GetInteger( p_input, "spu-es" ); /* Teletext is possible. Show the buttons */ - b_enabled = (i_teletext_es >= 0); + b_enabled = var_CountChoices( p_input, "teletext-es" ) > 0; emit teletextPossible( b_enabled ); if( !b_enabled ) return; /* If Teletext is selected */ - if( i_teletext_es == i_spu_es ) + if( i_teletext_es >= 0 ) { /* Activate the buttons */ - teletextActivated( true ); + emit teletextActivated( true ); /* Then, find the current page */ int i_page = 100; @@ -707,13 +706,13 @@ void InputManager::telexActivation( bool b_enabled ) void InputManager::activateTeletext( bool b_enable ) { - if( hasInput() ) + vlc_value_t list; + if( hasInput() && !var_Change( p_input, "teletext-es", VLC_VAR_GETLIST, &list, NULL ) ) { - const int i_teletext_es = var_GetInteger( p_input, "teletext-es" ); - if( i_teletext_es >= 0 ) - { - var_SetInteger( p_input, "spu-es", b_enable ? i_teletext_es : -1 ); - } + if( list.p_list->i_count > 0 ) + var_SetInteger( p_input, "spu-es", b_enable ? list.p_list->p_values[0].i_int : -1 ); + + var_Change( p_input, "teletext-es", VLC_VAR_FREELIST, &list, NULL ); } } From git at videolan.org Fri Feb 13 23:07:51 2009 From: git at videolan.org (git version control) Date: Fri, 13 Feb 2009 23:07:51 +0100 (CET) Subject: [vlc-devel] commit: Updated libvlc_toggle_teletext after teletext-es changes. ( Laurent Aimar ) Message-ID: <20090213220751.6DBBA2F32B@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Fri Feb 13 21:25:53 2009 +0100| [f04d3e8faf83f1412945ceea86ae51ae16198e18] | committer: Laurent Aimar Updated libvlc_toggle_teletext after teletext-es changes. It may not correctly work as it is untested and as I have failed to understand its logic. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f04d3e8faf83f1412945ceea86ae51ae16198e18 --- src/control/video.c | 54 ++++++++++++++++++++++++-------------------------- 1 files changed, 26 insertions(+), 28 deletions(-) diff --git a/src/control/video.c b/src/control/video.c index 9e846ba..af3710a 100644 --- a/src/control/video.c +++ b/src/control/video.c @@ -560,52 +560,50 @@ void libvlc_toggle_teletext( libvlc_media_player_t *p_mi, p_input_thread = libvlc_get_input_thread(p_mi, p_e); if( !p_input_thread ) return; - p_vbi = (vlc_object_t *) vlc_object_find_name( p_input_thread, "zvbi", - FIND_ANYWHERE ); - if( p_vbi ) + if( var_CountChoices( p_input_thread, "teletext-es" ) <= 0 ) { - const int i_teletext_es = var_GetInteger( p_input_thread, "teletext-es" ); - const int i_spu_es = var_GetInteger( p_input_thread, "spu-es" ); + vlc_object_release( p_input_thread ); + return; + } + const bool b_selected = var_GetInteger( p_input_thread, "teletext-es" ) >= 0; - if( (i_teletext_es >= 0) && (i_teletext_es == i_spu_es) ) + p_vbi = (vlc_object_t *)vlc_object_find_name( p_input_thread, "zvbi", + FIND_ANYWHERE ); + if( p_vbi ) + { + if( b_selected ) { - int i_page = 100; - - i_page = var_GetInteger( p_vbi, "vbi-page" ); - i_page = (i_teletext_es >= 0) ? i_page : 0; - - i_ret = var_SetInteger( p_vbi, "vbi-page", i_page ); + /* FIXME Gni, why that ? */ + i_ret = var_SetInteger( p_vbi, "vbi-page", + var_GetInteger( p_vbi, "vbi-page" ) ); if( i_ret ) libvlc_exception_raise( p_e, "Unexpected error while setting teletext page" ); } - else if( i_teletext_es >= 0 ) + else { - bool opaque = true; - - opaque = var_GetBool( p_vbi, "vbi-opaque" ); - i_ret = var_SetBool( p_vbi, "vbi-opaque", !opaque ); + /* FIXME Gni^2 */ + i_ret = var_SetBool( p_vbi, "vbi-opaque", + !var_GetBool( p_vbi, "vbi-opaque" ) ); if( i_ret ) libvlc_exception_raise( p_e, "Unexpected error while setting teletext transparency" ); } vlc_object_release( p_vbi ); } + else if( b_selected ) + { + var_SetInteger( p_input_thread, "spu-es", -1 ); + } else { - /* Teletext is not enabled yet, so enable it. - * Only after it is enable it is possible to view teletext pages - */ - const int i_teletext_es = var_GetInteger( p_input_thread, "teletext-es" ); - - if( i_teletext_es >= 0 ) + vlc_value_t list; + if( !var_Change( p_input_thread, "teletext-es", VLC_VAR_GETLIST, &list, NULL ) ) { - const int i_spu_es = var_GetInteger( p_input_thread, "spu-es" ); + if( list.p_list->i_count > 0 ) + var_SetInteger( p_input_thread, "spu-es", list.p_list->p_values[0].i_int ); - if( i_teletext_es == i_spu_es ) - var_SetInteger( p_input_thread, "spu-es", -1 ); - else - var_SetInteger( p_input_thread, "spu-es", i_teletext_es ); + var_Change( p_input_thread, "teletext-es", VLC_VAR_FREELIST, &list, NULL ); } } vlc_object_release( p_input_thread ); From git at videolan.org Sat Feb 14 00:46:33 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 00:46:33 +0100 (CET) Subject: [vlc-devel] commit: Added teletext fields in es_forma_t. (Laurent Aimar ) Message-ID: <20090213234633.1084D2F340@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Fri Feb 13 23:40:55 2009 +0100| [d66d8f7d1854340ed37c4ca2b1371de9dc5be072] | committer: Laurent Aimar Added teletext fields in es_forma_t. It removed a hack where dvb.i_id was used for teletext. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d66d8f7d1854340ed37c4ca2b1371de9dc5be072 --- include/vlc_es.h | 5 +++++ modules/codec/telx.c | 12 ++++++------ modules/codec/zvbi.c | 9 +++------ modules/demux/ts.c | 12 ++++++------ 4 files changed, 20 insertions(+), 18 deletions(-) diff --git a/include/vlc_es.h b/include/vlc_es.h index 690de39..8744f20 100644 --- a/include/vlc_es.h +++ b/include/vlc_es.h @@ -206,6 +206,11 @@ struct subs_format_t { int i_id; } dvb; + struct + { + int i_magazine; + int i_page; + } teletext; }; /** diff --git a/modules/codec/telx.c b/modules/codec/telx.c index 90fff84..33b1fa3 100644 --- a/modules/codec/telx.c +++ b/modules/codec/telx.c @@ -194,13 +194,13 @@ static int Open( vlc_object_t *p_this ) var_Create( p_dec, "telx-override-page", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT ); var_Get( p_dec, "telx-override-page", &val ); - if( val.i_int == -1 && p_dec->fmt_in.subs.dvb.i_id != -1 - && p_dec->fmt_in.subs.dvb.i_id != (1<<16) ) /* ignore if TS demux wants page 100 (unlikely to be sub) */ + if( val.i_int == -1 && + p_dec->fmt_in.subs.teletext.i_magazine != -1 && + ( p_dec->fmt_in.subs.teletext.i_magazine != 1 || + p_dec->fmt_in.subs.teletext.i_page != 0 ) ) /* ignore if TS demux wants page 100 (unlikely to be sub) */ { - p_sys->i_wanted_magazine = p_dec->fmt_in.subs.dvb.i_id >> 16; - if( p_sys->i_wanted_magazine == 0 ) - p_sys->i_wanted_magazine = 8; - p_sys->i_wanted_page = p_dec->fmt_in.subs.dvb.i_id & 0xff; + p_sys->i_wanted_magazine = p_dec->fmt_in.subs.teletext.i_magazine; + p_sys->i_wanted_page = p_dec->fmt_in.subs.teletext.i_page; var_Create( p_dec, "telx-french-workaround", VLC_VAR_BOOL | VLC_VAR_DOINHERIT ); diff --git a/modules/codec/zvbi.c b/modules/codec/zvbi.c index 06bffe0..8f6c052 100644 --- a/modules/codec/zvbi.c +++ b/modules/codec/zvbi.c @@ -251,13 +251,10 @@ static int Open( vlc_object_t *p_this ) RequestPage, p_sys ); /* Check if the Teletext track has a known "initial page". */ - if( p_sys->i_wanted_page == 100 && p_dec->fmt_in.subs.dvb.i_id != -1 ) + if( p_sys->i_wanted_page == 100 && p_dec->fmt_in.subs.teletext.i_magazine != -1 ) { - int i_wanted_magazine = p_dec->fmt_in.subs.dvb.i_id >> 16; - if( i_wanted_magazine == 0 ) - i_wanted_magazine = 8; - p_sys->i_wanted_page = vbi_bcd2dec(p_dec->fmt_in.subs.dvb.i_id & 0xff); - p_sys->i_wanted_page += 100*i_wanted_magazine; + p_sys->i_wanted_page = 100 * p_dec->fmt_in.subs.teletext.i_magazine + + vbi_bcd2dec( p_dec->fmt_in.subs.teletext.i_page ); } p_sys->i_wanted_subpage = VBI_ANY_SUBNO; diff --git a/modules/demux/ts.c b/modules/demux/ts.c index cb96928..ada40c4 100644 --- a/modules/demux/ts.c +++ b/modules/demux/ts.c @@ -3464,24 +3464,24 @@ static void PMTCallBack( demux_t *p_demux, dvbpsi_pmt_t *p_pmt ) p_page->i_teletext_magazine_number, p_page->i_teletext_page_number ); - /* Hack, FIXME This stores the initial page for this track, + /* This stores the initial page for this track, so that it can be used by the telx and zvbi decoders. */ - p_es->fmt.subs.dvb.i_id = + p_es->fmt.subs.teletext.i_magazine = + p_page->i_teletext_magazine_number ? : 8; + p_es->fmt.subs.teletext.i_page = p_page->i_teletext_page_number; - p_es->fmt.subs.dvb.i_id |= - ((int)p_page->i_teletext_magazine_number << 16); i++; } } - if( !i ) pid->es->fmt.i_cat = UNKNOWN_ES; } else #endif /* defined _DVBPSI_DR_56_H_ && DVBPSI_VERSION(0,1,6) */ { - pid->es->fmt.subs.dvb.i_id = -1; + pid->es->fmt.subs.teletext.i_magazine = -1; + pid->es->fmt.subs.teletext.i_page = 0; pid->es->fmt.psz_description = strdup( _(ppsz_teletext_type[1]) ); } } From git at videolan.org Sat Feb 14 00:46:33 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 00:46:33 +0100 (CET) Subject: [vlc-devel] commit: Flush all subtitles when recycling a vout. (Laurent Aimar ) Message-ID: <20090213234633.202BF2F342@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Fri Feb 13 23:53:31 2009 +0100| [fc2955ef9e13862df69763506ddfa3a25a6eb79e] | committer: Laurent Aimar Flush all subtitles when recycling a vout. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fc2955ef9e13862df69763506ddfa3a25a6eb79e --- src/input/ressource.c | 3 +++ src/video_output/vout_subpictures.c | 4 +++- 2 files changed, 6 insertions(+), 1 deletions(-) diff --git a/src/input/decoder b/src/input/decoder deleted file mode 100644 index e69de29..0000000 diff --git a/src/input/ressource.c b/src/input/ressource.c index 11003d9..a1698bd 100644 --- a/src/input/ressource.c +++ b/src/input/ressource.c @@ -30,6 +30,7 @@ #include #include +#include #include #include #include "../libvlc.h" @@ -243,6 +244,8 @@ static vout_thread_t *RequestVout( input_ressource_t *p_ressource, { msg_Dbg( p_ressource->p_input, "saving a free vout" ); vout_Flush( p_vout, 1 ); + spu_Control( p_vout->p_spu, SPU_CHANNEL_CLEAR, -1 ); + p_ressource->p_vout_free = p_vout; } return NULL; diff --git a/src/video_output/vout_subpictures.c b/src/video_output/vout_subpictures.c index eca71ab..1dc316f 100644 --- a/src/video_output/vout_subpictures.c +++ b/src/video_output/vout_subpictures.c @@ -1675,7 +1675,9 @@ static void SpuClearChannel( spu_t *p_spu, int i_channel ) spu_heap_entry_t *p_entry = &p_sys->heap.p_entry[i_subpic]; subpicture_t *p_subpic = p_entry->p_subpicture; - if( !p_subpic || p_subpic->i_channel != i_channel ) + if( !p_subpic ) + continue; + if( p_subpic->i_channel != i_channel && ( i_channel != -1 || p_subpic->i_channel == DEFAULT_CHAN ) ) continue; /* You cannot delete subpicture outside of spu_SortSubpictures */ From git at videolan.org Sat Feb 14 00:46:33 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 00:46:33 +0100 (CET) Subject: [vlc-devel] commit: Simplify a bit Qt4 teletext. (Laurent Aimar ) Message-ID: <20090213234633.3379A2F343@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 00:12:58 2009 +0100| [f5ca137c2e460bfdaf80a68309eb913a05d1337f] | committer: Laurent Aimar Simplify a bit Qt4 teletext. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f5ca137c2e460bfdaf80a68309eb913a05d1337f --- modules/gui/qt4/input_manager.cpp | 64 +++++++++++++++++-------------------- modules/gui/qt4/input_manager.hpp | 1 - 2 files changed, 29 insertions(+), 36 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index f29a9ae..a0a4ca1 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -456,9 +456,36 @@ bool InputManager::hasAudio() void InputManager::UpdateTeletext() { if( hasInput() ) - telexActivation( var_CountChoices( p_input, "teletext-es" ) > 0 ); + { + const bool b_enabled = var_CountChoices( p_input, "teletext-es" ) > 0; + const int i_teletext_es = var_GetInteger( p_input, "teletext-es" ); + + /* Teletext is possible. Show the buttons */ + emit teletextPossible( b_enabled ); + + msg_Err( p_intf, "InputManager::UpdateTeletext: %d %d", b_enabled, i_teletext_es ); + /* If Teletext is selected */ + if( b_enabled && i_teletext_es >= 0 ) + { + + /* Then, find the current page */ + int i_page = 100; + vlc_object_t *p_vbi = (vlc_object_t *) + vlc_object_find_name( p_input, "zvbi", FIND_ANYWHERE ); + if( p_vbi ) + { + i_page = var_GetInteger( p_vbi, "vbi-page" ); + vlc_object_release( p_vbi ); + emit newTelexPageSet( i_page ); + } + } + emit teletextActivated( b_enabled && i_teletext_es >= 0 ); + } else - telexActivation( false ); + { + emit teletextActivated( false ); + emit teletextPossible( false ); + } } void InputManager::UpdateVout() @@ -671,39 +698,6 @@ void InputManager::telexSetTransparency( bool b_transparentTelextext ) } } -void InputManager::telexActivation( bool b_enabled ) -{ - if( hasInput() ) - { - const int i_teletext_es = var_GetInteger( p_input, "teletext-es" ); - - /* Teletext is possible. Show the buttons */ - b_enabled = var_CountChoices( p_input, "teletext-es" ) > 0; - emit teletextPossible( b_enabled ); - if( !b_enabled ) return; - - /* If Teletext is selected */ - if( i_teletext_es >= 0 ) - { - /* Activate the buttons */ - emit teletextActivated( true ); - - /* Then, find the current page */ - int i_page = 100; - vlc_object_t *p_vbi = (vlc_object_t *) - vlc_object_find_name( p_input, "zvbi", FIND_ANYWHERE ); - if( p_vbi ) - { - i_page = var_GetInteger( p_vbi, "vbi-page" ); - vlc_object_release( p_vbi ); - emit newTelexPageSet( i_page ); - } - } - } - else - emit teletextPossible( b_enabled ); -} - void InputManager::activateTeletext( bool b_enable ) { vlc_value_t list; diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp index 4112d0b..3228873 100644 --- a/modules/gui/qt4/input_manager.hpp +++ b/modules/gui/qt4/input_manager.hpp @@ -153,7 +153,6 @@ public slots: /* Teletext */ void telexSetPage( int ); ///< Goto teletext page void telexSetTransparency( bool ); ///< Transparency on teletext background - void telexActivation( bool ); ///< Enable disable teletext buttons void activateTeletext( bool ); ///< Toggle buttons after click /* A to B Loop */ void setAtoB(); From git at videolan.org Sat Feb 14 00:46:33 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 00:46:33 +0100 (CET) Subject: [vlc-devel] commit: Added teletext-es description as page number to help interfaces. ( Laurent Aimar ) Message-ID: <20090213234633.755042F352@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 00:27:03 2009 +0100| [4c8f79f7bed40cf05497d44fc05563d76e67438b] | committer: Laurent Aimar Added teletext-es description as page number to help interfaces. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4c8f79f7bed40cf05497d44fc05563d76e67438b --- src/input/es_out.c | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-) diff --git a/src/input/es_out.c b/src/input/es_out.c index d33b5e8..5276412 100644 --- a/src/input/es_out.c +++ b/src/input/es_out.c @@ -921,7 +921,14 @@ static void EsOutESVarUpdateGeneric( es_out_t *out, int i_id, input_SendEventEsAdd( p_input, fmt->i_cat, i_id, text.psz_string ); if( EsFmtIsTeletext( fmt ) ) - input_SendEventTeletextAdd( p_sys->p_input, i_id, NULL ); + { + char psz_page[3+1]; + snprintf( psz_page, sizeof(psz_page), "%d%2.2x", + fmt->subs.teletext.i_magazine, + fmt->subs.teletext.i_page ); + input_SendEventTeletextAdd( p_sys->p_input, + i_id, fmt->subs.teletext.i_magazine >= 0 ? psz_page : NULL ); + } free( text.psz_string ); } From git at videolan.org Sat Feb 14 00:46:33 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 00:46:33 +0100 (CET) Subject: [vlc-devel] commit: Set the actual page used by zvbi. (Laurent Aimar ) Message-ID: <20090213234633.8DCCD2F34A@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 00:40:33 2009 +0100| [ae4ee908d8757bb24c0ada28be49fb9a65b03fb3] | committer: Laurent Aimar Set the actual page used by zvbi. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ae4ee908d8757bb24c0ada28be49fb9a65b03fb3 --- modules/codec/zvbi.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/codec/zvbi.c b/modules/codec/zvbi.c index 8f6c052..e02b659 100644 --- a/modules/codec/zvbi.c +++ b/modules/codec/zvbi.c @@ -255,6 +255,7 @@ static int Open( vlc_object_t *p_this ) { p_sys->i_wanted_page = 100 * p_dec->fmt_in.subs.teletext.i_magazine + vbi_bcd2dec( p_dec->fmt_in.subs.teletext.i_page ); + var_SetInteger( p_dec, "vbi-page", p_sys->i_wanted_page ); } p_sys->i_wanted_subpage = VBI_ANY_SUBNO; From git at videolan.org Sat Feb 14 00:46:33 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 00:46:33 +0100 (CET) Subject: [vlc-devel] commit: Improved Qt4 teletext button. (Laurent Aimar ) Message-ID: <20090213234633.A08E02F353@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 00:45:02 2009 +0100| [1cb32fae16ec90849296220e655197c1c6e19d2f] | committer: Laurent Aimar Improved Qt4 teletext button. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1cb32fae16ec90849296220e655197c1c6e19d2f --- modules/gui/qt4/input_manager.cpp | 27 ++++++++++++++++++++------- 1 files changed, 20 insertions(+), 7 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index a0a4ca1..301c5fb 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -463,21 +463,21 @@ void InputManager::UpdateTeletext() /* Teletext is possible. Show the buttons */ emit teletextPossible( b_enabled ); - msg_Err( p_intf, "InputManager::UpdateTeletext: %d %d", b_enabled, i_teletext_es ); /* If Teletext is selected */ if( b_enabled && i_teletext_es >= 0 ) { - /* Then, find the current page */ int i_page = 100; + vlc_object_t *p_vbi = (vlc_object_t *) vlc_object_find_name( p_input, "zvbi", FIND_ANYWHERE ); + if( p_vbi ) { i_page = var_GetInteger( p_vbi, "vbi-page" ); vlc_object_release( p_vbi ); - emit newTelexPageSet( i_page ); } + emit newTelexPageSet( i_page ); } emit teletextActivated( b_enabled && i_teletext_es >= 0 ); } @@ -701,12 +701,25 @@ void InputManager::telexSetTransparency( bool b_transparentTelextext ) void InputManager::activateTeletext( bool b_enable ) { vlc_value_t list; - if( hasInput() && !var_Change( p_input, "teletext-es", VLC_VAR_GETLIST, &list, NULL ) ) + vlc_value_t text; + if( hasInput() && !var_Change( p_input, "teletext-es", VLC_VAR_GETLIST, &list, &text ) ) { if( list.p_list->i_count > 0 ) - var_SetInteger( p_input, "spu-es", b_enable ? list.p_list->p_values[0].i_int : -1 ); - - var_Change( p_input, "teletext-es", VLC_VAR_FREELIST, &list, NULL ); + { + /* Prefer the page 100 if it is present */ + int i; + for( i = 0; i < text.p_list->i_count; i++ ) + { + /* The description is the page number as a string */ + const char *psz_page = text.p_list->p_values[i].psz_string; + if( psz_page && !strcmp( psz_page, "100" ) ) + break; + } + if( i >= list.p_list->i_count ) + i = 0; + var_SetInteger( p_input, "spu-es", b_enable ? list.p_list->p_values[i].i_int : -1 ); + } + var_Change( p_input, "teletext-es", VLC_VAR_FREELIST, &list, &text ); } } From git at videolan.org Sat Feb 14 00:46:33 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 00:46:33 +0100 (CET) Subject: [vlc-devel] commit: Fixed es select/unselected event. (Laurent Aimar ) Message-ID: <20090213234633.5CCB02F342@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 00:13:24 2009 +0100| [b6fbc90ce6164b5ef18443d06952b197cbd5c8a1] | committer: Laurent Aimar Fixed es select/unselected event. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b6fbc90ce6164b5ef18443d06952b197cbd5c8a1 --- src/input/es_out.c | 7 +------ 1 files changed, 1 insertions(+), 6 deletions(-) diff --git a/src/input/es_out.c b/src/input/es_out.c index 479f34e..d33b5e8 100644 --- a/src/input/es_out.c +++ b/src/input/es_out.c @@ -1575,8 +1575,7 @@ static void EsSelect( es_out_t *out, es_out_id_t *es ) /* Mark it as selected */ input_SendEventEsSelect( p_input, es->fmt.i_cat, es->i_id ); - if( EsFmtIsTeletext( &es->fmt ) ) - input_SendEventTeletextSelect( p_input, es->i_id ); + input_SendEventTeletextSelect( p_input, EsFmtIsTeletext( &es->fmt ) ? es->i_id : -1 ); } static void EsUnselect( es_out_t *out, es_out_id_t *es, bool b_update ) @@ -1623,10 +1622,6 @@ static void EsUnselect( es_out_t *out, es_out_id_t *es, bool b_update ) if( !b_update ) return; - /* Update var */ - if( es->p_dec == NULL ) - return; - /* Mark it as unselected */ input_SendEventEsSelect( p_input, es->fmt.i_cat, -1 ); if( EsFmtIsTeletext( &es->fmt ) ) From git at videolan.org Sat Feb 14 00:53:08 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 00:53:08 +0100 (CET) Subject: [vlc-devel] commit: Fixed Qt4 opaque state. (Laurent Aimar ) Message-ID: <20090213235308.CA7242F1E1@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 00:51:47 2009 +0100| [d28af5a151af923ac0511af3ea0f881d5e86c3e8] | committer: Laurent Aimar Fixed Qt4 opaque state. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d28af5a151af923ac0511af3ea0f881d5e86c3e8 --- modules/gui/qt4/input_manager.cpp | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 301c5fb..981ba6f 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -468,6 +468,7 @@ void InputManager::UpdateTeletext() { /* Then, find the current page */ int i_page = 100; + bool b_transparent = false; vlc_object_t *p_vbi = (vlc_object_t *) vlc_object_find_name( p_input, "zvbi", FIND_ANYWHERE ); @@ -475,9 +476,12 @@ void InputManager::UpdateTeletext() if( p_vbi ) { i_page = var_GetInteger( p_vbi, "vbi-page" ); + b_transparent = !var_GetBool( p_vbi, "vbi-opaque" ); vlc_object_release( p_vbi ); } emit newTelexPageSet( i_page ); + emit teletextTransparencyActivated( b_transparent ); + } emit teletextActivated( b_enabled && i_teletext_es >= 0 ); } From git at videolan.org Sat Feb 14 01:15:16 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 01:15:16 +0100 (CET) Subject: [vlc-devel] commit: Modify vbi page change on key event to trigger vbi-page. ( Laurent Aimar ) Message-ID: <20090214001516.90D352F339@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 01:10:11 2009 +0100| [2791f26e07171bed6d16a090b0547f78756a683d] | committer: Laurent Aimar Modify vbi page change on key event to trigger vbi-page. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2791f26e07171bed6d16a090b0547f78756a683d --- modules/codec/zvbi.c | 16 +++++++++++----- 1 files changed, 11 insertions(+), 5 deletions(-) diff --git a/modules/codec/zvbi.c b/modules/codec/zvbi.c index e02b659..8d5509a 100644 --- a/modules/codec/zvbi.c +++ b/modules/codec/zvbi.c @@ -269,7 +269,7 @@ static int Open( vlc_object_t *p_this ) // var_AddCallback( p_dec, "vbi-text", Text, p_sys ); /* Listen for keys */ - var_AddCallback( p_dec->p_libvlc, "key-pressed", EventKey, p_sys ); + var_AddCallback( p_dec->p_libvlc, "key-pressed", EventKey, p_dec ); es_format_Init( &p_dec->fmt_out, SPU_ES, VLC_FOURCC( 's','p','u',' ' ) ); if( p_sys->b_text ) @@ -290,7 +290,7 @@ static void Close( vlc_object_t *p_this ) var_DelCallback( p_dec, "vbi-position", Position, p_sys ); var_DelCallback( p_dec, "vbi-opaque", Opaque, p_sys ); var_DelCallback( p_dec, "vbi-page", RequestPage, p_sys ); - var_DelCallback( p_dec->p_libvlc, "key-pressed", EventKey, p_sys ); + var_DelCallback( p_dec->p_libvlc, "key-pressed", EventKey, p_dec ); vlc_mutex_destroy( &p_sys->lock ); @@ -665,7 +665,9 @@ static int Position( vlc_object_t *p_this, char const *psz_cmd, static int EventKey( vlc_object_t *p_this, char const *psz_cmd, vlc_value_t oldval, vlc_value_t newval, void *p_data ) { - decoder_sys_t *p_sys = p_data; + decoder_t *p_dec = p_data; + decoder_sys_t *p_sys = p_dec->p_sys; + VLC_UNUSED(psz_cmd); VLC_UNUSED(oldval); /* FIXME: Capture + and - key for subpage browsing */ @@ -698,15 +700,19 @@ static int EventKey( vlc_object_t *p_this, char const *psz_cmd, p_sys->i_key[2] = (int)(newval.i_int - '0'); vout_OSDMessage( p_this, DEFAULT_CHAN, "%s: %c%c%c", _("Page"), (char)(p_sys->i_key[0]+'0'), (char)(p_sys->i_key[1]+'0'), (char)(p_sys->i_key[2]+'0') ); + int i_new_page = 0; + if( p_sys->i_key[0] > 0 && p_sys->i_key[0] <= 8 && p_sys->i_key[1] >= 0 && p_sys->i_key[1] <= 9 && p_sys->i_key[2] >= 0 && p_sys->i_key[2] <= 9 ) { - p_sys->i_wanted_page = p_sys->i_key[0]*100 + p_sys->i_key[1]*10 + p_sys->i_key[2]; - p_sys->i_wanted_subpage = VBI_ANY_SUBNO; + i_new_page = p_sys->i_key[0]*100 + p_sys->i_key[1]*10 + p_sys->i_key[2]; p_sys->i_key[0] = p_sys->i_key[1] = p_sys->i_key[2] = '*' - '0'; } vlc_mutex_unlock( &p_sys->lock ); + if( i_new_page > 0 ) + var_SetInteger( p_dec, "vbi-page", i_new_page ); + return VLC_SUCCESS; } From git at videolan.org Sat Feb 14 01:15:16 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 01:15:16 +0100 (CET) Subject: [vlc-devel] commit: Catch vbi-page event in Qt4. (Laurent Aimar ) Message-ID: <20090214001516.A73082F372@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 01:14:53 2009 +0100| [41e414d2df2ed72d9d0fbb2b42e1480a848eb2ad] | committer: Laurent Aimar Catch vbi-page event in Qt4. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=41e414d2df2ed72d9d0fbb2b42e1480a848eb2ad --- modules/gui/qt4/input_manager.cpp | 20 ++++++++++++++++++++ 1 files changed, 20 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 981ba6f..95857c6 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -42,6 +42,8 @@ static int VolumeChanged( vlc_object_t *, const char *, static int InputEvent( vlc_object_t *, const char *, vlc_value_t, vlc_value_t, void * ); +static int VbiEvent( vlc_object_t *, const char *, + vlc_value_t, vlc_value_t, void * ); /********************************************************************** @@ -334,6 +336,17 @@ static int InputEvent( vlc_object_t *p_this, const char *, QApplication::postEvent( im, event ); return VLC_SUCCESS; } +static int VbiEvent( vlc_object_t *, const char *, + vlc_value_t, vlc_value_t, void *param ) +{ + InputManager *im = (InputManager*)param; + IMEvent *event = new IMEvent( ItemTeletextChanged_Type, 0 ); + + if( event ) + QApplication::postEvent( im, event ); + return VLC_SUCCESS; +} + void InputManager::UpdatePosition() { /* Update position */ @@ -475,6 +488,13 @@ void InputManager::UpdateTeletext() if( p_vbi ) { + /* We deleted it (if not here, it does not harm), because + * var_AddCallback will silently add a duplicated one */ + var_DelCallback( p_vbi, "vbi-page", VbiEvent, this ); + /* This callback is not remove explicitly, but interfaces + * are guaranted to outlive input */ + var_AddCallback( p_vbi, "vbi-page", VbiEvent, this ); + i_page = var_GetInteger( p_vbi, "vbi-page" ); b_transparent = !var_GetBool( p_vbi, "vbi-opaque" ); vlc_object_release( p_vbi ); From n17r0m4nc3r at gmail.com Fri Feb 13 15:05:45 2009 From: n17r0m4nc3r at gmail.com (=?ISO-8859-2?Q?=22Bc=2E_Michal_Hrom=E1dko=22?=) Date: Fri, 13 Feb 2009 15:05:45 +0100 Subject: [vlc-devel] New audio resampler Message-ID: <49957E39.3070901@gmail.com> Hello developers, last year I finished my bachelor project. I implemented PSOLA method to dynamicly change the speed of speach. I also modified VLC to use the PSOLA method as a resampler. It worked pretty good. All resamplers in VLC changes base tone of the speech. When user wants to play his video faster, he gets funny smurf voices. It can be undone by reimplementing my "PSOLA resampler". So my question is: Shud I (we) start to work on it? Sorry for my English. From git at videolan.org Sat Feb 14 09:30:12 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 09:30:12 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_No_need_to_add_a_=27=5Cn=27_at_th?= =?utf-8?q?e_end_of_messages_passed_to_msg=5F*_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090214083012.CB9822F1DB@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Thu Feb 12 18:11:36 2009 +0100| [72fa5a9d8e8f5a1bbe0d83ffd1f30b3265a531c7] | committer: R?mi Duraffort No need to add a '\n' at the end of messages passed to msg_* > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=72fa5a9d8e8f5a1bbe0d83ffd1f30b3265a531c7 --- modules/access/cdda/access.c | 4 ++-- modules/access/dv.c | 4 ++-- modules/access/vcd/cdrom.c | 2 +- modules/access/vcd/vcd.c | 6 +++--- modules/audio_filter/spatializer/spatializer.cpp | 14 +++++++------- modules/codec/avcodec/encoder.c | 2 +- modules/codec/dirac.c | 2 +- modules/codec/kate.c | 10 +++++----- modules/codec/quicktime.c | 12 ++++++------ modules/control/dbus.c | 16 ++++++++-------- modules/gui/pda/pda_callbacks.c | 4 ++-- modules/gui/qt4/components/extended_panels.cpp | 2 +- modules/meta_engine/taglib.cpp | 2 +- modules/misc/svg.c | 4 ++-- modules/services_discovery/sap.c | 2 +- modules/stream_out/mosaic_bridge.c | 2 +- modules/video_filter/chain.c | 4 ++-- modules/video_filter/opencv_example.cpp | 6 +++--- modules/video_filter/opencv_wrapper.c | 4 ++-- modules/video_filter/osdmenu.c | 2 +- modules/video_output/omapfb.c | 4 ++-- modules/video_output/x11/xvmc.c | 2 +- src/libvlc.c | 2 +- src/misc/filter_chain.c | 2 +- src/network/tcp.c | 2 +- src/video_output/video_output.c | 2 +- 26 files changed, 59 insertions(+), 59 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=72fa5a9d8e8f5a1bbe0d83ffd1f30b3265a531c7 From git at videolan.org Sat Feb 14 09:30:12 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 09:30:12 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_ncurses=3A_don=27t_lock_to_times_?= =?utf-8?q?=28no_need_to_lock_here=29=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090214083012.DD8222F349@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Fri Feb 13 18:55:08 2009 +0100| [866ee8d7d3aaf3a38e94badd032bb705e67199ed] | committer: R?mi Duraffort ncurses: don't lock to times (no need to lock here). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=866ee8d7d3aaf3a38e94badd032bb705e67199ed --- modules/gui/ncurses.c | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/modules/gui/ncurses.c b/modules/gui/ncurses.c index e5099b3..b11542f 100644 --- a/modules/gui/ncurses.c +++ b/modules/gui/ncurses.c @@ -393,7 +393,6 @@ static void Run( intf_thread_t *p_intf ) msleep( INTF_IDLE_SLEEP ); /* Update the input */ - PL_LOCK; if( p_sys->p_input == NULL ) { p_sys->p_input = playlist_CurrentInput( p_playlist ); @@ -405,7 +404,6 @@ static void Run( intf_thread_t *p_intf ) p_sys->f_slider = p_sys->f_slider_old = 0.0; p_sys->b_box_cleared = false; } - PL_UNLOCK; if( p_sys->b_box_plidx_follow && playlist_CurrentPlayingItem(p_playlist) ) { From ivoire at via.ecp.fr Sat Feb 14 09:57:37 2009 From: ivoire at via.ecp.fr (=?iso-8859-1?Q?R=E9mi?= Duraffort) Date: Sat, 14 Feb 2009 09:57:37 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_ncurses=3A_don=27t_lock_to_t?= =?iso-8859-1?q?imes_=28no_need_to_lock_here=29=2E_=28_R=E9mi_Duraf?= =?iso-8859-1?q?fort_=29?= In-Reply-To: <20090214083012.DD8222F349@skanda.videolan.org> References: <20090214083012.DD8222F349@skanda.videolan.org> Message-ID: <20090214085737.GA23244@via.ecp.fr> > ncurses: don't lock to times (no need to lock here). *two* -- ivoire | R?mi Duraffort From git at videolan.org Sat Feb 14 12:25:43 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 12:25:43 +0100 (CET) Subject: [vlc-devel] commit: Zip (skins2): fix compilation (wrong #include) ( Jean-Philippe Andre ) Message-ID: <20090214112543.31D312F367@skanda.videolan.org> vlc | branch: master | Jean-Philippe Andre | Sat Feb 14 19:24:58 2009 +0800| [179d42c3a24f423f43da3e7f8777f94a7e13f2e3] | committer: Jean-Philippe Andre Zip (skins2): fix compilation (wrong #include) For people who don't have libminizip > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=179d42c3a24f423f43da3e7f8777f94a7e13f2e3 --- modules/gui/skins2/src/theme_loader.hpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/skins2/src/theme_loader.hpp b/modules/gui/skins2/src/theme_loader.hpp index 5a5bece..42e69cf 100644 --- a/modules/gui/skins2/src/theme_loader.hpp +++ b/modules/gui/skins2/src/theme_loader.hpp @@ -28,7 +28,7 @@ #include "skin_common.hpp" #include #if defined( HAVE_ZLIB_H ) -# include "../unzip/unzip.h" +# include "unzip.h" #endif class ThemeLoader: public SkinObject From rdenis at simphalempin.com Sat Feb 14 13:16:09 2009 From: rdenis at simphalempin.com (=?utf-8?q?R=C3=A9mi=20Denis-Courmont?=) Date: Sat, 14 Feb 2009 14:16:09 +0200 Subject: [vlc-devel] [PATCH 2/4] Remove VLC_Changeset, src/misc/revision.c, fixes make In-Reply-To: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> Message-ID: <1234613771-7248-2-git-send-email-rdenis@simphalempin.com> --- include/vlc_common.h | 1 - src/Makefile.am | 21 --------------------- src/libvlccore.sym | 1 - src/misc/.gitignore | 1 - src/version.c | 6 ------ 5 files changed, 0 insertions(+), 30 deletions(-) delete mode 100644 src/misc/.gitignore diff --git a/include/vlc_common.h b/include/vlc_common.h index a231d83..23f27a0 100644 --- a/include/vlc_common.h +++ b/include/vlc_common.h @@ -855,7 +855,6 @@ VLC_EXPORT( const char *, VLC_CompileHost, ( void ) LIBVLC_USED ); VLC_EXPORT( const char *, VLC_CompileDomain, ( void ) LIBVLC_USED ); VLC_EXPORT( const char *, VLC_Compiler, ( void ) LIBVLC_USED ); VLC_EXPORT( const char *, VLC_Error, ( int ) LIBVLC_USED ); -VLC_EXPORT( const char *, VLC_Changeset, ( void ) LIBVLC_USED ); /***************************************************************************** * Additional vlc stuff diff --git a/src/Makefile.am b/src/Makefile.am index 00a32c6..740f357 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -172,7 +172,6 @@ AM_LDFLAGS += -avoid-version endif libvlccore_la_SOURCES = $(SOURCES_libvlc) -nodist_libvlccore_la_SOURCES = misc/revision.c libvlccore_la_CFLAGS = `$(VLC_CONFIG) --cflags libvlc` \ -DMODULE_STRING=\"main\" \ -DLOCALEDIR=\"$(localedir)\" \ @@ -465,26 +464,6 @@ SOURCES_libvlc_control = \ control/media_discoverer.c ############################################################################### -# Stamp rules -############################################################################### - -misc/revision.c.tmp: - rm -f -- $@ - echo "/* AUTOGENERATED FILE - DO NOT EDIT */" > $@ - REVISION="$$(cd "$(top_srcdir)"; git describe 2>/dev/null || echo "$(VERSION)")"; \ - echo "const char psz_vlc_changeset[] = \"$$REVISION\";" >> $@ - diff $@ misc/revision.c >/dev/null 2>&1 || \ - cat misc/revision.c.tmp > misc/revision.c - -misc/revision.c: - $(MAKE) misc/revision.c.tmp - cat misc/revision.c.tmp > misc/revision.c - -BUILT_SOURCES += misc/revision.c.tmp misc/revision.c - -.PHONY: misc/revision.c.tmp - -############################################################################### # Unit/regression test ############################################################################### diff --git a/src/libvlccore.sym b/src/libvlccore.sym index b022e75..ee2028a 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -430,7 +430,6 @@ vlc_b64_decode_binary_to_buffer vlc_b64_encode vlc_b64_encode_binary vlc_cancel -VLC_Changeset vlc_clone VLC_CompileBy VLC_CompileDomain diff --git a/src/misc/.gitignore b/src/misc/.gitignore deleted file mode 100644 index e9cba81..0000000 --- a/src/misc/.gitignore +++ /dev/null @@ -1 +0,0 @@ -revision.c diff --git a/src/version.c b/src/version.c index 3bac434..e2e7e25 100644 --- a/src/version.c +++ b/src/version.c @@ -54,9 +54,3 @@ DECLARE_VLC_VERSION( CompileBy, COMPILE_BY ); DECLARE_VLC_VERSION( CompileHost, COMPILE_HOST ); DECLARE_VLC_VERSION( CompileDomain, COMPILE_DOMAIN ); DECLARE_VLC_VERSION( Compiler, COMPILER ); - -extern const char psz_vlc_changeset[]; -const char* VLC_Changeset( void ) -{ - return psz_vlc_changeset; -} -- 1.5.6.5 From rdenis at simphalempin.com Sat Feb 14 13:16:08 2009 From: rdenis at simphalempin.com (=?utf-8?q?R=C3=A9mi=20Denis-Courmont?=) Date: Sat, 14 Feb 2009 14:16:08 +0200 Subject: [vlc-devel] [PATCH 1/4] Remove all uses of VLC_Changeset In-Reply-To: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> Message-ID: <1234613771-7248-1-git-send-email-rdenis@simphalempin.com> --- modules/control/http/http.c | 1 - modules/gui/macosx/about.m | 9 ++------- modules/gui/qt4/dialogs/help.cpp | 1 - src/control/core.c | 2 +- src/libvlc.c | 3 --- 5 files changed, 3 insertions(+), 13 deletions(-) diff --git a/modules/control/http/http.c b/modules/control/http/http.c index 9f1bdf4..5bce03b 100644 --- a/modules/control/http/http.c +++ b/modules/control/http/http.c @@ -432,7 +432,6 @@ static void ParseExecute( httpd_file_sys_t *p_args, char *p_buffer, mvar_AppendNewVar( p_args->vars, "vlc_compile_domain", VLC_CompileDomain() ); mvar_AppendNewVar( p_args->vars, "vlc_compiler", VLC_Compiler() ); - mvar_AppendNewVar( p_args->vars, "vlc_changeset", VLC_Changeset() ); mvar_AppendNewVar( p_args->vars, "stream_position", position ); mvar_AppendNewVar( p_args->vars, "stream_time", time ); mvar_AppendNewVar( p_args->vars, "stream_length", length ); diff --git a/modules/gui/macosx/about.m b/modules/gui/macosx/about.m index 9ad77b9..a6b42bc 100644 --- a/modules/gui/macosx/about.m +++ b/modules/gui/macosx/about.m @@ -86,13 +86,8 @@ static VLAboutBox *_o_sharedInstance = nil; [o_about_window setTitle: _NS("About VLC media player")]; /* setup the creator / revision field */ - if( VLC_Changeset() != "exported" ) - [o_revision_field setStringValue: - [NSString stringWithFormat: _NS("Compiled by %s, based on Git commit %s"), - VLC_CompileBy(), VLC_Changeset()]]; - else - [o_revision_field setStringValue: - [NSString stringWithFormat: _NS("Compiled by %s"), VLC_CompileBy()]]; + [o_revision_field setStringValue: + [NSString stringWithFormat: _NS("Compiled by %s"), VLC_CompileBy()]]; /* Setup the nameversion field */ [o_name_version_field setStringValue: [NSString stringWithFormat:@"Version %s (%s)", VLC_Version(), PLATFORM]]; diff --git a/modules/gui/qt4/dialogs/help.cpp b/modules/gui/qt4/dialogs/help.cpp index cc72ff7..563edb1 100644 --- a/modules/gui/qt4/dialogs/help.cpp +++ b/modules/gui/qt4/dialogs/help.cpp @@ -120,7 +120,6 @@ AboutDialog::AboutDialog( QWidget *parent, intf_thread_t *_p_intf) + qfu( VLC_CompileBy() )+ "@" + qfu( VLC_CompileHost() ) + "." + qfu( VLC_CompileDomain() ) + ".\n" + qtr( "Compiler: " ) + qfu( VLC_Compiler() ) + ".\n" - + qtr( "Based on Git commit: " ) + qfu( VLC_Changeset() ) + ".\n" + qtr( "You are using the Qt4 Interface.\n\n" ) + qtr( "Copyright (C) " ) + COPYRIGHT_YEARS + qtr( " by the VideoLAN Team.\n" ) diff --git a/src/control/core.c b/src/control/core.c index f475f44..af592b9 100644 --- a/src/control/core.c +++ b/src/control/core.c @@ -206,7 +206,7 @@ const char * libvlc_get_compiler(void) const char * libvlc_get_changeset(void) { - return VLC_Changeset(); + return "exported"; } /* export internal libvlc_instance for ugly hacks with libvlccore */ diff --git a/src/libvlc.c b/src/libvlc.c index 675a913..9456bb6 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -1982,9 +1982,6 @@ static void Version( void ) utf8_fprintf( stdout, _("Compiled by %s@%s.%s\n"), VLC_CompileBy(), VLC_CompileHost(), VLC_CompileDomain() ); utf8_fprintf( stdout, _("Compiler: %s\n"), VLC_Compiler() ); - if( strcmp( VLC_Changeset(), "exported" ) ) - utf8_fprintf( stdout, _("Based upon Git commit [%s]\n"), - VLC_Changeset() ); utf8_fprintf( stdout, LICENSE_MSG ); #ifdef WIN32 /* Pause the console because it's destroyed when we exit */ -- 1.5.6.5 From rdenis at simphalempin.com Sat Feb 14 13:16:10 2009 From: rdenis at simphalempin.com (=?utf-8?q?R=C3=A9mi=20Denis-Courmont?=) Date: Sat, 14 Feb 2009 14:16:10 +0200 Subject: [vlc-devel] [PATCH 3/4] Link plugins against libvlccore In-Reply-To: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> Message-ID: <1234613771-7248-3-git-send-email-rdenis@simphalempin.com> This reverts back to 0.9 (and --enable-libtool 0.8.6) state. This should fix bindings and web plugins, without hacks. However, this will require relinking all VLC plugins whenever libvlccore changes. --- modules/common.am | 13 ++----------- 1 files changed, 2 insertions(+), 11 deletions(-) diff --git a/modules/common.am b/modules/common.am index 4139862..caa5659 100644 --- a/modules/common.am +++ b/modules/common.am @@ -21,18 +21,9 @@ AM_LDFLAGS = -rpath '$(libvlcdir)' \ -avoid-version -module \ -export-symbol-regex ^vlc_entry \ -shrext $(LIBEXT) \ + -no-undefined \ `$(VLC_CONFIG) --ldflags plugin $@` -AM_LIBADD = `$(VLC_CONFIG) -libs plugin $@` -if HAVE_WIN32 -# Windows does not support undefined symbols -AM_LDFLAGS += -no-undefined -AM_LIBADD += $(LTLIBVLCCORE) -endif -if HAVE_WINCE -# Same for Windows CE -AM_LDFLAGS += -no-undefined -AM_LIBADD += $(LTLIBVLCCORE) -endif +AM_LIBADD = `$(VLC_CONFIG) -libs plugin $@` $(LTLIBVLCCORE) include $(srcdir)/Modules.am -- 1.5.6.5 From rdenis at simphalempin.com Sat Feb 14 13:16:11 2009 From: rdenis at simphalempin.com (=?utf-8?q?R=C3=A9mi=20Denis-Courmont?=) Date: Sat, 14 Feb 2009 14:16:11 +0200 Subject: [vlc-devel] [PATCH 4/4] Remove libvlccore load hack In-Reply-To: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> Message-ID: <1234613771-7248-4-git-send-email-rdenis@simphalempin.com> It did not work properly, and was GNU specific anyway. --- src/modules/os.c | 14 -------------- 1 files changed, 0 insertions(+), 14 deletions(-) diff --git a/src/modules/os.c b/src/modules/os.c index 82e2ee8..58fef51 100644 --- a/src/modules/os.c +++ b/src/modules/os.c @@ -132,16 +132,6 @@ int module_Call( vlc_object_t *obj, module_t *p_module ) return 0; } -#if defined (RTLD_NOLOAD) -/* Make sure libvlccore is in the global namespace */ -static void load_libvlccore( void ) -{ - if( !dlsym( RTLD_DEFAULT, "libvlc_Quit" ) - && !dlopen( "libvlccore.so", RTLD_LAZY|RTLD_GLOBAL|RTLD_NOLOAD ) ) - fprintf( stderr, "ERROR: failed loading libvlccore\n" ); -} -#endif - /** * Load a dynamically linked library using a system dependent method. * @@ -218,10 +208,6 @@ int module_Load( vlc_object_t *p_this, const char *psz_file, } #elif defined(HAVE_DL_DLOPEN) -# if defined (RTLD_NOLOAD) - static pthread_once_t once = PTHREAD_ONCE_INIT; - pthread_once( &once, &load_libvlccore ); -# endif # if defined (RTLD_NOW) const int flags = RTLD_NOW; -- 1.5.6.5 From git at videolan.org Sat Feb 14 15:05:17 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 15:05:17 +0100 (CET) Subject: [vlc-devel] commit: Fix handling of AAC ADTS (Christophe Massiot ) Message-ID: <20090214140517.BC5BB2F376@skanda.videolan.org> vlc | branch: 0.9-bugfix | Christophe Massiot | Wed Feb 11 17:17:21 2009 +0100| [821e36604aee285f41dbb48ea660194fcfa41b37] | committer: Christophe Mutricy Fix handling of AAC ADTS (cherry picked from commit f3334ccb2f26fc984779015d37df7ea5b8dd88d0) Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=821e36604aee285f41dbb48ea660194fcfa41b37 --- modules/mux/mpeg/ts.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/mux/mpeg/ts.c b/modules/mux/mpeg/ts.c index 6afe0c8..c4c64ad 100644 --- a/modules/mux/mpeg/ts.c +++ b/modules/mux/mpeg/ts.c @@ -1065,7 +1065,7 @@ static int AddStream( sout_mux_t *p_mux, sout_input_t *p_input ) * is implemented for AAC in TS */ //p_stream->i_stream_type = 0x11; /* LOAS/LATM */ p_stream->i_stream_type = 0x0f; /* ADTS */ - p_stream->i_stream_id = 0xfa; + p_stream->i_stream_id = 0xc0; p_sys->i_mpeg4_streams++; p_stream->i_es_id = p_stream->i_pid; break; From git at videolan.org Sat Feb 14 15:05:17 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 15:05:17 +0100 (CET) Subject: [vlc-devel] commit: l10n: Brazillian Portugueze update (Sidney Doria ) Message-ID: <20090214140517.E3BFA2F376@skanda.videolan.org> vlc | branch: 0.9-bugfix | Sidney Doria | Sat Feb 14 13:59:09 2009 +0000| [63ea232cfa624297f27276c98b3458d5f221fa75] | committer: Christophe Mutricy l10n: Brazillian Portugueze update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=63ea232cfa624297f27276c98b3458d5f221fa75 --- po/pt_BR.po | 1587 ++++++++++++++++++++++++++++++----------------------------- 1 files changed, 813 insertions(+), 774 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=63ea232cfa624297f27276c98b3458d5f221fa75 From git at videolan.org Sat Feb 14 15:05:18 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 15:05:18 +0100 (CET) Subject: [vlc-devel] commit: l10n: Occitan update (Tony GAILLARD ) Message-ID: <20090214140518.283682F37B@skanda.videolan.org> vlc | branch: 0.9-bugfix | Tony GAILLARD | Sat Feb 14 14:01:19 2009 +0000| [4191f06ebcdbfbd89e7f729c332052be25897c7a] | committer: Christophe Mutricy l10n: Occitan update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4191f06ebcdbfbd89e7f729c332052be25897c7a --- po/oc.po | 4294 +++++++++++++++++--------------------------------------------- 1 files changed, 1176 insertions(+), 3118 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=4191f06ebcdbfbd89e7f729c332052be25897c7a From fenrir at via.ecp.fr Sat Feb 14 15:16:44 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sat, 14 Feb 2009 15:16:44 +0100 Subject: [vlc-devel] New audio resampler In-Reply-To: <49957E39.3070901@gmail.com> References: <49957E39.3070901@gmail.com> Message-ID: <20090214141643.GA4149@via.ecp.fr> Hi, On Fri, Feb 13, 2009, "Bc. Michal Hrom?dko" wrote: > Hello developers, > last year I finished my bachelor project. I implemented PSOLA method to > dynamicly change the speed of speach. I also modified VLC to use the > PSOLA method as a resampler. It worked pretty good. All resamplers in > VLC changes base tone of the speech. It depends when it is used. If it is used while playing faster/slower yes, if it is used to convert to the format that the audio card support no. > When user wants to play his video > faster, he gets funny smurf voices. It can be undone by reimplementing > my "PSOLA resampler". So my question is: Shud I (we) start to work on > it? Sorry for my English. In 1.0, a special module is tried instead of a resampler to provide correct audio while playing faster/slower, if found the audio will be correct (ie no tone change). The current implementation is done by modules/audio_filter/scaletempo.c So basically the functionnality is already there (not by default in 0.9). BUT the quality of this module is not great at all, specially when doing more than 1.5x or less than 0.6x If your algorithm would provide a better quality, a plugin implementing it will be welcome :) Now, there is a lot of restriction on what an audio plugin in VLC can actually do, so if you want to give it a try, I think it would be best to tell us what your plugin would need in order to give you advices (like amount of latency, or ...). Regards, -- fenrir From git at videolan.org Sat Feb 14 15:39:27 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 15:39:27 +0100 (CET) Subject: [vlc-devel] commit: Use FIND_CHILD for zvbi in qt4. (Laurent Aimar ) Message-ID: <20090214143927.A13C12EECF@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 14:41:49 2009 +0100| [71bd386bd03713516b35b47107bb84dc4d013ac6] | committer: Laurent Aimar Use FIND_CHILD for zvbi in qt4. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=71bd386bd03713516b35b47107bb84dc4d013ac6 --- modules/gui/qt4/input_manager.cpp | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 95857c6..47ff756 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -484,7 +484,7 @@ void InputManager::UpdateTeletext() bool b_transparent = false; vlc_object_t *p_vbi = (vlc_object_t *) - vlc_object_find_name( p_input, "zvbi", FIND_ANYWHERE ); + vlc_object_find_name( p_input, "zvbi", FIND_CHILD ); if( p_vbi ) { @@ -695,7 +695,7 @@ void InputManager::telexSetPage( int page ) if( i_teletext_es >= 0 ) { vlc_object_t *p_vbi = (vlc_object_t *) vlc_object_find_name( p_input, - "zvbi", FIND_ANYWHERE ); + "zvbi", FIND_CHILD ); if( p_vbi ) { var_SetInteger( p_vbi, "vbi-page", page ); @@ -712,7 +712,7 @@ void InputManager::telexSetTransparency( bool b_transparentTelextext ) if( hasInput() ) { vlc_object_t *p_vbi = (vlc_object_t *) vlc_object_find_name( p_input, - "zvbi", FIND_ANYWHERE ); + "zvbi", FIND_CHILD ); if( p_vbi ) { var_SetBool( p_vbi, "vbi-opaque", !b_transparentTelextext ); From git at videolan.org Sat Feb 14 15:39:27 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 15:39:27 +0100 (CET) Subject: [vlc-devel] commit: User FIND_CHILD for zvbi in libvlc. (Laurent Aimar ) Message-ID: <20090214143927.B00362F37D@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 14:42:30 2009 +0100| [1312fe718d8742dec1d01cef6209133d27a579c0] | committer: Laurent Aimar User FIND_CHILD for zvbi in libvlc. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1312fe718d8742dec1d01cef6209133d27a579c0 --- src/control/video.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/control/video.c b/src/control/video.c index af3710a..44eb252 100644 --- a/src/control/video.c +++ b/src/control/video.c @@ -517,7 +517,7 @@ int libvlc_video_get_teletext( libvlc_media_player_t *p_mi, if( !p_vout ) return i_ret; p_vbi = (vlc_object_t *) vlc_object_find_name( p_vout, "zvbi", - FIND_ANYWHERE ); + FIND_CHILD ); if( p_vbi ) { i_ret = var_GetInteger( p_vbi, "vbi-page" ); @@ -538,7 +538,7 @@ void libvlc_video_set_teletext( libvlc_media_player_t *p_mi, int i_page, if( !p_vout ) return; p_vbi = (vlc_object_t *) vlc_object_find_name( p_vout, "zvbi", - FIND_ANYWHERE ); + FIND_CHILD ); if( p_vbi ) { i_ret = var_SetInteger( p_vbi, "vbi-page", i_page ); @@ -568,7 +568,7 @@ void libvlc_toggle_teletext( libvlc_media_player_t *p_mi, const bool b_selected = var_GetInteger( p_input_thread, "teletext-es" ) >= 0; p_vbi = (vlc_object_t *)vlc_object_find_name( p_input_thread, "zvbi", - FIND_ANYWHERE ); + FIND_CHILD ); if( p_vbi ) { if( b_selected ) From git at videolan.org Sat Feb 14 15:39:27 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 15:39:27 +0100 (CET) Subject: [vlc-devel] commit: Corrects original width/ height calculations to be consistent with other part of vlc (patch 1/3) ( Joseph Tulou ) Message-ID: <20090214143927.D04512D962@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Fri Feb 13 14:59:02 2009 +0100| [705148182b17c6a08a8edbb05940904a974e6a32] | committer: Laurent Aimar Corrects original width/height calculations to be consistent with other part of vlc (patch 1/3) Signed-off-by: Laurent Aimar > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=705148182b17c6a08a8edbb05940904a974e6a32 --- src/video_output/vout_pictures.c | 26 +++++++++++++++++--------- 1 files changed, 17 insertions(+), 9 deletions(-) diff --git a/src/video_output/vout_pictures.c b/src/video_output/vout_pictures.c index 3275aac..4072bf2 100644 --- a/src/video_output/vout_pictures.c +++ b/src/video_output/vout_pictures.c @@ -473,17 +473,25 @@ void vout_PlacePicture( const vout_thread_t *p_vout, *pi_width = i_width; *pi_height = i_height; } - else if( i_zoom == ZOOM_FP_FACTOR ) /* original size */ - { - *pi_width = __MIN( i_width, p_vout->fmt_in.i_visible_width ); - *pi_height = __MIN( i_height, p_vout->fmt_in.i_visible_height ); - } else { - *pi_width = - p_vout->fmt_in.i_visible_width * i_zoom / ZOOM_FP_FACTOR; - *pi_height = - p_vout->fmt_in.i_visible_height * i_zoom / ZOOM_FP_FACTOR; + unsigned int i_original_width, i_original_height; + + if( p_vout->fmt_in.i_sar_num >= p_vout->fmt_in.i_sar_den ) + { + i_original_width = p_vout->fmt_in.i_visible_width * + p_vout->fmt_in.i_sar_num / p_vout->fmt_in.i_sar_den; + i_original_height = p_vout->fmt_in.i_visible_height; + } + else + { + i_original_width = p_vout->fmt_in.i_visible_width; + i_original_height = p_vout->fmt_in.i_visible_height * + p_vout->fmt_in.i_sar_den / p_vout->fmt_in.i_sar_num; + } + + *pi_width = i_original_width * i_zoom / ZOOM_FP_FACTOR ; + *pi_height = i_original_height * i_zoom / ZOOM_FP_FACTOR ; } int64_t i_scaled_width = p_vout->fmt_in.i_visible_width * (int64_t)p_vout->fmt_in.i_sar_num * From git at videolan.org Sat Feb 14 15:39:27 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 15:39:27 +0100 (CET) Subject: [vlc-devel] commit: Cosmetics. (Laurent Aimar ) Message-ID: <20090214143927.E5C242F37D@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 15:35:03 2009 +0100| [ad852da0772a37dd08341a0a9bf5e1ca25ccd74b] | committer: Laurent Aimar Cosmetics. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ad852da0772a37dd08341a0a9bf5e1ca25ccd74b --- src/video_output/vout_pictures.c | 20 +++++++++----------- 1 files changed, 9 insertions(+), 11 deletions(-) diff --git a/src/video_output/vout_pictures.c b/src/video_output/vout_pictures.c index 4072bf2..5a44c62 100644 --- a/src/video_output/vout_pictures.c +++ b/src/video_output/vout_pictures.c @@ -455,26 +455,24 @@ void vout_PlacePicture( const vout_thread_t *p_vout, unsigned int *restrict pi_width, unsigned int *restrict pi_height ) { - if( (i_width <= 0) || (i_height <=0) ) + if( i_width <= 0 || i_height <= 0 ) { *pi_width = *pi_height = *pi_x = *pi_y = 0; return; } - bool b_autoscale = p_vout->b_autoscale; - int i_zoom = p_vout->i_zoom; - - /* be realistic, scaling factor confined between .2 and 10. */ - if( i_zoom > 10 * ZOOM_FP_FACTOR || i_zoom < ZOOM_FP_FACTOR / 5 ) - i_zoom = ZOOM_FP_FACTOR; - - if( b_autoscale ) + if( p_vout->b_autoscale ) { *pi_width = i_width; *pi_height = i_height; } else { + int i_zoom = p_vout->i_zoom; + /* be realistic, scaling factor confined between .2 and 10. */ + if( i_zoom > 10 * ZOOM_FP_FACTOR || i_zoom < ZOOM_FP_FACTOR / 5 ) + i_zoom = ZOOM_FP_FACTOR; + unsigned int i_original_width, i_original_height; if( p_vout->fmt_in.i_sar_num >= p_vout->fmt_in.i_sar_den ) @@ -494,9 +492,9 @@ void vout_PlacePicture( const vout_thread_t *p_vout, *pi_height = i_original_height * i_zoom / ZOOM_FP_FACTOR ; } - int64_t i_scaled_width = p_vout->fmt_in.i_visible_width * (int64_t)p_vout->fmt_in.i_sar_num * + int64_t i_scaled_width = p_vout->fmt_in.i_visible_width * (int64_t)p_vout->fmt_in.i_sar_num * *pi_height / p_vout->fmt_in.i_visible_height / p_vout->fmt_in.i_sar_den; - int64_t i_scaled_height = p_vout->fmt_in.i_visible_height * (int64_t)p_vout->fmt_in.i_sar_den * + int64_t i_scaled_height = p_vout->fmt_in.i_visible_height * (int64_t)p_vout->fmt_in.i_sar_den * *pi_width / p_vout->fmt_in.i_visible_width / p_vout->fmt_in.i_sar_num; if( i_scaled_width <= 0 || i_scaled_height <= 0 ) From fenrir at via.ecp.fr Sat Feb 14 15:40:26 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sat, 14 Feb 2009 15:40:26 +0100 Subject: [vlc-devel] RE : [PATCH] -- autoscale/scalefactor issues In-Reply-To: <000001c98de5$77450910$ce22fac1@CCCC> References: <20090213132906.GA4069@videolan.org> <000001c98de5$77450910$ce22fac1@CCCC> Message-ID: <20090214144026.GA8508@via.ecp.fr> Hi, On Fri, Feb 13, 2009, brezhoneg1 wrote: > > > > Can you separate patches, please? That helps a lot for regression > > tracking. > > > > Here we go .... Separated patches (but 1, 2, 3 order still required to > apply them!) Patch 1 merged by [705148182b17c6a08a8edbb05940904a974e6a32]. Thanks for your work. I will let patch 2 be applied by jb if it is correct. -- fenrir From rem at videolan.org Sat Feb 14 16:18:07 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 14 Feb 2009 17:18:07 +0200 Subject: [vlc-devel] [RFC] Plugins linking In-Reply-To: <1234546301.3843.32.camel@pennylane> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> <1234546301.3843.32.camel@pennylane> Message-ID: <200902141718.07514.rem@videolan.org> Le vendredi 13 f?vrier 2009 19:31:41 Olivier Aubert, vous avez ?crit?: > On Fri, 2009-02-13 at 18:10 +0100, R?mi Denis-Courmont wrote: > > In retrospect, I would prefer to remove revision infos and resume linking > > plugins. > > +1 > > > Another option is keep things as are, and merge JPD's hack on top of > > my earlier hack. > > -1, it would necessit hacks for each binding and the browser plugin, > possibly different across platforms. Not a nice path IMHO. Indeed. I wonder if the plugins are broken non-GNU non-Windows platforms at the moment. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From fenrir at via.ecp.fr Sat Feb 14 16:29:15 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sat, 14 Feb 2009 16:29:15 +0100 Subject: [vlc-devel] [RFC] Plugins linking In-Reply-To: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> Message-ID: <20090214152915.GA21734@via.ecp.fr> Hi, On Fri, Feb 13, 2009, R?mi Denis-Courmont wrote: > There has been much trolling (especially from my own self) on the linking > of VLC plugins against the VLC core since I changed to try to fix static > builds a while ago. I would euphemistically say that this was probably not > the brightest idea of mine. > > Not linking the plugins against libvlccore: > [...] > - prevents missing symbols detection at build-time of plugins, > - does not work on Windows (hence a special hack for Windows currently). [1] > > Including the VCS revision information: > [...] > - forces a relink of anything that links against libvlccore at every make > invocation. [2] From what I understand of the issue: - if [1] cannot be fixed cleanly/in a portable way, then linking again against libvlccore has to be done. I don't think there is a lot to argue in this case. - [2] is a stopper for any developper at least if it is the default behviour. So I think that we should link against libvlccore and disable VCS revision information (to avoid [2]). I don't think any body would be against a solution to enable VCS revision information based on a configure.ac option if possible. But as long as no one propose a clean patch to do this, VCS revision information should be disabled. Regards, -- fenrir From rem at videolan.org Sat Feb 14 17:31:30 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Sat, 14 Feb 2009 18:31:30 +0200 Subject: [vlc-devel] commit: mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. (Pierre d'Herbemont ) In-Reply-To: <20090208000305.395A42EDC6@skanda.videolan.org> References: <20090208000305.395A42EDC6@skanda.videolan.org> Message-ID: <200902141831.30490.rem@videolan.org> Le dimanche 8 f?vrier 2009 02:03:05 git version control, vous avez ?crit?: > vlc | branch: 0.9-bugfix | Pierre d'Herbemont | > Sun Feb 8 00:31:33 2009 +0100| [5ead92ffd58088828ed802173d963b2571f0cd69] > | committer: Pierre d'Herbemont > > mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. > > mach_absolute_time() is a monotic clock, whereas gettimeofday() is not. For > that reason setting your computer time while playing a movie won't halt > playback anymore. > > Seems to fix the dropped frame issue on Mac OS X. > > > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5ead92ffd58088828e > >d802173d963b2571f0cd69 > > --- > > include/vlc_threads.h | 14 ++++++++++++++ > src/misc/mtime.c | 34 ++++++++++++++++++++++++++++++++++ > 2 files changed, 48 insertions(+), 0 deletions(-) > > diff --git a/include/vlc_threads.h b/include/vlc_threads.h > index e2810e9..8a21f84 100644 > --- a/include/vlc_threads.h > +++ b/include/vlc_threads.h > @@ -359,12 +359,26 @@ static inline void __vlc_cond_wait( const char * > psz_file, int i_line, #define vlc_cond_timedwait( P_COND, P_MUTEX, DEADLINE > ) \ __vlc_cond_timedwait( __FILE__, __LINE__, P_COND, > P_MUTEX, DEADLINE ) > > +#ifdef __APPLE__ > +# include /* gettimeofday in vlc_cond_timedwait */ > +#endif > + > static inline int __vlc_cond_timedwait( const char * psz_file, int i_line, > vlc_cond_t *p_condvar, > vlc_mutex_t *p_mutex, > mtime_t deadline ) > { > #if defined(LIBVLC_USE_PTHREAD) > +#ifdef __APPLE__ > + /* mdate() is mac_absolute_time on osx, which we must convert to do > + * the same base than gettimeofday() on which pthread_cond_timedwait > + * counts on. */ I wonder why bother use monotonic time if vlc_cond_timedwait still breaks. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From pdherbemont at free.fr Sat Feb 14 17:38:18 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Sat, 14 Feb 2009 17:38:18 +0100 Subject: [vlc-devel] commit: mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. (Pierre d'Herbemont ) In-Reply-To: <200902141831.30490.rem@videolan.org> References: <20090208000305.395A42EDC6@skanda.videolan.org> <200902141831.30490.rem@videolan.org> Message-ID: On Sat, Feb 14, 2009 at 5:31 PM, R?mi Denis-Courmont wrote: > Le dimanche 8 f?vrier 2009 02:03:05 git version control, vous avez ?crit : >> vlc | branch: 0.9-bugfix | Pierre d'Herbemont | >> Sun Feb 8 00:31:33 2009 +0100| [5ead92ffd58088828ed802173d963b2571f0cd69] >> | committer: Pierre d'Herbemont >> >> mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. >> >> mach_absolute_time() is a monotic clock, whereas gettimeofday() is not. For >> that reason setting your computer time while playing a movie won't halt >> playback anymore. >> >> Seems to fix the dropped frame issue on Mac OS X. >> >> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5ead92ffd58088828e >> >d802173d963b2571f0cd69 >> >> --- >> >> include/vlc_threads.h | 14 ++++++++++++++ >> src/misc/mtime.c | 34 ++++++++++++++++++++++++++++++++++ >> 2 files changed, 48 insertions(+), 0 deletions(-) >> >> diff --git a/include/vlc_threads.h b/include/vlc_threads.h >> index e2810e9..8a21f84 100644 >> --- a/include/vlc_threads.h >> +++ b/include/vlc_threads.h >> @@ -359,12 +359,26 @@ static inline void __vlc_cond_wait( const char * >> psz_file, int i_line, #define vlc_cond_timedwait( P_COND, P_MUTEX, DEADLINE >> ) \ __vlc_cond_timedwait( __FILE__, __LINE__, P_COND, >> P_MUTEX, DEADLINE ) >> >> +#ifdef __APPLE__ >> +# include /* gettimeofday in vlc_cond_timedwait */ >> +#endif >> + >> static inline int __vlc_cond_timedwait( const char * psz_file, int i_line, >> vlc_cond_t *p_condvar, >> vlc_mutex_t *p_mutex, >> mtime_t deadline ) >> { >> #if defined(LIBVLC_USE_PTHREAD) >> +#ifdef __APPLE__ >> + /* mdate() is mac_absolute_time on osx, which we must convert to do >> + * the same base than gettimeofday() on which pthread_cond_timedwait >> + * counts on. */ > > I wonder why bother use monotonic time if vlc_cond_timedwait still breaks. vlc_cond_timedwait is rarely used on vlc-0.9. So where we have no choice but to switch back to the wall clock, the impact is limited. During playback the code paths we take are only relying on our monotonic clock. Pierre. From git at videolan.org Sat Feb 14 17:48:19 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 17:48:19 +0100 (CET) Subject: [vlc-devel] commit: Qt: menu, small "Jump to Time" position change. ( Jean-Baptiste Kempf ) Message-ID: <20090214164819.211792F3AF@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 13 20:57:52 2009 +0100| [d0583b5099c075683bc9586fb28b0f169e787ca7] | committer: Jean-Baptiste Kempf Qt: menu, small "Jump to Time" position change. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d0583b5099c075683bc9586fb28b0f169e787ca7 --- modules/gui/qt4/menus.cpp | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 5cc738f..deb2ea4 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -606,15 +606,16 @@ QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QMenu *menu ) { if( menu->isEmpty() ) { - addDPStaticEntry( menu, qtr( I_MENU_GOTOTIME ),"", - SLOT( gotoTimeDialog() ), "Ctrl+T" ); - menu->addSeparator(); - ACT_ADD( menu, "bookmark", qtr( "&Bookmarks" ) ); ACT_ADD( menu, "title", qtr( "T&itle" ) ); ACT_ADD( menu, "chapter", qtr( "&Chapter" ) ); ACT_ADD( menu, "navigation", qtr( "&Navigation" ) ); ACT_ADD( menu, "program", qtr( "&Program" ) ); + + menu->addSeparator(); + addDPStaticEntry( menu, qtr( I_MENU_GOTOTIME ),"", + SLOT( gotoTimeDialog() ), "Ctrl+T" ); + } input_thread_t *p_object; From git at videolan.org Sat Feb 14 17:48:19 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 17:48:19 +0100 (CET) Subject: [vlc-devel] commit: Qt: remove reference to a dead class. (Jean-Baptiste Kempf ) Message-ID: <20090214164819.2E9822F3B5@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 13 23:12:14 2009 +0100| [a385764d4b109b24423a417a5382f8ee88d8975c] | committer: Jean-Baptiste Kempf Qt: remove reference to a dead class. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a385764d4b109b24423a417a5382f8ee88d8975c --- modules/gui/qt4/components/controller_widget.hpp | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/components/controller_widget.hpp b/modules/gui/qt4/components/controller_widget.hpp index 9beac6f..22a3b43 100644 --- a/modules/gui/qt4/components/controller_widget.hpp +++ b/modules/gui/qt4/components/controller_widget.hpp @@ -63,8 +63,6 @@ private slots: }; #define VOLUME_MAX 200 -class VolumeClickHandler; - class SoundWidget : public QWidget { Q_OBJECT From git at videolan.org Sat Feb 14 17:48:19 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 17:48:19 +0100 (CET) Subject: [vlc-devel] commit: Corrects a Windows limitation (zooming cannot exceed container size ) (patch 2/3) (Joseph Tulou ) Message-ID: <20090214164819.403102F3BE@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Fri Feb 13 15:00:58 2009 +0100| [6d17b907cb3a4f86283a43165e2a842234531636] | committer: Jean-Baptiste Kempf Corrects a Windows limitation (zooming cannot exceed container size) (patch 2/3) Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6d17b907cb3a4f86283a43165e2a842234531636 --- src/video_output/vout_pictures.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/src/video_output/vout_pictures.c b/src/video_output/vout_pictures.c index 5a44c62..48ce941 100644 --- a/src/video_output/vout_pictures.c +++ b/src/video_output/vout_pictures.c @@ -487,9 +487,14 @@ void vout_PlacePicture( const vout_thread_t *p_vout, i_original_height = p_vout->fmt_in.i_visible_height * p_vout->fmt_in.i_sar_den / p_vout->fmt_in.i_sar_num; } - +#ifdef WIN32 + /* On windows, inner video window exceeding container leads to black screen */ + *pi_width = __MIN( i_width, i_original_width * i_zoom / ZOOM_FP_FACTOR ); + *pi_height = __MIN( i_height, i_original_height * i_zoom / ZOOM_FP_FACTOR ); +#else *pi_width = i_original_width * i_zoom / ZOOM_FP_FACTOR ; *pi_height = i_original_height * i_zoom / ZOOM_FP_FACTOR ; +#endif } int64_t i_scaled_width = p_vout->fmt_in.i_visible_width * (int64_t)p_vout->fmt_in.i_sar_num * From git at videolan.org Sat Feb 14 17:48:19 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 17:48:19 +0100 (CET) Subject: [vlc-devel] commit: Remove trailing space. (Jean-Baptiste Kempf ) Message-ID: <20090214164819.713DF2F3BB@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 14 17:48:07 2009 +0100| [74d8818a7628827277282fdf3beba70de8aea24a] | committer: Jean-Baptiste Kempf Remove trailing space. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=74d8818a7628827277282fdf3beba70de8aea24a --- src/video_output/vout_pictures.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/video_output/vout_pictures.c b/src/video_output/vout_pictures.c index 094813b..60c1fca 100644 --- a/src/video_output/vout_pictures.c +++ b/src/video_output/vout_pictures.c @@ -466,7 +466,7 @@ void vout_PlacePicture( const vout_thread_t *p_vout, *pi_width = i_width; *pi_height = i_height; } - else + else { int i_zoom = p_vout->i_zoom; /* be realistic, scaling factor confined between .2 and 10. */ From git at videolan.org Sat Feb 14 17:48:19 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 17:48:19 +0100 (CET) Subject: [vlc-devel] commit: Cosmetic about i_zoom limitation (patch 3/3) (Joseph Tulou ) Message-ID: <20090214164819.59B342F3C0@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Fri Feb 13 15:01:59 2009 +0100| [6613969f328c31705a9e155e6ba0ab7d35088691] | committer: Jean-Baptiste Kempf Cosmetic about i_zoom limitation (patch 3/3) Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6613969f328c31705a9e155e6ba0ab7d35088691 --- src/video_output/vout_pictures.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/video_output/vout_pictures.c b/src/video_output/vout_pictures.c index 48ce941..094813b 100644 --- a/src/video_output/vout_pictures.c +++ b/src/video_output/vout_pictures.c @@ -470,8 +470,8 @@ void vout_PlacePicture( const vout_thread_t *p_vout, { int i_zoom = p_vout->i_zoom; /* be realistic, scaling factor confined between .2 and 10. */ - if( i_zoom > 10 * ZOOM_FP_FACTOR || i_zoom < ZOOM_FP_FACTOR / 5 ) - i_zoom = ZOOM_FP_FACTOR; + if( i_zoom > 10 * ZOOM_FP_FACTOR ) i_zoom = 10 * ZOOM_FP_FACTOR; + else if( i_zoom < ZOOM_FP_FACTOR / 5 ) i_zoom = ZOOM_FP_FACTOR / 5; unsigned int i_original_width, i_original_height; From jb at videolan.org Sat Feb 14 17:49:13 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 14 Feb 2009 17:49:13 +0100 Subject: [vlc-devel] RE : [PATCH] -- autoscale/scalefactor issues In-Reply-To: <20090214144026.GA8508@via.ecp.fr> References: <20090213132906.GA4069@videolan.org> <000001c98de5$77450910$ce22fac1@CCCC> <20090214144026.GA8508@via.ecp.fr> Message-ID: <20090214164913.GA24452@videolan.org> Hello, On Sat, Feb 14, 2009 at 03:40:26PM +0100, Laurent Aimar wrote : > On Fri, Feb 13, 2009, brezhoneg1 wrote: > > > > > > Can you separate patches, please? That helps a lot for regression > > > tracking. > > > > > > > Here we go .... Separated patches (but 1, 2, 3 order still required to > > apply them!) > Patch 1 merged by [705148182b17c6a08a8edbb05940904a974e6a32]. > Thanks for your work. > > I will let patch 2 be applied by jb if it is correct. patch 2 and 3 are applied. Thanks (once again) for your work, Joseph! Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From n17r0m4nc3r at gmail.com Sat Feb 14 16:49:47 2009 From: n17r0m4nc3r at gmail.com (=?ISO-8859-1?Q?=22Bc=2E_Michal_Hrom=E1dko=22?=) Date: Sat, 14 Feb 2009 16:49:47 +0100 Subject: [vlc-devel] New audio resampler In-Reply-To: <20090214141643.GA4149@via.ecp.fr> References: <49957E39.3070901@gmail.com> <20090214141643.GA4149@via.ecp.fr> Message-ID: <4996E81B.8080002@gmail.com> Laurent Aimar napsal(a): > Hi, > > On Fri, Feb 13, 2009, "Bc. Michal Hrom?dko" wrote: > >> Hello developers, >> last year I finished my bachelor project. I implemented PSOLA method to >> dynamicly change the speed of speach. I also modified VLC to use the >> PSOLA method as a resampler. It worked pretty good. All resamplers in >> VLC changes base tone of the speech. >> > It depends when it is used. If it is used while playing faster/slower yes, if > it is used to convert to the format that the audio card support no. > > >> When user wants to play his video >> faster, he gets funny smurf voices. It can be undone by reimplementing >> my "PSOLA resampler". So my question is: Shud I (we) start to work on >> it? Sorry for my English. >> > > In 1.0, a special module is tried instead of a resampler to provide correct audio > while playing faster/slower, if found the audio will be correct (ie no tone change). > The current implementation is done by modules/audio_filter/scaletempo.c > So basically the functionnality is already there (not by default in 0.9). > > BUT the quality of this module is not great at all, specially when doing more > than 1.5x or less than 0.6x > If your algorithm would provide a better quality, a plugin implementing it will be > welcome :) > It depends on type of the pitch detection algorithm. I can try to use several types and maybe I could provide a better quality. > Now, there is a lot of restriction on what an audio plugin in VLC can actually > do, so if you want to give it a try, I think it would be best to tell us what > your plugin would need in order to give you advices (like amount of latency, or ...). > > At this time I don't exactly know what my plugin would need. I'll do some research . > Regards, > > From git at videolan.org Sat Feb 14 19:02:47 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 19:02:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_all_uses_of_VLC=5FChangese?= =?utf-8?q?t_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090214180247.5EFC12F024@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 13:55:19 2009 +0200| [dbfffa2a25fa5fbcbe5346599facb23eaa337972] | committer: R?mi Denis-Courmont Remove all uses of VLC_Changeset > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dbfffa2a25fa5fbcbe5346599facb23eaa337972 --- modules/control/http/http.c | 1 - modules/gui/macosx/about.m | 9 ++------- modules/gui/qt4/dialogs/help.cpp | 1 - src/control/core.c | 2 +- src/libvlc.c | 3 --- 5 files changed, 3 insertions(+), 13 deletions(-) diff --git a/modules/control/http/http.c b/modules/control/http/http.c index 9f1bdf4..5bce03b 100644 --- a/modules/control/http/http.c +++ b/modules/control/http/http.c @@ -432,7 +432,6 @@ static void ParseExecute( httpd_file_sys_t *p_args, char *p_buffer, mvar_AppendNewVar( p_args->vars, "vlc_compile_domain", VLC_CompileDomain() ); mvar_AppendNewVar( p_args->vars, "vlc_compiler", VLC_Compiler() ); - mvar_AppendNewVar( p_args->vars, "vlc_changeset", VLC_Changeset() ); mvar_AppendNewVar( p_args->vars, "stream_position", position ); mvar_AppendNewVar( p_args->vars, "stream_time", time ); mvar_AppendNewVar( p_args->vars, "stream_length", length ); diff --git a/modules/gui/macosx/about.m b/modules/gui/macosx/about.m index 9ad77b9..a6b42bc 100644 --- a/modules/gui/macosx/about.m +++ b/modules/gui/macosx/about.m @@ -86,13 +86,8 @@ static VLAboutBox *_o_sharedInstance = nil; [o_about_window setTitle: _NS("About VLC media player")]; /* setup the creator / revision field */ - if( VLC_Changeset() != "exported" ) - [o_revision_field setStringValue: - [NSString stringWithFormat: _NS("Compiled by %s, based on Git commit %s"), - VLC_CompileBy(), VLC_Changeset()]]; - else - [o_revision_field setStringValue: - [NSString stringWithFormat: _NS("Compiled by %s"), VLC_CompileBy()]]; + [o_revision_field setStringValue: + [NSString stringWithFormat: _NS("Compiled by %s"), VLC_CompileBy()]]; /* Setup the nameversion field */ [o_name_version_field setStringValue: [NSString stringWithFormat:@"Version %s (%s)", VLC_Version(), PLATFORM]]; diff --git a/modules/gui/qt4/dialogs/help.cpp b/modules/gui/qt4/dialogs/help.cpp index cc72ff7..563edb1 100644 --- a/modules/gui/qt4/dialogs/help.cpp +++ b/modules/gui/qt4/dialogs/help.cpp @@ -120,7 +120,6 @@ AboutDialog::AboutDialog( QWidget *parent, intf_thread_t *_p_intf) + qfu( VLC_CompileBy() )+ "@" + qfu( VLC_CompileHost() ) + "." + qfu( VLC_CompileDomain() ) + ".\n" + qtr( "Compiler: " ) + qfu( VLC_Compiler() ) + ".\n" - + qtr( "Based on Git commit: " ) + qfu( VLC_Changeset() ) + ".\n" + qtr( "You are using the Qt4 Interface.\n\n" ) + qtr( "Copyright (C) " ) + COPYRIGHT_YEARS + qtr( " by the VideoLAN Team.\n" ) diff --git a/src/control/core.c b/src/control/core.c index f475f44..af592b9 100644 --- a/src/control/core.c +++ b/src/control/core.c @@ -206,7 +206,7 @@ const char * libvlc_get_compiler(void) const char * libvlc_get_changeset(void) { - return VLC_Changeset(); + return "exported"; } /* export internal libvlc_instance for ugly hacks with libvlccore */ diff --git a/src/libvlc.c b/src/libvlc.c index 675a913..9456bb6 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -1982,9 +1982,6 @@ static void Version( void ) utf8_fprintf( stdout, _("Compiled by %s@%s.%s\n"), VLC_CompileBy(), VLC_CompileHost(), VLC_CompileDomain() ); utf8_fprintf( stdout, _("Compiler: %s\n"), VLC_Compiler() ); - if( strcmp( VLC_Changeset(), "exported" ) ) - utf8_fprintf( stdout, _("Based upon Git commit [%s]\n"), - VLC_Changeset() ); utf8_fprintf( stdout, LICENSE_MSG ); #ifdef WIN32 /* Pause the console because it's destroyed when we exit */ From git at videolan.org Sat Feb 14 19:02:47 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 19:02:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_VLC=5FChangeset=2C_src/mis?= =?utf-8?q?c/revision=2Ec=2C_fixes_make_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090214180247.6FAB32F3C2@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 14:00:25 2009 +0200| [046bfcf1517610b52fb3a39bfc4ddb79cced6ca7] | committer: R?mi Denis-Courmont Remove VLC_Changeset, src/misc/revision.c, fixes make > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=046bfcf1517610b52fb3a39bfc4ddb79cced6ca7 --- include/vlc_common.h | 1 - src/Makefile.am | 21 --------------------- src/libvlccore.sym | 1 - src/misc/.gitignore | 1 - src/version.c | 6 ------ 5 files changed, 0 insertions(+), 30 deletions(-) diff --git a/include/vlc_common.h b/include/vlc_common.h index a231d83..23f27a0 100644 --- a/include/vlc_common.h +++ b/include/vlc_common.h @@ -855,7 +855,6 @@ VLC_EXPORT( const char *, VLC_CompileHost, ( void ) LIBVLC_USED ); VLC_EXPORT( const char *, VLC_CompileDomain, ( void ) LIBVLC_USED ); VLC_EXPORT( const char *, VLC_Compiler, ( void ) LIBVLC_USED ); VLC_EXPORT( const char *, VLC_Error, ( int ) LIBVLC_USED ); -VLC_EXPORT( const char *, VLC_Changeset, ( void ) LIBVLC_USED ); /***************************************************************************** * Additional vlc stuff diff --git a/src/Makefile.am b/src/Makefile.am index 00a32c6..740f357 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -172,7 +172,6 @@ AM_LDFLAGS += -avoid-version endif libvlccore_la_SOURCES = $(SOURCES_libvlc) -nodist_libvlccore_la_SOURCES = misc/revision.c libvlccore_la_CFLAGS = `$(VLC_CONFIG) --cflags libvlc` \ -DMODULE_STRING=\"main\" \ -DLOCALEDIR=\"$(localedir)\" \ @@ -465,26 +464,6 @@ SOURCES_libvlc_control = \ control/media_discoverer.c ############################################################################### -# Stamp rules -############################################################################### - -misc/revision.c.tmp: - rm -f -- $@ - echo "/* AUTOGENERATED FILE - DO NOT EDIT */" > $@ - REVISION="$$(cd "$(top_srcdir)"; git describe 2>/dev/null || echo "$(VERSION)")"; \ - echo "const char psz_vlc_changeset[] = \"$$REVISION\";" >> $@ - diff $@ misc/revision.c >/dev/null 2>&1 || \ - cat misc/revision.c.tmp > misc/revision.c - -misc/revision.c: - $(MAKE) misc/revision.c.tmp - cat misc/revision.c.tmp > misc/revision.c - -BUILT_SOURCES += misc/revision.c.tmp misc/revision.c - -.PHONY: misc/revision.c.tmp - -############################################################################### # Unit/regression test ############################################################################### diff --git a/src/libvlccore.sym b/src/libvlccore.sym index b022e75..ee2028a 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -430,7 +430,6 @@ vlc_b64_decode_binary_to_buffer vlc_b64_encode vlc_b64_encode_binary vlc_cancel -VLC_Changeset vlc_clone VLC_CompileBy VLC_CompileDomain diff --git a/src/misc/.gitignore b/src/misc/.gitignore deleted file mode 100644 index e9cba81..0000000 --- a/src/misc/.gitignore +++ /dev/null @@ -1 +0,0 @@ -revision.c diff --git a/src/version.c b/src/version.c index 3bac434..e2e7e25 100644 --- a/src/version.c +++ b/src/version.c @@ -54,9 +54,3 @@ DECLARE_VLC_VERSION( CompileBy, COMPILE_BY ); DECLARE_VLC_VERSION( CompileHost, COMPILE_HOST ); DECLARE_VLC_VERSION( CompileDomain, COMPILE_DOMAIN ); DECLARE_VLC_VERSION( Compiler, COMPILER ); - -extern const char psz_vlc_changeset[]; -const char* VLC_Changeset( void ) -{ - return psz_vlc_changeset; -} From git at videolan.org Sat Feb 14 19:02:47 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 19:02:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Link_plugins_against_libvlccore_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090214180247.861352F3CE@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 14:01:34 2009 +0200| [cba4b50534e596d9c6596a145d32ea7ac2262bca] | committer: R?mi Denis-Courmont Link plugins against libvlccore This reverts back to 0.9 (and --enable-libtool 0.8.6) state. This should fix bindings and web plugins, without hacks. However, this will require relinking all VLC plugins whenever libvlccore changes. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cba4b50534e596d9c6596a145d32ea7ac2262bca --- modules/common.am | 13 ++----------- 1 files changed, 2 insertions(+), 11 deletions(-) diff --git a/modules/common.am b/modules/common.am index 4139862..caa5659 100644 --- a/modules/common.am +++ b/modules/common.am @@ -21,18 +21,9 @@ AM_LDFLAGS = -rpath '$(libvlcdir)' \ -avoid-version -module \ -export-symbol-regex ^vlc_entry \ -shrext $(LIBEXT) \ + -no-undefined \ `$(VLC_CONFIG) --ldflags plugin $@` -AM_LIBADD = `$(VLC_CONFIG) -libs plugin $@` -if HAVE_WIN32 -# Windows does not support undefined symbols -AM_LDFLAGS += -no-undefined -AM_LIBADD += $(LTLIBVLCCORE) -endif -if HAVE_WINCE -# Same for Windows CE -AM_LDFLAGS += -no-undefined -AM_LIBADD += $(LTLIBVLCCORE) -endif +AM_LIBADD = `$(VLC_CONFIG) -libs plugin $@` $(LTLIBVLCCORE) include $(srcdir)/Modules.am From git at videolan.org Sat Feb 14 19:02:47 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 19:02:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Privatize_vout=5FSnapshot=28=29_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090214180247.D1B7E2F3C4@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 19:40:05 2009 +0200| [003d86fa032d98fbb096fb6b656fc9332e01fca2] | committer: R?mi Denis-Courmont Privatize vout_Snapshot() > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=003d86fa032d98fbb096fb6b656fc9332e01fca2 --- include/vlc_vout.h | 1 - src/libvlccore.sym | 1 - 2 files changed, 0 insertions(+), 2 deletions(-) diff --git a/include/vlc_vout.h b/include/vlc_vout.h index c3445af..9744319 100644 --- a/include/vlc_vout.h +++ b/include/vlc_vout.h @@ -676,7 +676,6 @@ VLC_EXPORT( void, vout_PlacePicture, ( const vout_thread_t *, unsig VLC_EXPORT( int, vout_vaControlDefault, ( vout_thread_t *, int, va_list ) ); void vout_IntfInit( vout_thread_t * ); -VLC_EXPORT( int, vout_Snapshot, ( vout_thread_t *p_vout, picture_t *p_pic ) ); VLC_EXPORT( void, vout_EnableFilter, ( vout_thread_t *, char *,bool , bool ) ); diff --git a/src/libvlccore.sym b/src/libvlccore.sym index ee2028a..be15e35 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -540,7 +540,6 @@ __vout_Request vout_RequestWindow vout_ShowTextAbsolute vout_ShowTextRelative -vout_Snapshot vout_UnlinkPicture vout_vaControlDefault __xml_Create From git at videolan.org Sat Feb 14 19:02:48 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 19:02:48 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Kill_stupid_VOUT=5FSNAPSHOT_contr?= =?utf-8?q?ol=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090214180248.0B5A92F024@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 19:58:03 2009 +0200| [53195e9fc7c31e8ae3aeead4879477aa950513b4] | committer: R?mi Denis-Courmont Kill stupid VOUT_SNAPSHOT control. Calling vout_Control() after vlc_object_find() or input_GetVouts is not valid. It cannot be. There is no warranty that pf_control is valid (the video output plugin could be initializing or deinitializing). Even if there were a lock without the pf_control implementation (as with X11), it still wouldn't work. Anyway, in this particular case, we already have video-snapshot to do the exact same thing in a safe manner. There remain some issues with snapshots: - there is no synchronization of b_snapshoy with the video thread, - there is no/incomplete error handling, - there is no protection against multiple concurrent snapshot reqs. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=53195e9fc7c31e8ae3aeead4879477aa950513b4 --- include/vlc_vout.h | 1 - modules/control/hotkeys.c | 2 +- modules/control/http/rpn.c | 2 +- modules/gui/macosx/vout.m | 2 +- modules/gui/maemo/maemo_callbacks.c | 2 +- modules/gui/qt4/actions_manager.cpp | 2 +- modules/gui/skins2/commands/cmd_snapshot.cpp | 2 +- modules/video_output/opengl.c | 3 --- modules/video_output/opengllayer.m | 3 --- src/control/mediacontrol_audio_video.c | 2 +- src/control/video.c | 2 +- src/video_output/vout_intf.c | 10 ++++------ 12 files changed, 12 insertions(+), 21 deletions(-) diff --git a/include/vlc_vout.h b/include/vlc_vout.h index 9744319..2effe42 100644 --- a/include/vlc_vout.h +++ b/include/vlc_vout.h @@ -705,7 +705,6 @@ enum output_query_e VOUT_SET_SIZE, /* arg1= unsigned int, arg2= unsigned int, res= */ VOUT_SET_STAY_ON_TOP, /* arg1= bool res= */ VOUT_REPARENT, - VOUT_SNAPSHOT, VOUT_CLOSE, VOUT_SET_FOCUS, /* arg1= bool res= */ VOUT_SET_VIEWPORT, /* arg1= view rect, arg2=clip rect, res= */ diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index b4e5271..74cf5a1 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -244,7 +244,7 @@ static void Run( intf_thread_t *p_intf ) /* Video Output actions */ else if( i_action == ACTIONID_SNAPSHOT ) { - if( p_vout ) vout_Control( p_vout, VOUT_SNAPSHOT ); + if( p_vout ) var_TriggerCallback( p_vout, "video-snapshot" ); } else if( i_action == ACTIONID_TOGGLE_FULLSCREEN ) { diff --git a/modules/control/http/rpn.c b/modules/control/http/rpn.c index e4689ff..73aee51 100644 --- a/modules/control/http/rpn.c +++ b/modules/control/http/rpn.c @@ -1125,7 +1125,7 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t *vars, vout_thread_t *p_vout = input_GetVout( p_sys->p_input ); if( p_vout ) { - vout_Control( p_vout, VOUT_SNAPSHOT ); + vout_TriggerCallback( p_vout, "video-snapshot" ); vlc_object_release( p_vout ); msg_Dbg( p_intf, "requested snapshot" ); } diff --git a/modules/gui/macosx/vout.m b/modules/gui/macosx/vout.m index 645bc3d..4654777 100644 --- a/modules/gui/macosx/vout.m +++ b/modules/gui/macosx/vout.m @@ -446,7 +446,7 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable, - (void)snapshot { - vout_Control( p_real_vout, VOUT_SNAPSHOT ); + var_TriggerCallback( p_real_vout, "video-snapshot" ); } - (void)manage diff --git a/modules/gui/maemo/maemo_callbacks.c b/modules/gui/maemo/maemo_callbacks.c index 97ee4df..c14435c 100644 --- a/modules/gui/maemo/maemo_callbacks.c +++ b/modules/gui/maemo/maemo_callbacks.c @@ -232,7 +232,7 @@ void snapshot_cb( GtkMenuItem *menuitem, gpointer user_data ) return; } - vout_Control( p_intf->p_sys->p_vout, VOUT_SNAPSHOT ); + var_TriggerCallback( p_intf->p_sys->p_vout, "video-snapshot" ); hildon_banner_show_information( GTK_WIDGET( p_intf->p_sys->p_main_window ), NULL, "Snapshot taken" ); diff --git a/modules/gui/qt4/actions_manager.cpp b/modules/gui/qt4/actions_manager.cpp index ee5bcb6..edddb1a 100644 --- a/modules/gui/qt4/actions_manager.cpp +++ b/modules/gui/qt4/actions_manager.cpp @@ -127,7 +127,7 @@ void ActionsManager::snapshot() vout_thread_t *p_vout = THEMIM->getVout(); if( p_vout ) { - vout_Control( p_vout, VOUT_SNAPSHOT ); + var_TriggerCallback( p_vout, "video-snapshot" ); vlc_object_release( p_vout ); } } diff --git a/modules/gui/skins2/commands/cmd_snapshot.cpp b/modules/gui/skins2/commands/cmd_snapshot.cpp index 80d12ca..bc2b020 100644 --- a/modules/gui/skins2/commands/cmd_snapshot.cpp +++ b/modules/gui/skins2/commands/cmd_snapshot.cpp @@ -34,7 +34,7 @@ void CmdSnapshot::execute() if( pVout ) { // Take a snapshot - vout_Control( pVout, VOUT_SNAPSHOT ); + var_TriggerCallback( pVout, "video-snapshot" ); vlc_object_release( pVout ); } } diff --git a/modules/video_output/opengl.c b/modules/video_output/opengl.c index c8a1cc0..2147d0c 100644 --- a/modules/video_output/opengl.c +++ b/modules/video_output/opengl.c @@ -628,9 +628,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) switch( i_query ) { - case VOUT_SNAPSHOT: - return vout_vaControlDefault( p_vout, i_query, args ); - default: if( p_sys->p_vout->pf_control ) return p_sys->p_vout->pf_control( p_sys->p_vout, i_query, args ); diff --git a/modules/video_output/opengllayer.m b/modules/video_output/opengllayer.m index 8536cd0..4884eef 100644 --- a/modules/video_output/opengllayer.m +++ b/modules/video_output/opengllayer.m @@ -336,9 +336,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) switch( i_query ) { - case VOUT_SNAPSHOT: - return vout_vaControlDefault( p_vout, i_query, args ); - default: if( p_sys->p_vout->pf_control ) return p_sys->p_vout->pf_control( p_sys->p_vout, i_query, args ); diff --git a/src/control/mediacontrol_audio_video.c b/src/control/mediacontrol_audio_video.c index 3e02263..23027d3 100644 --- a/src/control/mediacontrol_audio_video.c +++ b/src/control/mediacontrol_audio_video.c @@ -102,7 +102,7 @@ mediacontrol_snapshot( mediacontrol_Instance *self, NULL (in case of error) or a pointer to valid data. */ p_snapshot->p_data = ( char* )p_snapshot; - vout_Control( p_vout, VOUT_SNAPSHOT ); + var_TriggerCallback( p_vout, "video-snapshot" ); while ( p_snapshot->p_data == ( char* )p_snapshot ) { vlc_cond_wait( &p_snapshot->p_condvar, &p_snapshot->p_mutex ); diff --git a/src/control/video.c b/src/control/video.c index 44eb252..ef081c6 100644 --- a/src/control/video.c +++ b/src/control/video.c @@ -132,7 +132,7 @@ libvlc_video_take_snapshot( libvlc_media_player_t *p_mi, char *psz_filepath, var_SetString( p_vout, "snapshot-path", psz_filepath ); var_SetString( p_vout, "snapshot-format", "png" ); - vout_Control( p_vout, VOUT_SNAPSHOT ); + var_TriggerCallback( p_vout, "video-snapshot" ); vlc_object_release( p_vout ); } diff --git a/src/video_output/vout_intf.c b/src/video_output/vout_intf.c index 9794eee..6cb8459 100644 --- a/src/video_output/vout_intf.c +++ b/src/video_output/vout_intf.c @@ -906,10 +906,6 @@ int vout_vaControlDefault( vout_thread_t *p_vout, int i_query, va_list args ) (void)args; switch( i_query ) { - case VOUT_SNAPSHOT: - p_vout->p->b_snapshot = true; - return VLC_SUCCESS; - default: msg_Dbg( p_vout, "control query not supported" ); } @@ -1270,10 +1266,12 @@ static int FullscreenCallback( vlc_object_t *p_this, char const *psz_cmd, static int SnapshotCallback( vlc_object_t *p_this, char const *psz_cmd, vlc_value_t oldval, vlc_value_t newval, void *p_data ) { + vout_thread_t *p_vout = (vout_thread_t *)p_this; + + /* FIXME: this is definitely not thread-safe */ + p_vout->p->b_snapshot = true; VLC_UNUSED(psz_cmd); VLC_UNUSED(oldval); VLC_UNUSED(newval); VLC_UNUSED(p_data); - vout_thread_t *p_vout = (vout_thread_t *)p_this; - vout_Control( p_vout, VOUT_SNAPSHOT ); return VLC_SUCCESS; } From git at videolan.org Sat Feb 14 19:02:47 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 19:02:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_libvlccore_load_hack_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090214180247.B93342F39A@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 14:02:07 2009 +0200| [8a28a8dfa7f7b44fb3cd59c85799e017b22166a1] | committer: R?mi Denis-Courmont Remove libvlccore load hack It did not work properly, and was GNU specific anyway. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8a28a8dfa7f7b44fb3cd59c85799e017b22166a1 --- src/modules/os.c | 14 -------------- 1 files changed, 0 insertions(+), 14 deletions(-) diff --git a/src/modules/os.c b/src/modules/os.c index 82e2ee8..58fef51 100644 --- a/src/modules/os.c +++ b/src/modules/os.c @@ -132,16 +132,6 @@ int module_Call( vlc_object_t *obj, module_t *p_module ) return 0; } -#if defined (RTLD_NOLOAD) -/* Make sure libvlccore is in the global namespace */ -static void load_libvlccore( void ) -{ - if( !dlsym( RTLD_DEFAULT, "libvlc_Quit" ) - && !dlopen( "libvlccore.so", RTLD_LAZY|RTLD_GLOBAL|RTLD_NOLOAD ) ) - fprintf( stderr, "ERROR: failed loading libvlccore\n" ); -} -#endif - /** * Load a dynamically linked library using a system dependent method. * @@ -218,10 +208,6 @@ int module_Load( vlc_object_t *p_this, const char *psz_file, } #elif defined(HAVE_DL_DLOPEN) -# if defined (RTLD_NOLOAD) - static pthread_once_t once = PTHREAD_ONCE_INIT; - pthread_once( &once, &load_libvlccore ); -# endif # if defined (RTLD_NOW) const int flags = RTLD_NOW; From git at videolan.org Sat Feb 14 19:27:10 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 19:27:10 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_VOUT=5FCLOSE_is_unsafe_and_pointl?= =?utf-8?q?ess=2E_Do_not_use_it=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090214182710.9F58C2F3C3@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 20:23:17 2009 +0200| [6021d023dd0b5c833fb2f5cecb94aae085a3b18a] | committer: R?mi Denis-Courmont VOUT_CLOSE is unsafe and pointless. Do not use it. If an interface exits "early" it should reparent (although reparenting is no safer). Otherwise, the core will ensure that the video output was safely closed before it terminates the interface. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6021d023dd0b5c833fb2f5cecb94aae085a3b18a --- modules/gui/maemo/maemo.c | 3 +-- modules/gui/skins2/src/vlcproc.cpp | 6 ++---- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/modules/gui/maemo/maemo.c b/modules/gui/maemo/maemo.c index 0690062..82c6a1d 100644 --- a/modules/gui/maemo/maemo.c +++ b/modules/gui/maemo/maemo.c @@ -254,8 +254,7 @@ static void Run( intf_thread_t *p_intf ) if( p_vout ) { - if( vout_Control( p_vout, VOUT_CLOSE ) != VLC_SUCCESS ) - vout_Control( p_vout, VOUT_REPARENT, 0 ); + vout_Control( p_vout, VOUT_REPARENT, 0 ); vlc_object_release( p_vout ); } diff --git a/modules/gui/skins2/src/vlcproc.cpp b/modules/gui/skins2/src/vlcproc.cpp index f52f8de..bc86792 100644 --- a/modules/gui/skins2/src/vlcproc.cpp +++ b/modules/gui/skins2/src/vlcproc.cpp @@ -203,8 +203,7 @@ void VlcProc::registerVoutWindow( void *pVoutWindow ) // Reparent the vout window if( m_pVout ) { - if( vout_Control( m_pVout, VOUT_REPARENT, 0 ) != VLC_SUCCESS ) - vout_Control( m_pVout, VOUT_CLOSE ); + vout_Control( m_pVout, VOUT_REPARENT, 0 ); } } @@ -219,8 +218,7 @@ void VlcProc::dropVout() { if( m_pVout ) { - if( vout_Control( m_pVout, VOUT_REPARENT, 0 ) != VLC_SUCCESS ) - vout_Control( m_pVout, VOUT_CLOSE ); + vout_Control( m_pVout, VOUT_REPARENT, 0 ); m_pVout = NULL; } } From git at videolan.org Sat Feb 14 19:27:10 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 19:27:10 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_unneeded_VOUT=5FCLOSE=2E_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090214182710.B66542F3F4@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 20:26:42 2009 +0200| [b8fc38757e5e9c171496c0bbf220cdb358146487] | committer: R?mi Denis-Courmont Remove unneeded VOUT_CLOSE. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b8fc38757e5e9c171496c0bbf220cdb358146487 --- include/vlc_vout.h | 1 - modules/gui/macosx/voutgl.m | 1 - modules/gui/minimal_macosx/VLCOpenGLVoutView.m | 1 - modules/video_output/msw/events.c | 8 ++------ modules/video_output/omapfb.c | 1 - modules/video_output/x11/xcommon.c | 7 ------- 6 files changed, 2 insertions(+), 17 deletions(-) diff --git a/include/vlc_vout.h b/include/vlc_vout.h index 2effe42..f0593ba 100644 --- a/include/vlc_vout.h +++ b/include/vlc_vout.h @@ -705,7 +705,6 @@ enum output_query_e VOUT_SET_SIZE, /* arg1= unsigned int, arg2= unsigned int, res= */ VOUT_SET_STAY_ON_TOP, /* arg1= bool res= */ VOUT_REPARENT, - VOUT_CLOSE, VOUT_SET_FOCUS, /* arg1= bool res= */ VOUT_SET_VIEWPORT, /* arg1= view rect, arg2=clip rect, res= */ VOUT_REDRAW_RECT, /* arg1= area rect, res= */ diff --git a/modules/gui/macosx/voutgl.m b/modules/gui/macosx/voutgl.m index ec804ad..d5a492c 100644 --- a/modules/gui/macosx/voutgl.m +++ b/modules/gui/macosx/voutgl.m @@ -275,7 +275,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) [p_vout->p_sys->o_vout_view setOnTop: b_arg]; return VLC_SUCCESS; - case VOUT_CLOSE: case VOUT_REPARENT: default: return vout_vaControlDefault( p_vout, i_query, args ); diff --git a/modules/gui/minimal_macosx/VLCOpenGLVoutView.m b/modules/gui/minimal_macosx/VLCOpenGLVoutView.m index 31e53d0..a4fa96d 100644 --- a/modules/gui/minimal_macosx/VLCOpenGLVoutView.m +++ b/modules/gui/minimal_macosx/VLCOpenGLVoutView.m @@ -151,7 +151,6 @@ int cocoaglvoutviewControl( vout_thread_t *p_vout, int i_query, va_list args ) [[p_vout->p_sys->o_glview container] setOnTop: b_arg]; return VLC_SUCCESS; - case VOUT_CLOSE: case VOUT_REPARENT: default: return vout_vaControlDefault( p_vout, i_query, args ); diff --git a/modules/video_output/msw/events.c b/modules/video_output/msw/events.c index 119680c..7ac260d 100644 --- a/modules/video_output/msw/events.c +++ b/modules/video_output/msw/events.c @@ -1075,8 +1075,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) return VLC_SUCCESS; - case VOUT_CLOSE: - ShowWindow( p_vout->p_sys->hwnd, SW_HIDE ); case VOUT_REPARENT: /* Retrieve the window position */ point.x = point.y = 0; @@ -1094,8 +1092,7 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) p_vout->p_sys->i_window_style = WS_CLIPCHILDREN | WS_OVERLAPPEDWINDOW | WS_SIZEBOX; SetWindowLong( p_vout->p_sys->hwnd, GWL_STYLE, - p_vout->p_sys->i_window_style | - (i_query == VOUT_CLOSE ? 0 : WS_VISIBLE) ); + p_vout->p_sys->i_window_style | WS_VISIBLE); SetWindowLong( p_vout->p_sys->hwnd, GWL_EXSTYLE, WS_EX_APPWINDOW ); SetWindowPos( p_vout->p_sys->hwnd, 0, point.x, point.y, 0, 0, SWP_NOSIZE|SWP_NOZORDER|SWP_FRAMECHANGED ); @@ -1109,8 +1106,7 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) SetParent( p_vout->p_sys->hwnd, d ); p_vout->p_sys->i_window_style = WS_CLIPCHILDREN; SetWindowLong( p_vout->p_sys->hwnd, GWL_STYLE, - p_vout->p_sys->i_window_style | - (i_query == VOUT_CLOSE ? 0 : WS_VISIBLE) ); + p_vout->p_sys->i_window_style | WS_VISIBLE); SetWindowLong( p_vout->p_sys->hwnd, GWL_EXSTYLE, WS_EX_APPWINDOW ); /* Retrieve the parent size */ diff --git a/modules/video_output/omapfb.c b/modules/video_output/omapfb.c index 9d6d27f..2daaee9 100644 --- a/modules/video_output/omapfb.c +++ b/modules/video_output/omapfb.c @@ -376,7 +376,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) switch( i_query ) { case VOUT_REPARENT: - case VOUT_CLOSE: vout_ReleaseWindow( p_vout->p_sys->owner_window ); return VLC_SUCCESS; default: diff --git a/modules/video_output/x11/xcommon.c b/modules/video_output/x11/xcommon.c index 7b6d6d6..15655a8 100644 --- a/modules/video_output/x11/xcommon.c +++ b/modules/video_output/x11/xcommon.c @@ -3183,13 +3183,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) vlc_mutex_unlock( &p_vout->p_sys->lock ); return VLC_SUCCESS; - case VOUT_CLOSE: - vlc_mutex_lock( &p_vout->p_sys->lock ); - XUnmapWindow( p_vout->p_sys->p_display, - p_vout->p_sys->original_window.base_window ); - vlc_mutex_unlock( &p_vout->p_sys->lock ); - /* Fall through */ - case VOUT_REPARENT: vlc_mutex_lock( &p_vout->p_sys->lock ); if( i_query == VOUT_REPARENT ) d = (Drawable)va_arg( args, int ); From rdenis at simphalempin.com Sat Feb 14 20:47:11 2009 From: rdenis at simphalempin.com (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 14 Feb 2009 21:47:11 +0200 Subject: [vlc-devel] Misuses of vout_Control Message-ID: <200902142147.11757.rdenis@simphalempin.com> Hello all, vout_Control() and vout_vaControl() are really just a convenience wrappers around vout_thread_t->pf_control. As such, it can only -safely- be used: - after a succesful module_need(), - before module_unneed(), - from the video output thread. Control requests chaining from some video filters is one valid (should be) use of vout_vaControl(). However, the following usages are invalid: * Maemo and Skins interfaces are reparenting when quitting. They have to ensure it does not destroy the window too early instead. As of VLC 1.0, the core ensures video outputs are cleaned up before interfaces. * WinCE interface is controlling the video window focus this way. This is the only use of VOUT_SET_FOCUS in the entire tree, and seems to be a hack. * The zoom and video on top variable handlers in the core are not serialized properly. They should be synchronized with the video output thread. * Libvlc provides a video redraw function. I find this request silly. The video output should redraw transparently as appropriate. The back-end is only implemented on OSX. * Libvlc provides two (!!!) video resize functions. I wonder if they ever worked, as at least the X11 output will automatically resize according to changes to the parent window size. In any case, these functions should sync with the video output thread instead of calling vout_Control() directly. * Libvlc provides a reparenting function. This is known not to work properly. Also, it will explode if there are several video outputs. * Libvlc provides an OSX-only window-less output function, which is similarly broken. I have already fixed snapshots, and removed the VOUT_CLOSE request. Otherwise, all these bugs may result in crashes and need to be fixed/removed ASAP. -- R?mi Denis-Courmont http://www.remlab.net/ From git at videolan.org Sat Feb 14 21:22:58 2009 From: git at videolan.org (git version control) Date: Sat, 14 Feb 2009 21:22:58 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_useless_vout=5FvaControlDe?= =?utf-8?q?fault_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090214202258.78AB42F3AE@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 22:19:13 2009 +0200| [dd4e022cb3230462ef5f46a1e7e8e00789b621a2] | committer: R?mi Denis-Courmont Remove useless vout_vaControlDefault > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dd4e022cb3230462ef5f46a1e7e8e00789b621a2 --- include/vlc_vout.h | 1 - modules/gui/beos/VideoOutput.cpp | 2 +- modules/gui/macosx/voutgl.m | 5 ++--- modules/gui/minimal_macosx/VLCOpenGLVoutView.m | 3 +-- modules/gui/minimal_macosx/voutagl.m | 2 +- modules/misc/dummy/vout.c | 7 ++----- modules/misc/stats/vout.c | 7 ++----- modules/video_output/fb.c | 7 ++----- modules/video_output/msw/events.c | 2 +- modules/video_output/omapfb.c | 2 +- modules/video_output/opengl.c | 11 +++-------- modules/video_output/opengllayer.m | 11 +++-------- modules/video_output/x11/xcommon.c | 2 +- src/libvlccore.sym | 1 - src/video_output/vout_intf.c | 14 -------------- 15 files changed, 20 insertions(+), 57 deletions(-) diff --git a/include/vlc_vout.h b/include/vlc_vout.h index f0593ba..0f71609 100644 --- a/include/vlc_vout.h +++ b/include/vlc_vout.h @@ -674,7 +674,6 @@ VLC_EXPORT( void, vout_LinkPicture, ( vout_thread_t *, picture_t * VLC_EXPORT( void, vout_UnlinkPicture, ( vout_thread_t *, picture_t * ) ); VLC_EXPORT( void, vout_PlacePicture, ( const vout_thread_t *, unsigned int, unsigned int, unsigned int *, unsigned int *, unsigned int *, unsigned int * ) ); -VLC_EXPORT( int, vout_vaControlDefault, ( vout_thread_t *, int, va_list ) ); void vout_IntfInit( vout_thread_t * ); VLC_EXPORT( void, vout_EnableFilter, ( vout_thread_t *, char *,bool , bool ) ); diff --git a/modules/gui/beos/VideoOutput.cpp b/modules/gui/beos/VideoOutput.cpp index 181b3b2..cb1805b 100644 --- a/modules/gui/beos/VideoOutput.cpp +++ b/modules/gui/beos/VideoOutput.cpp @@ -1367,7 +1367,7 @@ void Display( vout_thread_t *p_vout, picture_t *p_pic ) static int Control( vout_thread_t * p_vout, int i_query, va_list args ) { - return vout_vaControlDefault( p_vout, i_query, args ); + return VLC_EGENERIC; } /* following functions are local */ diff --git a/modules/gui/macosx/voutgl.m b/modules/gui/macosx/voutgl.m index d5a492c..47dac9e 100644 --- a/modules/gui/macosx/voutgl.m +++ b/modules/gui/macosx/voutgl.m @@ -275,9 +275,8 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) [p_vout->p_sys->o_vout_view setOnTop: b_arg]; return VLC_SUCCESS; - case VOUT_REPARENT: default: - return vout_vaControlDefault( p_vout, i_query, args ); + return VLC_EGENERIC; } } @@ -792,7 +791,7 @@ static int aglControl( vout_thread_t *p_vout, int i_query, va_list args ) } default: - return vout_vaControlDefault( p_vout, i_query, args ); + return VLC_EGENERIC; } } diff --git a/modules/gui/minimal_macosx/VLCOpenGLVoutView.m b/modules/gui/minimal_macosx/VLCOpenGLVoutView.m index a4fa96d..62fea6f 100644 --- a/modules/gui/minimal_macosx/VLCOpenGLVoutView.m +++ b/modules/gui/minimal_macosx/VLCOpenGLVoutView.m @@ -151,9 +151,8 @@ int cocoaglvoutviewControl( vout_thread_t *p_vout, int i_query, va_list args ) [[p_vout->p_sys->o_glview container] setOnTop: b_arg]; return VLC_SUCCESS; - case VOUT_REPARENT: default: - return vout_vaControlDefault( p_vout, i_query, args ); + return VLC_EGENERIC; } } diff --git a/modules/gui/minimal_macosx/voutagl.m b/modules/gui/minimal_macosx/voutagl.m index 92f9f6f..68c20e9 100644 --- a/modules/gui/minimal_macosx/voutagl.m +++ b/modules/gui/minimal_macosx/voutagl.m @@ -379,7 +379,7 @@ int aglControl( vout_thread_t *p_vout, int i_query, va_list args ) } default: - return vout_vaControlDefault( p_vout, i_query, args ); + return VLC_EGENERIC; } } diff --git a/modules/misc/dummy/vout.c b/modules/misc/dummy/vout.c index 78147b1..0b4cdbb 100644 --- a/modules/misc/dummy/vout.c +++ b/modules/misc/dummy/vout.c @@ -73,11 +73,8 @@ int OpenVideo ( vlc_object_t *p_this ) *****************************************************************************/ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) { - switch( i_query ) - { - default: - return vout_vaControlDefault( p_vout, i_query, args ); - } + (void) p_vout; (void) i_query; (void) args; + return VLC_EGENERIC; } diff --git a/modules/misc/stats/vout.c b/modules/misc/stats/vout.c index 5fb4bd8..a765e3d 100644 --- a/modules/misc/stats/vout.c +++ b/modules/misc/stats/vout.c @@ -73,11 +73,8 @@ int OpenVideo ( vlc_object_t *p_this ) *****************************************************************************/ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) { - switch( i_query ) - { - default: - return vout_vaControlDefault( p_vout, i_query, args ); - } + (void) p_vout; (void) i_query; (void) args; + return VLC_EGENERIC; } diff --git a/modules/video_output/fb.c b/modules/video_output/fb.c index acec4c9..8aa5050 100644 --- a/modules/video_output/fb.c +++ b/modules/video_output/fb.c @@ -651,11 +651,8 @@ static void End( vout_thread_t *p_vout ) *****************************************************************************/ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) { - switch( i_query ) - { - default: - return vout_vaControlDefault( p_vout, i_query, args ); - } + (void) p_vout; (void) i_query; (void) args; + return VLC_EGENERIC; } /***************************************************************************** diff --git a/modules/video_output/msw/events.c b/modules/video_output/msw/events.c index 7ac260d..85762d1 100644 --- a/modules/video_output/msw/events.c +++ b/modules/video_output/msw/events.c @@ -1136,7 +1136,7 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) #endif default: - return vout_vaControlDefault( p_vout, i_query, args ); + return VLC_EGENERIC; } } diff --git a/modules/video_output/omapfb.c b/modules/video_output/omapfb.c index 2daaee9..4812b62 100644 --- a/modules/video_output/omapfb.c +++ b/modules/video_output/omapfb.c @@ -379,7 +379,7 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) vout_ReleaseWindow( p_vout->p_sys->owner_window ); return VLC_SUCCESS; default: - return vout_vaControlDefault( p_vout, i_query, args ); + return VLC_EGENERIC; } } diff --git a/modules/video_output/opengl.c b/modules/video_output/opengl.c index 2147d0c..698defc 100644 --- a/modules/video_output/opengl.c +++ b/modules/video_output/opengl.c @@ -626,14 +626,9 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) { vout_sys_t *p_sys = p_vout->p_sys; - switch( i_query ) - { - default: - if( p_sys->p_vout->pf_control ) - return p_sys->p_vout->pf_control( p_sys->p_vout, i_query, args ); - else - return vout_vaControlDefault( p_vout, i_query, args ); - } + if( p_sys->p_vout->pf_control ) + return p_sys->p_vout->pf_control( p_sys->p_vout, i_query, args ); + return VLC_EGENERIC; } static int InitTextures( vout_thread_t *p_vout ) diff --git a/modules/video_output/opengllayer.m b/modules/video_output/opengllayer.m index 4884eef..4e9c185 100644 --- a/modules/video_output/opengllayer.m +++ b/modules/video_output/opengllayer.m @@ -334,14 +334,9 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) { vout_sys_t *p_sys = p_vout->p_sys; - switch( i_query ) - { - default: - if( p_sys->p_vout->pf_control ) - return p_sys->p_vout->pf_control( p_sys->p_vout, i_query, args ); - else - return vout_vaControlDefault( p_vout, i_query, args ); - } + if( p_sys->p_vout->pf_control ) + return p_sys->p_vout->pf_control( p_sys->p_vout, i_query, args ); + return VLC_EGENERIC; } /***************************************************************************** diff --git a/modules/video_output/x11/xcommon.c b/modules/video_output/x11/xcommon.c index 15655a8..281887f 100644 --- a/modules/video_output/x11/xcommon.c +++ b/modules/video_output/x11/xcommon.c @@ -3227,7 +3227,7 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) return VLC_SUCCESS; default: - return vout_vaControlDefault( p_vout, i_query, args ); + return VLC_EGENERIC; } } diff --git a/src/libvlccore.sym b/src/libvlccore.sym index be15e35..e4f9c09 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -541,6 +541,5 @@ vout_RequestWindow vout_ShowTextAbsolute vout_ShowTextRelative vout_UnlinkPicture -vout_vaControlDefault __xml_Create xml_Delete diff --git a/src/video_output/vout_intf.c b/src/video_output/vout_intf.c index 6cb8459..8160e85 100644 --- a/src/video_output/vout_intf.c +++ b/src/video_output/vout_intf.c @@ -899,20 +899,6 @@ void vout_EnableFilter( vout_thread_t *p_vout, char *psz_name, } /***************************************************************************** - * vout_ControlDefault: default methods for video output control. - *****************************************************************************/ -int vout_vaControlDefault( vout_thread_t *p_vout, int i_query, va_list args ) -{ - (void)args; - switch( i_query ) - { - default: - msg_Dbg( p_vout, "control query not supported" ); - } - return VLC_EGENERIC; -} - -/***************************************************************************** * InitWindowSize: find the initial dimensions the video window should have. ***************************************************************************** * This function will check the "width", "height" and "zoom" config options and From noxelia at gmail.com Sat Feb 14 21:33:49 2009 From: noxelia at gmail.com (basos g) Date: Sat, 14 Feb 2009 22:33:49 +0200 Subject: [vlc-devel] [PATCH] FIX: Dshow "none" device open (#2201). Some cleaning In-Reply-To: <9d98edc70902120605p4579d2c5rfe7aa3be2da4626e@mail.gmail.com> References: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> <200902111756.18051.rem@videolan.org> <9d98edc70902120605p4579d2c5rfe7aa3be2da4626e@mail.gmail.com> Message-ID: <9d98edc70902141233w234da439x63d2067e6a679357@mail.gmail.com> 2009/2/12 basos g : > 2009/2/11 R?mi Denis-Courmont : >> Le mercredi 11 f?vrier 2009 16:15:48 basos g, vous avez ?crit : >>> These 2 patches address the issue in dshow as well as some other fixes >>> >>> -Fix dshow "none" deivice be recognized as none >>> Note that another patch concerning var_optionParse string >>> dequoting should be applied for this to be fixed >>> ( the concept is not to provide quoted strings to dshow options ) >>> -Account for the case when BOTH devices could not be opened >>> (file an error, instead of seeming to play) >>> -Cleaned a little >>> -Added dbg and error msgs >>> -Added coments >> >> I am not against removing quotes there, but we have to be consistent. >> Discarding quotes is wrong. There has to be a way to pass a value that does >> include quotes. >> >> -- >> R?mi Denis-Courmont >> http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary >> _______________________________________________ >> vlc-devel mailing list >> To unsubscribe or modify your subscription options: >> http://mailman.videolan.org/listinfo/vlc-devel >> > > The point is that for the dshow we don't need quotes. > Do we need them elsewhere ? > I think quotes mean: take the hole following string including spaces. > As long as the delimiting is done correctly i am not sure that we > actualy need the quotes inside psz_data. > > eg. > > :adev="Create sound blaster" :vdev="vid1" :type=pal etc > > here psz_value for adev should be > Creative sound blaster > and not > "Creative sound blaster" > So whats the point about quotes ? Do we need them ( e.g. is there a case that in-string quotes are NEEDED ? Note that these 2 patches fix a (small) bug and i don't expect that you want it to be ignored ? From brezhoneg1 at yahoo.fr Sat Feb 14 22:41:17 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Sat, 14 Feb 2009 22:41:17 +0100 Subject: [vlc-devel] [PATCH] -- qt4 cone display issue Message-ID: <002901c98eec$fa5880e0$0f51fac1@CCCC> ? When using vlc in QT_ALWAYS_VIDEO_MODE mode and --no-qt-video-autoresize, transition between items (with a cone appearing in-between) seemed to behave weirdly. Actually, the VideoWidget is asked to show, before the cone is asked to hide, and that results in a short period of time with the upper half displaying the video and the lower half displaying the cone. This can most often go unnoticed, but yet the cone seems unstable. (With a debug version, it can be seen clearly) This patch (1) corrects the natural order (first hide cone, then show video) A second patch (optional) can help debug (compare the number of resizing with the right vs. wrong order of show/hide things) Erwan10 -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Corrects-unfortunate-cone-behavior-between-two-video.patch Type: application/octet-stream Size: 3229 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-Helper-patch-to-debug-VideoWidget-BackgroundWidget-r.patch Type: application/octet-stream Size: 1912 bytes Desc: not available URL: From fenrir at via.ecp.fr Sun Feb 15 00:29:07 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sun, 15 Feb 2009 00:29:07 +0100 Subject: [vlc-devel] timeshift issue In-Reply-To: <1234285850.4991b51a0e884@imp.celeos.eu> References: <1234285850.4991b51a0e884@imp.celeos.eu> Message-ID: <20090214232907.GA18529@via.ecp.fr> Hi, On Tue, Feb 10, 2009, S?bastien Escudier wrote: > I am reading a network stream with non constant bitrate. > And sometimes, I see vlc messages "adjusting rate" and then the timeshift module > is called to delay my stream. > > Then I see my stream with late, and that is what I would like to avoid. > This delay can grow very much after a while. > > My question is, is there a way to deactivates timeshift functionality for some > input ? If you are using 0.9 I don't think you can. In master/1.0 the timeshift functionnality has been reworked, could you give it a try ? Regards, -- fenrir From git at videolan.org Sun Feb 15 00:44:14 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 00:44:14 +0100 (CET) Subject: [vlc-devel] commit: Removed useless non-const static variable in decoder.c ( Laurent Aimar ) Message-ID: <20090214234414.C01982F3C4@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 15:52:58 2009 +0100| [da546e4e95fef045168d30b37eb2200149fbd848] | committer: Laurent Aimar Removed useless non-const static variable in decoder.c > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=da546e4e95fef045168d30b37eb2200149fbd848 --- src/input/decoder.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/input/decoder.c b/src/input/decoder.c index 9c2e271..47538bb 100644 --- a/src/input/decoder.c +++ b/src/input/decoder.c @@ -77,8 +77,6 @@ static void vout_unlink_picture( decoder_t *, picture_t * ); static subpicture_t *spu_new_buffer( decoder_t * ); static void spu_del_buffer( decoder_t *, subpicture_t * ); -static es_format_t null_es_format; - struct decoder_owner_sys_t { int64_t i_preroll_end; @@ -694,6 +692,8 @@ static decoder_t * CreateDecoder( input_thread_t *p_input, { decoder_t *p_dec; decoder_owner_sys_t *p_owner; + es_format_t null_es_format; + int i; p_dec = vlc_object_create( p_input, i_object_type ); From git at videolan.org Sun Feb 15 00:44:14 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 00:44:14 +0100 (CET) Subject: [vlc-devel] commit: Fixed a few errors in cmml. (Laurent Aimar ) Message-ID: <20090214234414.CECF72F3E8@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 19:10:57 2009 +0100| [ef13b641f737c0590029a7c92e7fb5c08b2ec9cb] | committer: Laurent Aimar Fixed a few errors in cmml. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ef13b641f737c0590029a7c92e7fb5c08b2ec9cb --- modules/codec/cmml/cmml.c | 46 ++++++++++++++++++-------------------------- 1 files changed, 19 insertions(+), 27 deletions(-) diff --git a/modules/codec/cmml/cmml.c b/modules/codec/cmml/cmml.c index cbbad7e..36e3270 100644 --- a/modules/codec/cmml/cmml.c +++ b/modules/codec/cmml/cmml.c @@ -91,25 +91,15 @@ static int OpenDecoder( vlc_object_t *p_this ) decoder_t *p_dec = (decoder_t*)p_this; input_thread_t * p_input; decoder_sys_t *p_sys; - vlc_value_t val; if( p_dec->fmt_in.i_codec != VLC_FOURCC('c','m','m','l') ) - { return VLC_EGENERIC; - } p_dec->pf_decode_sub = DecodeBlock; -#ifdef CMML_DEBUG - msg_Dbg( p_dec, "i am at %p", p_dec ); -#endif - /* Allocate the memory needed to store the decoder's structure */ - if( ( p_dec->p_sys = p_sys = - (decoder_sys_t *)malloc(sizeof(decoder_sys_t)) ) == NULL ) - { - return VLC_EGENERIC; - } + if( ( p_dec->p_sys = p_sys = malloc( sizeof(*p_sys) ) ) == NULL ) + return VLC_ENOMEM; /* Let other interested modules know that we're a CMML decoder * We have to set this variable on the input thread, because there's @@ -117,21 +107,26 @@ static int OpenDecoder( vlc_object_t *p_this ) * decoder succesfully with vlc_object_find. (Any hints on how to achieve * this would be rather appreciated ;) */ p_input = vlc_object_find( p_dec, VLC_OBJECT_INPUT, FIND_ANYWHERE ); + if( p_input ) + { + vlc_value_t val; + #ifdef CMML_DEBUG - msg_Dbg( p_dec, "p_input is at %p", p_input ); + msg_Dbg( p_dec, "p_input is at %p", p_input ); #endif - val.p_address = p_dec; - var_Create( p_input, "has-cmml-decoder", - VLC_VAR_ADDRESS|VLC_VAR_DOINHERIT ); - if( var_Set( p_input, "has-cmml-decoder", val ) != VLC_SUCCESS ) - { - msg_Dbg( p_dec, "var_Set of has-cmml-decoder failed" ); + val.p_address = p_dec; + var_Create( p_input, "has-cmml-decoder", + VLC_VAR_ADDRESS|VLC_VAR_DOINHERIT ); + + if( var_Set( p_input, "has-cmml-decoder", val ) != VLC_SUCCESS ) + msg_Dbg( p_dec, "var_Set of has-cmml-decoder failed" ); + vlc_object_release( p_input ); } - vlc_object_release( p_input ); /* initialise the CMML responder interface */ p_sys->p_intf = intf_Create( p_dec, "cmml" ); - intf_RunThread( p_sys->p_intf ); + if( p_sys->p_intf ) + intf_RunThread( p_sys->p_intf ); return VLC_SUCCESS; } @@ -176,14 +171,11 @@ static void CloseDecoder( vlc_object_t *p_this ) { decoder_t *p_dec = (decoder_t *)p_this; decoder_sys_t *p_sys = p_dec->p_sys; - intf_thread_t *p_intf; /* Destroy the interface object/thread */ if( p_sys->p_intf != NULL ) { -#ifdef CMML_DEBUG - msg_Dbg( p_dec, "CMML decoder is freeing interface thread" ); -#endif + intf_thread_t *p_intf = p_sys->p_intf; intf_StopThread( p_intf ); vlc_object_detach( p_intf ); vlc_object_release( p_intf ); @@ -219,9 +211,9 @@ static void ParseText( decoder_t *p_dec, block_t *p_block ) /* Copy the whole CMML tag into our own buffer: allocate i_buffer bytes + 1 for the terminating \0 */ - if ( (psz_cmml = malloc( p_block->i_buffer + 1 )) == NULL ) + if( (psz_cmml = malloc( p_block->i_buffer + 1 )) == NULL ) return; - psz_cmml = memcpy( psz_cmml, p_block->p_buffer, p_block->i_buffer ); + memcpy( psz_cmml, p_block->p_buffer, p_block->i_buffer ); psz_cmml[p_block->i_buffer] = '\0'; /* terminate the string */ #ifdef CMML_DEBUG msg_Dbg( p_dec, "psz_cmml is \"%s\"", psz_cmml ); From git at videolan.org Sun Feb 15 00:44:14 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 00:44:14 +0100 (CET) Subject: [vlc-devel] commit: Use calloc when applicable (decoders). (Laurent Aimar ) Message-ID: <20090214234414.E73792F3C4@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 19:45:50 2009 +0100| [4d7d9ec2f853db188c7162578de87c8a3b13eaa0] | committer: Laurent Aimar Use calloc when applicable (decoders). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4d7d9ec2f853db188c7162578de87c8a3b13eaa0 --- modules/codec/faad.c | 3 +-- modules/codec/fake.c | 5 +---- modules/codec/flac.c | 3 +-- modules/codec/kate.c | 7 ++++--- modules/codec/realaudio.c | 3 +-- modules/codec/theora.c | 3 +-- modules/codec/vorbis.c | 3 +-- 7 files changed, 10 insertions(+), 17 deletions(-) diff --git a/modules/codec/faad.c b/modules/codec/faad.c index fd5636e..022106d 100644 --- a/modules/codec/faad.c +++ b/modules/codec/faad.c @@ -123,8 +123,7 @@ static int Open( vlc_object_t *p_this ) } /* Allocate the memory needed to store the decoder's structure */ - if( ( p_dec->p_sys = p_sys = - (decoder_sys_t *)malloc(sizeof(decoder_sys_t)) ) == NULL ) + if( ( p_dec->p_sys = p_sys = malloc( sizeof(*p_sys) ) ) == NULL ) return VLC_ENOMEM; /* Open a faad context */ diff --git a/modules/codec/fake.c b/modules/codec/fake.c index d47a914..0696eb1 100644 --- a/modules/codec/fake.c +++ b/modules/codec/fake.c @@ -143,12 +143,9 @@ static int OpenDecoder( vlc_object_t *p_this ) return VLC_EGENERIC; } - p_dec->p_sys = (decoder_sys_t *)malloc( sizeof( decoder_sys_t ) ); + p_dec->p_sys = calloc( 1, sizeof( *p_dec->p_sys ) ); if( !p_dec->p_sys ) - { return VLC_ENOMEM; - } - memset( p_dec->p_sys, 0, sizeof( decoder_sys_t ) ); psz_file = var_CreateGetNonEmptyStringCommand( p_dec, "fake-file" ); if( !psz_file ) diff --git a/modules/codec/flac.c b/modules/codec/flac.c index 6206360..157d9e8 100644 --- a/modules/codec/flac.c +++ b/modules/codec/flac.c @@ -214,8 +214,7 @@ static int OpenDecoder( vlc_object_t *p_this ) } /* Allocate the memory needed to store the decoder's structure */ - if( ( p_dec->p_sys = p_sys = - (decoder_sys_t *)malloc(sizeof(decoder_sys_t)) ) == NULL ) + if( ( p_dec->p_sys = p_sys = malloc(sizeof(*p_sys)) ) == NULL ) return VLC_ENOMEM; /* Misc init */ diff --git a/modules/codec/kate.c b/modules/codec/kate.c index 6af25e4..a6d8ef4 100644 --- a/modules/codec/kate.c +++ b/modules/codec/kate.c @@ -360,8 +360,7 @@ static int OpenDecoder( vlc_object_t *p_this ) DecodeBlock; /* Allocate the memory needed to store the decoder's structure */ - if( ( p_dec->p_sys = p_sys = - (decoder_sys_t *)malloc(sizeof(decoder_sys_t)) ) == NULL ) + if( ( p_dec->p_sys = p_sys = malloc(sizeof(*p_sys)) ) == NULL ) return VLC_ENOMEM; vlc_mutex_init( &p_sys->lock ); @@ -426,8 +425,10 @@ static int OpenDecoder( vlc_object_t *p_this ) #endif + es_format_Init( &p_dec->fmt_out, SPU_ES, 0 ); + /* add the decoder to the global list */ - decoder_t **list = ( decoder_t** ) realloc( kate_decoder_list, (kate_decoder_list_size+1) * sizeof( decoder_t* )); + decoder_t **list = realloc( kate_decoder_list, (kate_decoder_list_size+1) * sizeof( *list )); if( list ) { list[ kate_decoder_list_size++ ] = p_dec; diff --git a/modules/codec/realaudio.c b/modules/codec/realaudio.c index 1945f2a..aa1d133 100644 --- a/modules/codec/realaudio.c +++ b/modules/codec/realaudio.c @@ -200,10 +200,9 @@ static int Open( vlc_object_t *p_this ) return VLC_EGENERIC; } - p_dec->p_sys = p_sys = malloc( sizeof( decoder_sys_t ) ); + p_dec->p_sys = p_sys = calloc( 1, sizeof( *p_sys ) ); if( !p_sys ) return VLC_ENOMEM; - memset( p_sys, 0, sizeof(decoder_sys_t) ); /* Flavor for SIPR codecs */ p_sys->i_codec_flavor = -1; diff --git a/modules/codec/theora.c b/modules/codec/theora.c index c0d70be..a7c6eaf 100644 --- a/modules/codec/theora.c +++ b/modules/codec/theora.c @@ -139,8 +139,7 @@ static int OpenDecoder( vlc_object_t *p_this ) } /* Allocate the memory needed to store the decoder's structure */ - if( ( p_dec->p_sys = p_sys = - (decoder_sys_t *)malloc(sizeof(decoder_sys_t)) ) == NULL ) + if( ( p_dec->p_sys = p_sys = malloc(sizeof(*p_sys)) ) == NULL ) return VLC_ENOMEM; p_dec->p_sys->b_packetizer = false; diff --git a/modules/codec/vorbis.c b/modules/codec/vorbis.c index 33e8a7d..5d25be9 100644 --- a/modules/codec/vorbis.c +++ b/modules/codec/vorbis.c @@ -235,8 +235,7 @@ static int OpenDecoder( vlc_object_t *p_this ) } /* Allocate the memory needed to store the decoder's structure */ - if( ( p_dec->p_sys = p_sys = - (decoder_sys_t *)malloc(sizeof(decoder_sys_t)) ) == NULL ) + if( ( p_dec->p_sys = p_sys = malloc( sizeof(*p_sys) ) ) == NULL ) return VLC_ENOMEM; /* Misc init */ From git at videolan.org Sun Feb 15 00:44:15 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 00:44:15 +0100 (CET) Subject: [vlc-devel] commit: Use the decoder output format instead of the input format. ( Laurent Aimar ) Message-ID: <20090214234415.1A2B12F400@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 20:00:50 2009 +0100| [3dc6aa515a0d632a5db016669e648917be2008c1] | committer: Laurent Aimar Use the decoder output format instead of the input format. It fixes a logical bug as the input and output format could be different. (Not plugin that does that yet). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3dc6aa515a0d632a5db016669e648917be2008c1 --- src/input/decoder.c | 17 +++++++++-------- 1 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/input/decoder.c b/src/input/decoder.c index 47538bb..adc4f69 100644 --- a/src/input/decoder.c +++ b/src/input/decoder.c @@ -303,8 +303,9 @@ decoder_t *input_DecoderNew( input_thread_t *p_input, } p_dec->p_owner->p_clock = p_clock; + assert( p_dec->fmt_out.i_cat != UNKNOWN_ES ); - if( fmt->i_cat == AUDIO_ES ) + if( p_dec->fmt_out.i_cat == AUDIO_ES ) i_priority = VLC_THREAD_PRIORITY_AUDIO; else i_priority = VLC_THREAD_PRIORITY_VIDEO; @@ -586,7 +587,7 @@ void input_DecoderFrameNext( decoder_t *p_dec, mtime_t *pi_duration ) *pi_duration = 0; vlc_mutex_lock( &p_owner->lock ); - if( p_dec->fmt_in.i_cat == VIDEO_ES ) + if( p_dec->fmt_out.i_cat == VIDEO_ES ) { if( p_owner->b_paused && p_owner->p_vout ) { @@ -1011,13 +1012,13 @@ static void DecoderOutputChangePause( decoder_t *p_dec, bool b_paused, mtime_t i * - for sout it is useless * - for subs, it is done by the vout */ - if( p_dec->fmt_in.i_cat == AUDIO_ES ) + if( p_dec->fmt_out.i_cat == AUDIO_ES ) { if( p_owner->p_aout && p_owner->p_aout_input ) aout_DecChangePause( p_owner->p_aout, p_owner->p_aout_input, b_paused, i_date ); } - else if( p_dec->fmt_in.i_cat == VIDEO_ES ) + else if( p_dec->fmt_out.i_cat == VIDEO_ES ) { if( p_owner->p_vout ) vout_ChangePause( p_owner->p_vout, b_paused, i_date ); @@ -1975,15 +1976,15 @@ static void DecoderProcess( decoder_t *p_dec, block_t *p_block ) p_block->i_flags &= ~BLOCK_FLAG_CORE_PRIVATE_MASK; } - if( p_dec->fmt_in.i_cat == AUDIO_ES ) + if( p_dec->fmt_out.i_cat == AUDIO_ES ) { DecoderProcessAudio( p_dec, p_block, b_flush ); } - else if( p_dec->fmt_in.i_cat == VIDEO_ES ) + else if( p_dec->fmt_out.i_cat == VIDEO_ES ) { DecoderProcessVideo( p_dec, p_block, b_flush ); } - else if( p_dec->fmt_in.i_cat == SPU_ES ) + else if( p_dec->fmt_out.i_cat == SPU_ES ) { DecoderProcessSpu( p_dec, p_block, b_flush ); } @@ -2066,7 +2067,7 @@ static void DeleteDecoder( decoder_t * p_dec ) } #endif - if( p_dec->fmt_in.i_cat == SPU_ES ) + if( p_dec->fmt_out.i_cat == SPU_ES ) { vout_thread_t *p_vout; From git at videolan.org Sun Feb 15 00:44:15 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 00:44:15 +0100 (CET) Subject: [vlc-devel] commit: All decoders/encoders MUST set output format category (AUDIO/VIDEO/ SPU_ES) (Laurent Aimar ) Message-ID: <20090214234415.09FA72F3EC@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sat Feb 14 19:57:15 2009 +0100| [7a0c49ac84488ca9c764e6f248a97958488804aa] | committer: Laurent Aimar All decoders/encoders MUST set output format category (AUDIO/VIDEO/SPU_ES) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7a0c49ac84488ca9c764e6f248a97958488804aa --- modules/codec/cc.c | 3 +++ modules/codec/cmml/cmml.c | 3 +++ modules/codec/csri.c | 3 +++ modules/codec/cvdsub.c | 5 +++-- modules/codec/dvbsub.c | 3 ++- modules/codec/libass.c | 3 +++ modules/codec/libmpeg2.c | 6 +++--- modules/codec/quicktime.c | 2 ++ modules/codec/shine/shine_mod.c | 4 ++-- modules/codec/subtitles/subsdec.c | 5 +++-- modules/codec/subtitles/subsusf.c | 2 ++ modules/codec/subtitles/t140.c | 1 + modules/codec/telx.c | 6 +++--- modules/codec/twolame.c | 2 ++ modules/codec/x264.c | 1 + modules/codec/xvmc/xxmc.c | 5 +++-- 16 files changed, 39 insertions(+), 15 deletions(-) diff --git a/modules/codec/cc.c b/modules/codec/cc.c index af47991..9895add 100644 --- a/modules/codec/cc.c +++ b/modules/codec/cc.c @@ -209,6 +209,9 @@ static int Open( vlc_object_t *p_this ) Eia608Init( &p_sys->eia608 ); + p_dec->fmt_out.i_cat = SPU_ES; + p_dec->fmt_out.i_codec = VLC_FOURCC('T','E','X','T'); + return VLC_SUCCESS; } diff --git a/modules/codec/cmml/cmml.c b/modules/codec/cmml/cmml.c index 36e3270..5be64f4 100644 --- a/modules/codec/cmml/cmml.c +++ b/modules/codec/cmml/cmml.c @@ -128,6 +128,9 @@ static int OpenDecoder( vlc_object_t *p_this ) if( p_sys->p_intf ) intf_RunThread( p_sys->p_intf ); + p_dec->fmt_out.i_cat = SPU_ES; + p_dec->fmt_out.i_codec = 0; + return VLC_SUCCESS; } diff --git a/modules/codec/csri.c b/modules/codec/csri.c index 8d3f9e3..3802f4a 100644 --- a/modules/codec/csri.c +++ b/modules/codec/csri.c @@ -130,6 +130,9 @@ static int Create( vlc_object_t *p_this ) p_dec->fmt_in.p_extra, p_dec->fmt_in.p_extra ? strnlen( p_dec->fmt_in.p_extra, p_dec->fmt_in.i_extra ) : 0, NULL); + p_dec->fmt_out.i_cat = SPU_ES; + p_dec->fmt_out.i_codec = VLC_FOURCC('R','G','B','A'); + return VLC_SUCCESS; } diff --git a/modules/codec/cvdsub.c b/modules/codec/cvdsub.c index b3e1456..dbd5916 100644 --- a/modules/codec/cvdsub.c +++ b/modules/codec/cvdsub.c @@ -125,11 +125,12 @@ static int DecoderOpen( vlc_object_t *p_this ) p_sys->i_state = SUBTITLE_BLOCK_EMPTY; p_sys->p_spu = NULL; - es_format_Init( &p_dec->fmt_out, SPU_ES, VLC_FOURCC( 'c','v','d',' ' ) ); - p_dec->pf_decode_sub = Decode; p_dec->pf_packetize = Packetize; + p_dec->fmt_out.i_cat = SPU_ES; + p_dec->fmt_out.i_codec = VLC_FOURCC('Y','U','V','P'); + return VLC_SUCCESS; } diff --git a/modules/codec/dvbsub.c b/modules/codec/dvbsub.c index cc1fc4b..b102cd0 100644 --- a/modules/codec/dvbsub.c +++ b/modules/codec/dvbsub.c @@ -340,7 +340,8 @@ static int Open( vlc_object_t *p_this ) p_sys->i_spu_y = i_posy; } - es_format_Init( &p_dec->fmt_out, SPU_ES, VLC_FOURCC( 'd','v','b','s' ) ); + p_dec->fmt_out.i_cat = SPU_ES; + p_dec->fmt_out.i_codec = 0; default_clut_init( p_dec ); diff --git a/modules/codec/libass.c b/modules/codec/libass.c index 4d1e35c..7e3cbf0 100644 --- a/modules/codec/libass.c +++ b/modules/codec/libass.c @@ -167,6 +167,9 @@ static int Create( vlc_object_t *p_this ) ass_process_codec_private( p_track, p_dec->fmt_in.p_extra, p_dec->fmt_in.i_extra ); vlc_mutex_unlock( &libass_lock ); + p_dec->fmt_out.i_cat = SPU_ES; + p_dec->fmt_out.i_codec = VLC_FOURCC('R','G','B','A'); + return VLC_SUCCESS; } diff --git a/modules/codec/libmpeg2.c b/modules/codec/libmpeg2.c index 11dbb2f..4b6f282 100644 --- a/modules/codec/libmpeg2.c +++ b/modules/codec/libmpeg2.c @@ -129,12 +129,10 @@ static int OpenDecoder( vlc_object_t *p_this ) } /* Allocate the memory needed to store the decoder's structure */ - if( ( p_dec->p_sys = p_sys = - (decoder_sys_t *)malloc(sizeof(decoder_sys_t)) ) == NULL ) + if( ( p_dec->p_sys = p_sys = calloc( 1, sizeof(*p_sys)) ) == NULL ) return VLC_ENOMEM; /* Initialize the thread properties */ - memset( p_sys, 0, sizeof(decoder_sys_t) ); p_sys->p_mpeg2dec = NULL; p_sys->p_synchro = NULL; p_sys->p_info = NULL; @@ -200,6 +198,8 @@ static int OpenDecoder( vlc_object_t *p_this ) p_sys->p_info = mpeg2_info( p_sys->p_mpeg2dec ); p_dec->pf_decode_video = DecodeBlock; + p_dec->fmt_out.i_cat = VIDEO_ES; + p_dec->fmt_out.i_codec = 0; return VLC_SUCCESS; } diff --git a/modules/codec/quicktime.c b/modules/codec/quicktime.c index 9692208..fd75b64 100644 --- a/modules/codec/quicktime.c +++ b/modules/codec/quicktime.c @@ -265,6 +265,7 @@ static int Open( vlc_object_t *p_this ) #ifdef LOADER p_dec->p_sys = NULL; p_dec->pf_decode_video = DecodeVideo; + p_dec->fmt_out.i_cat = VIDEO_ES; return VLC_SUCCESS; #else return OpenVideo( p_dec ); @@ -303,6 +304,7 @@ static int Open( vlc_object_t *p_this ) #ifdef LOADER p_dec->p_sys = NULL; p_dec->pf_decode_audio = DecodeAudio; + p_dec->fmt_out.i_cat = AUDIO_ES; return VLC_SUCCESS; #else diff --git a/modules/codec/shine/shine_mod.c b/modules/codec/shine/shine_mod.c index 94de78e..ec460c5 100644 --- a/modules/codec/shine/shine_mod.c +++ b/modules/codec/shine/shine_mod.c @@ -96,10 +96,9 @@ static int OpenEncoder( vlc_object_t *p_this ) p_enc->fmt_out.i_bitrate, p_enc->fmt_out.audio.i_rate, p_enc->fmt_out.audio.i_channels ); - p_sys = p_enc->p_sys = malloc( sizeof( encoder_sys_t ) ); + p_enc->p_sys = p_sys = calloc( 1, sizeof( *p_sys ) ); if( !p_sys ) return VLC_ENOMEM; - memset( p_sys, 0, sizeof( encoder_sys_t ) ); if( !( p_sys->p_fifo = block_FifoNew() ) ) { @@ -111,6 +110,7 @@ static int OpenEncoder( vlc_object_t *p_this ) p_enc->fmt_out.audio.i_channels, p_enc->fmt_out.i_bitrate / 1000 ); p_enc->pf_encode_audio = EncodeFrame; + p_enc->fmt_out.i_cat = AUDIO_ES; return VLC_SUCCESS; } diff --git a/modules/codec/subtitles/subsdec.c b/modules/codec/subtitles/subsdec.c index 59c1f89..d7c6dd6 100644 --- a/modules/codec/subtitles/subsdec.c +++ b/modules/codec/subtitles/subsdec.c @@ -156,14 +156,15 @@ static int OpenDecoder( vlc_object_t *p_this ) } p_dec->pf_decode_sub = DecodeBlock; + p_dec->fmt_out.i_cat = SPU_ES; + p_dec->fmt_out.i_codec = 0; /* Allocate the memory needed to store the decoder's structure */ - p_dec->p_sys = p_sys = malloc( sizeof( *p_sys ) ); + p_dec->p_sys = p_sys = calloc( 1, sizeof( *p_sys ) ); if( p_sys == NULL ) return VLC_ENOMEM; /* init of p_sys */ - memset( p_sys, 0, sizeof( *p_sys ) ); p_sys->i_align = 0; p_sys->iconv_handle = (vlc_iconv_t)-1; p_sys->b_autodetect_utf8 = false; diff --git a/modules/codec/subtitles/subsusf.c b/modules/codec/subtitles/subsusf.c index ab7756b..dfb0db2 100644 --- a/modules/codec/subtitles/subsusf.c +++ b/modules/codec/subtitles/subsusf.c @@ -76,6 +76,8 @@ static int OpenDecoder( vlc_object_t *p_this ) return VLC_ENOMEM; p_dec->pf_decode_sub = DecodeBlock; + p_dec->fmt_out.i_cat = SPU_ES; + p_dec->fmt_out.i_codec = 0; /* Unused fields of p_sys - not needed for USF decoding */ p_sys->b_ass = false; diff --git a/modules/codec/subtitles/t140.c b/modules/codec/subtitles/t140.c index 76ae1ef..5e0c25a 100644 --- a/modules/codec/subtitles/t140.c +++ b/modules/codec/subtitles/t140.c @@ -70,6 +70,7 @@ static int Open( vlc_object_t *p_this ) p_enc->p_sys = NULL; p_enc->pf_encode_sub = Encode; + p_enc->fmt_out.i_cat = SPU_ES; return VLC_SUCCESS; } diff --git a/modules/codec/telx.c b/modules/codec/telx.c index 33b1fa3..07fd4cf 100644 --- a/modules/codec/telx.c +++ b/modules/codec/telx.c @@ -181,11 +181,11 @@ static int Open( vlc_object_t *p_this ) } p_dec->pf_decode_sub = Decode; - p_sys = p_dec->p_sys = malloc( sizeof(decoder_sys_t) ); + p_sys = p_dec->p_sys = calloc( 1, sizeof(*p_sys) ); if( p_sys == NULL ) return VLC_ENOMEM; - - memset( p_sys, 0, sizeof(decoder_sys_t) ); + p_dec->fmt_out.i_cat = SPU_ES; + p_dec->fmt_out.i_codec = 0; p_sys->i_align = 0; for ( i = 0; i < 9; i++ ) diff --git a/modules/codec/twolame.c b/modules/codec/twolame.c index 8ce4fd2..787cbf8 100644 --- a/modules/codec/twolame.c +++ b/modules/codec/twolame.c @@ -165,6 +165,8 @@ static int OpenEncoder( vlc_object_t *p_this ) p_enc->pf_encode_audio = Encode; p_enc->fmt_in.i_codec = AOUT_FMT_S16_NE; + + p_enc->fmt_out.i_cat = AUDIO_ES; p_enc->fmt_out.i_codec = VLC_FOURCC('m','p','g','a'); config_ChainParse( p_enc, ENC_CFG_PREFIX, ppsz_enc_options, p_enc->p_cfg ); diff --git a/modules/codec/x264.c b/modules/codec/x264.c index 378fb79..b2ddf23 100644 --- a/modules/codec/x264.c +++ b/modules/codec/x264.c @@ -780,6 +780,7 @@ static int Open ( vlc_object_t *p_this ) config_ChainParse( p_enc, SOUT_CFG_PREFIX, ppsz_sout_options, p_enc->p_cfg ); + p_enc->fmt_out.i_cat = VIDEO_ES; p_enc->fmt_out.i_codec = VLC_FOURCC( 'h', '2', '6', '4' ); p_enc->fmt_in.i_codec = VLC_FOURCC('I','4','2','0'); diff --git a/modules/codec/xvmc/xxmc.c b/modules/codec/xvmc/xxmc.c index e502780..efa6d5f 100644 --- a/modules/codec/xvmc/xxmc.c +++ b/modules/codec/xvmc/xxmc.c @@ -137,12 +137,11 @@ static int OpenDecoder( vlc_object_t *p_this ) msg_Dbg(p_dec, "OpenDecoder Entering"); /* Allocate the memory needed to store the decoder's structure */ - p_dec->p_sys = p_sys = (decoder_sys_t *)malloc(sizeof(decoder_sys_t)); + p_dec->p_sys = p_sys = calloc( 1, sizeof(*p_sys) ); if( !p_sys ) return VLC_ENOMEM; /* Initialize the thread properties */ - memset( p_sys, 0, sizeof(decoder_sys_t) ); p_sys->p_mpeg2dec = NULL; p_sys->p_synchro = NULL; p_sys->p_info = NULL; @@ -199,6 +198,8 @@ static int OpenDecoder( vlc_object_t *p_this ) p_sys->p_info = mpeg2_info( p_sys->p_mpeg2dec ); p_dec->pf_decode_video = DecodeBlock; + p_dec->fmt_out.i_cat = VIDEO_ES; + p_dec->fmt_out.i_codec = 0; f_wd_dec = fopen("/vlc/dec_pid", "w"); if (f_wd_dec != NULL) From xxcv07 at gmail.com Sun Feb 15 01:02:47 2009 From: xxcv07 at gmail.com (xxcv) Date: Sun, 15 Feb 2009 11:02:47 +1100 Subject: [vlc-devel] [PATCH] -- qt4 cone display issue In-Reply-To: <002901c98eec$fa5880e0$0f51fac1@CCCC> References: <002901c98eec$fa5880e0$0f51fac1@CCCC> Message-ID: <49975BA7.7070807@gmail.com> brezhoneg1 wrote: > > > When using vlc in QT_ALWAYS_VIDEO_MODE mode and > --no-qt-video-autoresize, transition between items (with a cone > appearing in-between) seemed to behave weirdly. > > Actually, the VideoWidget is asked to show, before the cone is asked to > hide, and that results in a short period of time with the upper half > displaying the video and the lower half displaying the cone. This can > most often go unnoticed, but yet the cone seems unstable. (With a debug > version, it can be seen clearly) > > This patch (1) corrects the natural order (first hide cone, then show > video) > > A second patch (optional) can help debug (compare the number of resizing > with the right vs. wrong order of show/hide things) > > Erwan10 > > Have you tested these two patches From git at videolan.org Sun Feb 15 01:07:34 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 01:07:34 +0100 (CET) Subject: [vlc-devel] commit: typo in commit [53195e9fc7c31e8ae3aeead4879477aa950513b4] ( Derk-Jan Hartman ) Message-ID: <20090215000734.2E92F2F3EC@skanda.videolan.org> vlc | branch: master | Derk-Jan Hartman | Sun Feb 15 01:05:44 2009 +0100| [e2a37bc10c2465620926b0a9c40093e10c6d002b] | committer: Derk-Jan Hartman typo in commit [53195e9fc7c31e8ae3aeead4879477aa950513b4] > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e2a37bc10c2465620926b0a9c40093e10c6d002b --- modules/control/http/rpn.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/control/http/rpn.c b/modules/control/http/rpn.c index 73aee51..6872f64 100644 --- a/modules/control/http/rpn.c +++ b/modules/control/http/rpn.c @@ -1125,7 +1125,7 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t *vars, vout_thread_t *p_vout = input_GetVout( p_sys->p_input ); if( p_vout ) { - vout_TriggerCallback( p_vout, "video-snapshot" ); + var_TriggerCallback( p_vout, "video-snapshot" ); vlc_object_release( p_vout ); msg_Dbg( p_intf, "requested snapshot" ); } From git at videolan.org Sun Feb 15 01:07:34 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 01:07:34 +0100 (CET) Subject: [vlc-devel] commit: * enable Kate in OS X contribs (Derk-Jan Hartman ) Message-ID: <20090215000734.3B48F2F3F6@skanda.videolan.org> vlc | branch: master | Derk-Jan Hartman | Sun Feb 15 01:06:32 2009 +0100| [da62a8beab82b96793101b0836f3aae5effb52f4] | committer: Derk-Jan Hartman * enable Kate in OS X contribs > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=da62a8beab82b96793101b0836f3aae5effb52f4 --- extras/contrib/src/Distributions/darwin.mak | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/extras/contrib/src/Distributions/darwin.mak b/extras/contrib/src/Distributions/darwin.mak index ac34767..5f3ee10 100644 --- a/extras/contrib/src/Distributions/darwin.mak +++ b/extras/contrib/src/Distributions/darwin.mak @@ -6,7 +6,7 @@ all: .autoconf .gnumake .automake .libtool .intl .pkgcfg .yasm .freetype \ .png .gpg-error .gcrypt .gnutls .cddb .cdio .vcdimager \ .SDL_image .glib .gecko .mpcdec .dirac_encoder .dirac_decoder \ .dca .tag .x264 .goom2k4 .lua .zvbi .fontconfig .ncurses .liboil \ - .schroedinger .libass .libupnp .aclocal + .schroedinger .libass .libupnp .kate .aclocal # .expat .clinkcc don't work with SDK yet # .glib .IDL .gecko are required to build the mozilla plugin # .mozilla-macosx will build an entire mozilla. it can be used if we need to create a new .gecko package From fenrir at via.ecp.fr Sun Feb 15 01:30:03 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sun, 15 Feb 2009 01:30:03 +0100 Subject: [vlc-devel] [PATCH] Display slides in a separate vout In-Reply-To: <20090210084217.GA15350@via.ecp.fr> References: <20090210084217.GA15350@via.ecp.fr> Message-ID: <20090215003003.GA2369@via.ecp.fr> > Hi, On Tue, Feb 10, 2009, Laurent Aimar wrote: > On Mon, Feb 09, 2009, ogg.k.ogg.k at googlemail.com wrote: > > Apologies, I've done the previous patch with a last change > > uncommitted, so it didn't make it into the patch. Updated > > patch attached. > > > > Thanks > > I will have a look at by this WE at worst. With the latest master, a decoder can output a format that is not equal to the input format as long as it declares the right format in the open function. So I think it would be way better to declare VIDEO_ES when you want an independant vout. I have attached a (very) dirty patch based on your work that does that. (It is *only* a proof of concept, it has to be cleaned up (the function needs to be splitted/reorganized, fields have to be renamed, no ugly hacks...) If you agree with the idea, I will wait for a clean patch from you. In my patch I assume that the whole decoder configuration is present in the open function (otherwise it cannot work). I think it is the case and if so, a lot of code can be removed/cleaned up. Regards, -- fenrir -------------- next part -------------- A non-text attachment was scrubbed... Name: kate-video.patch Type: text/x-diff Size: 8650 bytes Desc: not available URL: From ogg.k.ogg.k at googlemail.com Sun Feb 15 01:55:12 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 15 Feb 2009 00:55:12 +0000 Subject: [vlc-devel] [PATCH] Display slides in a separate vout In-Reply-To: <20090215003003.GA2369@via.ecp.fr> References: <20090210084217.GA15350@via.ecp.fr> <20090215003003.GA2369@via.ecp.fr> Message-ID: > With the latest master, a decoder can output a format that is not equal > to the input format as long as it declares the right format in the open > function. [...] > In my patch I assume that the whole decoder configuration is present in the > open function (otherwise it cannot work). I think it is the case and if so, > a lot of code can be removed/cleaned up. I do not know yet whether it's best to use a separate vout before I have decoded the BOS packet (where the stream category is specified), which happens in DecodeBlock, after OpenDecoder has returned. However, if the Kate plugin's OpenDecoder function gets called, it has to be because a Kate packet has been found, so this packet might be accessible somehow from OpenDecoder ? The first packet would be enough for this. While there - if I resize the vout, the image disappears. I think I have to somehow react to the resize event, and resend the image, but I cannot find how to do this. Would you know where to start looking ? Thanks From ogg.k.ogg.k at googlemail.com Sun Feb 15 02:00:13 2009 From: ogg.k.ogg.k at googlemail.com (ogg.k.ogg.k at googlemail.com) Date: Sun, 15 Feb 2009 01:00:13 +0000 Subject: [vlc-devel] [PATCH] Display slides in a separate vout In-Reply-To: <20090215003003.GA2369@via.ecp.fr> References: <20090210084217.GA15350@via.ecp.fr> <20090215003003.GA2369@via.ecp.fr> Message-ID: > In my patch I assume that the whole decoder configuration is present in the > open function (otherwise it cannot work). I think it is the case and if so, > a lot of code can be removed/cleaned up. Actually, reading the patch, I see that ProcessHeaders now appears to be called from OpenDecoder. I'll send an updated patch based on yours. Thanks From sebastien-devel at celeos.eu Sun Feb 15 11:24:40 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Sun, 15 Feb 2009 11:24:40 +0100 Subject: [vlc-devel] timeshift issue In-Reply-To: <20090214232907.GA18529@via.ecp.fr> References: <1234285850.4991b51a0e884@imp.celeos.eu> <20090214232907.GA18529@via.ecp.fr> Message-ID: <1234693480.4997ed6806d16@imp.celeos.eu> Quoting Laurent Aimar : > If you are using 0.9 I don't think you can. > In master/1.0 the timeshift functionnality has been reworked, could you > give it a try ? I am using master and the problem is still there. I think the problem is because my source has non constant FPS. I solved the issue with a workaround for my case : I added at the first line of the function ControlLockedSetRate in es_out_timeshift.c : return VLC_EGENERIC; I may be nice to have an option to disable timeshift for some inputs or outputs. Best regards. Seb From git at videolan.org Sun Feb 15 12:57:50 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 12:57:50 +0100 (CET) Subject: [vlc-devel] commit: QT4: connect signal from inputmanager metaChanged to playlist-model so it updates item . (Ilkka Ollakka ) Message-ID: <20090215115750.2B1292EE7F@skanda.videolan.org> vlc | branch: master | Ilkka Ollakka | Sun Feb 15 13:51:06 2009 +0200| [394a9e2c128f34c183a2c4d9b7efc5ca5679afa7] | committer: Ilkka Ollakka QT4: connect signal from inputmanager metaChanged to playlist-model so it updates item. input: send inputEvent when length if input changes This one should fix #2435 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=394a9e2c128f34c183a2c4d9b7efc5ca5679afa7 --- .../gui/qt4/components/playlist/playlist_model.cpp | 11 +++++++++++ .../gui/qt4/components/playlist/playlist_model.hpp | 1 + src/input/event.c | 5 ++++- 3 files changed, 16 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/playlist/playlist_model.cpp b/modules/gui/qt4/components/playlist/playlist_model.cpp index 4cb8c2c..eb1d55c 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.cpp +++ b/modules/gui/qt4/components/playlist/playlist_model.cpp @@ -528,6 +528,14 @@ void PLModel::customEvent( QEvent *event ) rebuild(); } +void PLModel::updateMeta ( input_item_t *p_item ) +{ + if( p_item ) + { + ProcessInputItemUpdate( p_item->i_id ); + } +} + /**** Events processing ****/ void PLModel::ProcessInputItemUpdate( int i_input_id ) { @@ -623,6 +631,9 @@ void PLModel::rebuild( playlist_item_t *p_root ) /* And signal the view */ emit layoutChanged(); addCallbacks(); + /* Connect item update for metachanges */ + CONNECT( THEMIM->getIM(), metaChanged( input_item_t *), + this, updateMeta( input_item_t *) ); } /* This function must be entered WITH the playlist lock */ diff --git a/modules/gui/qt4/components/playlist/playlist_model.hpp b/modules/gui/qt4/components/playlist/playlist_model.hpp index 2dcaccb..1057e2f 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.hpp +++ b/modules/gui/qt4/components/playlist/playlist_model.hpp @@ -178,6 +178,7 @@ private slots: void popupSave(); void popupExplore(); void viewchanged( int ); + void updateMeta( input_item_t * ); }; #endif diff --git a/src/input/event.c b/src/input/event.c index 9224478..9fde713 100644 --- a/src/input/event.c +++ b/src/input/event.c @@ -69,9 +69,12 @@ void input_SendEventTimes( input_thread_t *p_input, val.i_time = i_time; var_Change( p_input, "time", VLC_VAR_SETVALUE, &val, NULL ); - /* FIXME ugly + what about meta change event ? */ + /* FIXME ugly */ if( var_GetTime( p_input, "length" ) != i_length ) + { input_item_SetDuration( p_input->p->p_item, i_length ); + input_SendEventMeta( p_input ); + } val.i_time = i_length; var_Change( p_input, "length", VLC_VAR_SETVALUE, &val, NULL ); From fkuehne.videolan at googlemail.com Sun Feb 15 13:22:50 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Sun, 15 Feb 2009 13:22:50 +0100 Subject: [vlc-devel] [RFC] Plugins linking In-Reply-To: <200902141718.07514.rem@videolan.org> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> <1234546301.3843.32.camel@pennylane> <200902141718.07514.rem@videolan.org> Message-ID: <54878D43-07D6-47AE-9BF3-D5EE07B4567C@gmail.com> Am 14.02.2009 um 16:18 schrieb R?mi Denis-Courmont: > Le vendredi 13 f?vrier 2009 19:31:41 Olivier Aubert, vous avez ?crit : >> On Fri, 2009-02-13 at 18:10 +0100, R?mi Denis-Courmont wrote: >>> In retrospect, I would prefer to remove revision infos and resume >>> linking >>> plugins. >> >> +1 >> >>> Another option is keep things as are, and merge JPD's hack on top of >>> my earlier hack. >> >> -1, it would necessit hacks for each binding and the browser plugin, >> possibly different across platforms. Not a nice path IMHO. > > Indeed. I wonder if the plugins are broken non-GNU non-Windows > platforms at > the moment. On OSX, they are working since my last fixes (although audio only, but that's covered by another thread). From fenrir at via.ecp.fr Sun Feb 15 14:07:18 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sun, 15 Feb 2009 14:07:18 +0100 Subject: [vlc-devel] commit: QT4: connect signal from inputmanager metaChanged to playlist-model so it updates item . (Ilkka Ollakka ) In-Reply-To: <20090215115750.2B1292EE7F@skanda.videolan.org> References: <20090215115750.2B1292EE7F@skanda.videolan.org> Message-ID: <20090215130718.GA6474@via.ecp.fr> Hi, On Sun, Feb 15, 2009, git version control wrote: > QT4: connect signal from inputmanager metaChanged to playlist-model so it updates item. > input: send inputEvent when length if input changes > > diff --git a/src/input/event.c b/src/input/event.c > index 9224478..9fde713 100644 > --- a/src/input/event.c > +++ b/src/input/event.c > @@ -69,9 +69,12 @@ void input_SendEventTimes( input_thread_t *p_input, > val.i_time = i_time; > var_Change( p_input, "time", VLC_VAR_SETVALUE, &val, NULL ); > > - /* FIXME ugly + what about meta change event ? */ > + /* FIXME ugly */ > if( var_GetTime( p_input, "length" ) != i_length ) > + { > input_item_SetDuration( p_input->p->p_item, i_length ); > + input_SendEventMeta( p_input ); > + } Could your revert at least this part ? input_item_SetDuration already emit a vlc_InputItemDurationChanged on duration changes. The playlist will then emit the id of this item in "item-change". The Qt4 interface has a callback on ItemChanged which will post ItemChanged_Type. So if it does not work, it's a Qt4 specific problem about ItemChanged_Type that need fixing, not a workaround in input core. Regards, -- fenrir From fenrir at via.ecp.fr Sun Feb 15 14:10:49 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Sun, 15 Feb 2009 14:10:49 +0100 Subject: [vlc-devel] timeshift issue In-Reply-To: <1234693480.4997ed6806d16@imp.celeos.eu> References: <1234285850.4991b51a0e884@imp.celeos.eu> <20090214232907.GA18529@via.ecp.fr> <1234693480.4997ed6806d16@imp.celeos.eu> Message-ID: <20090215131049.GB6474@via.ecp.fr> On Sun, Feb 15, 2009, S?bastien Escudier wrote: > Quoting Laurent Aimar : > > If you are using 0.9 I don't think you can. > > In master/1.0 the timeshift functionnality has been reworked, could you > > give it a try ? > > I am using master and the problem is still there. > I think the problem is because my source has non constant FPS. > I solved the issue with a workaround for my case : > I added at the first line of the function ControlLockedSetRate in > es_out_timeshift.c : > return VLC_EGENERIC; Could you send me the complete log in max verbosity? Because I really don't understand what's going on. ControlLockedSetRate is only used on user request or when going faster than real time using timeshift and you catch up realtime. > I may be nice to have an option to disable timeshift for some inputs or outputs. It will not fix the problem you describe as it is now activated *only* when requested by a user operation (pause/slower). -- fenrir From ilkka.ollakka+vlc at oamk.fi Sun Feb 15 14:20:34 2009 From: ilkka.ollakka+vlc at oamk.fi (Ilkka Ollakka) Date: Sun, 15 Feb 2009 15:20:34 +0200 Subject: [vlc-devel] commit: QT4: connect signal from inputmanager metaChanged to playlist-model so it updates item . (Ilkka Ollakka ) In-Reply-To: <20090215130718.GA6474@via.ecp.fr> References: <20090215115750.2B1292EE7F@skanda.videolan.org> <20090215130718.GA6474@via.ecp.fr> Message-ID: <20090215132034.GA26102@papu.site> On su 15. helmikuuta 2009 14.07.18, Laurent Aimar wrote: > Hi, > > Could your revert at least this part ? > > input_item_SetDuration already emit a vlc_InputItemDurationChanged on duration > changes. > The playlist will then emit the id of this item in "item-change". > The Qt4 interface has a callback on ItemChanged which will post ItemChanged_Type. > > So if it does not work, it's a Qt4 specific problem about ItemChanged_Type that need > fixing, not a workaround in input core. Ah, missed that one, I'll revert that part and rework on qt4-side, thanks -- Ilkka Ollakka "I cannot and will not cut my conscience to fit this year's fashions." -- Lillian Hellman -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 197 bytes Desc: not available URL: From git at videolan.org Sun Feb 15 14:55:29 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 14:55:29 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_unsafe_VOUT=5FSET=5FFOCUS_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090215135529.E8C942F3DC@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 15 15:54:27 2009 +0200| [62793494c79cdcdaece4fe3af497de1a851375ee] | committer: R?mi Denis-Courmont Remove unsafe VOUT_SET_FOCUS > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=62793494c79cdcdaece4fe3af497de1a851375ee --- include/vlc_vout.h | 1 - modules/gui/wince/video.cpp | 4 ---- modules/video_output/msw/events.c | 9 --------- 3 files changed, 0 insertions(+), 14 deletions(-) diff --git a/include/vlc_vout.h b/include/vlc_vout.h index 0f71609..4055f4c 100644 --- a/include/vlc_vout.h +++ b/include/vlc_vout.h @@ -704,7 +704,6 @@ enum output_query_e VOUT_SET_SIZE, /* arg1= unsigned int, arg2= unsigned int, res= */ VOUT_SET_STAY_ON_TOP, /* arg1= bool res= */ VOUT_REPARENT, - VOUT_SET_FOCUS, /* arg1= bool res= */ VOUT_SET_VIEWPORT, /* arg1= view rect, arg2=clip rect, res= */ VOUT_REDRAW_RECT, /* arg1= area rect, res= */ }; diff --git a/modules/gui/wince/video.cpp b/modules/gui/wince/video.cpp index 0c93e9e..09501f2 100644 --- a/modules/gui/wince/video.cpp +++ b/modules/gui/wince/video.cpp @@ -202,13 +202,9 @@ LRESULT VideoWindow::WndProc( HWND hwnd, UINT msg, WPARAM wp, LPARAM lp ) switch( msg ) { case WM_KILLFOCUS: - if( p_vout ) - vout_Control( p_vout, VOUT_SET_FOCUS, (bool)false ); return TRUE; case WM_SETFOCUS: - if( p_vout ) - vout_Control( p_vout, VOUT_SET_FOCUS, (bool)true ); return TRUE; default: diff --git a/modules/video_output/msw/events.c b/modules/video_output/msw/events.c index 85762d1..873321a 100644 --- a/modules/video_output/msw/events.c +++ b/modules/video_output/msw/events.c @@ -1126,15 +1126,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) p_vout->p_sys->b_on_top_change = true; return VLC_SUCCESS; -#ifdef MODULE_NAME_IS_wingapi - case VOUT_SET_FOCUS: - b_bool = (bool) va_arg( args, int ); - p_vout->p_sys->b_parent_focus = b_bool; - if( b_bool ) GXResume(); - else if( !p_vout->p_sys->b_focus ) GXSuspend(); - return VLC_SUCCESS; -#endif - default: return VLC_EGENERIC; } From git at videolan.org Sun Feb 15 15:02:26 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 15:02:26 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_libvlc=3A_don=27t_risk_crashing_L?= =?utf-8?q?inux/Windows_because_of_OSX_crap_=28_R=C3=A9mi_Denis-Courmont_?= =?utf-8?q?=29?= Message-ID: <20090215140226.37B932F40D@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 15 16:02:03 2009 +0200| [ba68523b9351ee03a82967d7aaee90768bd82e7a] | committer: R?mi Denis-Courmont libvlc: don't risk crashing Linux/Windows because of OSX crap > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ba68523b9351ee03a82967d7aaee90768bd82e7a --- src/control/video.c | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/src/control/video.c b/src/control/video.c index ef081c6..ba1ae88 100644 --- a/src/control/video.c +++ b/src/control/video.c @@ -214,6 +214,7 @@ void libvlc_video_redraw_rectangle( libvlc_media_player_t *p_mi, const libvlc_rectangle_t *area, libvlc_exception_t *p_e ) { +#ifdef __APPLE__ if( (NULL != area) && ((area->bottom - area->top) > 0) && ((area->right - area->left) > 0) ) @@ -227,6 +228,9 @@ void libvlc_video_redraw_rectangle( libvlc_media_player_t *p_mi, vlc_object_release( p_vout ); } } +#else + (void) p_mi; (void) area; (void) p_e; +#endif } /* global video settings */ @@ -298,6 +302,7 @@ void libvlc_video_set_viewport( libvlc_instance_t *p_instance, const libvlc_rectangle_t *view, const libvlc_rectangle_t *clip, libvlc_exception_t *p_e ) { +#ifdef __APPLE__ if( !view ) { libvlc_exception_raise( p_e, "viewport is NULL" ); @@ -332,6 +337,9 @@ void libvlc_video_set_viewport( libvlc_instance_t *p_instance, } libvlc_media_player_release(p_mi); } +#else + (void) p_instance; (void) view; (void) clip; (void) p_e; +#endif } char *libvlc_video_get_aspect_ratio( libvlc_media_player_t *p_mi, From git at videolan.org Sun Feb 15 15:08:23 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 15:08:23 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Unused_variable_=28_R=C3=A9mi_Den?= =?utf-8?q?is-Courmont_=29?= Message-ID: <20090215140823.B32CC2F3DB@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 15 16:07:53 2009 +0200| [1fdf055efb46e35169d00d2eb9ace97666dbb7b0] | committer: R?mi Denis-Courmont Unused variable > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1fdf055efb46e35169d00d2eb9ace97666dbb7b0 --- modules/video_output/x11/xcommon.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/video_output/x11/xcommon.c b/modules/video_output/x11/xcommon.c index 281887f..dd976ed 100644 --- a/modules/video_output/x11/xcommon.c +++ b/modules/video_output/x11/xcommon.c @@ -2109,7 +2109,6 @@ static void FreePicture( vout_thread_t *p_vout, picture_t *p_pic ) static void ToggleFullScreen ( vout_thread_t *p_vout ) { Atom prop; - XEvent xevent; mwmhints_t mwmhints; XSetWindowAttributes attributes; @@ -2403,6 +2402,7 @@ static void ToggleFullScreen ( vout_thread_t *p_vout ) * the call is first redirected to the window manager) */ #if BADFS // RASTER: this is silly... if we have already mapped before + XEvent xevent; do { XWindowEvent( p_vout->p_sys->p_display, From git at videolan.org Sun Feb 15 15:44:46 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 15:44:46 +0100 (CET) Subject: [vlc-devel] commit: Fixed missing vout_Snapshot internal function prototype. ( Laurent Aimar ) Message-ID: <20090215144446.812382F3F5@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 15 15:43:25 2009 +0100| [dd0a041bdf4a7bf35957383db4178f49e1ff3ec6] | committer: Laurent Aimar Fixed missing vout_Snapshot internal function prototype. It was broken after being privatized. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dd0a041bdf4a7bf35957383db4178f49e1ff3ec6 --- src/video_output/vout_internal.h | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/src/video_output/vout_internal.h b/src/video_output/vout_internal.h index 700bbd1..3b434fd 100644 --- a/src/video_output/vout_internal.h +++ b/src/video_output/vout_internal.h @@ -106,5 +106,11 @@ picture_t *vout_RenderPicture( vout_thread_t *, picture_t *, */ void vout_UsePictureLocked( vout_thread_t *p_vout, picture_t *p_pic ); + +/* + * DO NOT use vout_UsePictureLocked unless you are in src/video_ouput. + */ +int vout_Snapshot( vout_thread_t *, picture_t *p_pic ); + #endif From git at videolan.org Sun Feb 15 16:31:34 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 16:31:34 +0100 (CET) Subject: [vlc-devel] commit: Do not block (non interruptible) in dvdnav on fifo. (Laurent Aimar ) Message-ID: <20090215153134.25A762F347@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Sun Feb 15 16:30:40 2009 +0100| [400c04b9705306f597526fc9fc2cfd839e105055] | committer: Laurent Aimar Do not block (non interruptible) in dvdnav on fifo. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=400c04b9705306f597526fc9fc2cfd839e105055 --- modules/access/dvdnav.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/modules/access/dvdnav.c b/modules/access/dvdnav.c index 8a67a83..8368add 100644 --- a/modules/access/dvdnav.c +++ b/modules/access/dvdnav.c @@ -1436,7 +1436,7 @@ static int ProbeDVD( demux_t *p_demux, char *psz_name ) return VLC_SUCCESS; } - if( (i_fd = open( psz_name, O_RDONLY )) == -1 ) + if( (i_fd = utf8_open( psz_name, O_RDONLY |O_NONBLOCK, 0666 )) == -1 ) { return VLC_SUCCESS; /* Let dvdnav_open() do the probing */ } @@ -1444,6 +1444,9 @@ static int ProbeDVD( demux_t *p_demux, char *psz_name ) if( fstat( i_fd, &stat_info ) || !S_ISREG( stat_info.st_mode ) ) { close( i_fd ); + + if( S_ISFIFO( stat_info.st_mode ) ) + return VLC_EGENERIC; return VLC_SUCCESS; /* Let dvdnav_open() do the probing */ } From git at videolan.org Sun Feb 15 16:36:08 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 16:36:08 +0100 (CET) Subject: [vlc-devel] commit: Qt4: Don't put richtext in the ui. This is a nightmare for gettext. See #2140. (Jean-Baptiste Kempf ) Message-ID: <20090215153608.CE20A2F423@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 15 16:35:24 2009 +0100| [57020ffa1ab60047b7cccec77671e81288f8ef42] | committer: Jean-Baptiste Kempf Qt4: Don't put richtext in the ui. This is a nightmare for gettext. See #2140. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=57020ffa1ab60047b7cccec77671e81288f8ef42 --- modules/gui/qt4/components/simple_preferences.cpp | 3 +++ modules/gui/qt4/ui/sprefs_interface.ui | 2 +- 2 files changed, 4 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/simple_preferences.cpp b/modules/gui/qt4/components/simple_preferences.cpp index 73198d0..1a55c68 100644 --- a/modules/gui/qt4/components/simple_preferences.cpp +++ b/modules/gui/qt4/components/simple_preferences.cpp @@ -450,6 +450,9 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, *******************/ START_SPREFS_CAT( Interface, qtr("Interface Settings") ); ui.defaultLabel->setFont( italicFont ); + ui.skinsLabel->setText( + qtr( "This is VLC's skinnable interface. You can download other skins at" ) + + QString( " VLC skins website." ) ); ui.skinsLabel->setFont( italicFont ); #if defined( WIN32 ) diff --git a/modules/gui/qt4/ui/sprefs_interface.ui b/modules/gui/qt4/ui/sprefs_interface.ui index b4c8c66..176b9fb 100644 --- a/modules/gui/qt4/ui/sprefs_interface.ui +++ b/modules/gui/qt4/ui/sprefs_interface.ui @@ -145,7 +145,7 @@ QFrame::NoFrame - _("This is VLC's skinnable interface. You can download skins at <a href="http://www.videolan.org/vlc/skins.php">http://www.videolan.org/vlc/skins.php</a> to customize your player.") + Qt::RichText From git at videolan.org Sun Feb 15 16:49:50 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 16:49:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_X11=3A_remove_non-sensical_lockin?= =?utf-8?q?g_scheme_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090215154950.5839B2F3DB@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 15 17:47:17 2009 +0200| [9580166f23ac3e74373da2d05846c951857c5405] | committer: R?mi Denis-Courmont X11: remove non-sensical locking scheme This reverts gullible commit 54b43fae. vout_Control() cannot be called from another thread. Full point. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9580166f23ac3e74373da2d05846c951857c5405 --- modules/video_output/x11/xcommon.c | 25 ------------------------- modules/video_output/x11/xcommon.h | 2 -- 2 files changed, 0 insertions(+), 27 deletions(-) diff --git a/modules/video_output/x11/xcommon.c b/modules/video_output/x11/xcommon.c index dd976ed..e715339 100644 --- a/modules/video_output/x11/xcommon.c +++ b/modules/video_output/x11/xcommon.c @@ -209,8 +209,6 @@ int Activate ( vlc_object_t *p_this ) if( p_vout->p_sys == NULL ) return VLC_ENOMEM; - vlc_mutex_init( &p_vout->p_sys->lock ); - /* key and mouse event handling */ p_vout->p_sys->i_vout_event = var_CreateGetInteger( p_vout, "vout-event" ); @@ -519,7 +517,6 @@ void Deactivate ( vlc_object_t *p_this ) XCloseDisplay( p_vout->p_sys->p_display ); /* Destroy structure */ - vlc_mutex_destroy( &p_vout->p_sys->lock ); #ifdef MODULE_NAME_IS_xvmc free_context_lock( &p_vout->p_sys->xvmc_lock ); #endif @@ -589,14 +586,12 @@ static void RenderVideo( vout_thread_t *p_vout, picture_t *p_pic ) { vlc_xxmc_t *xxmc = NULL; - vlc_mutex_lock( &p_vout->p_sys->lock ); xvmc_context_reader_lock( &p_vout->p_sys->xvmc_lock ); xxmc = &p_pic->p_sys->xxmc_data; if( (!xxmc->decoded || !xxmc_xvmc_surface_valid( p_vout, p_pic->p_sys->xvmc_surf )) ) { - vlc_mutex_unlock( &p_vout->p_sys->lock ); xvmc_context_reader_unlock( &p_vout->p_sys->xvmc_lock ); return; } @@ -761,8 +756,6 @@ static void RenderVideo( vout_thread_t *p_vout, picture_t *p_pic ) vlc_mutex_unlock( &p_vout->lastsubtitle_lock ); #endif xvmc_context_reader_unlock( &p_vout->p_sys->xvmc_lock ); - - vlc_mutex_unlock( &p_vout->p_sys->lock ); } #endif @@ -967,8 +960,6 @@ static void DisplayVideo( vout_thread_t *p_vout, picture_t *p_pic ) p_vout->p_sys->p_win->i_height, &i_x, &i_y, &i_width, &i_height ); - vlc_mutex_lock( &p_vout->p_sys->lock ); - #ifdef MODULE_NAME_IS_xvmc xvmc_context_reader_lock( &p_vout->p_sys->xvmc_lock ); @@ -979,7 +970,6 @@ static void DisplayVideo( vout_thread_t *p_vout, picture_t *p_pic ) msg_Dbg( p_vout, "DisplayVideo decoded=%d\tsurfacevalid=%d", xxmc->decoded, xxmc_xvmc_surface_valid( p_vout, p_pic->p_sys->xvmc_surf ) ); - vlc_mutex_unlock( &p_vout->p_sys->lock ); xvmc_context_reader_unlock( &p_vout->p_sys->xvmc_lock ); return; } @@ -1135,8 +1125,6 @@ static void DisplayVideo( vout_thread_t *p_vout, picture_t *p_pic ) /* Make sure the command is sent now - do NOT use XFlush !*/ XSync( p_vout->p_sys->p_display, False ); - - vlc_mutex_unlock( &p_vout->p_sys->lock ); } /***************************************************************************** @@ -1151,8 +1139,6 @@ static int ManageVideo( vout_thread_t *p_vout ) XEvent xevent; /* X11 event */ vlc_value_t val; - vlc_mutex_lock( &p_vout->p_sys->lock ); - #ifdef MODULE_NAME_IS_xvmc xvmc_context_reader_lock( &p_vout->p_sys->xvmc_lock ); #endif @@ -1579,8 +1565,6 @@ static int ManageVideo( vout_thread_t *p_vout ) } } #endif - - vlc_mutex_unlock( &p_vout->p_sys->lock ); return 0; } @@ -3152,10 +3136,8 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) pi_width = va_arg( args, unsigned int * ); pi_height = va_arg( args, unsigned int * ); - vlc_mutex_lock( &p_vout->p_sys->lock ); *pi_width = p_vout->p_sys->p_win->i_width; *pi_height = p_vout->p_sys->p_win->i_height; - vlc_mutex_unlock( &p_vout->p_sys->lock ); return VLC_SUCCESS; case VOUT_SET_SIZE: @@ -3163,8 +3145,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) return vout_ControlWindow( p_vout->p_sys->p_win->owner_window, i_query, args); - vlc_mutex_lock( &p_vout->p_sys->lock ); - i_width = va_arg( args, unsigned int ); i_height = va_arg( args, unsigned int ); if( !i_width ) i_width = p_vout->i_window_width; @@ -3180,11 +3160,9 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) #ifdef MODULE_NAME_IS_xvmc xvmc_context_reader_unlock( &p_vout->p_sys->xvmc_lock ); #endif - vlc_mutex_unlock( &p_vout->p_sys->lock ); return VLC_SUCCESS; case VOUT_REPARENT: - vlc_mutex_lock( &p_vout->p_sys->lock ); if( i_query == VOUT_REPARENT ) d = (Drawable)va_arg( args, int ); if( !d ) { @@ -3204,7 +3182,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) #ifdef MODULE_NAME_IS_xvmc xvmc_context_reader_unlock( &p_vout->p_sys->xvmc_lock ); #endif - vlc_mutex_unlock( &p_vout->p_sys->lock ); vout_ReleaseWindow( p_vout->p_sys->p_win->owner_window ); p_vout->p_sys->original_window.owner_window = NULL; return VLC_SUCCESS; @@ -3215,7 +3192,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) i_query, args); b_arg = (bool) va_arg( args, int ); - vlc_mutex_lock( &p_vout->p_sys->lock ); #ifdef MODULE_NAME_IS_xvmc xvmc_context_reader_lock( &p_vout->p_sys->xvmc_lock ); #endif @@ -3223,7 +3199,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) #ifdef MODULE_NAME_IS_xvmc xvmc_context_reader_unlock( &p_vout->p_sys->xvmc_lock ); #endif - vlc_mutex_unlock( &p_vout->p_sys->lock ); return VLC_SUCCESS; default: diff --git a/modules/video_output/x11/xcommon.h b/modules/video_output/x11/xcommon.h index e82a56a..5abacad 100644 --- a/modules/video_output/x11/xcommon.h +++ b/modules/video_output/x11/xcommon.h @@ -214,8 +214,6 @@ struct vout_sys_t Visual * p_visual; /* visual pointer */ int i_screen; /* screen number */ - vlc_mutex_t lock; - /* Our current window */ x11_window_t * p_win; From git at videolan.org Sun Feb 15 17:10:39 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 17:10:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_ncurses=3A__fix_a_segfault_when_l?= =?utf-8?q?aunching_the_interface_without_any_item_in_the_playlist_=2E_=28?= =?utf-8?q?_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090215161039.6A2E02F400@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sat Feb 14 11:06:17 2009 +0100| [85fb567c408b390422ab72014131ad6ea7754c15] | committer: R?mi Duraffort ncurses: fix a segfault when launching the interface without any item in the playlist. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=85fb567c408b390422ab72014131ad6ea7754c15 --- modules/gui/ncurses.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/gui/ncurses.c b/modules/gui/ncurses.c index b11542f..569eac8 100644 --- a/modules/gui/ncurses.c +++ b/modules/gui/ncurses.c @@ -2148,8 +2148,8 @@ static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh ) playlist_item_t *p_node = p_sys->p_node; int c = ' '; if( ( p_node && p_item->p_input == p_node->p_input ) || - ( !p_node && p_item->p_input == - playlist_CurrentPlayingItem(p_playlist)->p_input ) ) + ( !p_node && playlist_CurrentInput( p_playlist ) && + p_item->p_input == playlist_CurrentPlayingItem(p_playlist)->p_input ) ) c = '*'; else if( p_item == p_node || ( p_item != p_node && PlaylistIsPlaying( p_intf, p_item ) ) ) From git at videolan.org Sun Feb 15 17:10:39 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 17:10:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_qt4=3A_add_=2Evlm_at_the_end_of_t?= =?utf-8?q?he_export_file_if_needed=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090215161039.7AFA22F428@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 15 17:02:35 2009 +0100| [3b124a6ca0a7256a308a7ae71c449f7c29a93ff6] | committer: R?mi Duraffort qt4: add .vlm at the end of the export file if needed. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3b124a6ca0a7256a308a7ae71c449f7c29a93ff6 --- modules/gui/qt4/dialogs/vlm.cpp | 39 +++++++++++++++++++++++++++------------ 1 files changed, 27 insertions(+), 12 deletions(-) diff --git a/modules/gui/qt4/dialogs/vlm.cpp b/modules/gui/qt4/dialogs/vlm.cpp index b8232d3..e9aa171 100644 --- a/modules/gui/qt4/dialogs/vlm.cpp +++ b/modules/gui/qt4/dialogs/vlm.cpp @@ -264,20 +264,35 @@ void VLMDialog::addVLMItem() /* TODO : VOD are not exported to the file */ bool VLMDialog::exportVLMConf() { - QString saveVLMConfFileName = QFileDialog::getSaveFileName( - this, qtr( "Save VLM configuration as..." ), - qfu( config_GetHomeDir() ), - qtr( "VLM conf (*.vlm);;All (*)" ) ); - - if( !saveVLMConfFileName.isEmpty() ) + QFileDialog* qfd = new QFileDialog( this, qtr( "Save VLM configuration as..." ), + qfu( config_GetHomeDir() ), + qtr( "VLM conf (*.vlm);;All (*)" ) ); + qfd->setFileMode( QFileDialog::AnyFile ); + qfd->setAcceptMode( QFileDialog::AcceptSave ); + qfd->setConfirmOverwrite( true ); + + bool exported = false; + if( qfd->exec() == QDialog::Accepted ) { - vlm_message_t *message; - QString command = "save \"" + saveVLMConfFileName + "\""; - vlm_ExecuteCommand( p_vlm , qtu( command ) , &message ); - vlm_MessageDelete( message ); - return true; + QString saveVLMConfFileName = qfd->selectedFiles().first(); + QString filter = qfd->selectedFilter(); + + // If *.vlm is selected, add .vlm at the end if needed + if( filter.contains( "VLM" ) && !saveVLMConfFileName.contains( ".vlm" ) ) + saveVLMConfFileName.append( ".vlm" ); + + if( !saveVLMConfFileName.isEmpty() ) + { + vlm_message_t *message; + QString command = "save \"" + saveVLMConfFileName + "\""; + vlm_ExecuteCommand( p_vlm , qtu( command ) , &message ); + vlm_MessageDelete( message ); + exported = true; + } } - return false; + + delete qfd; + return exported; } void VLMDialog::mediasPopulator() From git at videolan.org Sun Feb 15 17:47:54 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 17:47:54 +0100 (CET) Subject: [vlc-devel] commit: Qt: menus: fix ordering of the video menu. fix scale ( Jean-Philippe Andre ) Message-ID: <20090215164754.65CF22EDA7@skanda.videolan.org> vlc | branch: master | Jean-Philippe Andre | Mon Feb 16 00:24:09 2009 +0800| [ffedfbb52ec61525bc6a285eff0da41a9747651d] | committer: Jean-Philippe Andre Qt: menus: fix ordering of the video menu. fix scale > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ffedfbb52ec61525bc6a285eff0da41a9747651d --- modules/gui/qt4/menus.cpp | 60 +++++++++++++++++++++++++++++--------------- 1 files changed, 39 insertions(+), 21 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index deb2ea4..bb695a6 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -204,7 +204,7 @@ static int VideoAutoMenuBuilder( vout_thread_t *p_object, #endif PUSH_VAR( "video-snapshot" ); PUSH_VAR( "zoom" ); - PUSH_VAR( "scale" ); + PUSH_VAR( "autoscale" ); PUSH_VAR( "aspect-ratio" ); PUSH_VAR( "crop" ); PUSH_VAR( "deinterlace" ); @@ -233,6 +233,7 @@ static int VideoAutoMenuBuilder( vout_thread_t *p_object, vlc_object_release( p_dec ); } } + return VLC_SUCCESS; } @@ -277,6 +278,14 @@ static QAction * FindActionWithVar( QMenu *menu, const char *psz_var ) QAction *_action = new QAction( title, _menu ); _action->setData( val ); \ _menu->addAction( _action ); } +#define ACT_ADDMENU( _menu, val, title ) { \ + QAction *_action = new QAction( title, _menu ); _action->setData( val ); \ + _action->setMenu( new QMenu() ); _menu->addAction( _action ); } + +#define ACT_ADDCHECK( _menu, val, title ) { \ + QAction *_action = new QAction( title, _menu ); _action->setData( val ); \ + _action->setCheckable( true ); _menu->addAction( _action ); } + /** * Main Menu Bar Creation **/ @@ -495,12 +504,12 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) if( current->isEmpty() ) { - ACT_ADD( current, "audio-es", qtr( "Audio &Track" ) ); - ACT_ADD( current, "audio-channels", qtr( "Audio &Channels" ) ); - ACT_ADD( current, "audio-device", qtr( "Audio &Device" ) ); + ACT_ADDMENU( current, "audio-es", qtr( "Audio &Track" ) ); + ACT_ADDMENU( current, "audio-channels", qtr( "Audio &Channels" ) ); + ACT_ADDMENU( current, "audio-device", qtr( "Audio &Device" ) ); current->addSeparator(); - ACT_ADD( current, "visual", qtr( "&Visualizations" ) ); + ACT_ADDMENU( current, "visual", qtr( "&Visualizations" ) ); current->addSeparator(); QAction *action = current->addAction( qtr( "Increase Volume" ), @@ -548,7 +557,7 @@ QMenu *QVLCMenu::VideoMenu( intf_thread_t *p_intf, QMenu *current ) if( current->isEmpty() ) { - ACT_ADD( current, "video-es", qtr( "Video &Track" ) ); + ACT_ADDMENU( current, "video-es", qtr( "Video &Track" ) ); QAction *action; QMenu *submenu = new QMenu( qtr( "&Subtitles Track" ), current ); @@ -559,21 +568,21 @@ QMenu *QVLCMenu::VideoMenu( intf_thread_t *p_intf, QMenu *current ) submenu->addSeparator(); current->addSeparator(); - ACT_ADD( current, "fullscreen", qtr( "&Fullscreen" ) ); - ACT_ADD( current, "video-on-top", qtr( "Always &On Top" ) ); + ACT_ADDCHECK( current, "fullscreen", qtr( "&Fullscreen" ) ); + ACT_ADDCHECK( current, "video-on-top", qtr( "Always &On Top" ) ); #ifdef WIN32 - ACT_ADD( current, "directx-wallpaper", qtr( "DirectX Wallpaper" ) ); + ACT_ADDCHECK( current, "directx-wallpaper", qtr( "DirectX Wallpaper" ) ); #endif ACT_ADD( current, "video-snapshot", qtr( "Sna&pshot" ) ); current->addSeparator(); - ACT_ADD( current, "zoom", qtr( "&Zoom" ) ); - ACT_ADD( current, "scale", qtr( "Sca&le" ) ); - ACT_ADD( current, "aspect-ratio", qtr( "&Aspect Ratio" ) ); - ACT_ADD( current, "crop", qtr( "&Crop" ) ); - ACT_ADD( current, "deinterlace", qtr( "&Deinterlace" ) ); - ACT_ADD( current, "postproc-q", qtr( "&Post processing" ) ); + ACT_ADDMENU( current, "zoom", qtr( "&Zoom" ) ); + ACT_ADDCHECK( current, "autoscale", qtr( "Sca&le" ) ); + ACT_ADDMENU( current, "aspect-ratio", qtr( "&Aspect Ratio" ) ); + ACT_ADDMENU( current, "crop", qtr( "&Crop" ) ); + ACT_ADDMENU( current, "deinterlace", qtr( "&Deinterlace" ) ); + ACT_ADDMENU( current, "postproc-q", qtr( "&Post processing" ) ); } p_input = THEMIM->getInput(); @@ -606,11 +615,11 @@ QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QMenu *menu ) { if( menu->isEmpty() ) { - ACT_ADD( menu, "bookmark", qtr( "&Bookmarks" ) ); - ACT_ADD( menu, "title", qtr( "T&itle" ) ); - ACT_ADD( menu, "chapter", qtr( "&Chapter" ) ); - ACT_ADD( menu, "navigation", qtr( "&Navigation" ) ); - ACT_ADD( menu, "program", qtr( "&Program" ) ); + ACT_ADDMENU( menu, "bookmark", qtr( "&Bookmarks" ) ); + ACT_ADDMENU( menu, "title", qtr( "T&itle" ) ); + ACT_ADDMENU( menu, "chapter", qtr( "&Chapter" ) ); + ACT_ADDMENU( menu, "navigation", qtr( "&Navigation" ) ); + ACT_ADDMENU( menu, "program", qtr( "&Program" ) ); menu->addSeparator(); addDPStaticEntry( menu, qtr( I_MENU_GOTOTIME ),"", @@ -960,6 +969,8 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) } #undef ACT_ADD +#undef ACT_ADDMENU +#undef ACT_ADDCHECK /************************************************************************ * Systray Menu * @@ -1181,8 +1192,10 @@ void QVLCMenu::UpdateItem( intf_thread_t *p_intf, QMenu *menu, action->setEnabled( false ); } else + { action->setEnabled( CreateChoicesMenu( menu, psz_var, p_object, true ) == 0 ); + } FREENULL( text.psz_string ); return; } @@ -1306,10 +1319,13 @@ void QVLCMenu::CreateAndConnect( QMenu *menu, const char *psz_var, bool checked ) { QAction *action = FindActionWithVar( menu, psz_var ); + + bool b_new = false; if( !action ) { action = new QAction( text, menu ); menu->addAction( action ); + b_new = true; } action->setToolTip( help ); @@ -1333,7 +1349,9 @@ void QVLCMenu::CreateAndConnect( QMenu *menu, const char *psz_var, val, psz_var ); CONNECT( action, triggered(), THEDP->menusMapper, map() ); THEDP->menusMapper->setMapping( action, itemData ); - menu->addAction( action ); + + if( b_new ) + menu->addAction( action ); } void QVLCMenu::DoAction( QObject *data ) From git at videolan.org Sun Feb 15 17:47:54 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 17:47:54 +0100 (CET) Subject: [vlc-devel] commit: Qt: menu playback/bookmark can now open the bookmarks dialog ( Jean-Philippe Andre ) Message-ID: <20090215164754.7571B2F406@skanda.videolan.org> vlc | branch: master | Jean-Philippe Andre | Mon Feb 16 00:44:53 2009 +0800| [3d836aaa6be7be3e784f80cbafee9292b35d6463] | committer: Jean-Philippe Andre Qt: menu playback/bookmark can now open the bookmarks dialog > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3d836aaa6be7be3e784f80cbafee9292b35d6463 --- modules/gui/qt4/menus.cpp | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index bb695a6..aaaa937 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -615,7 +615,13 @@ QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QMenu *menu ) { if( menu->isEmpty() ) { - ACT_ADDMENU( menu, "bookmark", qtr( "&Bookmarks" ) ); + QAction *action; + QMenu *submenu = new QMenu( qtr( "&Bookmarks" ), menu ); + addDPStaticEntry( submenu, qtr( "Manage &bookmarks" ), "", + SLOT( bookmarksDialog() ) ); + submenu->addSeparator(); + action = menu->addMenu( submenu ); + action->setData( "bookmark" ); ACT_ADDMENU( menu, "title", qtr( "T&itle" ) ); ACT_ADDMENU( menu, "chapter", qtr( "&Chapter" ) ); ACT_ADDMENU( menu, "navigation", qtr( "&Navigation" ) ); From git at videolan.org Sun Feb 15 17:55:28 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 17:55:28 +0100 (CET) Subject: [vlc-devel] commit: Qt: add a tooltip for people who don' t get that save will close the dialog. (Jean-Baptiste Kempf ) Message-ID: <20090215165528.8A96C2EE43@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 15 17:52:50 2009 +0100| [3b2fa350046ba5b15c1f3837e5364e77dd5a8fad] | committer: Jean-Baptiste Kempf Qt: add a tooltip for people who don't get that save will close the dialog. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3b2fa350046ba5b15c1f3837e5364e77dd5a8fad --- modules/gui/qt4/dialogs/preferences.cpp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/dialogs/preferences.cpp b/modules/gui/qt4/dialogs/preferences.cpp index 429a656..06b2f5c 100644 --- a/modules/gui/qt4/dialogs/preferences.cpp +++ b/modules/gui/qt4/dialogs/preferences.cpp @@ -81,6 +81,7 @@ PrefsDialog::PrefsDialog( QWidget *parent, intf_thread_t *_p_intf ) /* Buttons */ QDialogButtonBox *buttonsBox = new QDialogButtonBox(); QPushButton *save = new QPushButton( qtr( "&Save" ) ); + save->setToolTip( qtr( "Save and close the dialog" ) ); QPushButton *cancel = new QPushButton( qtr( "&Cancel" ) ); QPushButton *reset = new QPushButton( qtr( "&Reset Preferences" ) ); From git at videolan.org Sun Feb 15 18:15:52 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 18:15:52 +0100 (CET) Subject: [vlc-devel] commit: Qt: sprefs, put replay-gain in the audio part. ( Jean-Baptiste Kempf ) Message-ID: <20090215171552.4505C2F427@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 15 18:15:17 2009 +0100| [0f594de02d5dc1b2f4efa1c3dea088a8149819d1] | committer: Jean-Baptiste Kempf Qt: sprefs, put replay-gain in the audio part. Close #2521 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0f594de02d5dc1b2f4efa1c3dea088a8149819d1 --- modules/gui/qt4/components/simple_preferences.cpp | 2 + modules/gui/qt4/ui/sprefs_audio.ui | 33 ++++++++++++++------ 2 files changed, 25 insertions(+), 10 deletions(-) diff --git a/modules/gui/qt4/components/simple_preferences.cpp b/modules/gui/qt4/components/simple_preferences.cpp index 1a55c68..f8e4a17 100644 --- a/modules/gui/qt4/components/simple_preferences.cpp +++ b/modules/gui/qt4/components/simple_preferences.cpp @@ -295,6 +295,8 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, CONFIG_GENERIC_NO_BOOL( "norm-max-level" , Float, NULL, volNormSpin ); + CONFIG_GENERIC( "audio-replay-gain-mode", StringList, ui.replayLabel, + replayCombo ); CONFIG_GENERIC( "audio-visual" , Module , ui.visuLabel, visualisation); diff --git a/modules/gui/qt4/ui/sprefs_audio.ui b/modules/gui/qt4/ui/sprefs_audio.ui index 7af760a..8ff3012 100644 --- a/modules/gui/qt4/ui/sprefs_audio.ui +++ b/modules/gui/qt4/ui/sprefs_audio.ui @@ -6,14 +6,14 @@ 0 0 - 559 - 609 + 643 + 605 Form - + @@ -250,7 +250,7 @@ _("Effects") - + @@ -277,7 +277,20 @@ - + + + + _("Replay gain mode") + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + Qt::AlignRight @@ -292,7 +305,7 @@ _("last.fm") - + @@ -300,9 +313,6 @@ - - - @@ -313,6 +323,9 @@ + + + @@ -323,7 +336,7 @@ - + QLineEdit::Password From git at videolan.org Sun Feb 15 18:26:41 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 18:26:41 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_unused_VOUT=5FGET=5FSIZE?= =?utf-8?b?Li4uICggUsOpbWkgRGVuaXMtQ291cm1vbnQgKQ==?= Message-ID: <20090215172641.584232F427@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 15 19:01:15 2009 +0200| [f62e78e30b58dd7a4eb8efaa9aa803a49022500f] | committer: R?mi Denis-Courmont Remove unused VOUT_GET_SIZE... ...and it is probably no use considering vout thread already has the informations. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f62e78e30b58dd7a4eb8efaa9aa803a49022500f --- include/vlc_vout.h | 1 - modules/gui/qt4/main_interface.cpp | 8 -------- modules/video_output/drawable.c | 9 --------- modules/video_output/msw/events.c | 13 ------------- modules/video_output/x11/xcommon.c | 12 ------------ 5 files changed, 0 insertions(+), 43 deletions(-) diff --git a/include/vlc_vout.h b/include/vlc_vout.h index 4055f4c..cd1a18d 100644 --- a/include/vlc_vout.h +++ b/include/vlc_vout.h @@ -700,7 +700,6 @@ static inline int vout_Control( vout_thread_t *p_vout, int i_query, ... ) enum output_query_e { - VOUT_GET_SIZE, /* arg1= unsigned int*, arg2= unsigned int*, res= */ VOUT_SET_SIZE, /* arg1= unsigned int, arg2= unsigned int, res= */ VOUT_SET_STAY_ON_TOP, /* arg1= bool res= */ VOUT_REPARENT, diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index e7dfb1e..0dff96a 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -699,14 +699,6 @@ int MainInterface::controlVideo( int i_query, va_list args ) int i_ret = VLC_SUCCESS; switch( i_query ) { - case VOUT_GET_SIZE: - { - unsigned int *pi_width = va_arg( args, unsigned int * ); - unsigned int *pi_height = va_arg( args, unsigned int * ); - *pi_width = videoWidget->videoSize.width(); - *pi_height = videoWidget->videoSize.height(); - break; - } case VOUT_SET_SIZE: { unsigned int i_width = va_arg( args, unsigned int ); diff --git a/modules/video_output/drawable.c b/modules/video_output/drawable.c index b904ff9..25ef494 100644 --- a/modules/video_output/drawable.c +++ b/modules/video_output/drawable.c @@ -140,15 +140,6 @@ static int Control (vout_window_t *wnd, int query, va_list ap) { switch (query) { - case VOUT_GET_SIZE: - { - unsigned int *pi_width = va_arg (ap, unsigned int *); - unsigned int *pi_height = va_arg (ap, unsigned int *); - *pi_width = wnd->width; - *pi_height = wnd->height; - return VLC_SUCCESS; - } - case VOUT_SET_SIZE: /* not allowed */ case VOUT_SET_STAY_ON_TOP: /* not allowed either, would be ugly */ return VLC_EGENERIC; diff --git a/modules/video_output/msw/events.c b/modules/video_output/msw/events.c index 873321a..9fe3c95 100644 --- a/modules/video_output/msw/events.c +++ b/modules/video_output/msw/events.c @@ -1044,19 +1044,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) switch( i_query ) { - case VOUT_GET_SIZE: - if( p_vout->p_sys->parent_window ) - return vaControlParentWindow( p_vout, i_query, args ); - - pi_width = va_arg( args, unsigned int * ); - pi_height = va_arg( args, unsigned int * ); - - GetClientRect( p_vout->p_sys->hwnd, &rect_window ); - - *pi_width = rect_window.right - rect_window.left; - *pi_height = rect_window.bottom - rect_window.top; - return VLC_SUCCESS; - case VOUT_SET_SIZE: if( p_vout->p_sys->parent_window ) return vaControlParentWindow( p_vout, i_query, args ); diff --git a/modules/video_output/x11/xcommon.c b/modules/video_output/x11/xcommon.c index e715339..699a8cc 100644 --- a/modules/video_output/x11/xcommon.c +++ b/modules/video_output/x11/xcommon.c @@ -3128,18 +3128,6 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args ) switch( i_query ) { - case VOUT_GET_SIZE: - if( p_vout->p_sys->p_win->owner_window ) - return vout_ControlWindow( p_vout->p_sys->p_win->owner_window, - i_query, args); - - pi_width = va_arg( args, unsigned int * ); - pi_height = va_arg( args, unsigned int * ); - - *pi_width = p_vout->p_sys->p_win->i_width; - *pi_height = p_vout->p_sys->p_win->i_height; - return VLC_SUCCESS; - case VOUT_SET_SIZE: if( p_vout->p_sys->p_win->owner_window ) return vout_ControlWindow( p_vout->p_sys->p_win->owner_window, From git at videolan.org Sun Feb 15 18:26:41 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 18:26:41 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_VOUT=5FSET=5FSTAY=5FON=5FTOP=3A_c?= =?utf-8?q?all_vout=5FControl_in_a_thread-safe_fashion_=28_R=C3=A9mi_Denis?= =?utf-8?q?-Courmont_=29?= Message-ID: <20090215172641.66E762F451@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 15 19:25:42 2009 +0200| [1a11a808f3b9c73dff29e67a335b6308ebfb504e] | committer: R?mi Denis-Courmont VOUT_SET_STAY_ON_TOP: call vout_Control in a thread-safe fashion > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1a11a808f3b9c73dff29e67a335b6308ebfb504e --- include/vlc_vout.h | 7 +++++-- src/video_output/video_output.c | 8 ++++++++ src/video_output/vout_intf.c | 8 ++++++-- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/include/vlc_vout.h b/include/vlc_vout.h index cd1a18d..23e98ad 100644 --- a/include/vlc_vout.h +++ b/include/vlc_vout.h @@ -506,8 +506,9 @@ struct vout_thread_t /**@{*/ uint16_t i_changes; /**< changes made to the thread. \see \ref vout_changes */ - bool b_fullscreen; /**< toogle fullscreen display */ - bool b_autoscale; /**< auto scaling picture or not */ + unsigned b_fullscreen:1; /**< toogle fullscreen display */ + unsigned b_autoscale:1; /**< auto scaling picture or not */ + unsigned b_on_top:1; /**< stay always on top of other windows */ int i_zoom; /**< scaling factor if no auto */ unsigned int i_window_width; /**< video window width */ unsigned int i_window_height; /**< video window height */ @@ -569,6 +570,8 @@ struct vout_thread_t #define VOUT_INTF_CHANGE 0x0004 /** b_autoscale changed */ #define VOUT_SCALE_CHANGE 0x0008 +/** b_on_top changed */ +#define VOUT_ON_TOP_CHANGE 0x0010 /** b_cursor changed */ #define VOUT_CURSOR_CHANGE 0x0020 /** b_fullscreen changed */ diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c index 476eb43..0751e75 100644 --- a/src/video_output/video_output.c +++ b/src/video_output/video_output.c @@ -1265,6 +1265,14 @@ static void* RunThread( void *p_this ) break; } + while( p_vout->i_changes & VOUT_ON_TOP_CHANGE ) + { + p_vout->i_changes &= ~VOUT_ON_TOP_CHANGE; + vlc_mutex_unlock( &p_vout->change_lock ); + vout_Control( p_vout, VOUT_SET_STAY_ON_TOP, p_vout->b_on_top ); + vlc_mutex_lock( &p_vout->change_lock ); + } + if( p_vout->i_changes & VOUT_SIZE_CHANGE ) { /* this must only happen when the vout plugin is incapable of diff --git a/src/video_output/vout_intf.c b/src/video_output/vout_intf.c index 8160e85..7cb21e8 100644 --- a/src/video_output/vout_intf.c +++ b/src/video_output/vout_intf.c @@ -1221,13 +1221,17 @@ static int OnTopCallback( vlc_object_t *p_this, char const *psz_cmd, vlc_value_t oldval, vlc_value_t newval, void *p_data ) { vout_thread_t *p_vout = (vout_thread_t *)p_this; - vout_Control( p_vout, VOUT_SET_STAY_ON_TOP, newval.b_bool ); - (void)psz_cmd; (void)oldval; (void)p_data; + + vlc_mutex_lock( &p_vout->change_lock ); + p_vout->i_changes |= VOUT_ON_TOP_CHANGE; + p_vout->b_on_top = newval.b_bool; + vlc_mutex_unlock( &p_vout->change_lock ); /* Modify libvlc as well because the vout might have to be restarted */ var_Create( p_vout->p_libvlc, "video-on-top", VLC_VAR_BOOL ); var_Set( p_vout->p_libvlc, "video-on-top", newval ); + (void)psz_cmd; (void)oldval; (void)p_data; return VLC_SUCCESS; } From git at videolan.org Sun Feb 15 18:26:41 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 18:26:41 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Merge_branch_=27master=27_of_git?= =?utf-8?q?=40git=2Evideolan=2Eorg=3Avlc_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090215172641.7A87C2F458@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 15 19:26:12 2009 +0200| [31a51c3e45d72159defca0aaf95a5b599fc7cc5d] | committer: R?mi Denis-Courmont Merge branch 'master' of git at git.videolan.org:vlc > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=31a51c3e45d72159defca0aaf95a5b599fc7cc5d --- From brezhoneg1 at yahoo.fr Sun Feb 15 18:38:49 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Sun, 15 Feb 2009 18:38:49 +0100 Subject: [vlc-devel] RE : [PATCH] -- qt4 cone display issue In-Reply-To: <49975BA7.7070807@gmail.com> Message-ID: <002101c98f94$448d6a20$0212f8c1@CCCC> > > > > > Have you tested these two patches Yes, patches tested and working Yet, find attached a new updated version (a now unused signal had been forgotten) Erwan10 -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Ensure-cone-is-hidden-before-video-is-shown-in-qt4-i.patch Type: application/octet-stream Size: 3745 bytes Desc: not available URL: From git at videolan.org Sun Feb 15 18:43:01 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 18:43:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_make_sure_that_the_mess?= =?utf-8?q?ages_panel_is_updated_nicely=2C_when_on_screen_=28_Felix_Paul_K?= =?utf-8?b?w7xobmUgKQ==?= Message-ID: <20090215174301.BFA002EDA3@skanda.videolan.org> vlc | branch: 0.9-bugfix | Felix Paul K?hne | Sun Feb 15 16:22:13 2009 +0100| [340e11477513fb36117ca6c7a54259f5dae4909e] | committer: Felix Paul K?hne macosx: make sure that the messages panel is updated nicely, when on screen > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=340e11477513fb36117ca6c7a54259f5dae4909e --- modules/gui/macosx/intf.m | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/modules/gui/macosx/intf.m b/modules/gui/macosx/intf.m index 040b17b..eb6e92e 100644 --- a/modules/gui/macosx/intf.m +++ b/modules/gui/macosx/intf.m @@ -2317,6 +2317,8 @@ end: { if( [o_notification object] == o_msgs_panel ) { + [self updateMessageArray]; + id o_msg; NSEnumerator * o_enum; @@ -2335,6 +2337,12 @@ end: } } +- (void)windowDidUpdate:(NSNotification *)o_notification +{ + if( [o_notification object] == o_msgs_panel ) + [self updateMessageArray]; +} + - (void)updateMessageArray { int i_start, i_stop; From git at videolan.org Sun Feb 15 19:00:00 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 19:00:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Stay_polite_=28_R=C3=A9mi_Denis-C?= =?utf-8?q?ourmont_=29?= Message-ID: <20090215180000.328542F3EE@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 15 19:49:55 2009 +0200| [e0fb922045f7db738fd960373cd4261ea8e35a9b] | committer: R?mi Denis-Courmont Stay polite > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e0fb922045f7db738fd960373cd4261ea8e35a9b --- src/video_output/vout_intf.c | 16 +++++----------- 1 files changed, 5 insertions(+), 11 deletions(-) diff --git a/src/video_output/vout_intf.c b/src/video_output/vout_intf.c index 7cb21e8..d61684f 100644 --- a/src/video_output/vout_intf.c +++ b/src/video_output/vout_intf.c @@ -907,18 +907,12 @@ void vout_EnableFilter( vout_thread_t *p_vout, char *psz_name, static void InitWindowSize( vout_thread_t *p_vout, unsigned *pi_width, unsigned *pi_height ) { - vlc_value_t val; - int i_width, i_height; - uint64_t ll_zoom; - #define FP_FACTOR 1000 /* our fixed point factor */ - var_Get( p_vout, "width", &val ); - i_width = val.i_int; - var_Get( p_vout, "height", &val ); - i_height = val.i_int; - var_Get( p_vout, "zoom", &val ); - ll_zoom = (uint64_t)( FP_FACTOR * val.f_float ); + int i_width = var_GetInteger( p_vout, "width" ); + int i_height = var_GetInteger( p_vout, "height" ); + float f_zoom = var_GetFloat( p_vout, "zoom" ); + uint64_t ll_zoom = (uint64_t)( FP_FACTOR * f_zoom ); if( i_width > 0 && i_height > 0) { @@ -944,7 +938,7 @@ static void InitWindowSize( vout_thread_t *p_vout, unsigned *pi_width, } if( p_vout->fmt_in.i_sar_num == 0 || p_vout->fmt_in.i_sar_den == 0 ) { - msg_Warn( p_vout, "fucked up aspect" ); + msg_Warn( p_vout, "aspect ratio screwed up" ); *pi_width = (int)( p_vout->fmt_in.i_visible_width * ll_zoom / FP_FACTOR ); *pi_height = (int)( p_vout->fmt_in.i_visible_height * ll_zoom /FP_FACTOR); } From git at videolan.org Sun Feb 15 19:00:00 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 19:00:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Minor_cleanup_=28_R=C3=A9mi_Denis?= =?utf-8?q?-Courmont_=29?= Message-ID: <20090215180000.465B52F45C@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 15 19:59:44 2009 +0200| [7ca5ee99cdc0b06d14f5de332b8b49e109ca456e] | committer: R?mi Denis-Courmont Minor cleanup > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7ca5ee99cdc0b06d14f5de332b8b49e109ca456e --- src/video_output/vout_intf.c | 11 +++-------- 1 files changed, 3 insertions(+), 8 deletions(-) diff --git a/src/video_output/vout_intf.c b/src/video_output/vout_intf.c index d61684f..8ddafb9 100644 --- a/src/video_output/vout_intf.c +++ b/src/video_output/vout_intf.c @@ -918,7 +918,6 @@ static void InitWindowSize( vout_thread_t *p_vout, unsigned *pi_width, { *pi_width = (int)( i_width * ll_zoom / FP_FACTOR ); *pi_height = (int)( i_height * ll_zoom / FP_FACTOR ); - goto initwsize_end; } else if( i_width > 0 ) { @@ -926,7 +925,6 @@ static void InitWindowSize( vout_thread_t *p_vout, unsigned *pi_width, *pi_height = (int)( p_vout->fmt_in.i_visible_height * ll_zoom * p_vout->fmt_in.i_sar_den * i_width / p_vout->fmt_in.i_sar_num / FP_FACTOR / p_vout->fmt_in.i_visible_width ); - goto initwsize_end; } else if( i_height > 0 ) { @@ -934,10 +932,9 @@ static void InitWindowSize( vout_thread_t *p_vout, unsigned *pi_width, *pi_width = (int)( p_vout->fmt_in.i_visible_width * ll_zoom * p_vout->fmt_in.i_sar_num * i_height / p_vout->fmt_in.i_sar_den / FP_FACTOR / p_vout->fmt_in.i_visible_height ); - goto initwsize_end; } - - if( p_vout->fmt_in.i_sar_num == 0 || p_vout->fmt_in.i_sar_den == 0 ) { + else if( p_vout->fmt_in.i_sar_num == 0 || p_vout->fmt_in.i_sar_den == 0 ) + { msg_Warn( p_vout, "aspect ratio screwed up" ); *pi_width = (int)( p_vout->fmt_in.i_visible_width * ll_zoom / FP_FACTOR ); *pi_height = (int)( p_vout->fmt_in.i_visible_height * ll_zoom /FP_FACTOR); @@ -957,9 +954,7 @@ static void InitWindowSize( vout_thread_t *p_vout, unsigned *pi_width, p_vout->fmt_in.i_sar_den / p_vout->fmt_in.i_sar_num / FP_FACTOR ); } -initwsize_end: - msg_Dbg( p_vout, "window size: %dx%d", p_vout->i_window_width, - p_vout->i_window_height ); + msg_Dbg( p_vout, "window size: %ux%u", *pi_width, *pi_height ); #undef FP_FACTOR } From git at videolan.org Sun Feb 15 19:01:06 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 19:01:06 +0100 (CET) Subject: [vlc-devel] commit: l10n: Russian update (Roustam Ghizdatov ) Message-ID: <20090215180106.B340A2F422@skanda.videolan.org> vlc | branch: 0.9-bugfix | Roustam Ghizdatov | Sun Feb 15 17:57:50 2009 +0000| [776c240dfd31735c4319a490a773335ac22a1e01] | committer: Christophe Mutricy l10n: Russian update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=776c240dfd31735c4319a490a773335ac22a1e01 --- po/ru.po | 792 ++++++++++++++++++++++++++++++++++++++------------------------ 1 files changed, 481 insertions(+), 311 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=776c240dfd31735c4319a490a773335ac22a1e01 From rem at videolan.org Sun Feb 15 21:14:28 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sun, 15 Feb 2009 22:14:28 +0200 Subject: [vlc-devel] Misuses of vout_Control In-Reply-To: <200902142147.11757.rdenis@simphalempin.com> References: <200902142147.11757.rdenis@simphalempin.com> Message-ID: <200902152214.29252.rem@videolan.org> Le samedi 14 f?vrier 2009 21:47:11 R?mi Denis-Courmont, vous avez ?crit?: > However, the following usages are invalid: > * Maemo and Skins interfaces are reparenting when quitting. They have to > ensure it does not destroy the window too early instead. As of VLC 1.0, the > core ensures video outputs are cleaned up before interfaces. It seems that skins is also abusing reparent to support switching skin while playing. I am not going to fix that. > * WinCE interface is controlling the video window focus this way. This is > the only use of VOUT_SET_FOCUS in the entire tree, and seems to be a hack. Removed. > * The zoom and video on top variable handlers in the core are not > serialized properly. They should be synchronized with the video output > thread. I fixed the video on top handler. I don't understand how the Zoom handler is supposed to work. Several other callbacks in vout_intf.c are not thread safe, although they don't use vout_Control(). > * Libvlc provides a video redraw function. I find this request silly. The > video output should redraw transparently as appropriate. The back-end is > only implemented on OSX. Removed on non-OSX. It can still crash on OSX, but I could not care less, since I find the concept of manual redraw stupid. > * Libvlc provides two (!!!) video resize functions. I wonder if they ever > worked, as at least the X11 output will automatically resize according to > changes to the parent window size. In any case, these functions should sync > with the video output thread instead of calling vout_Control() directly. Same as the zoom callback. Not fixed. > * Libvlc provides a reparenting function. This is known not to work > properly. Also, it will explode if there are several video outputs. Not fixed. It might explain some JVLC X11 assertion failures. > * Libvlc provides an OSX-only window-less output function, which is > similarly broken. Removed on non-OSX. It can still crash on OSX, but I really don't see the point of this function in the first place (bypassing the WM looks like a BAD idea to me). -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From xtophe at chewa.net Sun Feb 15 23:29:18 2009 From: xtophe at chewa.net (Christophe Mutricy) Date: Sun, 15 Feb 2009 23:29:18 +0100 Subject: [vlc-devel] Altair Message-ID: <20090215222918.GG2353@chewa.net> Hello, Some services are back on altair. Web http://people.v.o http://nightlies.v.o Buildbot Except for the slave running inside a chroot Chroot sid-i386 created and with a decent set of packages intrepid-*, jauunty-*: only the debootstrap is done Personnal account: For the moment they haven't been recovered. So if you need an account on altair either: - create it yourself if you have the videolan passwd - ask me (and send me a passwd/ssh key in a secure manner) -- Xtophe From git at videolan.org Sun Feb 15 23:47:01 2009 From: git at videolan.org (git version control) Date: Sun, 15 Feb 2009 23:47:01 +0100 (CET) Subject: [vlc-devel] commit: Qt: profiles for the interface toolbar edition ( Jean-Baptiste Kempf ) Message-ID: <20090215224701.8D1572F452@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 15 23:39:40 2009 +0100| [c3338de60c0680338089477ec040039f6610c6c5] | committer: Jean-Baptiste Kempf Qt: profiles for the interface toolbar edition > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c3338de60c0680338089477ec040039f6610c6c5 --- modules/gui/qt4/dialogs/toolbar.cpp | 97 +++++++++++++++++++++++++++++++++- modules/gui/qt4/dialogs/toolbar.hpp | 8 +++- modules/gui/qt4/dialogs_provider.cpp | 2 +- 3 files changed, 104 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/dialogs/toolbar.cpp b/modules/gui/qt4/dialogs/toolbar.cpp index 5ee640e..ca67c1b 100644 --- a/modules/gui/qt4/dialogs/toolbar.cpp +++ b/modules/gui/qt4/dialogs/toolbar.cpp @@ -39,6 +39,7 @@ #include #include +#include ToolbarEditDialog *ToolbarEditDialog::instance = NULL; @@ -134,6 +135,37 @@ ToolbarEditDialog::ToolbarEditDialog( intf_thread_t *_p_intf) mainLayout->addWidget( FSCToolbarBox, 3, 0, 1, -1 ); + /* Profile */ + QGroupBox *profileBox = new QGroupBox( qtr( "Profile" ), this ); + QGridLayout *profileBoxLayout = new QGridLayout( profileBox ); + + profileCombo = new QComboBox; + QLabel *profileLabel = new QLabel( qtr( "Select profile:" ), this ); + + QToolButton *newButton = new QToolButton; + newButton->setIcon( QIcon( ":/new" ) ); + QToolButton *deleteButton = new QToolButton; + deleteButton->setIcon( QIcon( ":/clear" ) ); + deleteButton->setToolTip( qtr( "Delete the current profile" ) ); + + profileBoxLayout->addWidget( profileLabel, 0, 0 ); + profileBoxLayout->addWidget( profileCombo, 0, 1 ); + profileBoxLayout->addWidget( newButton, 0, 2 ); + profileBoxLayout->addWidget( deleteButton, 0, 3 ); + + mainLayout->addWidget( profileBox, 4, 0, 1, -1 ); + + /* Fill combos */ + int i_size = getSettings()->beginReadArray( "ToolbarProfiles" ); + for( int i = 0; i < i_size; i++ ) + { + getSettings()->setArrayIndex(i); + profileCombo->addItem( getSettings()->value( "ProfileName" ).toString(), + getSettings()->value( "Value" ).toString() ); + } + getSettings()->endArray(); + profileCombo->setCurrentIndex( -1 ); + /* Buttons */ QDialogButtonBox *okCancel = new QDialogButtonBox; QPushButton *okButton = new QPushButton( qtr( "Cl&ose" ), this ); @@ -142,14 +174,62 @@ ToolbarEditDialog::ToolbarEditDialog( intf_thread_t *_p_intf) okCancel->addButton( okButton, QDialogButtonBox::AcceptRole ); okCancel->addButton( cancelButton, QDialogButtonBox::RejectRole ); + BUTTONACT( deleteButton, deleteProfile() ); + BUTTONACT( newButton, newProfile() ); + CONNECT( profileCombo, currentIndexChanged( int ), this, changeProfile( int ) ); BUTTONACT( okButton, close() ); BUTTONACT( cancelButton, cancel() ); - mainLayout->addWidget( okCancel, 4, 2 ); + mainLayout->addWidget( okCancel, 5, 2 ); } ToolbarEditDialog::~ToolbarEditDialog() { + getSettings()->beginWriteArray( "ToolbarProfiles" ); + for( int i = 0; i < profileCombo->count(); i++ ) + { + getSettings()->setArrayIndex(i); + getSettings()->setValue( "ProfileName", profileCombo->itemText( i ) ); + getSettings()->setValue( "Value", profileCombo->itemData( i ) ); + } + getSettings()->endArray(); +} + +void ToolbarEditDialog::newProfile() +{ + bool ok; + QString name = QInputDialog::getText( this, qtr( "Profile Name" ), + qtr( "Please enter the new profile name." ), QLineEdit::Normal, 0, &ok ); + if( !ok ) return; + + QString temp = QString::number( positionCombo->currentIndex() ); + temp += "|" + controller1->getValue(); + temp += "|" + controller2->getValue(); + temp += "|" + controllerA->getValue(); + temp += "|" + controller->getValue(); + temp += "|" + controllerFSC->getValue(); + + profileCombo->addItem( name, temp ); + profileCombo->setCurrentIndex( profileCombo->count() - 1 ); +} + +void ToolbarEditDialog::deleteProfile() +{ + profileCombo->removeItem( profileCombo->currentIndex() ); +} + +void ToolbarEditDialog::changeProfile( int i ) +{ + QStringList qs_list = profileCombo->itemData( i ).toString().split( "|" ); + if( qs_list.count() < 6 ) + return; + + positionCombo->setCurrentIndex( positionCombo->findData( qs_list[0].toInt() ) ); + controller1->resetLine( qs_list[1] ); + controller2->resetLine( qs_list[2] ); + controllerA->resetLine( qs_list[3] ); + controller->resetLine( qs_list[4] ); + controllerFSC->resetLine( qs_list[5] ); } void ToolbarEditDialog::close() @@ -384,6 +464,21 @@ DroppingController::DroppingController( intf_thread_t *_p_intf, parseAndCreate( line, controlLayout ); } +void DroppingController::resetLine( QString line ) +{ + hide(); + QLayoutItem *child; + int i =0; + while( (child = controlLayout->takeAt( 0 ) ) != 0 ) + { + child->widget()->hide(); + delete child; + } + + parseAndCreate( line, controlLayout ); + show(); +} + /* Overloading the AbstractController one, because we don't manage the Spacing items in the same ways */ void DroppingController::createAndAddWidget( QBoxLayout *controlLayout, diff --git a/modules/gui/qt4/dialogs/toolbar.hpp b/modules/gui/qt4/dialogs/toolbar.hpp index 31da994..010c907 100644 --- a/modules/gui/qt4/dialogs/toolbar.hpp +++ b/modules/gui/qt4/dialogs/toolbar.hpp @@ -57,6 +57,8 @@ public: instance = new ToolbarEditDialog( p_intf ); return instance; } + static void killInstance() + { if( instance ) delete instance; instance = NULL;} virtual ~ToolbarEditDialog(); int getOptions() { return flatBox->isChecked() * WIDGET_FLAT + bigBox->isChecked() * WIDGET_BIG + @@ -66,13 +68,16 @@ private: static ToolbarEditDialog *instance; QCheckBox *flatBox, *bigBox, *shinyBox; - QComboBox *positionCombo; + QComboBox *positionCombo, *profileCombo; WidgetListing *widgetListing; DroppingController *controller1, *controller2, *controllerA; DroppingController *controllerFSC, *controller; private slots: + void newProfile(); + void deleteProfile(); + void changeProfile( int ); void cancel(); void close(); }; @@ -85,6 +90,7 @@ public: QString getValue(); virtual ~DroppingController(); + void resetLine( QString ); protected: virtual void createAndAddWidget( QBoxLayout *controlLayout, int i_index, buttonType_e i_type, int i_option ); diff --git a/modules/gui/qt4/dialogs_provider.cpp b/modules/gui/qt4/dialogs_provider.cpp index c4485d5..0214f33 100644 --- a/modules/gui/qt4/dialogs_provider.cpp +++ b/modules/gui/qt4/dialogs_provider.cpp @@ -80,7 +80,6 @@ DialogsProvider::DialogsProvider( intf_thread_t *_p_intf ) : DialogsProvider::~DialogsProvider() { - msg_Dbg( p_intf, "Destroying the Dialog Provider" ); PlaylistDialog::killInstance(); MediaInfoDialog::killInstance(); MessagesDialog::killInstance(); @@ -90,6 +89,7 @@ DialogsProvider::~DialogsProvider() #ifdef UPDATE_CHECK UpdateDialog::killInstance(); #endif + ToolbarEditDialog::killInstance(); delete menusMapper; delete menusUpdateMapper; From benjihan at users.sourceforge.net Sun Feb 15 23:54:12 2009 From: benjihan at users.sourceforge.net (Ben(jamin) GERARD) Date: Sun, 15 Feb 2009 23:54:12 +0100 Subject: [vlc-devel] broken vlc-plugin.pc ? Message-ID: <1e0b1f250902151454kea97ae5mbb706637b7f2d9fe@mail.gmail.com> Hello. I have just configure / compile / install git version of vlc. I'm using a --prefix=$HOME/local at configure In the installed vlc-plugin.pc ($HOME/local/lib/pkgconfig/vlc-plugin.pc) there is an non-substituted variable such as pkgincludedir=@pkgincludedir@ My guess is that you have forgotten AC_SUBST() in a configure.ac file. AFAIK pkgincludedir is not listed in automake documentation for been automatically substituted. -- B. From git at videolan.org Mon Feb 16 00:38:55 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 00:38:55 +0100 (CET) Subject: [vlc-devel] commit: Qt: toolbar-profile, provide 4 profiles, one being close to 0.8. 6 interface, the other one close to 0.9.0 and too smaller ones. ( Jean-Baptiste Kempf ) Message-ID: <20090215233855.23E2C2F465@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 16 00:38:16 2009 +0100| [76c4a0622d95d10e241fe98d64a6f5e102bc4324] | committer: Jean-Baptiste Kempf Qt: toolbar-profile, provide 4 profiles, one being close to 0.8.6 interface, the other one close to 0.9.0 and too smaller ones. Default can be changed, please give ideas. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=76c4a0622d95d10e241fe98d64a6f5e102bc4324 --- modules/gui/qt4/dialogs/toolbar.cpp | 12 ++++++++++++ modules/gui/qt4/dialogs/toolbar.hpp | 9 +++++++++ 2 files changed, 21 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/dialogs/toolbar.cpp b/modules/gui/qt4/dialogs/toolbar.cpp index ca67c1b..8a3bc73 100644 --- a/modules/gui/qt4/dialogs/toolbar.cpp +++ b/modules/gui/qt4/dialogs/toolbar.cpp @@ -164,6 +164,18 @@ ToolbarEditDialog::ToolbarEditDialog( intf_thread_t *_p_intf) getSettings()->value( "Value" ).toString() ); } getSettings()->endArray(); + + /* Load defaults ones if we have no combos */ + /* We could decide that we load defaults on first launch of the dialog + or when the combo is back to 0. I choose the second solution, because some clueless + user might hit on delete a bit too much, but discussion is opened. -- jb */ + if( i_size == 0 ) + { + profileCombo->addItem( PROFILE_NAME_1, QString( VALUE_1 ) ); + profileCombo->addItem( PROFILE_NAME_2, QString( VALUE_2 ) ); + profileCombo->addItem( PROFILE_NAME_3, QString( VALUE_3 ) ); + profileCombo->addItem( PROFILE_NAME_4, QString( VALUE_4 ) ); + } profileCombo->setCurrentIndex( -1 ); /* Buttons */ diff --git a/modules/gui/qt4/dialogs/toolbar.hpp b/modules/gui/qt4/dialogs/toolbar.hpp index 010c907..61c9f7f 100644 --- a/modules/gui/qt4/dialogs/toolbar.hpp +++ b/modules/gui/qt4/dialogs/toolbar.hpp @@ -31,6 +31,15 @@ #include #include +#define PROFILE_NAME_1 "Modern Style" +#define VALUE_1 "0|64;39;64;38;65;|0-2;64;3;1;4;64;7;10;9;64-4;37;65;35-4;|12;11;13;14;|5-1;33;6-1;|0-2;64;3;1;4;64;37;64;38;64;8;65;35-4;34;" +#define PROFILE_NAME_2 "Classic Style" +#define VALUE_2 "1|64;39-1;64;38;13-1;|2-1;32-4;0-5;1-5;32-5;3-5;5-5;6-5;4-5;32-5;10-1;64-1;35-1;65;|12-1;11-1;13-1;14-1;|33;37-4;|0-5;1-5;32-1;1-5;5-1;6-1;4-5;32-1;12-5;11-1;65;34-4;35-1;" +#define PROFILE_NAME_3 "Minimalist Style" +#define VALUE_3 "0|64;65;|0-7;64;3-1;1-5;4-1;64;12-5;64-5;37-4;38;64-4;10-1;65;36-4;|11;13;13;|5-1;33;6-1;|0-5;64;3-5;1-5;4-5;64;12-5;65;34-4;35-1;" +#define PROFILE_NAME_4 "One-Liner Style" +#define VALUE_4 "0|64;38;65;|0-4;64;3;1;4;64;7;10;9;64-4;39;64-4;37;65;36-4;|12;11;14;13;|5-1;33;6-1;|0-2;64;3;1;4;64;37;64;38;64;8;65;35-4;34;" + class ToolbarEditDialog; class DroppingController; class QCheckBox; From git at videolan.org Mon Feb 16 00:41:40 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 00:41:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_minimal-macosx=3A_compilation_fix?= =?utf-8?q?=2E_Needs_testing_within_the_framework_=2E_=28_Felix_Paul_K?= =?utf-8?b?w7xobmUgKQ==?= Message-ID: <20090215234140.EBC122F460@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Sun Feb 15 15:36:04 2009 +0100| [0f7aa11e04078d171fd8657798a97607f1f34854] | committer: Felix Paul K?hne minimal-macosx: compilation fix. Needs testing within the framework. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0f7aa11e04078d171fd8657798a97607f1f34854 --- modules/gui/minimal_macosx/intf.h | 3 +++ modules/gui/minimal_macosx/intf.m | 15 +++++++++++---- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/modules/gui/minimal_macosx/intf.h b/modules/gui/minimal_macosx/intf.h index 8b4ae0d..93ab46c 100644 --- a/modules/gui/minimal_macosx/intf.h +++ b/modules/gui/minimal_macosx/intf.h @@ -47,5 +47,8 @@ struct intf_sys_t { int nothing_for_now; + + vlc_mutex_t lock; + vlc_cond_t wait; }; diff --git a/modules/gui/minimal_macosx/intf.m b/modules/gui/minimal_macosx/intf.m index 526bc70..9ad3d08 100644 --- a/modules/gui/minimal_macosx/intf.m +++ b/modules/gui/minimal_macosx/intf.m @@ -39,6 +39,7 @@ #include #include +#import #import @@ -98,12 +99,18 @@ static void * KillerThread( void *user_data ) intf_thread_t *p_intf = user_data; - vlc_object_lock ( p_intf ); + vlc_mutex_init( &p_intf->p_sys->lock ); + vlc_cond_init( &p_intf->p_sys->wait ); + + vlc_mutex_lock ( &p_intf->p_sys->lock ); while( vlc_object_alive( p_intf ) ) - vlc_object_wait( p_intf ); - vlc_object_unlock( p_intf ); + vlc_cond_wait( &p_intf->p_sys->wait, &p_intf->p_sys->lock ); + vlc_mutex_unlock( &p_intf->p_sys->lock ); + + vlc_mutex_destroy( &p_intf->p_sys->lock ); + vlc_cond_destroy( &p_intf->p_sys->wait ); - msg_Dbg( p_intf, "Killing the Mac OS X module" ); + msg_Dbg( p_intf, "Killing the Minimal Mac OS X module" ); /* We are dead, terminate */ [NSApp terminate: nil]; From git at videolan.org Mon Feb 16 00:41:41 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 00:41:41 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A__fixed_the_messages_pan?= =?utf-8?q?el_by_updating_the_code_to_the_current_API_=28_Felix_Paul_K?= =?utf-8?b?w7xobmUgKQ==?= Message-ID: <20090215234141.093E32F477@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Mon Feb 16 00:39:47 2009 +0100| [c2c76c6c49ce320e92c6d703ad98635b5bad1c87] | committer: Felix Paul K?hne macosx: fixed the messages panel by updating the code to the current API > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c2c76c6c49ce320e92c6d703ad98635b5bad1c87 --- .../Resources/English.lproj/MainMenu.nib/info.nib | 11 +- .../English.lproj/MainMenu.nib/keyedobjects.nib | Bin 119489 -> 119465 bytes modules/gui/macosx/intf.h | 13 +- modules/gui/macosx/intf.m | 139 +++++++++++--------- 4 files changed, 91 insertions(+), 72 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=c2c76c6c49ce320e92c6d703ad98635b5bad1c87 From git at videolan.org Mon Feb 16 00:41:41 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 00:41:41 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_updated_default_configs?= =?utf-8?q?_=28use_the_10=2E5_SDK_instead_of_10=2E4u=29_=28_Felix_Paul_K?= =?utf-8?b?w7xobmUgKQ==?= Message-ID: <20090215234141.27A5C2F47D@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Mon Feb 16 00:41:27 2009 +0100| [c318005be1b5281fe79f14d0e9d164e3da3424a0] | committer: Felix Paul K?hne macosx: updated default configs (use the 10.5 SDK instead of 10.4u) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c318005be1b5281fe79f14d0e9d164e3da3424a0 --- configure.ac | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 299beeb..21b09f1 100644 --- a/configure.ac +++ b/configure.ac @@ -217,8 +217,10 @@ case "${host_os}" in then echo "" echo "Building with Mac OS X defaults:" - with_macosx_version_min="10.4" - echo " Assuming --with-macosx-version-min=10.4" + with_macosx_version_min="10.5" + echo " Assuming --with-macosx-version-min=10.5" + with_macosx_sdk="/Developer/SDKs/MacOSX${with_macosx_version_min}.sdk" + echo " Assuming --with-macosx-sdk=/Developer/SDKs/MacOSX${with_macosx_version_min}.sdk" build_dir=`pwd` echo " Assuming --prefix=${build_dir}/vlc_install_dir" ac_default_prefix="${build_dir}/vlc_install_dir" @@ -1793,7 +1795,7 @@ dnl dnl Taglibplugin dnl AC_ARG_ENABLE(taglib, - [ --disable-taglib Taglib support (default enabled) ]) + [ --disable-taglib Taglib support (default enabled) ]) AS_IF([test "${enable_taglib}" != "no"],[ PKG_CHECK_MODULES(TAGLIB, taglib, [ AC_DEFINE( HAVE_TAGLIB, 1, [Define if you have taglib plugin built] ) From git at videolan.org Mon Feb 16 01:26:51 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 01:26:51 +0100 (CET) Subject: [vlc-devel] commit: Revert "Qt: deinline createStatusBar() and explicit statusBar creation." and Fix StatusBar - close #2523 ( Jean-Baptiste Kempf ) Message-ID: <20090216002651.029712F448@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 16 01:14:20 2009 +0100| [2cbbe8dc00667f5bd2c0601e46a5a402bef17e79] | committer: Jean-Baptiste Kempf Revert "Qt: deinline createStatusBar() and explicit statusBar creation." and Fix StatusBar - close #2523 This reverts commit f509b90d14a08b1fb6b4e6584c56e4ce5a6bb086. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2cbbe8dc00667f5bd2c0601e46a5a402bef17e79 --- modules/gui/qt4/main_interface.cpp | 31 ++++++++++++++++--------------- modules/gui/qt4/main_interface.hpp | 3 +-- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index 0dff96a..ada35f2 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -124,12 +124,22 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf ) /* Do we want anoying popups or not */ notificationEnabled = (bool)config_GetInt( p_intf, "qt-notification" ); + /************** + * Status Bar * + **************/ + createStatusBar(); + /************************** * UI and Widgets design **************************/ setVLCWindowsTitle(); handleMainUi( settings ); + /************ + * Menu Bar * + ************/ + QVLCMenu::createMenuBar( this, p_intf, visualSelectorEnabled ); + #if 0 /* Create a Dock to get the playlist */ dockPL = new QDockWidget( qtr( "Playlist" ), this ); @@ -142,14 +152,6 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf ) dockPL->hide(); #endif - /************************** - * Menu Bar and Status Bar - **************************/ - QVLCMenu::createMenuBar( this, p_intf, visualSelectorEnabled ); - - /* StatusBar Creation */ - setStatusBar( createStatusBar() ); - /******************** * Input Manager * ********************/ @@ -311,14 +313,14 @@ MainInterface::~MainInterface() * Main UI handling * *****************************/ -QStatusBar * MainInterface::createStatusBar() +inline void MainInterface::createStatusBar() { - QStatusBar *statusBar = new QStatusBar; - /**************** * Status Bar * ****************/ /* Widgets Creation*/ + QStatusBar *statusBarr = statusBar(); + TimeLabel *timeLabel = new TimeLabel( p_intf ); nameLabel = new QLabel( this ); nameLabel->setTextInteractionFlags( Qt::TextSelectableByMouse @@ -331,16 +333,15 @@ QStatusBar * MainInterface::createStatusBar() nameLabel->setFrameStyle( QFrame::Sunken | QFrame::StyledPanel); /* and adding those */ - statusBar->addWidget( nameLabel, 8 ); - statusBar->addPermanentWidget( speedLabel, 0 ); - statusBar->addPermanentWidget( timeLabel, 0 ); + statusBarr->addWidget( nameLabel, 8 ); + statusBarr->addPermanentWidget( speedLabel, 0 ); + statusBarr->addPermanentWidget( timeLabel, 0 ); /* timeLabel behaviour: - double clicking opens the goto time dialog - right-clicking and clicking just toggle between remaining and elapsed time.*/ CONNECT( timeLabel, timeLabelDoubleClicked(), THEDP, gotoTimeDialog() ); - return statusBar; } inline void MainInterface::initSystray() diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp index 8528171..95e0a78 100644 --- a/modules/gui/qt4/main_interface.hpp +++ b/modules/gui/qt4/main_interface.hpp @@ -49,7 +49,6 @@ class FullscreenControllerWidget; class SpeedControlWidget; class QMenu; class QSize; -class QStatusBar; enum { CONTROLS_HIDDEN = 0x0, @@ -118,7 +117,7 @@ private: void createSystray(); void initSystray(); - QStatusBar * createStatusBar(); + void createStatusBar(); /* Video */ VideoWidget *videoWidget; From git at videolan.org Mon Feb 16 08:28:40 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 08:28:40 +0100 (CET) Subject: [vlc-devel] commit: Qt: don't spam the log with too many debug messages... ( Jean-Baptiste Kempf ) Message-ID: <20090216072840.C468A2F4DC@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 16 08:27:31 2009 +0100| [ff9c8ae1c3c8b0f4bf9b245c5889b3101d748cae] | committer: Jean-Baptiste Kempf Qt: don't spam the log with too many debug messages... This doesn't solve the fact that ItemChanged_Type is called WAY too often... Fenrir, ILEoo, ideas? > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ff9c8ae1c3c8b0f4bf9b245c5889b3101d748cae --- modules/gui/qt4/input_manager.cpp | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 47ff756..ff50671 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -150,7 +150,8 @@ void InputManager::customEvent( QEvent *event ) #ifndef NDEBUG if( i_type != PositionUpdate_Type && - i_type != StatisticsUpdate_Type ) + i_type != StatisticsUpdate_Type && + i_type != ItemChanged_Type ) msg_Dbg( p_intf, "New Event: type %i", i_type ); #endif From jpd at m2x.nl Mon Feb 16 10:41:09 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Mon, 16 Feb 2009 10:41:09 +0100 (CET) Subject: [vlc-devel] [RFC] revision info causing rebuilding everything In-Reply-To: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> Message-ID: <21b1a620f70d66883fcdcb9d5c486462.squirrel@m2x.nl> On Fri, February 13, 2009 18:10, R??mi Denis-Courmont wrote: > - forces a relink of anything that links against libvlccore at every > make invocation. [snip] > > If we include revision infos, we need to relink every plugin (200+) > at every make. In my opinion, this is completely unacceptable. And > then, when doing one-shot release builds, revision infos are hardly > any use, since we have the release version number. Hence, I think, we > can realistically only choose between. Starting with the second, I think that a build number has some, but limited use: The main problems are that for each builder there needs to be a different number space, and the problem of tracking the build back to the source later. The former can be done by adding some tag to identify who built the tree. The alternative is to set a version tag by hand for each build, which adds up for non-release builds, and is easily forgotten. So, automated generation of a build tag does have merits. The latter points us to a possible solution: One could tag the build with the git commit identifier. If generating a build tag interferes with regular development then I would agree that the benefits do not outweigh the drawbacks. It probably is less of an issue to build something essentially equivalent into an automated build environment like, say, the one providing the nightly builds. Coming back to the first issue, and without having looked at the implementation but purely thinking about the theory, it strikes me as inefficient in the extreme if a single object can trigger a rebuild of everything else that essentially does not depend on its contents. Thus, I think that linking the modules against libvlccore.so is fine, but it may not become a make dependency for them: Shared objects should export a certain interface regardless of their build date. To ensure the make system will pick up API changes, the dependency for all shared objects including libvlccore.so should be set on the file exporting the API; the header file. The issues for static linking are a bit different, but even there the most a revision.o update may trigger is a relinking, not a full rebuild. Thus, I would postulate that if generating a build number at each build triggers a full rebuild of everything, then that is a (separate) problem with the build system. The obvious reason for such a situation would be to ensure that all modules have the same build number. On the other hand, if the build tag is automated anyway, then adding a build tag to each .so becomes a possibility. In fact, generating the build tag could be made to depend on all other files making up the implementation of the shared object it is to tag, instead of forcibly generating a new one at every build. The independence of the symbol containing the build information might for example be achieved by making the api to it a function and exporting that, not the (static) actual data, should it be necessairy. From olivier.aubert at liris.cnrs.fr Mon Feb 16 11:19:10 2009 From: olivier.aubert at liris.cnrs.fr (Olivier Aubert) Date: Mon, 16 Feb 2009 11:19:10 +0100 Subject: [vlc-devel] A VLC idea of mine In-Reply-To: <1f04f6fa0902141811o49a3b9d4o571372f6bb7c990e@mail.gmail.com> References: <1f04f6fa0902141811o49a3b9d4o571372f6bb7c990e@mail.gmail.com> Message-ID: <1234779550.31743.9.camel@pennylane> [cc: to vlc-devel, in case someone has more information about this] Hello Justin There has already been such a discussion on the web forum, see http://forum.videolan.org/viewtopic.php?f=7&t=39035&p=137313&hilit=censor#p137313 and http://forum.videolan.org/viewtopic.php?f=7&t=39035&start=15&hilit=advene A user apparently started to code it, but there have been no news since last june. You could try to get in touch with him to know where he left. >From the implementation POV, you can try to build such a dedicated player in python or java using the bindings, it is not that complicated. However, I think that for a better user coverage (and thus attaining a critical mass of users), it would be much better if it was integrated in the plain VLC, and thus be coded in C. A progressive path could start by quickly implementing a prototype in python/java, to see if there is some interest, and later implement it directly in VLC. For the edition part, I think that Advene ( http://www.advene.org/ ) could be useful for this, but I am biased... Olivier On Sat, 2009-02-14 at 18:11 -0800, Justin Spratt wrote: > Hello Olivier, > > I'm a VLC fan and promoter who is a computer science student, writing > to you from Vancouver, Canada. I have had an idea in the back of my > head for half a year and thought I'd see what you (and anyone else on > the VLC team) think about it. > > Basically, I know many families who would like to be able to filter > certain parts of videos. There are many great films that have a few > "unnecessary" scenes in them. I don't know if you have seen American > History X, but it has an important message, however, there are a few > scenes that some people would find morally objectionable. The people > at "ClearPlay" have a paid subscription solution for certain DVD > players, but VLC makes DVD players comparitivly inconveenient (for > example, I play all my DVDs from ISO images on my media server). > > The tool that I have in mind would take a database file of "exception > codes" (for example, 1 for profanity, 2 for pornographic scenes, etc.) > and time segments (the time codes of where the exception begins and > ends) and merge these will the film in realtime (as the file was > playing). > > I believe that this would not be an extreemly difficult tool to build > and I realize that it would be somewhat useless unless it had a > database of film "exception code" dababase files. I believe that a > community-based approach could result in a free, online database of > these files. Perhaps a "video editing" tool with a file output could > be merged with such an online database. VLC could be combined with > some way of graphicly indicating that, for example, "The time between > A and B is sexualy explicit" or, "The time between C and D is > profanity", etc. The results could be exported and uploaded to a host > site. > > Please write me if the VLC team has any interest in this or if they > have any suggestions as to where I could go for some help on this. > > I write in Python, Java and SQL and I plan on learning C#. > > Sincerely, > Justin Spratt > > You are permitted to forward this email to whomever you wish. You are > free to use the ideas herein without reference to myself. From rdenis at simphalempin.com Mon Feb 16 12:21:37 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Mon, 16 Feb 2009 12:21:37 +0100 Subject: [vlc-devel] [RFC] revision info causing rebuilding everything In-Reply-To: <21b1a620f70d66883fcdcb9d5c486462.squirrel@m2x.nl> References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> <21b1a620f70d66883fcdcb9d5c486462.squirrel@m2x.nl> Message-ID: Hello, On Mon, 16 Feb 2009 10:41:09 +0100 (CET), jpd at m2x.nl wrote: > Starting with the second, I think that a build number has some, but > limited use: The main problems are that for each builder there needs > to be a different number space, and the problem of tracking the build > back to the source later. That depends what you're tracking. git-describe gives a string that does uniquely identify the last commit since it contains the commit hash. Assuming the build tree has no unstaged changes, you can track the build back to the exact source. If I recall correctly, we also include the configure line, build host, and compiler infos. So let alone underlying library issues, our version tracking was quite accurate. > The former can be done by adding some tag to identify who built the tree. > The alternative is to set a version tag by > hand for each build, which adds up for non-release builds, and is easily > forgotten. We used git-describe, which does that automagically. > So, automated generation of a build tag does have merits. > The latter points us to a possible solution: One could tag the build > with the git commit identifier. That is what we did. > If generating a build tag interferes with regular development > then I would agree that the benefits do not outweigh the drawbacks. > It probably is less of an issue to build something > essentially equivalent into an automated build environment like, say, the > one providing the nightly builds. Last time they worked, nightly did not always rebuild everything either. Yet the build bots were already quite busy. > Coming back to the first issue, and without having looked at the > implementation but purely thinking about the theory, it strikes me as > inefficient in the extreme if a single object can trigger a rebuild of > everything else that essentially does not depend on its contents. I don't disagree but that's how make work. It only checks timestamps. It could use something more clever, such as some hash of the file, but that would not solve this particular problem anyway. In theory, the libvlccore symbol lists would be a better "dependency". I will check if this works. According to the automake documentation it should be do-able. > Thus, I think that linking the modules against libvlccore.so is fine, > but it may not become a make dependency for them: Shared objects should > export a certain interface regardless of their build date. To ensure the > make system will pick up API changes, the dependency for all shared > objects including libvlccore.so should be set on the file exporting the API; > the header file. Unfortunately, that's a "feature" of automake. > The issues for static linking are a bit different, but even there the > most a revision.o update may trigger is a relinking, not a full rebuild. Statically linking plugins against libvlccore does not work. We would have to get rid of all static data inside libvlccore first. Who's going to bother when it would anyway make VLC even larger on disk for no obvious benefit. I think we can ignore this problem. > Thus, I would postulate that if generating a build number at each build > triggers a full rebuild of everything, then that is a (separate) problem > with the build system. The obvious reason for such a situation would be > to ensure that all modules have the same build number. On the other hand, > if the build tag is automated anyway, then adding a build tag to each .so > becomes a possibility. I don't disagree. My point was just that I would have appreciated if the one adding the build number had also been the one trying to integrate it properly within the build system. Instead that was committed and never fixed after my objections. Then I reverted it, and it was re-committed (way back). Then I broke it up silently instead, and then it was not re-re-comitted until this 1.0 linking changes. > In fact, generating the build tag could be made to depend on all other > files making up the implementation of the shared object it is to tag, > instead of forcibly generating a new one at every build. That's unrealistic with the current build system. -- R?mi Denis-Courmont From xtophe at chewa.net Mon Feb 16 13:03:04 2009 From: xtophe at chewa.net (Christophe Mutricy) Date: Mon, 16 Feb 2009 12:03:04 +0000 Subject: [vlc-devel] [RFC] revision info causing rebuilding everything In-Reply-To: References: <27683ba52604b7a3fe15a7f5a4c8b0d9@chewa.net> <21b1a620f70d66883fcdcb9d5c486462.squirrel@m2x.nl> Message-ID: <518b23170902160403t71f84385oa0fda2a416ef77b3@mail.gmail.com> >> If generating a build tag interferes with regular development >> then I would agree that the benefits do not outweigh the drawbacks. >> It probably is less of an issue to build something >> essentially equivalent into an automated build environment like, say, the >> one providing the nightly builds. > > Last time they worked, nightly did not always rebuild everything either. > Yet the build bots were already quite busy. Yes and no. The "continuous integration" i.e the ones built after every git push just rebuild what's necessary. And that can get busy as three of the buildslave are on altair when people are busy fixing bugs or commit on master and 0.9-bugfix at the same time. The "nightlies" which are available on http://nightlies.videolan.org are built from a clean tree. their build time is less of a problem becasue we can start them in a staggered maner and at a time of the night where push by developers are unlikely (european night) As we rebuilding every thing for the nightlies, for some OS there is a sed on configure.ac to append the date (and time) after the -git in the version number. So that the version inside vlc reflect the build date of the nighly but also the packages have the date in their name (.tar.bz2, .deb, .exe, ...) -- Xtophe From abethke at oamk.fi Mon Feb 16 13:27:46 2009 From: abethke at oamk.fi (Alexander Bethke) Date: Mon, 16 Feb 2009 14:27:46 +0200 Subject: [vlc-devel] jvlc: Getting any response from VLM In-Reply-To: <20090110235458.093B82D203@skanda.videolan.org> References: <20090110235458.093B82D203@skanda.videolan.org> Message-ID: <49995BC2.7000509@oamk.fi> Hi everybody, I am trying to implement a live transcoding controller that wraps VLM via jvlc. Sending a command to VLM works fine, but it seems there is no way to get information back from jvlc. I understand that there is no fancy playback event handling with jvlc>VLM like when using jvlc as a player with MediaDescriptor. But what I don't understand is why no VLM method throws a VLCException. showMedia has return type void and I don't get any console logging from any VLM command (apart from actual VLC logging, when VLM triggered it right). Am I getting something wrong? Or is that just unimplemented? It would be great if the VLM methods could throw exceptions and if showMedia would at least return a String. I'd love to help out if I can, but I'm new to JNA and no C programmer. I understand that this might be a flaw in the actual VLM implementation. A push into the right direction might enable me to do something simpler though. Regards and thanks, Alex From git at videolan.org Mon Feb 16 13:57:32 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 13:57:32 +0100 (CET) Subject: [vlc-devel] commit: Revert "QT4: connect signal from inputmanager metaChanged to playlist-model so it updates item ." (Ilkka Ollakka ) Message-ID: <20090216125732.5F79F2F560@skanda.videolan.org> vlc | branch: master | Ilkka Ollakka | Mon Feb 16 14:55:11 2009 +0200| [e49255cb910661e5a878297cc688d48b6e84fe46] | committer: Ilkka Ollakka Revert "QT4: connect signal from inputmanager metaChanged to playlist-model so it updates item." This reverts commit 394a9e2c128f34c183a2c4d9b7efc5ca5679afa7. This doesn't really fix the issues, so better to revert and rework it. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e49255cb910661e5a878297cc688d48b6e84fe46 --- .../gui/qt4/components/playlist/playlist_model.cpp | 11 ----------- .../gui/qt4/components/playlist/playlist_model.hpp | 1 - src/input/event.c | 5 +---- 3 files changed, 1 insertions(+), 16 deletions(-) diff --git a/modules/gui/qt4/components/playlist/playlist_model.cpp b/modules/gui/qt4/components/playlist/playlist_model.cpp index eb1d55c..4cb8c2c 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.cpp +++ b/modules/gui/qt4/components/playlist/playlist_model.cpp @@ -528,14 +528,6 @@ void PLModel::customEvent( QEvent *event ) rebuild(); } -void PLModel::updateMeta ( input_item_t *p_item ) -{ - if( p_item ) - { - ProcessInputItemUpdate( p_item->i_id ); - } -} - /**** Events processing ****/ void PLModel::ProcessInputItemUpdate( int i_input_id ) { @@ -631,9 +623,6 @@ void PLModel::rebuild( playlist_item_t *p_root ) /* And signal the view */ emit layoutChanged(); addCallbacks(); - /* Connect item update for metachanges */ - CONNECT( THEMIM->getIM(), metaChanged( input_item_t *), - this, updateMeta( input_item_t *) ); } /* This function must be entered WITH the playlist lock */ diff --git a/modules/gui/qt4/components/playlist/playlist_model.hpp b/modules/gui/qt4/components/playlist/playlist_model.hpp index 1057e2f..2dcaccb 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.hpp +++ b/modules/gui/qt4/components/playlist/playlist_model.hpp @@ -178,7 +178,6 @@ private slots: void popupSave(); void popupExplore(); void viewchanged( int ); - void updateMeta( input_item_t * ); }; #endif diff --git a/src/input/event.c b/src/input/event.c index 9fde713..9224478 100644 --- a/src/input/event.c +++ b/src/input/event.c @@ -69,12 +69,9 @@ void input_SendEventTimes( input_thread_t *p_input, val.i_time = i_time; var_Change( p_input, "time", VLC_VAR_SETVALUE, &val, NULL ); - /* FIXME ugly */ + /* FIXME ugly + what about meta change event ? */ if( var_GetTime( p_input, "length" ) != i_length ) - { input_item_SetDuration( p_input->p->p_item, i_length ); - input_SendEventMeta( p_input ); - } val.i_time = i_length; var_Change( p_input, "length", VLC_VAR_SETVALUE, &val, NULL ); From git at videolan.org Mon Feb 16 16:06:40 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 16:06:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_calloc_usage=2E_=28_R=C3=A9mi_Dur?= =?utf-8?q?affort_=29?= Message-ID: <20090216150640.774AD2F556@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Mon Feb 16 16:05:26 2009 +0100| [1791475618d2b251c3f9325fbaf1a54ec508886a] | committer: R?mi Duraffort calloc usage. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1791475618d2b251c3f9325fbaf1a54ec508886a --- modules/access/zip/zipaccess.c | 2 +- modules/access/zip/zipstream.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/access/zip/zipaccess.c b/modules/access/zip/zipaccess.c index d60f3dc..3689e12 100644 --- a/modules/access/zip/zipaccess.c +++ b/modules/access/zip/zipaccess.c @@ -67,7 +67,7 @@ int AccessOpen( vlc_object_t *p_this ) char *psz_pathToZip = NULL, *psz_path = NULL, *psz_sep = NULL; p_access->p_sys = p_sys = (access_sys_t*) - calloc( sizeof( access_sys_t ), 1 ); + calloc( 1, sizeof( access_sys_t ) ); if( !p_sys ) return VLC_ENOMEM; diff --git a/modules/access/zip/zipstream.c b/modules/access/zip/zipstream.c index 663483a..9616f3e 100644 --- a/modules/access/zip/zipstream.c +++ b/modules/access/zip/zipstream.c @@ -178,7 +178,7 @@ int StreamOpen( vlc_object_t *p_this ) if( memcmp( p_peek, p_zip_marker, i_zip_marker ) ) return VLC_EGENERIC; - s->p_sys = p_sys = calloc( sizeof( *p_sys ), 1 ); + s->p_sys = p_sys = calloc( 1, sizeof( *p_sys ) ); if( !p_sys ) return VLC_ENOMEM; From filippo at carone.org Mon Feb 16 17:44:31 2009 From: filippo at carone.org (Filippo Carone) Date: Mon, 16 Feb 2009 17:44:31 +0100 Subject: [vlc-devel] jvlc: Getting any response from VLM In-Reply-To: <49995BC2.7000509@oamk.fi> References: <20090110235458.093B82D203@skanda.videolan.org> <49995BC2.7000509@oamk.fi> Message-ID: <499997EF.1030200@carone.org> Alexander Bethke ha scritto: > Hi everybody, > > I am trying to implement a live transcoding controller that wraps VLM > via jvlc. Sending a command to VLM works fine, but it seems there is no > way to get information back from jvlc. I understand that there is no > fancy playback event handling with jvlc>VLM like when using jvlc as a > player with MediaDescriptor. But what I don't understand is why no VLM > method throws a VLCException. showMedia has return type void and I don't > get any console logging from any VLM command (apart from actual VLC > logging, when VLM triggered it right). > Am I getting something wrong? Or is that just unimplemented? > Hi Alexander, VLM methods in JVLC should throw exceptions just like other JVLC methods. The current implementation throws exceptions away, but if you need exceptions now you may consider using org.videolan.jvlc.internal.LibVlc.libvlc_vlm_* methods which fill the libvlc_exception_t class correctly. The best would be to check the status of the libvlc_exception_t class in VLM.java and throw the VLCException accordingly. Any patch will be kindly accepted ;) Cheers, Filippo From rem at videolan.org Mon Feb 16 20:01:30 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Mon, 16 Feb 2009 21:01:30 +0200 Subject: [vlc-devel] broken vlc-plugin.pc ? In-Reply-To: <1e0b1f250902151454kea97ae5mbb706637b7f2d9fe@mail.gmail.com> References: <1e0b1f250902151454kea97ae5mbb706637b7f2d9fe@mail.gmail.com> Message-ID: <200902162101.30836.rem@videolan.org> Le lundi 16 f?vrier 2009 00:54:12 Ben(jamin) GERARD, vous avez ?crit?: > My guess is that you have forgotten AC_SUBST() in a configure.ac file. > AFAIK pkgincludedir is not listed in automake documentation for been > automatically substituted. Hmm, right. The variable is defined in Makefile but not in config.status. AC_SUBST won't fix it. We just need to set it manually :( -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Mon Feb 16 20:24:19 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 20:24:19 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_pkgincludedir_in_vlc-plugin?= =?utf-8?q?=2Epc_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090216192419.CA5D12EE7F@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 16 21:23:39 2009 +0200| [6cc964b5770ed5840eb6b039cb2a033d0673bc55] | committer: R?mi Denis-Courmont Fix pkgincludedir in vlc-plugin.pc Pointed-out-by: Benjamin Gerard > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6cc964b5770ed5840eb6b039cb2a033d0673bc55 --- src/vlc-plugin.pc.in | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/vlc-plugin.pc.in b/src/vlc-plugin.pc.in index a359571..b20d489 100644 --- a/src/vlc-plugin.pc.in +++ b/src/vlc-plugin.pc.in @@ -2,7 +2,7 @@ prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ -pkgincludedir=@pkgincludedir@ +pkgincludedir=@includedir@/@PACKAGE@ PKGDIR=@PKGDIR@ vlclibdir=@vlclibdir@ From git at videolan.org Mon Feb 16 21:13:45 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 21:13:45 +0100 (CET) Subject: [vlc-devel] commit: Suppport AAC LATM inside PS (with a PSM). (Laurent Aimar ) Message-ID: <20090216201345.B87732F4E8@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 19:51:54 2009 +0100| [337b63e85fca1fdcf3967053e68540413ad60ee4] | committer: Laurent Aimar Suppport AAC LATM inside PS (with a PSM). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=337b63e85fca1fdcf3967053e68540413ad60ee4 --- modules/demux/ps.h | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/modules/demux/ps.h b/modules/demux/ps.h index eb4f762..fed3ab0 100644 --- a/modules/demux/ps.h +++ b/modules/demux/ps.h @@ -147,6 +147,10 @@ static inline int ps_track_fill( ps_track_t *tk, ps_psm_t *p_psm, int i_id ) { es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('m','p','4','a') ); } + else if( ( i_id&0xe0 ) == 0xc0 && i_type == 0x11 ) + { + es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('m','p','4','a') ); + } else if( ( i_id&0xe0 ) == 0xc0 && i_type == 0x03 ) { es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('m','p','g','a') ); From git at videolan.org Mon Feb 16 21:13:46 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 21:13:46 +0100 (CET) Subject: [vlc-devel] commit: Removed or privatized playlist functions. (Laurent Aimar ) Message-ID: <20090216201346.7835F2F526@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 20:50:31 2009 +0100| [0969e58f452d3ad9f36b96122c401f4151c0e45f] | committer: Laurent Aimar Removed or privatized playlist functions. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0969e58f452d3ad9f36b96122c401f4151c0e45f --- include/vlc_playlist.h | 10 +--------- modules/gui/wince/playlist.cpp | 3 +-- modules/services_discovery/upnp_intel.cpp | 8 -------- src/control/playlist.c | 7 +++++-- src/libvlccore.sym | 6 ------ src/playlist/engine.c | 13 +------------ src/playlist/item.c | 10 ++++++---- src/playlist/playlist_internal.h | 5 +++++ src/playlist/tree.c | 29 ----------------------------- 9 files changed, 19 insertions(+), 72 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=0969e58f452d3ad9f36b96122c401f4151c0e45f From git at videolan.org Mon Feb 16 21:13:46 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 21:13:46 +0100 (CET) Subject: [vlc-devel] commit: Added missing lock assert to playlist_CurrentPlayingItem and playlist_Status . (Laurent Aimar ) Message-ID: <20090216201346.8EFC72F51C@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 20:54:18 2009 +0100| [567a3b099a789ce689d466b3920ef4e8e14ebc37] | committer: Laurent Aimar Added missing lock assert to playlist_CurrentPlayingItem and playlist_Status. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=567a3b099a789ce689d466b3920ef4e8e14ebc37 --- src/playlist/engine.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/src/playlist/engine.c b/src/playlist/engine.c index 8b8b792..0048033 100644 --- a/src/playlist/engine.c +++ b/src/playlist/engine.c @@ -304,11 +304,15 @@ static void VariablesInit( playlist_t *p_playlist ) playlist_item_t * playlist_CurrentPlayingItem( playlist_t * p_playlist ) { + PL_ASSERT_LOCKED; + return pl_priv(p_playlist)->status.p_item; } int playlist_Status( playlist_t * p_playlist ) { + PL_ASSERT_LOCKED; + return pl_priv(p_playlist)->status.i_status; } From git at videolan.org Mon Feb 16 21:13:46 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 21:13:46 +0100 (CET) Subject: [vlc-devel] commit: Cosmetics. (Laurent Aimar ) Message-ID: <20090216201346.9FAF22F519@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 21:03:39 2009 +0100| [c5687adeae1a4f9488b8e8c1c311f4216f5a157e] | committer: Laurent Aimar Cosmetics. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c5687adeae1a4f9488b8e8c1c311f4216f5a157e --- src/playlist/control.c | 17 +++++------------ src/playlist/engine.c | 13 ++++--------- 2 files changed, 9 insertions(+), 21 deletions(-) diff --git a/src/playlist/control.c b/src/playlist/control.c index f9260e0..7e1b376 100644 --- a/src/playlist/control.c +++ b/src/playlist/control.c @@ -98,7 +98,6 @@ int playlist_Control( playlist_t * p_playlist, int i_query, static int PlaylistVAControl( playlist_t * p_playlist, int i_query, va_list args ) { playlist_item_t *p_item, *p_node; - vlc_value_t val; PL_ASSERT_LOCKED; @@ -138,8 +137,7 @@ static int PlaylistVAControl( playlist_t * p_playlist, int i_query, va_list args case PLAYLIST_PLAY: if( pl_priv(p_playlist)->p_input ) { - val.i_int = PLAYING_S; - var_Set( pl_priv(p_playlist)->p_input, "state", val ); + var_SetInteger( pl_priv(p_playlist)->p_input, "state", PLAYING_S ); break; } else @@ -153,17 +151,13 @@ static int PlaylistVAControl( playlist_t * p_playlist, int i_query, va_list args break; case PLAYLIST_PAUSE: - val.i_int = 0; - if( pl_priv(p_playlist)->p_input ) - var_Get( pl_priv(p_playlist)->p_input, "state", &val ); - - if( val.i_int == PAUSE_S ) + if( pl_priv(p_playlist)->p_input && + var_GetInteger( pl_priv(p_playlist)->p_input, "state" ) == PAUSE_S ) { pl_priv(p_playlist)->status.i_status = PLAYLIST_RUNNING; if( pl_priv(p_playlist)->p_input ) { - val.i_int = PLAYING_S; - var_Set( pl_priv(p_playlist)->p_input, "state", val ); + var_SetInteger( pl_priv(p_playlist)->p_input, "state", PLAYING_S ); } } else @@ -171,8 +165,7 @@ static int PlaylistVAControl( playlist_t * p_playlist, int i_query, va_list args pl_priv(p_playlist)->status.i_status = PLAYLIST_PAUSED; if( pl_priv(p_playlist)->p_input ) { - val.i_int = PAUSE_S; - var_Set( pl_priv(p_playlist)->p_input, "state", val ); + var_SetInteger( pl_priv(p_playlist)->p_input, "state", PAUSE_S ); } } break; diff --git a/src/playlist/engine.c b/src/playlist/engine.c index 0048033..cd363ec 100644 --- a/src/playlist/engine.c +++ b/src/playlist/engine.c @@ -266,25 +266,20 @@ void set_current_status_node( playlist_t * p_playlist, static void VariablesInit( playlist_t *p_playlist ) { - vlc_value_t val; /* These variables control updates */ var_Create( p_playlist, "intf-change", VLC_VAR_BOOL ); - val.b_bool = true; - var_Set( p_playlist, "intf-change", val ); + var_SetBool( p_playlist, "intf-change", true ); var_Create( p_playlist, "item-change", VLC_VAR_INTEGER ); - val.i_int = -1; - var_Set( p_playlist, "item-change", val ); + var_SetInteger( p_playlist, "item-change", -1 ); var_Create( p_playlist, "item-deleted", VLC_VAR_INTEGER ); - val.i_int = -1; - var_Set( p_playlist, "item-deleted", val ); + var_SetInteger( p_playlist, "item-deleted", -1 ); var_Create( p_playlist, "item-append", VLC_VAR_ADDRESS ); var_Create( p_playlist, "playlist-current", VLC_VAR_INTEGER ); - val.i_int = -1; - var_Set( p_playlist, "playlist-current", val ); + var_SetInteger( p_playlist, "playlist-current", -1 ); var_Create( p_playlist, "activity", VLC_VAR_INTEGER ); var_SetInteger( p_playlist, "activity", 0 ); From git at videolan.org Mon Feb 16 22:09:34 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 22:09:34 +0100 (CET) Subject: [vlc-devel] commit: Modify playlist code to always use input_item_t->i_id in " item-change" callback. (Laurent Aimar ) Message-ID: <20090216210934.A3EAF2F52E@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 21:33:43 2009 +0100| [aaa0d27584304a53f5f413f9b7a7f1b77d22c24e] | committer: Laurent Aimar Modify playlist code to always use input_item_t->i_id in "item-change" callback. The previous code mixed up playlist_item_t->i_id and input_item_t->i_id and so this callback was unusable. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=aaa0d27584304a53f5f413f9b7a7f1b77d22c24e --- include/vlc_playlist.h | 8 ++++++++ src/playlist/item.c | 9 ++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/include/vlc_playlist.h b/include/vlc_playlist.h index 12521b7..6fbd4a1 100644 --- a/include/vlc_playlist.h +++ b/include/vlc_playlist.h @@ -114,6 +114,14 @@ TYPEDEF_ARRAY(playlist_item_t*, playlist_item_array_t); * To delete an item, use playlist_DeleteFromInput( input_id ) which will * remove all occurrences of the input in both trees * + * + * The playlist defines the following event variables: + * - "item-change": It will contains the input_item_t->i_id of a changed input + * item monitored by the playlist. + * + * XXX Be really carefull, playlist_item_t->i_id and input_item_t->i_id are not + * the same. + * * @{ */ diff --git a/src/playlist/item.c b/src/playlist/item.c index e8179b1..383771a 100644 --- a/src/playlist/item.c +++ b/src/playlist/item.c @@ -115,9 +115,9 @@ static void input_item_subitem_added( const vlc_event_t * p_event, static void input_item_changed( const vlc_event_t * p_event, void * user_data ) { - (void)p_event; - playlist_item_t * p_item = user_data; - var_SetInteger( p_item->p_playlist, "item-change", p_item->i_id ); + playlist_item_t *p_item = user_data; + VLC_UNUSED( p_event ); + var_SetInteger( p_item->p_playlist, "item-change", p_item->p_input->i_id ); } /***************************************************************************** @@ -624,8 +624,7 @@ static playlist_item_t *ItemToNode( playlist_t *p_playlist, } pl_priv(p_playlist)->b_reset_currently_playing = true; vlc_cond_signal( &pl_priv(p_playlist)->signal ); - var_SetInteger( p_playlist, "item-change", p_item_in_category-> - p_input->i_id ); + var_SetInteger( p_playlist, "item-change", p_item_in_category->p_input->i_id ); PL_UNLOCK_IF( !b_locked ); return p_item_in_category; } From git at videolan.org Mon Feb 16 22:09:34 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 22:09:34 +0100 (CET) Subject: [vlc-devel] commit: "item-remove" does not exist (dbus). (Laurent Aimar ) Message-ID: <20090216210934.BCD602F53C@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 21:41:13 2009 +0100| [2522756ed78467e612dfbe5d9761945d0619d64a] | committer: Laurent Aimar "item-remove" does not exist (dbus). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2522756ed78467e612dfbe5d9761945d0619d64a --- modules/control/dbus.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/control/dbus.c b/modules/control/dbus.c index 3d1390f..1cf6b18 100644 --- a/modules/control/dbus.c +++ b/modules/control/dbus.c @@ -861,7 +861,7 @@ static int TrackListChangeEmit( vlc_object_t *p_this, const char *psz_var, VLC_UNUSED(oldval); intf_thread_t *p_intf = p_data; - if( !strcmp( psz_var, "item-append" ) || !strcmp( psz_var, "item-remove" ) ) + if( !strcmp( psz_var, "item-append" ) ) { /* don't signal when items are added/removed in p_category */ playlist_t *p_playlist = (playlist_t*)p_this; From git at videolan.org Mon Feb 16 22:09:34 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 22:09:34 +0100 (CET) Subject: [vlc-devel] commit: Document a bit playlist event variable. (Laurent Aimar ) Message-ID: <20090216210934.CE0FB2B1A4@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 22:05:02 2009 +0100| [1f029c7029004c293684a54d7adba593f332c31b] | committer: Laurent Aimar Document a bit playlist event variable. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1f029c7029004c293684a54d7adba593f332c31b --- include/vlc_playlist.h | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/include/vlc_playlist.h b/include/vlc_playlist.h index 6fbd4a1..dd16486 100644 --- a/include/vlc_playlist.h +++ b/include/vlc_playlist.h @@ -118,9 +118,14 @@ TYPEDEF_ARRAY(playlist_item_t*, playlist_item_array_t); * The playlist defines the following event variables: * - "item-change": It will contains the input_item_t->i_id of a changed input * item monitored by the playlist. + * - "item-deleted": It will contains the playlist_item_t->i_id of a deleted + * playlist_item_t. + * - "item-append": It will contains a pointer to a playlist_add_t. + * - "playlist-current": It will contains a input_item_t->i_id of the current + * item being played. * * XXX Be really carefull, playlist_item_t->i_id and input_item_t->i_id are not - * the same. + * the same. Yes, the situation is pretty bad. * * @{ */ From fenrir at via.ecp.fr Mon Feb 16 22:15:20 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 16 Feb 2009 22:15:20 +0100 Subject: [vlc-devel] commit: Modify playlist code to always use input_item_t->i_id in " item-change" callback. (Laurent Aimar ) In-Reply-To: <20090216210934.A3EAF2F52E@skanda.videolan.org> References: <20090216210934.A3EAF2F52E@skanda.videolan.org> Message-ID: <20090216211519.GA28436@via.ecp.fr> On Mon, Feb 16, 2009, git version control wrote: > vlc | branch: master | Laurent Aimar | Mon Feb 16 21:33:43 2009 +0100| [aaa0d27584304a53f5f413f9b7a7f1b77d22c24e] | committer: Laurent Aimar > > Modify playlist code to always use input_item_t->i_id in "item-change" callback. > > The previous code mixed up playlist_item_t->i_id and input_item_t->i_id and > so this callback was unusable. I advise all interface maintainers to check their code (the following commits add a bit of playlist event variables documentation). -- fenrir From git at videolan.org Mon Feb 16 22:32:12 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 22:32:12 +0100 (CET) Subject: [vlc-devel] commit: Renamed playlist "playlist-current" to "item-current". ( Laurent Aimar ) Message-ID: <20090216213212.E85F32F51D@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 22:24:38 2009 +0100| [bf099fea1fbc4f6290daf9ebe0365451455ded82] | committer: Laurent Aimar Renamed playlist "playlist-current" to "item-current". > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bf099fea1fbc4f6290daf9ebe0365451455ded82 --- include/vlc_playlist.h | 8 +++++--- modules/control/dbus.c | 6 +++--- modules/gui/beos/InterfaceWindow.cpp | 2 +- modules/gui/macosx/intf.m | 4 ++-- modules/gui/maemo/maemo.c | 4 ++-- .../gui/qt4/components/playlist/playlist_model.cpp | 4 ++-- modules/gui/qt4/input_manager.cpp | 6 +++--- modules/gui/skins2/src/vlcproc.cpp | 4 ++-- modules/misc/audioscrobbler.c | 4 ++-- modules/misc/lua/libs/playlist.c | 2 +- modules/misc/notify/growl.m | 4 ++-- modules/misc/notify/growl_udp.c | 4 ++-- modules/misc/notify/msn.c | 4 ++-- modules/misc/notify/notify.c | 4 ++-- modules/misc/notify/telepathy.c | 8 ++++---- modules/misc/notify/xosd.c | 4 ++-- src/playlist/engine.c | 4 ++-- src/playlist/thread.c | 2 +- 18 files changed, 40 insertions(+), 38 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=bf099fea1fbc4f6290daf9ebe0365451455ded82 From git at videolan.org Mon Feb 16 22:32:13 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 22:32:13 +0100 (CET) Subject: [vlc-devel] commit: Renamed playlist "item-append/deleted" to "playlist-item-append/ deleted". (Laurent Aimar ) Message-ID: <20090216213213.0E0F02F573@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 22:30:58 2009 +0100| [8a163fd8273e5feaa366c2a4dacc0eb75d0dbf77] | committer: Laurent Aimar Renamed playlist "item-append/deleted" to "playlist-item-append/deleted". I hope they will reduce the risk of error until the playlist API is rewritten. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8a163fd8273e5feaa366c2a4dacc0eb75d0dbf77 --- include/vlc_playlist.h | 4 ++-- modules/control/dbus.c | 10 +++++----- modules/gui/beos/InterfaceWindow.cpp | 4 ++-- modules/gui/macosx/intf.m | 8 ++++---- modules/gui/ncurses.c | 4 ++-- .../gui/qt4/components/playlist/playlist_model.cpp | 8 ++++---- modules/gui/skins2/src/vlcproc.cpp | 8 ++++---- src/playlist/engine.c | 6 +++--- src/playlist/item.c | 4 ++-- src/playlist/tree.c | 2 +- 10 files changed, 29 insertions(+), 29 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=8a163fd8273e5feaa366c2a4dacc0eb75d0dbf77 From git at videolan.org Mon Feb 16 22:46:44 2009 From: git at videolan.org (git version control) Date: Mon, 16 Feb 2009 22:46:44 +0100 (CET) Subject: [vlc-devel] commit: Removed unused field and clean up (playlist). (Laurent Aimar ) Message-ID: <20090216214644.A910B2F540@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 16 22:46:16 2009 +0100| [3fae03b32f4d08daac07f1d4059b7f79da3585d1] | committer: Laurent Aimar Removed unused field and clean up (playlist). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3fae03b32f4d08daac07f1d4059b7f79da3585d1 --- include/vlc_playlist.h | 5 ++--- src/playlist/item.c | 34 +++++++++++++--------------------- 2 files changed, 15 insertions(+), 24 deletions(-) diff --git a/include/vlc_playlist.h b/include/vlc_playlist.h index ea02b7a..fc2b808 100644 --- a/include/vlc_playlist.h +++ b/include/vlc_playlist.h @@ -188,9 +188,8 @@ struct playlist_t /** Helper to add an item */ struct playlist_add_t { - int i_node; - int i_item; - int i_position; + int i_node; /**< Playist id of the parent node */ + int i_item; /**< Playist id of the playlist_item_t */ }; enum diff --git a/src/playlist/item.c b/src/playlist/item.c index 6cee468..5e3463c 100644 --- a/src/playlist/item.c +++ b/src/playlist/item.c @@ -775,22 +775,21 @@ int playlist_TreeMove( playlist_t * p_playlist, playlist_item_t *p_item, void playlist_SendAddNotify( playlist_t *p_playlist, int i_item_id, int i_node_id, bool b_signal ) { - vlc_value_t val; + playlist_private_t *p_sys = pl_priv(p_playlist); PL_ASSERT_LOCKED; - playlist_add_t *p_add = (playlist_add_t *)malloc( sizeof( playlist_add_t) ); - if( !p_add ) - return; - - p_add->i_item = i_item_id; - p_add->i_node = i_node_id; - val.p_address = p_add; - pl_priv(p_playlist)->b_reset_currently_playing = true; + p_sys->b_reset_currently_playing = true; if( b_signal ) - vlc_cond_signal( &pl_priv(p_playlist)->signal ); + vlc_cond_signal( &p_sys->signal ); + + playlist_add_t add; + add.i_item = i_item_id; + add.i_node = i_node_id; + + vlc_value_t val; + val.p_address = &add; var_Set( p_playlist, "playlist-item-append", val ); - free( p_add ); } /*************************************************************************** @@ -900,17 +899,10 @@ static int DeleteInner( playlist_t * p_playlist, playlist_item_t *p_item, ARRAY_REMOVE( p_playlist->items, i ); /* Check if it is the current item */ - if( get_current_status_item( p_playlist ) == p_item ) + if( get_current_status_item( p_playlist ) == p_item && b_stop ) { - /* Hack we don't call playlist_Control for lock reasons */ - if( b_stop ) - { - pl_priv(p_playlist)->request.i_status = PLAYLIST_STOPPED; - pl_priv(p_playlist)->request.b_request = true; - pl_priv(p_playlist)->request.p_item = NULL; - msg_Info( p_playlist, "stopping playback" ); - vlc_cond_signal( &pl_priv(p_playlist)->signal ); - } + playlist_Control( p_playlist, PLAYLIST_STOP, pl_Locked ); + msg_Info( p_playlist, "stopping playback" ); } PL_DEBUG( "deleting item `%s'", p_item->p_input->psz_name ); From fenrir at via.ecp.fr Mon Feb 16 22:51:47 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Mon, 16 Feb 2009 22:51:47 +0100 Subject: [vlc-devel] commit: Qt: don't spam the log with too many debug messages... ( Jean-Baptiste Kempf ) In-Reply-To: <20090216072840.C468A2F4DC@skanda.videolan.org> References: <20090216072840.C468A2F4DC@skanda.videolan.org> Message-ID: <20090216215147.GA32748@via.ecp.fr> On Mon, Feb 16, 2009, git version control wrote: > vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 16 08:27:31 2009 +0100| [ff9c8ae1c3c8b0f4bf9b245c5889b3101d748cae] | committer: Jean-Baptiste Kempf > > Qt: don't spam the log with too many debug messages... > > This doesn't solve the fact that ItemChanged_Type is called WAY too often... Fenrir, ILEoo, ideas? ItemChanged_Type is called every time input_item_t->infos are changed. In the current input core, the changes are done one entry at a time instead of sending one event once all entries have been updated, generating a lot of event. If it creates a noticable performance problem I could look into it. -- fenrir From git at videolan.org Tue Feb 17 00:01:53 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 00:01:53 +0100 (CET) Subject: [vlc-devel] commit: Removed one malloc per new playlist item (qt4). (Laurent Aimar ) Message-ID: <20090216230153.B432F2F543@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 17 00:01:02 2009 +0100| [e916edc909efeb05d774e35d9cca10076d47548f] | committer: Laurent Aimar Removed one malloc per new playlist item (qt4). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e916edc909efeb05d774e35d9cca10076d47548f --- .../gui/qt4/components/playlist/playlist_model.cpp | 8 +++----- .../gui/qt4/components/playlist/playlist_model.hpp | 18 ++++++++++++------ 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/modules/gui/qt4/components/playlist/playlist_model.cpp b/modules/gui/qt4/components/playlist/playlist_model.cpp index 285d17e..0b4cdd2 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.cpp +++ b/modules/gui/qt4/components/playlist/playlist_model.cpp @@ -521,7 +521,7 @@ void PLModel::customEvent( QEvent *event ) if( type == ItemUpdate_Type ) ProcessInputItemUpdate( ple->i_id ); else if( type == ItemAppend_Type ) - ProcessItemAppend( ple->p_add ); + ProcessItemAppend( &ple->add ); else if( type == ItemDelete_Type ) ProcessItemRemoval( ple->i_id ); else @@ -550,7 +550,7 @@ void PLModel::ProcessItemRemoval( int i_id ) removeItem( i_id ); } -void PLModel::ProcessItemAppend( playlist_add_t *p_add ) +void PLModel::ProcessItemAppend( const playlist_add_t *p_add ) { playlist_item_t *p_item = NULL; PLItem *newItem = NULL; @@ -977,9 +977,7 @@ static int ItemAppended( vlc_object_t *p_this, const char *psz_variable, vlc_value_t oval, vlc_value_t nval, void *param ) { PLModel *p_model = (PLModel *) param; - playlist_add_t *p_add = (playlist_add_t *)malloc( sizeof( playlist_add_t)); - memcpy( p_add, nval.p_address, sizeof( playlist_add_t ) ); - + const playlist_add_t *p_add = (playlist_add_t *)nval.p_address; PLEvent *event = new PLEvent( p_add ); QApplication::postEvent( p_model, event ); return VLC_SUCCESS; diff --git a/modules/gui/qt4/components/playlist/playlist_model.hpp b/modules/gui/qt4/components/playlist/playlist_model.hpp index 2dcaccb..04fb783 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.hpp +++ b/modules/gui/qt4/components/playlist/playlist_model.hpp @@ -61,15 +61,21 @@ class PLEvent : public QEvent { public: PLEvent( int type, int id ) : QEvent( (QEvent::Type)(type) ) - { i_id = id; p_add = NULL; }; + { + i_id = id; + add.i_node = -1; + add.i_item = -1; + }; - PLEvent( playlist_add_t *a ) : QEvent( (QEvent::Type)(ItemAppend_Type) ) - { p_add = a; }; + PLEvent( const playlist_add_t *a ) : QEvent( (QEvent::Type)(ItemAppend_Type) ) + { + add = *a; + }; - virtual ~PLEvent() { free( p_add ); }; + virtual ~PLEvent() { }; int i_id; - playlist_add_t *p_add; + playlist_add_t add; }; @@ -136,7 +142,7 @@ private: /* Update processing */ void ProcessInputItemUpdate( int i_input_id ); void ProcessItemRemoval( int i_id ); - void ProcessItemAppend( playlist_add_t *p_add ); + void ProcessItemAppend( const playlist_add_t *p_add ); void UpdateTreeItem( PLItem *, bool, bool force = false ); void UpdateTreeItem( playlist_item_t *, PLItem *, bool, bool forc = false ); From jb at videolan.org Tue Feb 17 00:11:45 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 17 Feb 2009 00:11:45 +0100 Subject: [vlc-devel] commit: Qt: don't spam the log with too many debug messages... ( Jean-Baptiste Kempf ) In-Reply-To: <20090216215147.GA32748@via.ecp.fr> References: <20090216072840.C468A2F4DC@skanda.videolan.org> <20090216215147.GA32748@via.ecp.fr> Message-ID: <20090216231144.GA6947@videolan.org> On Mon, Feb 16, 2009 at 10:51:47PM +0100, Laurent Aimar wrote : > If it creates a noticable performance problem I could look into it. I don't think it has a lot of problem, but still, this was weird, since we do way too many things on ItemChanged. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Tue Feb 17 00:26:21 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 00:26:21 +0100 (CET) Subject: [vlc-devel] commit: qt4: remove item-change callback from playlist-model ( Ilkka Ollakka ) Message-ID: <20090216232621.7391B2F0B3@skanda.videolan.org> vlc | branch: master | Ilkka Ollakka | Mon Feb 16 23:28:04 2009 +0200| [cb81565b63c8062ced063a49d854e9156e2a5de3] | committer: Ilkka Ollakka qt4: remove item-change callback from playlist-model > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cb81565b63c8062ced063a49d854e9156e2a5de3 --- .../gui/qt4/components/playlist/playlist_model.cpp | 27 +++++++++++++------ .../gui/qt4/components/playlist/playlist_model.hpp | 3 +- modules/gui/qt4/input_manager.cpp | 11 ++++++- modules/gui/qt4/input_manager.hpp | 2 + 4 files changed, 31 insertions(+), 12 deletions(-) diff --git a/modules/gui/qt4/components/playlist/playlist_model.cpp b/modules/gui/qt4/components/playlist/playlist_model.cpp index 0b4cdd2..64e52fc 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.cpp +++ b/modules/gui/qt4/components/playlist/playlist_model.cpp @@ -96,6 +96,10 @@ PLModel::PLModel( playlist_t *_p_playlist, /* THEPL */ #undef ADD_ICON rebuild( p_root ); + CONNECT( THEMIM->getIM(), metaChanged( int ), + this, ProcessInputItemUpdate( int ) ); + CONNECT( THEMIM, inputChanged( input_thread_t * ), + this, ProcessInputItemUpdate( input_thread_t* ) ); } PLModel::~PLModel() @@ -220,18 +224,20 @@ void PLModel::addCallbacks() { /* Some global changes happened -> Rebuild all */ var_AddCallback( p_playlist, "intf-change", PlaylistChanged, this ); - /* We went to the next item */ + /* We went to the next item var_AddCallback( p_playlist, "item-current", PlaylistNext, this ); + */ /* One item has been updated */ - var_AddCallback( p_playlist, "item-change", ItemChanged, this ); - var_AddCallback( p_playlist, "playlist-item-append", ItemAppended, this ); - var_AddCallback( p_playlist, "playlist-item-deleted", ItemDeleted, this ); + var_AddCallback( p_playlist, "item-append", ItemAppended, this ); + var_AddCallback( p_playlist, "item-deleted", ItemDeleted, this ); } void PLModel::delCallbacks() { var_DelCallback( p_playlist, "item-change", ItemChanged, this ); + /* var_DelCallback( p_playlist, "item-current", PlaylistNext, this ); + */ var_DelCallback( p_playlist, "intf-change", PlaylistChanged, this ); var_DelCallback( p_playlist, "playlist-item-append", ItemAppended, this ); var_DelCallback( p_playlist, "playlist-item-deleted", ItemDeleted, this ); @@ -512,16 +518,14 @@ PLItem * PLModel::FindInner( PLItem *root, int i_id, bool b_input ) void PLModel::customEvent( QEvent *event ) { int type = event->type(); - if( type != ItemUpdate_Type && type != ItemAppend_Type && + if( type != ItemAppend_Type && type != ItemDelete_Type && type != PLUpdate_Type ) return; PLEvent *ple = static_cast(event); - if( type == ItemUpdate_Type ) - ProcessInputItemUpdate( ple->i_id ); - else if( type == ItemAppend_Type ) - ProcessItemAppend( &ple->add ); + if( type == ItemAppend_Type ) + ProcessItemAppend( ple->p_add ); else if( type == ItemDelete_Type ) ProcessItemRemoval( ple->i_id ); else @@ -529,6 +533,11 @@ void PLModel::customEvent( QEvent *event ) } /**** Events processing ****/ +void PLModel::ProcessInputItemUpdate( input_thread_t *p_input ) +{ + if( !p_input ) return; + ProcessInputItemUpdate( input_GetItem( p_input )->i_id ); +} void PLModel::ProcessInputItemUpdate( int i_input_id ) { if( i_input_id <= 0 ) return; diff --git a/modules/gui/qt4/components/playlist/playlist_model.hpp b/modules/gui/qt4/components/playlist/playlist_model.hpp index 04fb783..39af4c8 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.hpp +++ b/modules/gui/qt4/components/playlist/playlist_model.hpp @@ -140,7 +140,6 @@ private: static QIcon icons[ITEM_TYPE_NUMBER]; /* Update processing */ - void ProcessInputItemUpdate( int i_input_id ); void ProcessItemRemoval( int i_id ); void ProcessItemAppend( const playlist_add_t *p_add ); @@ -184,6 +183,8 @@ private slots: void popupSave(); void popupExplore(); void viewchanged( int ); + void ProcessInputItemUpdate( int i_input_id ); + void ProcessInputItemUpdate( input_thread_t* p_input ); }; #endif diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index f36b64c..fed980f 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -136,7 +136,7 @@ void InputManager::delInput() /* Reset all InfoPanels but stats */ emit artChanged( NULL ); emit infoChanged( NULL ); - emit metaChanged( NULL ); + emit metaChanged( (input_item_t *)NULL ); } /* Convert the event from the callbacks in actions */ @@ -171,7 +171,9 @@ void InputManager::customEvent( QEvent *event ) UpdateStatus(); // UpdateName(); UpdateArt(); + /* Update duration of file */ } + UpdateMeta( ple->i_id ); break; case ItemStateChanged_Type: // TODO: Fusion with above state @@ -599,6 +601,11 @@ inline void InputManager::UpdateStats() emit statisticsUpdated( input_GetItem( p_input ) ); } +inline void InputManager::UpdateMeta( int id ) +{ + emit metaChanged( id ); +} + inline void InputManager::UpdateMeta() { emit metaChanged( input_GetItem( p_input ) ); @@ -889,7 +896,7 @@ void MainInputManager::customEvent( QEvent *event ) vlc_mutex_lock( &p_intf->change_lock ); if( p_input && ( p_input->b_dead || !vlc_object_alive (p_input) ) ) { - emit inputChanged( NULL ); + emit inputChanged( p_input ); var_DelCallback( p_input, "state", PLItemChanged, this ); vlc_object_release( p_input ); p_input = NULL; diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp index 3228873..94f84d0 100644 --- a/modules/gui/qt4/input_manager.hpp +++ b/modules/gui/qt4/input_manager.hpp @@ -129,6 +129,7 @@ private: void UpdateArt(); void UpdateInfo(); void UpdateMeta(); + void UpdateMeta(int); void UpdateVout(); void UpdateAout(); void UpdateStats(); @@ -172,6 +173,7 @@ signals: void statisticsUpdated( input_item_t* ); void infoChanged( input_item_t* ); void metaChanged( input_item_t* ); + void metaChanged( int ); void artChanged( QString ); /// Play/pause status void statusChanged( int ); From git at videolan.org Tue Feb 17 00:26:21 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 00:26:21 +0100 (CET) Subject: [vlc-devel] commit: qt4: change callback to new playlist-item-append/deleted ( Ilkka Ollakka ) Message-ID: <20090216232621.824302F0F5@skanda.videolan.org> vlc | branch: master | Ilkka Ollakka | Tue Feb 17 01:23:34 2009 +0200| [6a275918c96dc06214e7cc9fe401e5efcee237f4] | committer: Ilkka Ollakka qt4: change callback to new playlist-item-append/deleted > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6a275918c96dc06214e7cc9fe401e5efcee237f4 --- .../gui/qt4/components/playlist/playlist_model.cpp | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/components/playlist/playlist_model.cpp b/modules/gui/qt4/components/playlist/playlist_model.cpp index 64e52fc..6b797cd 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.cpp +++ b/modules/gui/qt4/components/playlist/playlist_model.cpp @@ -228,8 +228,8 @@ void PLModel::addCallbacks() var_AddCallback( p_playlist, "item-current", PlaylistNext, this ); */ /* One item has been updated */ - var_AddCallback( p_playlist, "item-append", ItemAppended, this ); - var_AddCallback( p_playlist, "item-deleted", ItemDeleted, this ); + var_AddCallback( p_playlist, "playlist-item-append", ItemAppended, this ); + var_AddCallback( p_playlist, "playlist-item-deleted", ItemDeleted, this ); } void PLModel::delCallbacks() From git at videolan.org Tue Feb 17 01:04:23 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 01:04:23 +0100 (CET) Subject: [vlc-devel] commit: qt4: fix compile which was caused by removing one line too much in rebasing, my bad (Ilkka Ollakka ) Message-ID: <20090217000423.32CCC2F53C@skanda.videolan.org> vlc | branch: master | Ilkka Ollakka | Tue Feb 17 02:04:06 2009 +0200| [19dc51b1638333cfeaf16de5fbcb3017eb238fe1] | committer: Ilkka Ollakka qt4: fix compile which was caused by removing one line too much in rebasing, my bad > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=19dc51b1638333cfeaf16de5fbcb3017eb238fe1 --- .../gui/qt4/components/playlist/playlist_model.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/playlist/playlist_model.cpp b/modules/gui/qt4/components/playlist/playlist_model.cpp index 6b797cd..8f6f049 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.cpp +++ b/modules/gui/qt4/components/playlist/playlist_model.cpp @@ -525,7 +525,7 @@ void PLModel::customEvent( QEvent *event ) PLEvent *ple = static_cast(event); if( type == ItemAppend_Type ) - ProcessItemAppend( ple->p_add ); + ProcessItemAppend( &ple->add ); else if( type == ItemDelete_Type ) ProcessItemRemoval( ple->i_id ); else From git at videolan.org Tue Feb 17 01:26:01 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 01:26:01 +0100 (CET) Subject: [vlc-devel] commit: Hopefully fix macos moz plugin build (Christophe Mutricy ) Message-ID: <20090217002601.345502F427@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Mon Feb 16 22:15:25 2009 +0000| [dd4e410bc3e2c4e94300c7942d5f5cd3e0102818] | committer: Christophe Mutricy Hopefully fix macos moz plugin build > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dd4e410bc3e2c4e94300c7942d5f5cd3e0102818 --- projects/mozilla/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index 774ad93..3f7f33e 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -83,7 +83,7 @@ noinst_DATA = npvlc.rsrc VLC\ Plugin.plugin MOSTLYCLEANFILES += npvlc.rsrc CLEANFILES += VLC\ Plugin.plugin -npvlc.rsrc: $(srcdir)/vlc.r +npvlc.rsrc: vlc.r /Developer/Tools/Rez -useDF /Developer/Headers/FlatCarbon/Types.r $< -o $@ # From git at videolan.org Tue Feb 17 01:26:01 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 01:26:01 +0100 (CET) Subject: [vlc-devel] commit: Set the libvlc internal verbosity (Christophe Mutricy ) Message-ID: <20090217002601.4580E2F59B@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Tue Feb 17 00:10:39 2009 +0000| [cf759926c989565a5dbac9a7110b821afc2aec64] | committer: Christophe Mutricy Set the libvlc internal verbosity When set from the config file > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cf759926c989565a5dbac9a7110b821afc2aec64 --- src/libvlc.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/src/libvlc.c b/src/libvlc.c index 9456bb6..e138c32 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -443,6 +443,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, if( !config_GetInt( p_libvlc, "ignore-config" ) ) config_LoadConfigFile( p_libvlc, "main" ); config_LoadCmdLine( p_libvlc, &i_argc, ppsz_argv, true ); + priv->i_verbose = config_GetInt( p_libvlc, "verbose" ); /* Check if the user specified a custom language */ psz_language = config_GetPsz( p_libvlc, "language" ); @@ -459,6 +460,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, if( !config_GetInt( p_libvlc, "ignore-config" ) ) config_LoadConfigFile( p_libvlc, "main" ); config_LoadCmdLine( p_libvlc, &i_argc, ppsz_argv, true ); + priv->i_verbose = config_GetInt( p_libvlc, "verbose" ); } free( psz_language ); # endif @@ -571,6 +573,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, module_EndBank( p_libvlc ); return VLC_EGENERIC; } + priv->i_verbose = config_GetInt( p_libvlc, "verbose" ); /* * System specific configuration @@ -727,7 +730,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, free( psz_verbose_objects ); } - /* Last change to set the verbosity. Once we start interfaces and other + /* Last chance to set the verbosity. Once we start interfaces and other * threads, verbosity becomes read-only. */ var_Create( p_libvlc, "verbose", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT ); if( config_GetInt( p_libvlc, "quiet" ) > 0 ) From git at videolan.org Tue Feb 17 01:26:01 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 01:26:01 +0100 (CET) Subject: [vlc-devel] commit: We're back to linking the plugins with libvlccore ( Christophe Mutricy ) Message-ID: <20090217002601.5EC962F5B6@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Tue Feb 17 00:17:38 2009 +0000| [0202ccfc6e469c2638dcd0767d4747b7456a3105] | committer: Christophe Mutricy We're back to linking the plugins with libvlccore > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0202ccfc6e469c2638dcd0767d4747b7456a3105 --- src/vlc-plugin.pc.in | 5 +---- 1 files changed, 1 insertions(+), 4 deletions(-) diff --git a/src/vlc-plugin.pc.in b/src/vlc-plugin.pc.in index b20d489..467f2fc 100644 --- a/src/vlc-plugin.pc.in +++ b/src/vlc-plugin.pc.in @@ -3,8 +3,6 @@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ pkgincludedir=@includedir@/@PACKAGE@ -PKGDIR=@PKGDIR@ -vlclibdir=@vlclibdir@ Name: VLC plugin API Description: VLC media player plugin interface @@ -16,5 +14,4 @@ Cflags: -I${includedir} -I${pkgincludedir}/plugins \ @DEFS_BIGENDIAN@ \ -D_REENTRANT \ -D_THREAD_SAFE -# Plugins should link against an _already_ loaded LibVLC. -#Libs: -L${libdir} -lvlccore +Libs: -L${libdir} -lvlccore From ilkka.ollakka+vlc at oamk.fi Tue Feb 17 12:14:29 2009 From: ilkka.ollakka+vlc at oamk.fi (Ilkka Ollakka) Date: Tue, 17 Feb 2009 13:14:29 +0200 Subject: [vlc-devel] commit: Qt: don't spam the log with too many debug messages... ( Jean-Baptiste Kempf ) In-Reply-To: <20090216215147.GA32748@via.ecp.fr> References: <20090216072840.C468A2F4DC@skanda.videolan.org> <20090216215147.GA32748@via.ecp.fr> Message-ID: <20090217111429.GA12175@papu.site> On ma 16. helmikuuta 2009 22.51.47, Laurent Aimar wrote: > On Mon, Feb 16, 2009, git version control wrote: > > vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 16 08:27:31 2009 +0100| [ff9c8ae1c3c8b0f4bf9b245c5889b3101d748cae] | committer: Jean-Baptiste Kempf > > > > Qt: don't spam the log with too many debug messages... > > > > This doesn't solve the fact that ItemChanged_Type is called WAY too often... Fenrir, ILEoo, ideas? > > ItemChanged_Type is called every time input_item_t->infos are changed. Is that ItemChanged_Type correct one for called when info change? eg theres MetaChanged_Type also. Or is there some deeper difference between those two? -- Ilkka Ollakka Real programmers don't comment their code. It was hard to write, it should be hard to understand. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 197 bytes Desc: not available URL: From pdherbemont at gmail.com Tue Feb 17 12:20:14 2009 From: pdherbemont at gmail.com (Pierre d'Herbemont) Date: Tue, 17 Feb 2009 12:20:14 +0100 Subject: [vlc-devel] commit: Modify playlist code to always use input_item_t->i_id in " item-change" callback. (Laurent Aimar ) In-Reply-To: <20090216210934.A3EAF2F52E@skanda.videolan.org> References: <20090216210934.A3EAF2F52E@skanda.videolan.org> Message-ID: <82214F99-44DE-4910-BAB4-07BB62AA1963@gmail.com> This might be out of topic, yet... Using id field is pretty redundant to refcouting. I believe direct pointer should be used instead for a proper design. However this requires more changes probably in the event client... Pierre On 16 f?vr. 09, at 22:09, git at videolan.org (git version control) wrote: > vlc | branch: master | Laurent Aimar | Mon Feb > 16 21:33:43 2009 +0100| [aaa0d27584304a53f5f413f9b7a7f1b77d22c24e] | > committer: Laurent Aimar > > Modify playlist code to always use input_item_t->i_id in "item- > change" callback. > > The previous code mixed up playlist_item_t->i_id and input_item_t- > >i_id and > so this callback was unusable. > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=aaa0d27584304a53f5f413f9b7a7f1b77d22c24e > --- > > include/vlc_playlist.h | 8 ++++++++ > src/playlist/item.c | 9 ++++----- > 2 files changed, 12 insertions(+), 5 deletions(-) > > diff --git a/include/vlc_playlist.h b/include/vlc_playlist.h > index 12521b7..6fbd4a1 100644 > --- a/include/vlc_playlist.h > +++ b/include/vlc_playlist.h > @@ -114,6 +114,14 @@ TYPEDEF_ARRAY(playlist_item_t*, > playlist_item_array_t); > * To delete an item, use playlist_DeleteFromInput( input_id ) which > will > * remove all occurrences of the input in both trees > * > + * > + * The playlist defines the following event variables: > + * - "item-change": It will contains the input_item_t->i_id of a > changed input > + * item monitored by the playlist. > + * > + * XXX Be really carefull, playlist_item_t->i_id and input_item_t- > >i_id are not > + * the same. > + * > * @{ > */ > > diff --git a/src/playlist/item.c b/src/playlist/item.c > index e8179b1..383771a 100644 > --- a/src/playlist/item.c > +++ b/src/playlist/item.c > @@ -115,9 +115,9 @@ static void input_item_subitem_added( const > vlc_event_t * p_event, > static void input_item_changed( const vlc_event_t * p_event, > void * user_data ) > { > - (void)p_event; > - playlist_item_t * p_item = user_data; > - var_SetInteger( p_item->p_playlist, "item-change", p_item- > >i_id ); > + playlist_item_t *p_item = user_data; > + VLC_UNUSED( p_event ); > + var_SetInteger( p_item->p_playlist, "item-change", p_item- > >p_input->i_id ); > } > > / > *** > *** > *** > ******************************************************************** > @@ -624,8 +624,7 @@ static playlist_item_t *ItemToNode( playlist_t > *p_playlist, > } > pl_priv(p_playlist)->b_reset_currently_playing = true; > vlc_cond_signal( &pl_priv(p_playlist)->signal ); > - var_SetInteger( p_playlist, "item-change", > p_item_in_category-> > - p_input- > >i_id ); > + var_SetInteger( p_playlist, "item-change", > p_item_in_category->p_input->i_id ); > PL_UNLOCK_IF( !b_locked ); > return p_item_in_category; > } > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel From git at videolan.org Tue Feb 17 12:35:17 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 12:35:17 +0100 (CET) Subject: [vlc-devel] commit: Add .rec files in open files. (Jean-Baptiste Kempf ) Message-ID: <20090217113517.B95F42F43F@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Tue Feb 17 12:34:33 2009 +0100| [fe83d5a4cb9fce7809fee29d883193ca3d4f6999] | committer: Jean-Baptiste Kempf Add .rec files in open files. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fe83d5a4cb9fce7809fee29d883193ca3d4f6999 --- include/vlc_interface.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/vlc_interface.h b/include/vlc_interface.h index 7e85503..7dde2a5 100644 --- a/include/vlc_interface.h +++ b/include/vlc_interface.h @@ -178,8 +178,8 @@ typedef enum vlc_dialog { #define EXTENSIONS_VIDEO "*.asf;*.avi;*.divx;*.dv;*.flv;*.gxf;*.iso;*.m1v;*.m2v;" \ "*.m2t;*.m2ts;*.m4v;*.mkv;*.mov;*.mp2;*.mp4;*.mpeg;*.mpeg1;" \ "*.mpeg2;*.mpeg4;*.mpg;*.mts;*.mxf;*.nuv;" \ - "*.ogg;*.ogm;*.ogv;*.ogx;" \ - "*.ps;*.rm;*.rmvb;*.ts;*.vob;*.wmv;" + "*.ogg;*.ogm;*.ogv;*.ogx;*.ps;" \ + "*.rec;*.rm;*.rmvb;*.ts;*.vob;*.wmv;" #define EXTENSIONS_PLAYLIST "*.asx;*.b4s;*.m3u;*.pls;*.vlc;*.xspf" From git at videolan.org Tue Feb 17 12:42:14 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 12:42:14 +0100 (CET) Subject: [vlc-devel] commit: fb: do not segfault when OpenDisplay() fails in Create(). ( Jean-Paul Saman ) Message-ID: <20090217114214.148652F690@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Wed Feb 11 17:05:32 2009 +0100| [94fb5c71c977c60204a0aa38c9271b0ff7b8b01e] | committer: Jean-Paul Saman fb: do not segfault when OpenDisplay() fails in Create(). When the plugin fails to open the framebuffer, then the mmap might not have been done yet. In this case a segmentation fault will occur when memset is called on p_sys->p_video. (p_sys->p_video is either NULL, or MMAP_FAILED.) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=94fb5c71c977c60204a0aa38c9271b0ff7b8b01e --- modules/video_output/fb.c | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/modules/video_output/fb.c b/modules/video_output/fb.c index 8aa5050..78dac63 100644 --- a/modules/video_output/fb.c +++ b/modules/video_output/fb.c @@ -941,9 +941,13 @@ static int OpenDisplay( vout_thread_t *p_vout ) *****************************************************************************/ static void CloseDisplay( vout_thread_t *p_vout ) { - /* Clear display */ - memset( p_vout->p_sys->p_video, 0, p_vout->p_sys->i_page_size ); - munmap( p_vout->p_sys->p_video, p_vout->p_sys->i_page_size ); + if( p_vout->p_sys->p_video != NULL && + p_vout->p_sys->p_video != MAP_FAILED ) + { + /* Clear display */ + memset( p_vout->p_sys->p_video, 0, p_vout->p_sys->i_page_size ); + munmap( p_vout->p_sys->p_video, p_vout->p_sys->i_page_size ); + } if( p_vout->p_sys->i_fd >= 0 ) { From git at videolan.org Tue Feb 17 12:42:14 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 12:42:14 +0100 (CET) Subject: [vlc-devel] commit: mozilla: Recreate toolbar pixels to a smaller size. ( Jean-Paul Saman ) Message-ID: <20090217114214.233702F699@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Fri Feb 13 15:49:00 2009 +0100| [4a811898954cb393152454c9dc80b48352e09dd9] | committer: Jean-Paul Saman mozilla: Recreate toolbar pixels to a smaller size. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4a811898954cb393152454c9dc80b48352e09dd9 --- share/mozilla/fullscreen.xpm | 37 +++++++++++------------------- share/mozilla/pause.xpm | 47 +++++++++++++------------------------- share/mozilla/play.xpm | 47 +++++++++++++------------------------- share/mozilla/skip_next.xpm | 31 +++++++++---------------- share/mozilla/skip_previous.xpm | 31 +++++++++---------------- share/mozilla/stop.xpm | 46 ++++++++++++++------------------------ 6 files changed, 85 insertions(+), 154 deletions(-) diff --git a/share/mozilla/fullscreen.xpm b/share/mozilla/fullscreen.xpm index 992b418..b314361 100644 --- a/share/mozilla/fullscreen.xpm +++ b/share/mozilla/fullscreen.xpm @@ -1,28 +1,19 @@ /* XPM */ -static const char * fullscreen_xpm[] = { -"26 20 5 1", +static char * fullscreen_xpm[] = { +"15 12 4 1", " c None", ". c #999999", "+ c #989898", "@ c #9A9A9A", -"# c #9B9B9B", -" . . ", -"... . . ...", -" .... .... ", -" ... ... ", -" .... +.+ at +.@@..# .... ", -" ................ ", -" ...............@ ", -" ................ ", -" ................ ", -" ................ ", -" ................ ", -" ................ ", -" ................ ", -" ................ ", -" ................ ", -" .... . at +....@.@ .... ", -" ... ... ", -" .... .... ", -"... . . ...", -" . . "}; +". +", +" .+ +. ", +" +. +.+ at .@ .. ", +" ...+.+++. ", +" +........ ", +" +........ ", +" +........ ", +" +........ ", +" ..+..+++. ", +" +. @+... .. ", +" +. .+ ", +". ."}; diff --git a/share/mozilla/pause.xpm b/share/mozilla/pause.xpm index 577d32d..a1fbd36 100644 --- a/share/mozilla/pause.xpm +++ b/share/mozilla/pause.xpm @@ -1,33 +1,18 @@ /* XPM */ -static const char * pause_xpm[] = { -"33 27 3 1", -"+ c None", +static char * pause_xpm[] = { +"15 12 3 1", +" c None", ". c #999999", -"* c #FFFFFF", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++.............", -".............+++++++............."}; +"+ c #989898", +".....+ ++....", +".....+ ++....", +".....+ ++....", +".....+ ++....", +".....+ ++....", +".....+ ++....", +".....+ ++....", +".....+ ++....", +".....+ ++....", +".....+ ++....", +".....+ ++....", +".....+ ++...."}; diff --git a/share/mozilla/play.xpm b/share/mozilla/play.xpm index 15d46bd..377ee0a 100644 --- a/share/mozilla/play.xpm +++ b/share/mozilla/play.xpm @@ -1,33 +1,18 @@ /* XPM */ -static const char * play_xpm[] = { -"34 27 3 1", -"+ c None", +static char * play_xpm[] = { +"15 12 3 1", +" c None", ". c #999999", -"* c #FFFFFF", -".+++++++++++++++++++++++++++++++++", -"....++++++++++++++++++++++++++++++", -"......++++++++++++++++++++++++++++", -".........+++++++++++++++++++++++++", -"...........+++++++++++++++++++++++", -"..............++++++++++++++++++++", -"................++++++++++++++++++", -"...................+++++++++++++++", -".....................+++++++++++++", -"........................++++++++++", -"..........................++++++++", -".............................+++++", -"...............................+++", -".................................+", -"...............................+++", -".............................+++++", -"..........................++++++++", -"........................++++++++++", -".....................+++++++++++++", -"...................+++++++++++++++", -"................++++++++++++++++++", -"..............++++++++++++++++++++", -"...........+++++++++++++++++++++++", -".........+++++++++++++++++++++++++", -"......++++++++++++++++++++++++++++", -"....++++++++++++++++++++++++++++++", -".+++++++++++++++++++++++++++++++++"}; +"+ c #989898", +". ", +"..+ ", +".+++.. ", +"....++.. ", +"........+.. ", +".........++++ ", +".........+.... ", +".......+...+ ", +".......++ ", +"...+.++ ", +"..+.+ ", +"++ "}; diff --git a/share/mozilla/skip_next.xpm b/share/mozilla/skip_next.xpm index 7172774..3d4ab10 100644 --- a/share/mozilla/skip_next.xpm +++ b/share/mozilla/skip_next.xpm @@ -1,23 +1,14 @@ /* XPM */ -static const char * skip_next_xpm[] = { -"30 18 2 1", +static char * skip_next_xpm[] = { +"15 9 2 1", " c None", ". c #999999", -". . ..", -".. .. ..", -".... .... ..", -"..... ...... ..", -"....... ....... ..", -"......... ......... ..", -".......... .......... ..", -"............ ............ ..", -"............. ................", -"............. ............. ..", -"............ ............ ..", -".......... .......... ..", -"......... ......... ..", -"....... ....... ..", -"...... ..... ..", -".... .... ..", -".. .. ..", -". . .."}; +". . .", +".. ... .", +".... .... .", +"...... ...... .", +"...............", +"...... ...... .", +".... .... .", +"... .. .", +". . ."}; diff --git a/share/mozilla/skip_previous.xpm b/share/mozilla/skip_previous.xpm index 8dc3d35..b505f0e 100644 --- a/share/mozilla/skip_previous.xpm +++ b/share/mozilla/skip_previous.xpm @@ -1,23 +1,14 @@ /* XPM */ -static const char * skip_previous_xpm[] = { -"30 18 2 1", +static char * skip_previous_xpm[] = { +"15 9 2 1", " c None", ". c #999999", -".. . .", -".. .. ..", -".. .... ....", -".. ...... ......", -".. ....... .......", -".. ......... .........", -".. .......... ..........", -".. ............ ............", -".. ............. .............", -".. ............. .............", -".. ............ ............", -".. .......... ..........", -".. ......... .........", -".. ....... .......", -".. ...... ......", -".. .... ....", -".. .. ..", -".. . ."}; +". . .", +". ... ...", +". .... ....", +". ...... ......", +"...............", +". ...... ......", +". .... ....", +". ... ...", +". . ."}; diff --git a/share/mozilla/stop.xpm b/share/mozilla/stop.xpm index 2bf7bab..1c91fd0 100644 --- a/share/mozilla/stop.xpm +++ b/share/mozilla/stop.xpm @@ -1,32 +1,20 @@ /* XPM */ -static const char * fs_stop_xpm[] = { -"27 27 2 1", +static char * stop_xpm[] = { +"15 15 2 1", " c None", ". c #999999", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"...........................", -"..........................."}; +"...............", +"...............", +"...............", +"...............", +"...............", +"...............", +"...............", +"...............", +"...............", +"...............", +"...............", +"...............", +"...............", +"...............", +"..............."}; From git at videolan.org Tue Feb 17 12:42:14 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 12:42:14 +0100 (CET) Subject: [vlc-devel] commit: mozilla: no functional changes (Jean-Paul Saman ) Message-ID: <20090217114214.3C44A2F540@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Fri Feb 13 16:22:51 2009 +0100| [98727134d5694e045b5d7bc1fa69c6f317583d9e] | committer: Jean-Paul Saman mozilla: no functional changes * Rename i_playing to is_playing * Handle case of p_md being NULL. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=98727134d5694e045b5d7bc1fa69c6f317583d9e --- projects/mozilla/vlcplugin.cpp | 39 ++++++++++++++++++++------------------- 1 files changed, 20 insertions(+), 19 deletions(-) diff --git a/projects/mozilla/vlcplugin.cpp b/projects/mozilla/vlcplugin.cpp index 54072f1..b0484f5 100644 --- a/projects/mozilla/vlcplugin.cpp +++ b/projects/mozilla/vlcplugin.cpp @@ -1,7 +1,7 @@ /***************************************************************************** * vlcplugin.cpp: a VLC plugin for Mozilla ***************************************************************************** - * Copyright (C) 2002-2008 the VideoLAN team + * Copyright (C) 2002-2009 the VideoLAN team * $Id$ * * Authors: Samuel Hocevar @@ -118,7 +118,6 @@ NPError VlcPlugin::init(int argc, char* const argn[], char* const argv[]) ppsz_argv[ppsz_argc++] = "--no-media-library"; ppsz_argv[ppsz_argc++] = "--ignore-config"; ppsz_argv[ppsz_argc++] = "--intf=dummy"; - const char *progid = NULL; /* parse plugin arguments */ @@ -560,7 +559,7 @@ void VlcPlugin::redrawToolbar() libvlc_media_player_t *p_md = NULL; libvlc_exception_t ex; float f_position = 0.0; - int i_playing = 0; + int is_playing = 0; bool b_mute = false; unsigned int dst_x, dst_y; GC gc; @@ -581,23 +580,25 @@ void VlcPlugin::redrawToolbar() libvlc_exception_init( &ex ); p_md = libvlc_playlist_get_media_player( getVLC(), &ex ); libvlc_exception_clear( &ex ); + if( p_md ) + { + /* get isplaying */ + is_playing = libvlc_playlist_isplaying( getVLC(), &ex ); + libvlc_exception_clear( &ex ); - /* get isplaying */ - i_playing = libvlc_playlist_isplaying( getVLC(), &ex ); - libvlc_exception_clear( &ex ); + /* get movie position in % */ + if( is_playing == 1 ) + { + f_position = libvlc_media_player_get_position( p_md, &ex ) * 100.0; + libvlc_exception_clear( &ex ); + } + libvlc_media_player_release( p_md ); + } /* get mute info */ b_mute = libvlc_audio_get_mute( getVLC(), &ex ); libvlc_exception_clear( &ex ); - /* get movie position in % */ - if( i_playing == 1 ) - { - f_position = libvlc_media_player_get_position( p_md, &ex ) * 100; - libvlc_exception_clear( &ex ); - } - libvlc_media_player_release( p_md ); - gcv.foreground = BlackPixel( p_display, 0 ); gc = XCreateGC( p_display, control, GCForeground, &gcv ); @@ -610,7 +611,7 @@ void VlcPlugin::redrawToolbar() dst_x = BTN_SPACE; dst_y = i_tb_height >> 1; /* baseline = vertical middle */ - if( p_btnPause && (i_playing == 1) ) + if( p_btnPause && (is_playing == 1) ) { XPutImage( p_display, control, gc, p_btnPause, 0, 0, dst_x, dst_y - (p_btnPause->height >> 1), @@ -677,7 +678,7 @@ void VlcPlugin::redrawToolbar() vlc_toolbar_clicked_t VlcPlugin::getToolbarButtonClicked( int i_xpos, int i_ypos ) { unsigned int i_dest = BTN_SPACE;//(i_tb_height >> 1); - int i_playing = 0; + int is_playing = 0; bool b_mute = false; libvlc_exception_t ex; @@ -695,7 +696,7 @@ vlc_toolbar_clicked_t VlcPlugin::getToolbarButtonClicked( int i_xpos, int i_ypos /* get isplaying */ libvlc_exception_init( &ex ); - i_playing = libvlc_playlist_isplaying( getVLC(), &ex ); + is_playing = libvlc_playlist_isplaying( getVLC(), &ex ); libvlc_exception_clear( &ex ); /* get mute info */ @@ -703,7 +704,7 @@ vlc_toolbar_clicked_t VlcPlugin::getToolbarButtonClicked( int i_xpos, int i_ypos libvlc_exception_clear( &ex ); /* is Pause of Play button clicked */ - if( (i_playing != 1) && + if( (is_playing != 1) && (i_xpos >= (BTN_SPACE>>1)) && (i_xpos <= i_dest + p_btnPlay->width + (BTN_SPACE>>1)) ) return clicked_Play; @@ -712,7 +713,7 @@ vlc_toolbar_clicked_t VlcPlugin::getToolbarButtonClicked( int i_xpos, int i_ypos return clicked_Pause; /* is Stop button clicked */ - if( i_playing != 1 ) + if( is_playing != 1 ) i_dest += (p_btnPlay->width + (BTN_SPACE>>1)); else i_dest += (p_btnPause->width + (BTN_SPACE>>1)); From git at videolan.org Tue Feb 17 12:42:14 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 12:42:14 +0100 (CET) Subject: [vlc-devel] commit: mozilla: protect calls to libvlc_playlist_isplaying() ( Jean-Paul Saman ) Message-ID: <20090217114214.73B452F68C@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Tue Feb 17 12:02:31 2009 +0100| [c26963910979f706f8830dde3785317aeb42ba03] | committer: Jean-Paul Saman mozilla: protect calls to libvlc_playlist_isplaying() > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c26963910979f706f8830dde3785317aeb42ba03 --- projects/mozilla/control/npolibvlc.cpp | 2 ++ projects/mozilla/vlcplugin.cpp | 4 ++++ projects/mozilla/vlcshell.cpp | 14 ++++++++++++-- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/projects/mozilla/control/npolibvlc.cpp b/projects/mozilla/control/npolibvlc.cpp index c8ab15d..110a885 100644 --- a/projects/mozilla/control/npolibvlc.cpp +++ b/projects/mozilla/control/npolibvlc.cpp @@ -1349,7 +1349,9 @@ RuntimeNPObject::InvokeResult LibvlcPlaylistNPObject::getProperty(int index, NPV } case ID_playlist_isplaying: { + libvlc_playlist_lock(p_plugin->getVLC()); int val = libvlc_playlist_isplaying(p_plugin->getVLC(), &ex); + libvlc_playlist_unlock(p_plugin->getVLC()); if( libvlc_exception_raised(&ex) ) { NPN_SetException(this, libvlc_exception_get_message(&ex)); diff --git a/projects/mozilla/vlcplugin.cpp b/projects/mozilla/vlcplugin.cpp index b0484f5..84e9a6e 100644 --- a/projects/mozilla/vlcplugin.cpp +++ b/projects/mozilla/vlcplugin.cpp @@ -583,7 +583,9 @@ void VlcPlugin::redrawToolbar() if( p_md ) { /* get isplaying */ + libvlc_playlist_lock( getVLC() ); is_playing = libvlc_playlist_isplaying( getVLC(), &ex ); + libvlc_playlist_unlock( getVLC() ); libvlc_exception_clear( &ex ); /* get movie position in % */ @@ -696,7 +698,9 @@ vlc_toolbar_clicked_t VlcPlugin::getToolbarButtonClicked( int i_xpos, int i_ypos /* get isplaying */ libvlc_exception_init( &ex ); + libvlc_playlist_lock( getVLC() ); is_playing = libvlc_playlist_isplaying( getVLC(), &ex ); + libvlc_playlist_unlock( getVLC() ); libvlc_exception_clear( &ex ); /* get mute info */ diff --git a/projects/mozilla/vlcshell.cpp b/projects/mozilla/vlcshell.cpp index 7adfca6..3fb3472 100644 --- a/projects/mozilla/vlcshell.cpp +++ b/projects/mozilla/vlcshell.cpp @@ -184,7 +184,11 @@ int16 NPP_HandleEvent( NPP instance, void * event ) libvlc_instance_t *p_vlc = p_plugin->getVLC(); if( p_vlc ) { - if( libvlc_playlist_isplaying(p_vlc, NULL) ) + int is_playing; + libvlc_playlist_lock(p_vlc); + is_playing = libvlc_playlist_isplaying(p_vlc, NULL); + libvlc_playlist_lunock(p_vlc); + if( is_playing ) { libvlc_media_player_t *p_md = libvlc_playlist_get_media_player(p_vlc, NULL); @@ -215,7 +219,11 @@ int16 NPP_HandleEvent( NPP instance, void * event ) if( p_vlc ) { - if( libvlc_playlist_isplaying(p_vlc, NULL) ) + int is_playing; + libvlc_playlist_lock(p_vlc); + is_playing = libvlc_playlist_isplaying(p_vlc, NULL); + libvlc_playlist_unlock(p_vlc); + if( is_playing ) { libvlc_media_player_t *p_md = libvlc_playlist_get_media_player(p_vlc, NULL); @@ -846,7 +854,9 @@ static void ControlHandler( Widget w, XtPointer closure, XEvent *event ) fprintf( stderr, "%s\n", libvlc_exception_get_message(&ex)); libvlc_exception_clear( &ex ); + libvlc_playlist_lock( p_plugin->getVLC() ); i_playing = libvlc_playlist_isplaying( p_plugin->getVLC(), &ex ); + libvlc_playlist_unlock( p_plugin->getVLC() ); if( libvlc_exception_raised(&ex) ) fprintf( stderr, "%s\n", libvlc_exception_get_message(&ex)); libvlc_exception_clear( &ex ); From git at videolan.org Tue Feb 17 12:42:14 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 12:42:14 +0100 (CET) Subject: [vlc-devel] commit: mozilla: cleanup (Jean-Paul Saman ) Message-ID: <20090217114214.948762F540@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Tue Feb 17 12:39:38 2009 +0100| [c3227e182b51375bbccb48d4e386c01b5a820faa] | committer: Jean-Paul Saman mozilla: cleanup > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c3227e182b51375bbccb48d4e386c01b5a820faa --- projects/mozilla/control/npolibvlc.cpp | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) diff --git a/projects/mozilla/control/npolibvlc.cpp b/projects/mozilla/control/npolibvlc.cpp index 110a885..5b2c58c 100644 --- a/projects/mozilla/control/npolibvlc.cpp +++ b/projects/mozilla/control/npolibvlc.cpp @@ -1131,7 +1131,7 @@ RuntimeNPObject::InvokeResult LibvlcLogNPObject::setProperty(int index, const NP int verbosity = numberValue(value); if( verbosity >= 0 ) { - if( ! p_log ) + if( !p_log ) { p_log = libvlc_log_open(p_libvlc, &ex); if( libvlc_exception_raised(&ex) ) @@ -1430,7 +1430,7 @@ RuntimeNPObject::InvokeResult LibvlcPlaylistNPObject::invoke(int index, const NP { url = p_plugin->getAbsoluteURL(s); if( url ) - free(s); + free(s); else // problem with combining url, use argument url = s; @@ -1498,7 +1498,7 @@ RuntimeNPObject::InvokeResult LibvlcPlaylistNPObject::invoke(int index, const NP free(name); for( int i=0; i< i_options; ++i ) { - free(ppsz_options[i]); + free(ppsz_options[i]); } free(ppsz_options); @@ -2169,4 +2169,3 @@ RuntimeNPObject::InvokeResult LibvlcVideoNPObject::invoke(int index, const NPVar } return INVOKERESULT_GENERIC_ERROR; } - From git at videolan.org Tue Feb 17 12:42:14 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 12:42:14 +0100 (CET) Subject: [vlc-devel] commit: mozilla: test.html print "state" information in an alert box. ( Jean-Paul Saman ) Message-ID: <20090217114214.50D6A2F6C8@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Fri Feb 13 16:24:42 2009 +0100| [e2ce58906aea751839e2277f2f5a7e4871ff3106] | committer: Jean-Paul Saman mozilla: test.html print "state" information in an alert box. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e2ce58906aea751839e2277f2f5a7e4871ff3106 --- projects/mozilla/test.html | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/projects/mozilla/test.html b/projects/mozilla/test.html index c693efc..576485d 100644 --- a/projects/mozilla/test.html +++ b/projects/mozilla/test.html @@ -136,7 +136,7 @@ Insert Slider widget - + Volume: From exsephiroth87 at gmail.com Tue Feb 17 12:50:09 2009 From: exsephiroth87 at gmail.com (Fabio Ritrovato) Date: Tue, 17 Feb 2009 12:50:09 +0100 Subject: [vlc-devel] [PATCH] GSoC: MTP Devices initial release In-Reply-To: <20090211223530.GA11276@via.ecp.fr> References: <57529f2d0901241136l548e1ce9h2a5239a6517c01cc@mail.gmail.com> <20090128091102.GA8430@via.ecp.fr> <57529f2d0901281203m28aeb901v8eeada8a2a8c546@mail.gmail.com> <200901282228.16027.rem@videolan.org> <57529f2d0901281409u1b3efac8l3dd2362f436f58f6@mail.gmail.com> <0319c492fed4e6cbf701150d6b61c526@chewa.net> <57529f2d0902021003q1dbe608cv9346699a77d6782d@mail.gmail.com> <20090211223530.GA11276@via.ecp.fr> Message-ID: <57529f2d0902170350q6a212c0bl7072226885c46094@mail.gmail.com> On Wed, Feb 11, 2009 at 11:35 PM, Laurent Aimar wrote: > Hi, > Merged by 7f04d5a370677c4b6b81342a5b3441b1b180f38d with a few modifications. > Could you confirm everything is ok for you ? > I successfully retreive the list of files from the device I own but I cannot > play any of them (the device seems to loose the connection at this point). > > Btw, you require libmtp >= 0.3.0, is that really necessary ? (debian sid > only propose 0.2.6.1 for example). > > > Regards, > > -- > fenrir I checked with my 2 devices, and everything works fine.. What device do you have? Can you post a debug log? libmtp was needed for the old version, as it is right now, 2.6 should be enough, but has less compatibility and would require a bit of rewriting... From git at videolan.org Tue Feb 17 13:49:22 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 13:49:22 +0100 (CET) Subject: [vlc-devel] commit: mozilla: build fix on MacOS X for commit c26963910979f706f8830dde3785317aeb42ba03 ( Jean-Paul Saman ) Message-ID: <20090217124922.AA4E72F490@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Tue Feb 17 13:48:49 2009 +0100| [31f30e9a67e22fe30b5da63ad2cafef22a47a681] | committer: Jean-Paul Saman mozilla: build fix on MacOS X for commit c26963910979f706f8830dde3785317aeb42ba03 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=31f30e9a67e22fe30b5da63ad2cafef22a47a681 --- projects/mozilla/vlcshell.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/projects/mozilla/vlcshell.cpp b/projects/mozilla/vlcshell.cpp index 3fb3472..c1ddaf8 100644 --- a/projects/mozilla/vlcshell.cpp +++ b/projects/mozilla/vlcshell.cpp @@ -187,7 +187,7 @@ int16 NPP_HandleEvent( NPP instance, void * event ) int is_playing; libvlc_playlist_lock(p_vlc); is_playing = libvlc_playlist_isplaying(p_vlc, NULL); - libvlc_playlist_lunock(p_vlc); + libvlc_playlist_unlock(p_vlc); if( is_playing ) { libvlc_media_player_t *p_md = From noxelia at gmail.com Tue Feb 17 13:51:07 2009 From: noxelia at gmail.com (basos g) Date: Tue, 17 Feb 2009 14:51:07 +0200 Subject: [vlc-devel] [PATCH] FIX: Dshow "none" device open (#2201). Some cleaning In-Reply-To: <9d98edc70902141233w234da439x63d2067e6a679357@mail.gmail.com> References: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> <200902111756.18051.rem@videolan.org> <9d98edc70902120605p4579d2c5rfe7aa3be2da4626e@mail.gmail.com> <9d98edc70902141233w234da439x63d2067e6a679357@mail.gmail.com> Message-ID: <9d98edc70902170451s3b821d7etcab9ee4b50a49e89@mail.gmail.com> 2009/2/14 basos g : > 2009/2/12 basos g : >> 2009/2/11 R?mi Denis-Courmont : >>> Le mercredi 11 f?vrier 2009 16:15:48 basos g, vous avez ?crit : >>>> These 2 patches address the issue in dshow as well as some other fixes >>>> >>>> -Fix dshow "none" deivice be recognized as none >>>> Note that another patch concerning var_optionParse string >>>> dequoting should be applied for this to be fixed >>>> ( the concept is not to provide quoted strings to dshow options ) >>>> -Account for the case when BOTH devices could not be opened >>>> (file an error, instead of seeming to play) >>>> -Cleaned a little >>>> -Added dbg and error msgs >>>> -Added coments >>> >>> I am not against removing quotes there, but we have to be consistent. >>> Discarding quotes is wrong. There has to be a way to pass a value that does >>> include quotes. >>> >>> -- >>> R?mi Denis-Courmont >>> http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary >>> _______________________________________________ >>> vlc-devel mailing list >>> To unsubscribe or modify your subscription options: >>> http://mailman.videolan.org/listinfo/vlc-devel >>> >> >> The point is that for the dshow we don't need quotes. >> Do we need them elsewhere ? >> I think quotes mean: take the hole following string including spaces. >> As long as the delimiting is done correctly i am not sure that we >> actualy need the quotes inside psz_data. >> >> eg. >> >> :adev="Create sound blaster" :vdev="vid1" :type=pal etc >> >> here psz_value for adev should be >> Creative sound blaster >> and not >> "Creative sound blaster" >> > > > So whats the point about quotes ? Do we need them ( e.g. is there a > case that in-string quotes are NEEDED ? > > Note that these 2 patches fix a (small) bug and i don't expect that > you want it to be ignored ? > Someone to check this ? It does not seem to break sthing. I re-sent the var_optionParse patch with a more clean way (str_dequote help funtion was added). NOTE that i could make this patch like str_quote(ing) all vars from dshow filter. But i doubt that any other input option user module actually needs quotes inside psz_data. So i propose to dequote every input string.. -------------- next part -------------- A non-text attachment was scrubbed... Name: 0010-var_OptionParse-was-made-quote-aware.patch Type: text/x-diff Size: 2094 bytes Desc: not available URL: From git at videolan.org Tue Feb 17 13:53:37 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 13:53:37 +0100 (CET) Subject: [vlc-devel] commit: Revert "python bindings: workaround for the #2257 / #2266 VLC bug ( linux only ATM)" (Olivier Aubert ) Message-ID: <20090217125337.33A612F652@skanda.videolan.org> vlc | branch: master | Olivier Aubert | Tue Feb 17 13:53:01 2009 +0100| [e4d9dab6f8d5d1648f4503de1ec19de767b0d605] | committer: Olivier Aubert Revert "python bindings: workaround for the #2257 / #2266 VLC bug (linux only ATM)" Not needed anymore since we are back at linking modules with libvlccode. This reverts commit 937e3f2f6b56c287e9acecfc77d65841300325ca. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e4d9dab6f8d5d1648f4503de1ec19de767b0d605 --- bindings/python/vlc_module.c | 16 ---------------- 1 files changed, 0 insertions(+), 16 deletions(-) diff --git a/bindings/python/vlc_module.c b/bindings/python/vlc_module.c index c82e6a0..7a90a4b 100644 --- a/bindings/python/vlc_module.c +++ b/bindings/python/vlc_module.c @@ -22,7 +22,6 @@ *****************************************************************************/ #include "vlcglue.h" -#include /************************************************************************** * VLC Module @@ -48,21 +47,6 @@ initvlc( void ) { PyObject* p_module; -#ifdef WIN32 - /* - FIXME: Win32 support is trickier than that (does not support dlopen). - Get code from src/modules/os.c to work on different OSes. - */ - #define LIBVLCCORE "libvlccore.dll" -#else - #define LIBVLCCORE "libvlccore.so" -#endif - /* Workaround for the 2257/2266 VLC bug. */ - if ( !dlopen( LIBVLCCORE, RTLD_NOW | RTLD_GLOBAL ) ) - { - fprintf( stderr, "Error when loading libvlccore:\n%s\nTrying to continue anyway.\n", dlerror() ); - } - /* vlcMediaPlayer_Type.tp_new = PyType_GenericNew; */ vlcMediaPlayer_Type.tp_alloc = PyType_GenericAlloc; /* vlcMedia_Type.tp_new = PyType_GenericNew; */ From fenrir at via.ecp.fr Tue Feb 17 14:00:17 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Tue, 17 Feb 2009 14:00:17 +0100 Subject: [vlc-devel] [PATCH] FIX: Dshow "none" device open (#2201). Some cleaning In-Reply-To: <9d98edc70902170451s3b821d7etcab9ee4b50a49e89@mail.gmail.com> References: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> <200902111756.18051.rem@videolan.org> <9d98edc70902120605p4579d2c5rfe7aa3be2da4626e@mail.gmail.com> <9d98edc70902141233w234da439x63d2067e6a679357@mail.gmail.com> <9d98edc70902170451s3b821d7etcab9ee4b50a49e89@mail.gmail.com> Message-ID: <20090217130017.GA26865@via.ecp.fr> Hi, On Tue, Feb 17, 2009, basos g wrote: > 2009/2/14 basos g : > > 2009/2/12 basos g : > >> 2009/2/11 R?mi Denis-Courmont : > >>> Le mercredi 11 f?vrier 2009 16:15:48 basos g, vous avez ?crit : > >>>> These 2 patches address the issue in dshow as well as some other fixes > >>>> > >>>> -Fix dshow "none" deivice be recognized as none > >>>> Note that another patch concerning var_optionParse string > >>>> dequoting should be applied for this to be fixed > >>>> ( the concept is not to provide quoted strings to dshow options ) > >>>> -Account for the case when BOTH devices could not be opened > >>>> (file an error, instead of seeming to play) > >>>> -Cleaned a little > >>>> -Added dbg and error msgs > >>>> -Added coments > >>> > >>> I am not against removing quotes there, but we have to be consistent. > >>> Discarding quotes is wrong. There has to be a way to pass a value that does > >>> include quotes. > >>> > >>> -- > >>> R?mi Denis-Courmont > >>> http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary > >>> _______________________________________________ > >>> vlc-devel mailing list > >>> To unsubscribe or modify your subscription options: > >>> http://mailman.videolan.org/listinfo/vlc-devel > >>> > >> > >> The point is that for the dshow we don't need quotes. > >> Do we need them elsewhere ? > >> I think quotes mean: take the hole following string including spaces. > >> As long as the delimiting is done correctly i am not sure that we > >> actualy need the quotes inside psz_data. > >> > >> eg. > >> > >> :adev="Create sound blaster" :vdev="vid1" :type=pal etc > >> > >> here psz_value for adev should be > >> Creative sound blaster > >> and not > >> "Creative sound blaster" > >> > > > > > > So whats the point about quotes ? Do we need them ( e.g. is there a > > case that in-string quotes are NEEDED ? > > > > Note that these 2 patches fix a (small) bug and i don't expect that > > you want it to be ignored ? > > > > Someone to check this ? > It does not seem to break sthing. > > I re-sent the var_optionParse patch with a more clean way (str_dequote > help funtion was added). > > NOTE that i could make this patch like str_quote(ing) all vars from > dshow filter. > But i doubt that any other input option user module actually needs > quotes inside psz_data. So i propose to dequote every input string.. Sorry for the late review, I do not think it is valid. I am pretty sure it is an interface(qt4) problem that add quotes where it should not. Regards, -- fenrir From rdenis at simphalempin.com Tue Feb 17 14:36:45 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Tue, 17 Feb 2009 14:36:45 +0100 Subject: [vlc-devel] commit: fb: do not segfault when OpenDisplay() fails in Create(). ( Jean-Paul Saman ) In-Reply-To: <20090217114214.148652F690@skanda.videolan.org> References: <20090217114214.148652F690@skanda.videolan.org> Message-ID: <0e55a12c90d2f76faf30ab19af5ba0f2@chewa.net> On Tue, 17 Feb 2009 12:42:14 +0100 (CET), git at videolan.org (git version control) wrote: > vlc | branch: master | Jean-Paul Saman | Wed Feb > 11 17:05:32 2009 +0100| [94fb5c71c977c60204a0aa38c9271b0ff7b8b01e] | > committer: Jean-Paul Saman > > fb: do not segfault when OpenDisplay() fails in Create(). > > When the plugin fails to open the framebuffer, then the mmap might > not have been done yet. In this case a segmentation fault will occur > when memset is called on p_sys->p_video. (p_sys->p_video is either NULL, > or MMAP_FAILED.) IMHO, it would be cleaner to preset p_video to MAP_FAILED, as memset() is in principle not defined for pointers. -- R?mi Denis-Courmont From aurelien at sitadelle.com Tue Feb 17 15:47:07 2009 From: aurelien at sitadelle.com (=?ISO-8859-1?Q?Aur=E9lien_Nephtali?=) Date: Tue, 17 Feb 2009 15:47:07 +0100 Subject: [vlc-devel] [PATCH] Fix crash when transcoding from mpeg2 Message-ID: <5334c8b0902170647m5a5fe03bn12cd163882a2948c@mail.gmail.com> Hello, The attached patch fixes transcoding from mpeg2 with last VLC from git. jupiter@~/vlc> ./vlc file.ts --sout '#transcode{vcodec=mp4v}:std{access=file,mux=ts,dst=/dev/null}' -I dummy [...] [0x212d9c0] libmpeg2 decoder debug: 720x576 (display 720,576), aspect 768000, sar 64:45, 25.000 fps [0x212d9c0] main decoder warning: can't get output picture [0x212d9c0] libmpeg2 decoder warning: invalid picture encountered [0x212d9c0] main decoder warning: can't get output picture zsh: segmentation fault ./vlc file.ts --sout -I dummy -- Aur?lien Nephtali -------------- next part -------------- A non-text attachment was scrubbed... Name: transcode.c.diff Type: text/x-diff Size: 779 bytes Desc: not available URL: From aurelien at sitadelle.com Tue Feb 17 16:15:57 2009 From: aurelien at sitadelle.com (=?ISO-8859-1?Q?Aur=E9lien_Nephtali?=) Date: Tue, 17 Feb 2009 16:15:57 +0100 Subject: [vlc-devel] [PATCH] Fix a VLC crash when exiting and there are two or more video filters loaded Message-ID: <5334c8b0902170715s68fb6126m726e652e11dd8989@mail.gmail.com> Hello, When using last VLC from git, this command makes VLC crash when closed : ./vlc -vv -I dummy udp://@233.0.0.1:7400 --sout '#transcode{deinterlace,vcodec=mpgv,height=176,width=144}:std{access=file,mux=ts,dst=/dev/null}' For a full description of the problem you can look at https://trac.videolan.org/vlc/ticket/1929 -- Aur?lien Nephtali -------------- next part -------------- A non-text attachment was scrubbed... Name: filter_chain.c.diff Type: text/x-diff Size: 641 bytes Desc: not available URL: From git at videolan.org Tue Feb 17 16:47:41 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 16:47:41 +0100 (CET) Subject: [vlc-devel] commit: fb: initialize p_sys->p_video to MAP_FAILED. (Jean-Paul Saman ) Message-ID: <20090217154741.0DD032F703@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Tue Feb 17 16:46:45 2009 +0100| [8b7c6b3d5f6004075bd6ec55f160627cfcab1b35] | committer: Jean-Paul Saman fb: initialize p_sys->p_video to MAP_FAILED. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8b7c6b3d5f6004075bd6ec55f160627cfcab1b35 --- modules/video_output/fb.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/video_output/fb.c b/modules/video_output/fb.c index 78dac63..8880b36 100644 --- a/modules/video_output/fb.c +++ b/modules/video_output/fb.c @@ -191,6 +191,8 @@ static int Create( vlc_object_t *p_this ) return VLC_ENOMEM; memset( p_sys, 0, sizeof(vout_sys_t) ); + p_sys->p_video = MAP_FAILED; + p_vout->pf_init = Init; p_vout->pf_end = End; p_vout->pf_manage = Manage; @@ -941,8 +943,7 @@ static int OpenDisplay( vout_thread_t *p_vout ) *****************************************************************************/ static void CloseDisplay( vout_thread_t *p_vout ) { - if( p_vout->p_sys->p_video != NULL && - p_vout->p_sys->p_video != MAP_FAILED ) + if( p_vout->p_sys->p_video != MAP_FAILED ) { /* Clear display */ memset( p_vout->p_sys->p_video, 0, p_vout->p_sys->i_page_size ); From git at videolan.org Tue Feb 17 17:22:36 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 17:22:36 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx-plugin=3A__Removed_English?= =?utf-8?q?_to_English_localisation_of_the_bundle_info_=28_Felix_Paul_K?= =?utf-8?b?w7xobmUgKQ==?= Message-ID: <20090217162236.39EB22F68E@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Tue Feb 17 17:20:37 2009 +0100| [b5aec87d99906fbca13083b0ff24d1cb4d2516f8] | committer: Felix Paul K?hne macosx-plugin: Removed English to English localisation of the bundle info This was done for no obvious reason in the past... Additionally, this fixes proper version information display in the Finder's Information panel. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b5aec87d99906fbca13083b0ff24d1cb4d2516f8 --- configure.ac | 1 - .../plugin/English.lproj/InfoPlist.strings.in | Bin 570 -> 0 bytes projects/mozilla/Makefile.am | 2 -- 3 files changed, 0 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 21b09f1..18a0e2d 100644 --- a/configure.ac +++ b/configure.ac @@ -5900,7 +5900,6 @@ AC_CONFIG_FILES([ extras/package/macosx/Resources/English.lproj/InfoPlist.strings extras/package/macosx/plugin/Info.plist extras/package/macosx/plugin/InstallerInfo.plist - extras/package/macosx/plugin/English.lproj/InfoPlist.strings Makefile projects/activex/Makefile projects/activex/axvlc.inf diff --git a/extras/package/macosx/plugin/English.lproj/InfoPlist.strings.in b/extras/package/macosx/plugin/English.lproj/InfoPlist.strings.in deleted file mode 100644 index 6014abd..0000000 Binary files a/extras/package/macosx/plugin/English.lproj/InfoPlist.strings.in and /dev/null differ diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index 3f7f33e..c04dad1 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -112,8 +112,6 @@ VLC\ Plugin.plugin: npvlc.rsrc $(lib_LTLIBRARIES) $(INSTALL) .libs/npvlc.dylib "VLC-Plugin.plugin/Contents/MacOS/lib" dylib="VLC-Plugin.plugin/Contents/MacOS/lib/npvlc.dylib"; $(FIXEXECPATH); $(INSTALL) npvlc.rsrc "VLC-Plugin.plugin/Contents/Resources/VLC Plugin.rsrc" - cp -r "$(top_srcdir)/extras/package/macosx/plugin/English.lproj" "VLC-Plugin.plugin/Contents/Resources/" - cp -r "$(top_builddir)/extras/package/macosx/plugin/English.lproj" "VLC-Plugin.plugin/Contents/Resources/" $(INSTALL) "$(top_builddir)/extras/package/macosx/plugin/Info.plist" "VLC-Plugin.plugin/Contents/Info.plist" mv "VLC-Plugin.plugin" "VLC Plugin.plugin" find "VLC Plugin.plugin" -type d -exec chmod ugo+rx '{}' \; From git at videolan.org Tue Feb 17 17:22:36 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 17:22:36 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx-plugin=3A_improved_wording?= =?utf-8?q?_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090217162236.4AD022F711@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Tue Feb 17 17:22:28 2009 +0100| [016c159e5b5956cfb372573fcfb6b0fc82ff8b04] | committer: Felix Paul K?hne macosx-plugin: improved wording > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=016c159e5b5956cfb372573fcfb6b0fc82ff8b04 --- extras/package/macosx/plugin/Info.plist.in | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/extras/package/macosx/plugin/Info.plist.in b/extras/package/macosx/plugin/Info.plist.in index 79aa41b..0fb2648 100644 --- a/extras/package/macosx/plugin/Info.plist.in +++ b/extras/package/macosx/plugin/Info.plist.in @@ -7,7 +7,9 @@ CFBundleExecutable VLC Plugin CFBundleGetInfoString - Copyright @COPYRIGHT_YEARS@ The VideoLAN Team. + VLC Webbrowser Plugin - Version @VERSION@ - (c) @COPYRIGHT_YEARS@ The VideoLAN Team. + CFHumanReadableCopyright + Copyright (c) @COPYRIGHT_YEARS@ the VideoLAN Team CFBundleIdentifier com.netscape.vlc CFBundleInfoDictionaryVersion From jb at videolan.org Tue Feb 17 18:12:16 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 17 Feb 2009 18:12:16 +0100 Subject: [vlc-devel] Streams FTP Message-ID: <20090217171216.GA19977@videolan.org> Hello, I have spent some time today to watch a few hundreds of the streams we had in the misc/ and unsorted/ folders of the FTP. The good news is that a lot of broken streams are now fixed. The bad news is that now, they are sorted... :D http://streams.videolan.org/issues/ for current issues. (defects) http://streams.videolan.org/misc/ for other streams that we want to keep or for unsupported functionnalities ( enhancements needed and not defects). http://streams.videolan.org/streams-videolan/ is still for working reference streams. http://streams.videolan.org/upload/ is to help people upload files. Btw, porn samples is NOT OK on our ftp, and I mean it. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From sagar.arlekar at gmail.com Mon Feb 16 15:49:56 2009 From: sagar.arlekar at gmail.com (sagar arlekar) Date: Mon, 16 Feb 2009 20:19:56 +0530 Subject: [vlc-devel] localization in konkani Message-ID: Hello, I want to localize vlc player to konkani language. Konkani is spoken in the konkan region on the west cost of India. This language uses 'Devnagri' script, the same as Hindi. kindly send me the 'localization file'. Is there a detailed documentation on the localization process?? Regards, Sagar -------------- next part -------------- An HTML attachment was scrubbed... URL: From sashipa.ben at gmail.com Mon Feb 16 20:29:38 2009 From: sashipa.ben at gmail.com (=?UTF-8?B?w5/RlMWL?=) Date: Mon, 16 Feb 2009 20:29:38 +0100 Subject: [vlc-devel] broken vlc-plugin.pc ? In-Reply-To: <200902162101.30836.rem@videolan.org> References: <1e0b1f250902151454kea97ae5mbb706637b7f2d9fe@mail.gmail.com> <200902162101.30836.rem@videolan.org> Message-ID: <1e0b1f250902161129n2e4a73a1w65946ee96f67fe77@mail.gmail.com> I did fix it ... I did something similar to the commented lines configure.ac: dnl dnl Directories dnl dnl vlcincludedir="\${includedir}/\${PKGDIR}" dnl AC_SUBST(vlcincludedir) pkgincludedir='${includedir}/${PKGDIR}' AC_SUBST(pkgincludedir) vlcdatadir="\${datadir}/\${PKGDIR}" AC_SUBST(vlcdatadir) vlclibdir="\${libdir}/\${PKGDIR}" AC_SUBST(vlclibdir) src/vlc-plugin.pc.in: PKGDIR=@PKGDIR@ prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ pkgincludedir=@pkgincludedir@ vlclibdir=@vlclibdir@ I have never used git before so I haven't committed anything nor sent any patch. I'm currently on a bigger modification (adding dynamic file extensions). This modification is not finish but the base is working and I'd like to submit it someday. May be someone can explain me the best way to submit my change ? -- B. From sashipa.ben at gmail.com Mon Feb 16 20:46:16 2009 From: sashipa.ben at gmail.com (=?UTF-8?B?w5/RlMWL?=) Date: Mon, 16 Feb 2009 20:46:16 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_pkgincludedir_in_vlc-plugin?= =?utf-8?q?=2Epc_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <20090216192419.CA5D12EE7F@skanda.videolan.org> References: <20090216192419.CA5D12EE7F@skanda.videolan.org> Message-ID: <1e0b1f250902161146n76f7019fi7ec1a21408421a6f@mail.gmail.com> Shouldn't it be @PKGDIR@ instead of @PACKNAME@ On Mon, Feb 16, 2009 at 8:24 PM, git version control wrote: > vlc | branch: master | R?mi Denis-Courmont | Mon Feb 16 21:23:39 2009 +0200| [6cc964b5770ed5840eb6b039cb2a033d0673bc55] | committer: R?mi Denis-Courmont > > Fix pkgincludedir in vlc-plugin.pc > > Pointed-out-by: Benjamin Gerard > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6cc964b5770ed5840eb6b039cb2a033d0673bc55 > --- > > src/vlc-plugin.pc.in | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/src/vlc-plugin.pc.in b/src/vlc-plugin.pc.in > index a359571..b20d489 100644 > --- a/src/vlc-plugin.pc.in > +++ b/src/vlc-plugin.pc.in > @@ -2,7 +2,7 @@ prefix=@prefix@ > exec_prefix=@exec_prefix@ > libdir=@libdir@ > includedir=@includedir@ > -pkgincludedir=@pkgincludedir@ > +pkgincludedir=@includedir@/@PACKAGE@ > PKGDIR=@PKGDIR@ > vlclibdir=@vlclibdir@ > > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > -- B. From git at videolan.org Tue Feb 17 20:17:02 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 20:17:02 +0100 (CET) Subject: [vlc-devel] commit: Added QTYPE_NONE to easily detect if qp are present (vout). ( Laurent Aimar ) Message-ID: <20090217191702.32F3D2F65B@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 17 00:14:32 2009 +0100| [43ff738b1b843958a33ae98162228cb0f1527773] | committer: Laurent Aimar Added QTYPE_NONE to easily detect if qp are present (vout). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=43ff738b1b843958a33ae98162228cb0f1527773 --- include/vlc_vout.h | 2 ++ src/video_output/vout_pictures.c | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/include/vlc_vout.h b/include/vlc_vout.h index 23e98ad..059ffea 100644 --- a/include/vlc_vout.h +++ b/include/vlc_vout.h @@ -266,6 +266,8 @@ enum /* Quantification type */ enum { + QTYPE_NONE, + QTYPE_MPEG1, QTYPE_MPEG2, QTYPE_H264, diff --git a/src/video_output/vout_pictures.c b/src/video_output/vout_pictures.c index 60c1fca..ffec72d 100644 --- a/src/video_output/vout_pictures.c +++ b/src/video_output/vout_pictures.c @@ -710,9 +710,9 @@ int __vout_InitPicture( vlc_object_t *p_this, picture_t *p_pic, p_pic->pf_unlock = NULL; p_pic->i_refcount = 0; - p_pic->p_q = NULL; + p_pic->i_qtype = QTYPE_NONE; p_pic->i_qstride = 0; - p_pic->i_qtype = 0; + p_pic->p_q = NULL; vout_InitFormat( &p_pic->format, i_chroma, i_width, i_height, i_aspect ); From git at videolan.org Tue Feb 17 20:17:02 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 20:17:02 +0100 (CET) Subject: [vlc-devel] commit: Added a "postprocess" vout variable. (Laurent Aimar ) Message-ID: <20090217191702.435C02F6E6@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 17 19:52:05 2009 +0100| [96b19872be5d209ea3b0f0c9970ccbe89dd353c8] | committer: Laurent Aimar Added a "postprocess" vout variable. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=96b19872be5d209ea3b0f0c9970ccbe89dd353c8 --- src/video_output/video_output.c | 125 ++++++++++++++++++++++++++++++++++++++ src/video_output/vout_internal.h | 1 + src/video_output/vout_pictures.c | 1 + 3 files changed, 127 insertions(+), 0 deletions(-) diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c index 0751e75..c5ccce9 100644 --- a/src/video_output/video_output.c +++ b/src/video_output/video_output.c @@ -85,6 +85,11 @@ static int FilterCallback( vlc_object_t *, char const *, vlc_value_t, vlc_value_t, void * ); static int VideoFilter2Callback( vlc_object_t *, char const *, vlc_value_t, vlc_value_t, void * ); +static void PostProcessEnable( vout_thread_t * ); +static void PostProcessDisable( vout_thread_t * ); +static void PostProcessSetFilterQuality( vout_thread_t *p_vout ); +static int PostProcessCallback( vlc_object_t *, char const *, + vlc_value_t, vlc_value_t, void * ); /* From vout_intf.c */ int vout_Snapshot( vout_thread_t *, picture_t * ); @@ -392,6 +397,7 @@ vout_thread_t * __vout_Create( vlc_object_t *p_parent, video_format_t *p_fmt ) p_vout->p->i_picture_displayed_date = 0; p_vout->p->b_picture_displayed = false; p_vout->p->b_picture_empty = false; + p_vout->p->i_picture_qtype = QTYPE_NONE; /* Initialize locks */ vlc_mutex_init( &p_vout->picture_lock ); @@ -486,6 +492,7 @@ vout_thread_t * __vout_Create( vlc_object_t *p_parent, video_format_t *p_fmt ) } /* Create a few object variables for interface interaction */ + /* Deinterlacing */ var_Create( p_vout, "deinterlace", VLC_VAR_STRING | VLC_VAR_HASCHOICE ); text.psz_string = _("Deinterlace"); var_Change( p_vout, "deinterlace", VLC_VAR_SETTEXT, &text, NULL ); @@ -511,6 +518,7 @@ vout_thread_t * __vout_Create( vlc_object_t *p_parent, video_format_t *p_fmt ) } var_AddCallback( p_vout, "deinterlace", DeinterlaceCallback, NULL ); + /* */ var_Create( p_vout, "vout-filter", VLC_VAR_STRING | VLC_VAR_DOINHERIT ); text.psz_string = _("Filters"); var_Change( p_vout, "vout-filter", VLC_VAR_SETTEXT, &text, NULL ); @@ -983,6 +991,7 @@ static void* RunThread( void *p_this ) { vout_thread_t *p_vout = p_this; int i_idle_loops = 0; /* loops without displaying a picture */ + int i_picture_qtype_last = QTYPE_NONE; bool b_drop_late; @@ -1131,6 +1140,11 @@ static void* RunThread( void *p_this ) p_vout->p->p_picture_displayed = p_picture; } } + + /* */ + const int i_postproc_type = p_vout->p->i_picture_qtype; + const int i_postproc_state = (p_vout->p->i_picture_qtype != QTYPE_NONE) - (i_picture_qtype_last != QTYPE_NONE); + vlc_mutex_unlock( &p_vout->picture_lock ); if( p_picture == NULL ) @@ -1349,6 +1363,14 @@ static void* RunThread( void *p_this ) break; } + /* Post processing */ + if( i_postproc_state == 1 ) + PostProcessEnable( p_vout ); + else if( i_postproc_state == -1 ) + PostProcessDisable( p_vout ); + if( i_postproc_state != 0 ) + i_picture_qtype_last = i_postproc_type; + /* Check for "video filter2" changes */ vlc_mutex_lock( &p_vout->p->vfilter_lock ); if( p_vout->p->psz_vf2 ) @@ -1365,6 +1387,9 @@ static void* RunThread( void *p_this ) free( p_vout->p->psz_vf2 ); p_vout->p->psz_vf2 = NULL; + + if( i_picture_qtype_last != QTYPE_NONE ) + PostProcessSetFilterQuality( p_vout ); } vlc_mutex_unlock( &p_vout->p->vfilter_lock ); } @@ -1721,6 +1746,106 @@ static int VideoFilter2Callback( vlc_object_t *p_this, char const *psz_cmd, return VLC_SUCCESS; } +/***************************************************************************** + * Post-processing + *****************************************************************************/ +static bool PostProcessIsPresent( const char *psz_filter ) +{ + const char *psz_pp = "postproc"; + const size_t i_pp = strlen(psz_pp); + return psz_filter && + !strncmp( psz_filter, psz_pp, strlen(psz_pp) ) && + ( psz_filter[i_pp] == '\0' || psz_filter[i_pp] == ':' ); +} + +static int PostProcessCallback( vlc_object_t *p_this, char const *psz_cmd, + vlc_value_t oldval, vlc_value_t newval, void *p_data ) +{ + vout_thread_t *p_vout = (vout_thread_t *)p_this; + VLC_UNUSED(psz_cmd); VLC_UNUSED(oldval); VLC_UNUSED(p_data); + + static const char *psz_pp = "postproc"; + + char *psz_vf2 = var_GetString( p_vout, "video-filter" ); + + if( newval.i_int <= 0 ) + { + if( PostProcessIsPresent( psz_vf2 ) ) + { + strcpy( psz_vf2, &psz_vf2[strlen(psz_pp)] ); + if( *psz_vf2 == ':' ) + strcpy( psz_vf2, &psz_vf2[1] ); + } + } + else + { + if( !PostProcessIsPresent( psz_vf2 ) ) + { + if( psz_vf2 ) + { + char *psz_tmp = psz_vf2; + if( asprintf( &psz_vf2, "%s:%s", psz_pp, psz_tmp ) < 0 ) + psz_vf2 = psz_tmp; + else + free( psz_tmp ); + } + else + { + psz_vf2 = strdup( psz_pp ); + } + } + } + if( psz_vf2 ) + var_SetString( p_vout, "video-filter", psz_vf2 ); + + return VLC_SUCCESS; +} +static void PostProcessEnable( vout_thread_t *p_vout ) +{ + msg_Dbg( p_vout, "Post-processing available" ); + var_Create( p_vout, "postprocess", VLC_VAR_INTEGER | VLC_VAR_HASCHOICE ); + for( int i = 0; i <= 6; i++ ) + { + vlc_value_t val; + vlc_value_t text; + char psz_text[1+1]; + + val.i_int = i; + snprintf( psz_text, sizeof(psz_text), "%d", i ); + if( i == 0 ) + text.psz_string = _("Disable"); + else + text.psz_string = psz_text; + var_Change( p_vout, "postprocess", VLC_VAR_ADDCHOICE, &val, &text ); + } + var_AddCallback( p_vout, "postprocess", PostProcessCallback, NULL ); + + /* */ + char *psz_filter = var_GetNonEmptyString( p_vout, "video-filter" ); + int i_postproc_q = 0; + if( PostProcessIsPresent( psz_filter ) ) + i_postproc_q = var_CreateGetInteger( p_vout, "postproc-q" ); + + var_SetInteger( p_vout, "postprocess", i_postproc_q ); + + free( psz_filter ); +} +static void PostProcessDisable( vout_thread_t *p_vout ) +{ + msg_Dbg( p_vout, "Post-processing no more available" ); + var_Destroy( p_vout, "postprocess" ); +} +static void PostProcessSetFilterQuality( vout_thread_t *p_vout ) +{ + vlc_object_t *p_pp = vlc_object_find_name( p_vout, "postproc", FIND_CHILD ); + if( !p_pp ) + return; + + var_SetInteger( p_pp, "postproc-q", var_GetInteger( p_vout, "postprocess" ) ); + vlc_object_release( p_pp ); +} + + static void DisplayTitleOnOSD( vout_thread_t *p_vout ) { const mtime_t i_start = mdate(); diff --git a/src/video_output/vout_internal.h b/src/video_output/vout_internal.h index 3b434fd..a2ef5e7 100644 --- a/src/video_output/vout_internal.h +++ b/src/video_output/vout_internal.h @@ -49,6 +49,7 @@ struct vout_thread_sys_t bool b_picture_empty; mtime_t i_picture_displayed_date; picture_t *p_picture_displayed; + int i_picture_qtype; vlc_cond_t picture_wait; /* */ diff --git a/src/video_output/vout_pictures.c b/src/video_output/vout_pictures.c index ffec72d..9c11144 100644 --- a/src/video_output/vout_pictures.c +++ b/src/video_output/vout_pictures.c @@ -59,6 +59,7 @@ void vout_DisplayPicture( vout_thread_t *p_vout, picture_t *p_pic ) msg_Err( p_vout, "picture to display %p has invalid status %d", p_pic, p_pic->i_status ); } + p_vout->p->i_picture_qtype = p_pic->i_qtype; vlc_mutex_unlock( &p_vout->picture_lock ); } From git at videolan.org Tue Feb 17 20:17:02 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 20:17:02 +0100 (CET) Subject: [vlc-devel] commit: Fixed Qt4 interface to use the new postprocess vout variable. ( Laurent Aimar ) Message-ID: <20090217191702.7A81D248A2@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 17 19:52:43 2009 +0100| [df89b213f3a14ba2e853f94800d1c5a153040d35] | committer: Laurent Aimar Fixed Qt4 interface to use the new postprocess vout variable. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=df89b213f3a14ba2e853f94800d1c5a153040d35 --- modules/gui/qt4/menus.cpp | 31 +++---------------------------- 1 files changed, 3 insertions(+), 28 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index aaaa937..960789f 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -208,31 +208,7 @@ static int VideoAutoMenuBuilder( vout_thread_t *p_object, PUSH_VAR( "aspect-ratio" ); PUSH_VAR( "crop" ); PUSH_VAR( "deinterlace" ); - - /* Special case for postproc */ - // FIXME - if( p_object ) - { - /* p_object is the vout, so the decoder is our parent and the - * postproc filter one of the decoder's children */ - vlc_object_t *p_dec = (vlc_object_t *) - vlc_object_find( p_object, VLC_OBJECT_DECODER, - FIND_PARENT ); - if( p_dec ) - { - vlc_object_t *p_pp = (vlc_object_t *) - vlc_object_find_name( p_dec, "postproc", - FIND_CHILD ); - if( p_pp ) - { - vlc_object_t *p_object = p_pp; - PUSH_VAR( "postproc-q" ); - vlc_object_release( p_pp ); - } - - vlc_object_release( p_dec ); - } - } + PUSH_VAR( "postprocess" ); return VLC_SUCCESS; } @@ -582,7 +558,7 @@ QMenu *QVLCMenu::VideoMenu( intf_thread_t *p_intf, QMenu *current ) ACT_ADDMENU( current, "aspect-ratio", qtr( "&Aspect Ratio" ) ); ACT_ADDMENU( current, "crop", qtr( "&Crop" ) ); ACT_ADDMENU( current, "deinterlace", qtr( "&Deinterlace" ) ); - ACT_ADDMENU( current, "postproc-q", qtr( "&Post processing" ) ); + ACT_ADDMENU( current, "postprocess", qtr( "&Post processing" ) ); } p_input = THEMIM->getInput(); @@ -1125,8 +1101,7 @@ void QVLCMenu::UpdateItem( intf_thread_t *p_intf, QMenu *menu, /* Check the type of the object variable */ /* What is the following HACK needed for? */ if( !strcmp( psz_var, "audio-es" ) - || !strcmp( psz_var, "video-es" ) - || !strcmp( psz_var, "postproc-q" ) ) + || !strcmp( psz_var, "video-es" ) ) i_type = VLC_VAR_INTEGER | VLC_VAR_HASCHOICE; else i_type = var_Type( p_object, psz_var ); From rem at videolan.org Tue Feb 17 20:26:24 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Tue, 17 Feb 2009 21:26:24 +0200 Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_pkgincludedir_in_vlc-plugin?= =?utf-8?q?=2Epc_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <1e0b1f250902161146n76f7019fi7ec1a21408421a6f@mail.gmail.com> References: <20090216192419.CA5D12EE7F@skanda.videolan.org> <1e0b1f250902161146n76f7019fi7ec1a21408421a6f@mail.gmail.com> Message-ID: <200902172126.24327.rem@videolan.org> Le lundi 16 f?vrier 2009 21:46:16 ???, vous avez ?crit?: > Shouldn't it be @PKGDIR@ instead of @PACKNAME@ I think not. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Tue Feb 17 20:36:58 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 20:36:58 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_crash_when_transcoding_from_m?= =?utf-8?q?peg2_=28_Aur=C3=A9lien_Nephtali_=29?= Message-ID: <20090217193658.65D292F6C1@skanda.videolan.org> vlc | branch: master | Aur?lien Nephtali | Tue Feb 17 15:47:07 2009 +0100| [17948de947bf2f2b17e5d2bff3183d4ca1fbad91] | committer: R?mi Denis-Courmont Fix crash when transcoding from mpeg2 The attached patch fixes transcoding from mpeg2 with last VLC from git. jupiter@~/vlc> ./vlc file.ts --sout '#transcode{vcodec=mp4v}:std{access=file,mux=ts,dst=/dev/null}' -I dummy [...] [0x212d9c0] libmpeg2 decoder debug: 720x576 (display 720,576), aspect 768000, sar 64:45, 25.000 fps [0x212d9c0] main decoder warning: can't get output picture [0x212d9c0] libmpeg2 decoder warning: invalid picture encountered [0x212d9c0] main decoder warning: can't get output picture zsh: segmentation fault ./vlc file.ts --sout -I dummy Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=17948de947bf2f2b17e5d2bff3183d4ca1fbad91 --- modules/stream_out/transcode.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/stream_out/transcode.c b/modules/stream_out/transcode.c index 473467c..67433d1 100644 --- a/modules/stream_out/transcode.c +++ b/modules/stream_out/transcode.c @@ -2185,12 +2185,12 @@ static picture_t *video_new_buffer( vlc_object_t *p_this, picture_t **pp_ring, i = 0; } + p_dec->fmt_out.video.i_chroma = p_dec->fmt_out.i_codec; p_pic = picture_New( p_dec->fmt_out.video.i_chroma, p_dec->fmt_out.video.i_width, p_dec->fmt_out.video.i_height, p_dec->fmt_out.video.i_aspect ); if( !p_pic ) return NULL; - p_dec->fmt_out.video.i_chroma = p_dec->fmt_out.i_codec; p_pic->p_sys = calloc( 1, sizeof(picture_sys_t) ); if( !p_pic->p_sys ) { From rem at videolan.org Tue Feb 17 20:37:25 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Tue, 17 Feb 2009 21:37:25 +0200 Subject: [vlc-devel] [PATCH] Fix crash when transcoding from mpeg2 In-Reply-To: <5334c8b0902170647m5a5fe03bn12cd163882a2948c@mail.gmail.com> References: <5334c8b0902170647m5a5fe03bn12cd163882a2948c@mail.gmail.com> Message-ID: <200902172137.26219.rem@videolan.org> Le mardi 17 f?vrier 2009 16:47:07 Aur?lien Nephtali, vous avez ?crit?: > Hello, > > The attached patch fixes transcoding from mpeg2 with last VLC from git. Merged, thanks. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Tue Feb 17 21:06:57 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 21:06:57 +0100 (CET) Subject: [vlc-devel] commit: * skip potential subtitle filenames that start with a dot. ( Derk-Jan Hartman ) Message-ID: <20090217200657.634882F746@skanda.videolan.org> vlc | branch: master | Derk-Jan Hartman | Tue Feb 17 21:05:53 2009 +0100| [30876dd3bcd475add619adc73e0c8d23718d1e96] | committer: Derk-Jan Hartman * skip potential subtitle filenames that start with a dot. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=30876dd3bcd475add619adc73e0c8d23718d1e96 --- src/input/subtitles.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/input/subtitles.c b/src/input/subtitles.c index 5e46df6..a5364cc 100644 --- a/src/input/subtitles.c +++ b/src/input/subtitles.c @@ -345,7 +345,7 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path, int i_prio; - if( psz_name == NULL ) + if( psz_name == NULL || psz_name[0] == '.' ) continue; /* retrieve various parts of the filename */ From git at videolan.org Tue Feb 17 21:08:34 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 21:08:34 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Missing_const_=28_R=C3=A9mi_Denis?= =?utf-8?q?-Courmont_=29?= Message-ID: <20090217200834.D67C62F763@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 17 22:08:18 2009 +0200| [56cd4f10aa4f8a6b8333d5d34047350e0cdae455] | committer: R?mi Denis-Courmont Missing const > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=56cd4f10aa4f8a6b8333d5d34047350e0cdae455 --- src/modules/modules.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/modules/modules.c b/src/modules/modules.c index 56cf5e7..8b95574 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -99,8 +99,8 @@ static vlc_mutex_t module_lock = VLC_STATIC_MUTEX; #ifdef HAVE_DYNAMIC_PLUGINS static void AllocateAllPlugins ( vlc_object_t * ); static void AllocatePluginDir ( vlc_object_t *, const char *, int ); -static int AllocatePluginFile ( vlc_object_t *, char *, int64_t, int64_t ); -static module_t * AllocatePlugin( vlc_object_t *, char * ); +static int AllocatePluginFile ( vlc_object_t *, const char *, int64_t, int64_t ); +static module_t * AllocatePlugin( vlc_object_t *, const char * ); #endif static int AllocateBuiltinModule( vlc_object_t *, int ( * ) ( module_t * ) ); static void DeleteModule ( module_bank_t *, module_t * ); @@ -1172,7 +1172,7 @@ static void AllocatePluginDir( vlc_object_t *p_this, const char *psz_dir, * for its information data. The module can then be handled by module_need * and module_unneed. It can be removed by DeleteModule. *****************************************************************************/ -static int AllocatePluginFile( vlc_object_t * p_this, char * psz_file, +static int AllocatePluginFile( vlc_object_t * p_this, const char * psz_file, int64_t i_file_time, int64_t i_file_size ) { module_t * p_module = NULL; @@ -1260,7 +1260,7 @@ static int AllocatePluginFile( vlc_object_t * p_this, char * psz_file, * for its information data. The module can then be handled by module_need * and module_unneed. It can be removed by DeleteModule. *****************************************************************************/ -static module_t * AllocatePlugin( vlc_object_t * p_this, char * psz_file ) +static module_t * AllocatePlugin( vlc_object_t * p_this, const char *psz_file ) { module_t * p_module = NULL; module_handle_t handle; From benjihan at users.sourceforge.net Tue Feb 17 21:13:57 2009 From: benjihan at users.sourceforge.net (Ben(jamin) GERARD) Date: Tue, 17 Feb 2009 21:13:57 +0100 Subject: [vlc-devel] [PATCH] dynamic file extensions Message-ID: <1e0b1f250902171213h7f3596cfhcc6d5d92942c435f@mail.gmail.com> [master]: created 74d7bfc: "- Add a dynamic manager for file extensions. Modify current GUI code to use it." 6 files changed, 720 insertions(+), 24 deletions(-) create mode 100644 include/vlc_fileext.h create mode 100644 src/misc/fileext.c -- B. -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001--Add-a-dynamic-manager-for-file-extensions.-Modify.patch Type: application/octet-stream Size: 22917 bytes Desc: not available URL: From git at videolan.org Tue Feb 17 21:18:22 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 21:18:22 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Cosmetic_=28avoid_static_variable?= =?utf-8?q?_in_a_few_functions=29_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090217201822.915182F679@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 17 22:18:07 2009 +0200| [dedea65ce68fa1b5e5000dce7e980f6b5243ea50] | committer: R?mi Denis-Courmont Cosmetic (avoid static variable in a few functions) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dedea65ce68fa1b5e5000dce7e980f6b5243ea50 --- src/modules/modules.c | 39 ++++++++++++++++++--------------------- 1 files changed, 18 insertions(+), 21 deletions(-) diff --git a/src/modules/modules.c b/src/modules/modules.c index 8b95574..a0aaade 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -97,9 +97,11 @@ static vlc_mutex_t module_lock = VLC_STATIC_MUTEX; * Local prototypes *****************************************************************************/ #ifdef HAVE_DYNAMIC_PLUGINS -static void AllocateAllPlugins ( vlc_object_t * ); -static void AllocatePluginDir ( vlc_object_t *, const char *, int ); -static int AllocatePluginFile ( vlc_object_t *, const char *, int64_t, int64_t ); +static void AllocateAllPlugins( vlc_object_t *, module_bank_t * ); +static void AllocatePluginDir( vlc_object_t *, module_bank_t *, const char *, + unsigned ); +static int AllocatePluginFile( vlc_object_t *, module_bank_t *, const char *, + int64_t, int64_t ); static module_t * AllocatePlugin( vlc_object_t *, const char * ); #endif static int AllocateBuiltinModule( vlc_object_t *, int ( * ) ( module_t * ) ); @@ -264,7 +266,7 @@ void module_LoadPlugins( vlc_object_t * p_this, bool b_cache_delete ) CacheLoad( p_this, p_module_bank, b_cache_delete ); /* FIXME: race - do this under the lock */ - AllocateAllPlugins( p_this ); + AllocateAllPlugins( p_this, p_module_bank ); #endif } @@ -937,7 +939,7 @@ char *psz_vlcpath = NULL; * AllocateAllPlugins: load all plugin modules we can find. *****************************************************************************/ #ifdef HAVE_DYNAMIC_PLUGINS -static void AllocateAllPlugins( vlc_object_t *p_this ) +static void AllocateAllPlugins( vlc_object_t *p_this, module_bank_t *p_bank ) { const char *vlcpath = psz_vlcpath; int count,i; @@ -976,7 +978,7 @@ static void AllocateAllPlugins( vlc_object_t *p_this ) msg_Dbg( p_this, "recursively browsing `%s'", path ); /* Don't go deeper than 5 subdirectories */ - AllocatePluginDir( p_this, path, 5 ); + AllocatePluginDir( p_this, p_bank, path, 5 ); free( path ); } @@ -988,8 +990,8 @@ static void AllocateAllPlugins( vlc_object_t *p_this ) /***************************************************************************** * AllocatePluginDir: recursively parse a directory to look for plugins *****************************************************************************/ -static void AllocatePluginDir( vlc_object_t *p_this, const char *psz_dir, - int i_maxdepth ) +static void AllocatePluginDir( vlc_object_t *p_this, module_bank_t *p_bank, + const char *psz_dir, unsigned i_maxdepth ) { /* FIXME: Needs to be ported to wide char on ALL Windows builds */ #ifdef WIN32 @@ -1013,10 +1015,8 @@ static void AllocatePluginDir( vlc_object_t *p_this, const char *psz_dir, #endif char * psz_file; - if( p_this->p_libvlc->b_die || i_maxdepth < 0 ) - { + if( i_maxdepth == 0 ) return; - } #if defined( UNDER_CE ) || defined( _MSC_VER ) #ifdef UNDER_CE @@ -1138,7 +1138,7 @@ static void AllocatePluginDir( vlc_object_t *p_this, const char *psz_dir, i_stat = stat( psz_file, &statbuf ); if( !i_stat && statbuf.st_mode & S_IFDIR ) { - AllocatePluginDir( p_this, psz_file, i_maxdepth - 1 ); + AllocatePluginDir( p_this, p_bank, psz_file, i_maxdepth - 1 ); } else if( i_len > strlen( LIBEXT ) /* We only load files ending with LIBEXT */ @@ -1153,7 +1153,7 @@ static void AllocatePluginDir( vlc_object_t *p_this, const char *psz_dir, i_size = statbuf.st_size; } - AllocatePluginFile( p_this, psz_file, i_time, i_size ); + AllocatePluginFile( p_this, p_bank, psz_file, i_time, i_size ); } free( psz_file ); @@ -1172,7 +1172,8 @@ static void AllocatePluginDir( vlc_object_t *p_this, const char *psz_dir, * for its information data. The module can then be handled by module_need * and module_unneed. It can be removed by DeleteModule. *****************************************************************************/ -static int AllocatePluginFile( vlc_object_t * p_this, const char * psz_file, +static int AllocatePluginFile( vlc_object_t * p_this, module_bank_t *p_bank, + const char *psz_file, int64_t i_file_time, int64_t i_file_size ) { module_t * p_module = NULL; @@ -1181,9 +1182,7 @@ static int AllocatePluginFile( vlc_object_t * p_this, const char * psz_file, /* * Check our plugins cache first then load plugin if needed */ - p_cache_entry = - CacheFind( p_module_bank, psz_file, i_file_time, i_file_size ); - + p_cache_entry = CacheFind( p_bank, psz_file, i_file_time, i_file_size ); if( !p_cache_entry ) { p_module = AllocatePlugin( p_this, psz_file ); @@ -1227,13 +1226,12 @@ static int AllocatePluginFile( vlc_object_t * p_this, const char * psz_file, /* msg_Dbg( p_this, "plugin \"%s\", %s", p_module->psz_object_name, p_module->psz_longname ); */ - p_module->next = p_module_bank->head; - p_module_bank->head = p_module; + p_module->next = p_bank->head; + p_bank->head = p_module; if( !p_module_bank->b_cache ) return 0; -#define p_bank p_module_bank /* Add entry to cache */ p_bank->pp_cache = realloc( p_bank->pp_cache, (p_bank->i_cache + 1) * sizeof(void *) ); @@ -1247,7 +1245,6 @@ static int AllocatePluginFile( vlc_object_t * p_this, const char * psz_file, p_bank->pp_cache[p_bank->i_cache]->b_used = true; p_bank->pp_cache[p_bank->i_cache]->p_module = p_module; p_bank->i_cache++; -#undef p_bank } return p_module ? 0 : -1; From git at videolan.org Tue Feb 17 21:36:00 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 21:36:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_remnants_of_builtin_module?= =?utf-8?q?s_support_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090217203600.94A122F680@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 17 22:32:02 2009 +0200| [f8cca7cf7aad2fdfff4b06e1f645f46dca3acaca] | committer: R?mi Denis-Courmont Remove remnants of builtin modules support If we ever to reintroduce builtin modules, we anyway would need to rewrite that part. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f8cca7cf7aad2fdfff4b06e1f645f46dca3acaca --- configure.ac | 11 +---------- src/Makefile.am | 29 ++--------------------------- src/libvlc.c | 1 - src/modules/builtin.h.in | 29 ----------------------------- src/modules/modules.c | 26 ++------------------------ src/modules/modules.h | 2 -- 6 files changed, 5 insertions(+), 93 deletions(-) diff --git a/configure.ac b/configure.ac index 18a0e2d..e7f74ac 100644 --- a/configure.ac +++ b/configure.ac @@ -5794,18 +5794,9 @@ AS_IF([test "${ac_cv_have_plugins}" = "no"], [ plugin_support=no ]) -AS_IF([test "${enable_shared}" = "no"], [ - plugin_support=no -]) - AS_IF([test "${plugin_support}" != "no"], [ - AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, Define if we have support for dynamic plugins) + AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, [Define if dynamic plugins are supported]) ]) -AM_CONDITIONAL(HAVE_PLUGINS, [test "${plugin_support}" != "no"]) - -dnl Temporary(?) hack for plugins/builtins transition -dnl VLC_ADD_PLUGIN([${BUILTINS}]) -dnl BUILTINS="" dnl dnl Pic and shared libvlc stuff diff --git a/src/Makefile.am b/src/Makefile.am index 740f357..061e247 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -6,14 +6,14 @@ AUTOMAKE_OPTIONS = subdir-objects SUBDIRS = . test NULL = -EXTRA_DIST = extras/COPYING modules/builtin.h.in \ +EXTRA_DIST = extras/COPYING \ misc/beos_specific.cpp \ libvlc.pc.in \ vlc-plugin.pc.in \ libvlc.sym \ libvlccore.sym -BUILT_SOURCES = modules/builtin.h ../include/vlc_about.h +BUILT_SOURCES = ../include/vlc_about.h CLEANFILES = $(BUILT_SOURCES) SUFFIXES = .pc.in .pc @@ -102,31 +102,6 @@ noinst_HEADERS = \ ../include/vlc_vod.h \ $(NULL) -modules/builtin.h: modules/builtin.h.in ../vlc-config Makefile.am - rm -f -- "$@.tmp" - cat "$(srcdir)/modules/builtin.h.in" > "$@.tmp" -if !HAVE_PLUGINS - plugins="$$($(VLC_CONFIG) --list plugin)" ; \ - test -n "$${plugins}" && \ - for p in $${plugins}; do \ - echo "int vlc_entry__$$p (module_t *);" ; \ - done >> "$@.tmp" -endif - echo "#define ALLOCATE_ALL_BUILTINS() \\" >> "$@.tmp" - echo " do \\" >> "$@.tmp" - echo " { \\" >> "$@.tmp" -if !HAVE_PLUGINS - plugins="$$($(VLC_CONFIG) --list plugin)" ; \ - test -n "$${plugins}" && \ - for p in $${plugins}; do \ - echo " ALLOCATE_BUILTIN($$p); \\" ; \ - done >> "$@.tmp" -endif - echo ' } while( 0 );' >> "$@.tmp" - mv -f -- "$@.tmp" "$@" - -modules/modules.c: modules/builtin.h - ../include/vlc_about.h: Makefile.am $(top_srcdir)/COPYING $(top_srcdir)/THANKS $(top_srcdir)/AUTHORS rm -f -- "$@.tmp" mkdir -p -- ../include diff --git a/src/libvlc.c b/src/libvlc.c index e138c32..3591a90 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -472,7 +472,6 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, * list of configuration options exported by each module and loads their * default values. */ - module_LoadBuiltins( p_libvlc ); module_LoadPlugins( p_libvlc, b_cache_delete ); if( p_libvlc->b_die ) { diff --git a/src/modules/builtin.h.in b/src/modules/builtin.h.in deleted file mode 100644 index 333837c..0000000 --- a/src/modules/builtin.h.in +++ /dev/null @@ -1,29 +0,0 @@ -/***************************************************************************** - * modules_builtin.h: built-in modules list - ***************************************************************************** - * Copyright (C) 2001 the VideoLAN team - * - * Authors: Samuel Hocevar - * - * 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 - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. - *****************************************************************************/ - -#define ALLOCATE_BUILTIN( NAME ) \ - AllocateBuiltinModule( p_this, vlc_entry__ ## NAME ); - -/* We also consider the main program as a module (useful for config stuff) */ -int vlc_entry__main( module_t* ); - -/* Add stuff here */ diff --git a/src/modules/modules.c b/src/modules/modules.c index a0aaade..5edffa0 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -88,11 +88,12 @@ #include "vlc_arrays.h" #include "modules/modules.h" -#include "modules/builtin.h" static module_bank_t *p_module_bank = NULL; static vlc_mutex_t module_lock = VLC_STATIC_MUTEX; +int vlc_entry__main( module_t * ); + /***************************************************************************** * Local prototypes *****************************************************************************/ @@ -215,29 +216,6 @@ void __module_EndBank( vlc_object_t *p_this ) free( p_bank ); } -/** - * Load all modules which we built with. - * - * Fills the module bank structure with the builtin modules. - * \param p_this vlc object structure - * \return nothing - */ -void __module_LoadBuiltins( vlc_object_t * p_this ) -{ - vlc_mutex_lock( &module_lock ); - if( p_module_bank->b_builtins ) - { - vlc_mutex_unlock( &module_lock ); - return; - } - p_module_bank->b_builtins = true; - vlc_mutex_unlock( &module_lock ); - - msg_Dbg( p_this, "checking builtin modules" ); - /* FIXME: race here - do this under the lock!! */ - ALLOCATE_ALL_BUILTINS(); -} - #undef module_LoadPlugins /** * Load all plugins diff --git a/src/modules/modules.h b/src/modules/modules.h index b208987..6ac3c8b 100644 --- a/src/modules/modules.h +++ b/src/modules/modules.h @@ -151,8 +151,6 @@ module_t *vlc_submodule_create (module_t *module); #define module_InitBank(a) __module_InitBank(VLC_OBJECT(a)) void __module_InitBank ( vlc_object_t * ); -#define module_LoadBuiltins(a) __module_LoadBuiltins(VLC_OBJECT(a)) -void __module_LoadBuiltins ( vlc_object_t * ); void module_LoadPlugins( vlc_object_t *, bool ); #define module_LoadPlugins(a,b) module_LoadPlugins(VLC_OBJECT(a),b) #define module_EndBank(a) __module_EndBank(VLC_OBJECT(a)) From git at videolan.org Tue Feb 17 21:36:00 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 21:36:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Do_not_declare_non-existent_modul?= =?utf-8?q?e=5FResetBank_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090217203600.A30822F76A@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 17 22:35:12 2009 +0200| [3ce63d4022abca8c52af0fff6d15cf38f6df71da] | committer: R?mi Denis-Courmont Do not declare non-existent module_ResetBank > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3ce63d4022abca8c52af0fff6d15cf38f6df71da --- src/modules/modules.h | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/src/modules/modules.h b/src/modules/modules.h index 6ac3c8b..84ee02c 100644 --- a/src/modules/modules.h +++ b/src/modules/modules.h @@ -155,8 +155,6 @@ void module_LoadPlugins( vlc_object_t *, bool ); #define module_LoadPlugins(a,b) module_LoadPlugins(VLC_OBJECT(a),b) #define module_EndBank(a) __module_EndBank(VLC_OBJECT(a)) void __module_EndBank ( vlc_object_t * ); -#define module_ResetBank(a) __module_ResetBank(VLC_OBJECT(a)) -void __module_ResetBank ( vlc_object_t * ); /* Low-level OS-dependent handler */ int module_Load (vlc_object_t *, const char *, module_handle_t *); From git at videolan.org Tue Feb 17 21:36:00 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 21:36:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_warning_=28_R=C3=A9mi_Denis-C?= =?utf-8?q?ourmont_=29?= Message-ID: <20090217203600.B9D942F7A8@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 17 22:35:50 2009 +0200| [3c7ab8b5496240a4680c19ad1fab7d919637bbb2] | committer: R?mi Denis-Courmont Fix warning > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3c7ab8b5496240a4680c19ad1fab7d919637bbb2 --- src/modules/modules.c | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/modules/modules.c b/src/modules/modules.c index 5edffa0..dd026d0 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -1252,8 +1252,7 @@ static module_t * AllocatePlugin( vlc_object_t * p_this, const char *psz_file ) return NULL; } - /* We need to fill these since they may be needed by module_Call() */ - p_module->psz_filename = psz_file; + p_module->psz_filename = strdup( psz_file ); p_module->handle = handle; p_module->b_loaded = true; @@ -1261,13 +1260,13 @@ static module_t * AllocatePlugin( vlc_object_t * p_this, const char *psz_file ) if( module_Call( p_this, p_module ) != 0 ) { /* We couldn't call module_init() */ + free( p_module->psz_filename ); module_release( p_module ); module_Unload( handle ); return NULL; } DupModule( p_module ); - p_module->psz_filename = strdup( p_module->psz_filename ); /* Everything worked fine ! The module is ready to be added to the list. */ p_module->b_builtin = false; From git at videolan.org Tue Feb 17 21:51:12 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 21:51:12 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Plugins_depend_on_the_core_symbol?= =?utf-8?q?s_list=2C_not_the_whole_library_=28_R=C3=A9mi_Denis-Courmont_?= =?utf-8?q?=29?= Message-ID: <20090217205112.6531A2F75E@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 17 22:50:24 2009 +0200| [14cfaf06ed6499e80b5e67fb6617b18de9a54791] | committer: R?mi Denis-Courmont Plugins depend on the core symbols list, not the whole library > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=14cfaf06ed6499e80b5e67fb6617b18de9a54791 --- modules/genmf | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/genmf b/modules/genmf index 6bdf882..d7b2887 100755 --- a/modules/genmf +++ b/modules/genmf @@ -60,7 +60,7 @@ lib${mod}_plugin_la_CXXFLAGS = \$(AM_CXXFLAGS) lib${mod}_plugin_la_OBJCFLAGS = \$(AM_OBJCFLAGS) # Set LIBADD and DEPENDENCIES manually: lib${mod}_plugin_la_LIBADD = \$(AM_LIBADD) -lib${mod}_plugin_la_DEPENDENCIES = +lib${mod}_plugin_la_DEPENDENCIES = \$(top_srcdir)/src/libvlccore.sym EOF done From git at videolan.org Tue Feb 17 21:52:05 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 21:52:05 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_unused_member_=28_R=C3=A9m?= =?utf-8?q?i_Denis-Courmont_=29?= Message-ID: <20090217205205.DD11F2F7C5@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 17 22:51:42 2009 +0200| [a6acf806b45fdbb7244297faaf0e902811c9e6d3] | committer: R?mi Denis-Courmont Remove unused member > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a6acf806b45fdbb7244297faaf0e902811c9e6d3 --- src/modules/modules.h | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/src/modules/modules.h b/src/modules/modules.h index 84ee02c..3e2aef7 100644 --- a/src/modules/modules.h +++ b/src/modules/modules.h @@ -41,7 +41,6 @@ struct module_bank_t { unsigned i_usage; - bool b_builtins; bool b_plugins; /* Plugins cache */ From git at videolan.org Tue Feb 17 22:36:21 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 22:36:21 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Keep_the_bank_lock_until_plugins_?= =?utf-8?q?are_loaded=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090217213621.061AF2F6D3@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 17 23:28:40 2009 +0200| [247685e30aacb74925c486928844aff52d46874e] | committer: R?mi Denis-Courmont Keep the bank lock until plugins are loaded. This is a bit ugly but it fixes two race conditions: - loading plugins while another thread is initializing, - using the bank when the first thread has not completed loading plugins. Unfortunately, there is still a small race when module_need() calls AllocatePlugin(). It really should not -need to- do that, but the fix would be quite invasive. We would basically need to store plugin callbacks by names rather than function pointers. Then the module descriptors would be fully serializable, so we would not need to re-describe plugins when loading their shared object. That would also fix the last known corruption bug in the plugins cache. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=247685e30aacb74925c486928844aff52d46874e --- src/libvlc.c | 14 +++++----- src/modules/modules.c | 61 ++++++++++++++++++++++++++++--------------------- src/modules/modules.h | 4 +- 3 files changed, 44 insertions(+), 35 deletions(-) diff --git a/src/libvlc.c b/src/libvlc.c index 3591a90..fb7aa52 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -329,7 +329,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, if( config_LoadCmdLine( p_libvlc, &i_argc, ppsz_argv, true ) ) { - module_EndBank( p_libvlc ); + module_EndBank( p_libvlc, false ); return VLC_EGENERIC; } @@ -429,7 +429,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, if( b_exit ) { free( priv->psz_configfile ); - module_EndBank( p_libvlc ); + module_EndBank( p_libvlc, false ); return i_ret; } @@ -455,7 +455,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, /* Translate "C" to the language code: "fr", "en_GB", "nl", "ru"... */ msg_Dbg( p_libvlc, "translation test: code is \"%s\"", _("C") ); - module_EndBank( p_libvlc ); + module_EndBank( p_libvlc, false ); module_InitBank( p_libvlc ); if( !config_GetInt( p_libvlc, "ignore-config" ) ) config_LoadConfigFile( p_libvlc, "main" ); @@ -541,7 +541,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, if( b_exit ) { free( priv->psz_configfile ); - module_EndBank( p_libvlc ); + module_EndBank( p_libvlc, true ); return i_ret; } @@ -569,7 +569,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, PauseConsole(); #endif free( priv->psz_configfile ); - module_EndBank( p_libvlc ); + module_EndBank( p_libvlc, true ); return VLC_EGENERIC; } priv->i_verbose = config_GetInt( p_libvlc, "verbose" ); @@ -826,7 +826,7 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, { module_unneed( p_libvlc, priv->p_memcpy_module ); } - module_EndBank( p_libvlc ); + module_EndBank( p_libvlc, true ); free( priv->psz_configfile ); return VLC_EGENERIC; } @@ -1109,7 +1109,7 @@ void libvlc_InternalCleanup( libvlc_int_t *p_libvlc ) } /* Free module bank. It is refcounted, so we call this each time */ - module_EndBank( p_libvlc ); + module_EndBank( p_libvlc, true ); FREENULL( priv->psz_configfile ); var_DelCallback( p_libvlc, "key-pressed", vlc_key_to_action, diff --git a/src/modules/modules.c b/src/modules/modules.c index dd026d0..805ea21 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -148,28 +148,39 @@ void __module_InitBank( vlc_object_t *p_this ) else p_module_bank->i_usage++; - vlc_mutex_unlock( &module_lock ); + /* We do retain the module bank lock until the plugins are loaded as well. + * This is ugly, this staged loading approach is needed: LibVLC gets + * some configuration parameters relevant to loading the plugins from + * the main (builtin) module. The module bank becomes shared read-only data + * once it is ready, so we need to fully serialize initialization. + * DO NOT UNCOMMENT the following line unless you managed to squeeze + * module_LoadPlugins() before you unlock the mutex. */ + /*vlc_mutex_unlock( &module_lock );*/ } - +#undef module_EndBank /** - * End bank - * * Unloads all unused plugin modules and empties the module * bank in case of success. * \param p_this vlc object structure * \return nothing */ -void __module_EndBank( vlc_object_t *p_this ) +void module_EndBank( vlc_object_t *p_this, bool b_plugins ) { - module_bank_t *p_bank; + module_bank_t *p_bank = p_module_bank; + + assert (p_bank != NULL); /* Save the configuration */ config_AutoSaveConfigFile( p_this ); - vlc_mutex_lock( &module_lock ); - p_bank = p_module_bank; - assert (p_bank != NULL); + /* If plugins were _not_ loaded, then the caller still has the bank lock + * from module_InitBank(). */ + if( b_plugins ) + vlc_mutex_lock( &module_lock ); + /*else + vlc_assert_locked( &module_lock ); not for static mutexes :( */ + if( --p_bank->i_usage > 0 ) { vlc_mutex_unlock( &module_lock ); @@ -218,34 +229,32 @@ void __module_EndBank( vlc_object_t *p_this ) #undef module_LoadPlugins /** - * Load all plugins - * - * Load all plugin modules we can find. + * Loads module descriptions for all available plugins. * Fills the module bank structure with the plugin modules. + * * \param p_this vlc object structure * \return nothing */ void module_LoadPlugins( vlc_object_t * p_this, bool b_cache_delete ) { + module_bank_t *p_bank = p_module_bank; + + assert( p_bank ); + /*vlc_assert_locked( &module_lock ); not for static mutexes :( */ + #ifdef HAVE_DYNAMIC_PLUGINS - vlc_mutex_lock( &module_lock ); - if( p_module_bank->b_plugins ) + if( p_bank->i_usage == 1 ) { - vlc_mutex_unlock( &module_lock ); - return; + msg_Dbg( p_this, "checking plugin modules" ); + p_module_bank->b_cache = config_GetInt( p_this, "plugins-cache" ) > 0; + + if( p_module_bank->b_cache || b_cache_delete ) + CacheLoad( p_this, p_module_bank, b_cache_delete ); + AllocateAllPlugins( p_this, p_module_bank ); } +#endif p_module_bank->b_plugins = true; vlc_mutex_unlock( &module_lock ); - - msg_Dbg( p_this, "checking plugin modules" ); - p_module_bank->b_cache = config_GetInt( p_this, "plugins-cache" ) > 0; - - if( p_module_bank->b_cache || b_cache_delete ) - CacheLoad( p_this, p_module_bank, b_cache_delete ); - - /* FIXME: race - do this under the lock */ - AllocateAllPlugins( p_this, p_module_bank ); -#endif } /** diff --git a/src/modules/modules.h b/src/modules/modules.h index 3e2aef7..00836dd 100644 --- a/src/modules/modules.h +++ b/src/modules/modules.h @@ -152,8 +152,8 @@ module_t *vlc_submodule_create (module_t *module); void __module_InitBank ( vlc_object_t * ); void module_LoadPlugins( vlc_object_t *, bool ); #define module_LoadPlugins(a,b) module_LoadPlugins(VLC_OBJECT(a),b) -#define module_EndBank(a) __module_EndBank(VLC_OBJECT(a)) -void __module_EndBank ( vlc_object_t * ); +void module_EndBank( vlc_object_t *, bool ); +#define module_EndBank(a,b) module_EndBank(VLC_OBJECT(a), b) /* Low-level OS-dependent handler */ int module_Load (vlc_object_t *, const char *, module_handle_t *); From xtophe at chewa.net Tue Feb 17 23:16:41 2009 From: xtophe at chewa.net (Christophe Mutricy) Date: Tue, 17 Feb 2009 23:16:41 +0100 Subject: [vlc-devel] localization in konkani In-Reply-To: References: Message-ID: <20090217221641.GN2353@chewa.net> Hello, On Mon, Feb 16, 09 at 20:19 +0530, sagar arlekar wrote: > I want to localize vlc player to konkani language. Konkani is spoken in the > konkan region on the west cost of India. This language uses 'Devnagri' > script, the same as Hindi. > > kindly send me the 'localization file'. > > Is there a detailed documentation on the localization process?? You can find the file there: http://people.videolan.org/~xtophe/l10n/kok.po You can use poEdit or Lokalize ((or a simple text editor to translate)). Make sure that you use UTF-8 as encoding We don't really have a detailled documentation on the localisation process. If you have question you can ask them on irc #videolan on irc.freenode.net or on the mailing-list vlc-devel at videolan.org When you have done a part of it you can send it to me or put it online and send us the link. There is a mailing list dedicated to translators. you can subscribe at http://mailman.videolan.org/listinfo/translators Thanks -- Xtophe From git at videolan.org Tue Feb 17 23:50:17 2009 From: git at videolan.org (git version control) Date: Tue, 17 Feb 2009 23:50:17 +0100 (CET) Subject: [vlc-devel] commit: Improved ac3/eac3 support in mp4 (fix #2524). (Laurent Aimar ) Message-ID: <20090217225017.6FF232F6A3@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 17 23:48:36 2009 +0100| [d1d56e18a807abb076a24428352c6a9ea60aea16] | committer: Laurent Aimar Improved ac3/eac3 support in mp4 (fix #2524). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d1d56e18a807abb076a24428352c6a9ea60aea16 --- modules/demux/mp4/libmp4.c | 26 +++++++ modules/demux/mp4/libmp4.h | 14 ++++ modules/demux/mp4/mp4.c | 155 ++++++++++++++++++++++++++------------------ 3 files changed, 132 insertions(+), 63 deletions(-) diff --git a/modules/demux/mp4/libmp4.c b/modules/demux/mp4/libmp4.c index 7e9a538..6902eb6 100644 --- a/modules/demux/mp4/libmp4.c +++ b/modules/demux/mp4/libmp4.c @@ -1111,6 +1111,31 @@ error: MP4_READBOX_EXIT( 0 ); } +static int MP4_ReadBox_dac3( stream_t *p_stream, MP4_Box_t *p_box ) +{ + MP4_Box_data_dac3_t *p_dac3; + MP4_READBOX_ENTER( MP4_Box_data_dac3_t ); + + p_dac3 = p_box->data.p_dac3; + + unsigned i_header; + MP4_GET3BYTES( i_header ); + + p_dac3->i_fscod = ( i_header >> 22 ) & 0x03; + p_dac3->i_bsid = ( i_header >> 17 ) & 0x01f; + p_dac3->i_bsmod = ( i_header >> 14 ) & 0x07; + p_dac3->i_acmod = ( i_header >> 11 ) & 0x07; + p_dac3->i_lfeon = ( i_header >> 10 ) & 0x01; + p_dac3->i_bitrate_code = ( i_header >> 5) & 0x1f; + +#ifdef MP4_VERBOSE + msg_Dbg( p_stream, + "read box: \"dac3\" fscod=0x%x bsid=0x%x bsmod=0x%x acmod=0x%x lfeon=0x%x bitrate_code=0x%x", + p_dac3->i_fscod, p_dac3->i_bsid, p_dac3->i_bsmod, p_dac3->i_acmod, p_dac3->i_lfeon, p_dac3->i_bitrate_code ); +#endif + MP4_READBOX_EXIT( 1 ); +} + static int MP4_ReadBox_sample_soun( stream_t *p_stream, MP4_Box_t *p_box ) { unsigned int i; @@ -2528,6 +2553,7 @@ static const struct { FOURCC_dcom, MP4_ReadBox_dcom, MP4_FreeBox_Common }, { FOURCC_cmvd, MP4_ReadBox_cmvd, MP4_FreeBox_cmvd }, { FOURCC_avcC, MP4_ReadBox_avcC, MP4_FreeBox_avcC }, + { FOURCC_dac3, MP4_ReadBox_dac3, MP4_FreeBox_Common }, /* Nothing to do with this box */ { FOURCC_mdat, MP4_ReadBoxSkip, MP4_FreeBox_Common }, diff --git a/modules/demux/mp4/libmp4.h b/modules/demux/mp4/libmp4.h index 6b64048..a4e786d 100644 --- a/modules/demux/mp4/libmp4.h +++ b/modules/demux/mp4/libmp4.h @@ -118,6 +118,8 @@ #define FOURCC_sawb VLC_FOURCC( 's', 'a', 'w', 'b' ) #define FOURCC_OggS VLC_FOURCC( 'O', 'g', 'g', 'S' ) #define FOURCC_alac VLC_FOURCC( 'a', 'l', 'a', 'c' ) +#define FOURCC_dac3 VLC_FOURCC( 'd', 'a', 'c', '3' ) +#define FOURCC_dec3 VLC_FOURCC( 'd', 'e', 'c', '3' ) #define FOURCC_zlib VLC_FOURCC( 'z', 'l', 'i', 'b' ) #define FOURCC_SVQ1 VLC_FOURCC( 'S', 'V', 'Q', '1' ) @@ -859,6 +861,17 @@ typedef struct } MP4_Box_data_avcC_t; +typedef struct +{ + uint8_t i_fscod; + uint8_t i_bsid; + uint8_t i_bsmod; + uint8_t i_acmod; + uint8_t i_lfeon; + uint8_t i_bitrate_code; + +} MP4_Box_data_dac3_t; + /* typedef struct MP4_Box_data__s { @@ -892,6 +905,7 @@ typedef union MP4_Box_data_s MP4_Box_data_esds_t *p_esds; MP4_Box_data_avcC_t *p_avcC; + MP4_Box_data_dac3_t *p_dac3; MP4_Box_data_stsz_t *p_stsz; MP4_Box_data_stz2_t *p_stz2; diff --git a/modules/demux/mp4/mp4.c b/modules/demux/mp4/mp4.c index de0b001..36d8e06 100644 --- a/modules/demux/mp4/mp4.c +++ b/modules/demux/mp4/mp4.c @@ -1486,6 +1486,70 @@ static int TrackCreateES( demux_t *p_demux, mp4_track_t *p_track, } } + /* */ + switch( p_track->fmt.i_cat ) + { + case VIDEO_ES: + p_track->fmt.video.i_width = p_sample->data.p_sample_vide->i_width; + p_track->fmt.video.i_height = p_sample->data.p_sample_vide->i_height; + p_track->fmt.video.i_bits_per_pixel = + p_sample->data.p_sample_vide->i_depth; + + /* fall on display size */ + if( p_track->fmt.video.i_width <= 0 ) + p_track->fmt.video.i_width = p_track->i_width; + if( p_track->fmt.video.i_height <= 0 ) + p_track->fmt.video.i_height = p_track->i_height; + + /* Find out apect ratio from display size */ + if( p_track->i_width > 0 && p_track->i_height > 0 && + /* Work-around buggy muxed files */ + p_sample->data.p_sample_vide->i_width != p_track->i_width ) + p_track->fmt.video.i_aspect = + VOUT_ASPECT_FACTOR * p_track->i_width / p_track->i_height; + + /* Support for cropping (eg. in H263 files) */ + p_track->fmt.video.i_visible_width = p_track->fmt.video.i_width; + p_track->fmt.video.i_visible_height = p_track->fmt.video.i_height; + + /* Frame rate */ + p_track->fmt.video.i_frame_rate = p_track->i_timescale; + p_track->fmt.video.i_frame_rate_base = 1; + + if( p_track->fmt.video.i_frame_rate && + (p_box = MP4_BoxGet( p_track->p_stbl, "stts" )) && + p_box->data.p_stts->i_entry_count >= 1 ) + { + p_track->fmt.video.i_frame_rate_base = + p_box->data.p_stts->i_sample_delta[0]; + } + + break; + + case AUDIO_ES: + p_track->fmt.audio.i_channels = + p_sample->data.p_sample_soun->i_channelcount; + p_track->fmt.audio.i_rate = + p_sample->data.p_sample_soun->i_sampleratehi; + p_track->fmt.i_bitrate = p_sample->data.p_sample_soun->i_channelcount * + p_sample->data.p_sample_soun->i_sampleratehi * + p_sample->data.p_sample_soun->i_samplesize; + p_track->fmt.audio.i_bitspersample = + p_sample->data.p_sample_soun->i_samplesize; + + if( p_track->i_sample_size != 0 && + p_sample->data.p_sample_soun->i_qt_version == 1 && p_sample->data.p_sample_soun->i_sample_per_packet <= 0 ) + { + msg_Err( p_demux, "Invalid sample per packet value for qt_version 1" ); + return VLC_EGENERIC; + } + break; + + default: + break; + } + + /* It's a little ugly but .. there are special cases */ switch( p_sample->i_type ) { @@ -1498,6 +1562,34 @@ static int TrackCreateES( demux_t *p_demux, mp4_track_t *p_track, p_soun->i_qt_version = 0; break; } + case( VLC_FOURCC( 'a', 'c', '-', '3' ) ): + { + MP4_Box_t *p_dac3_box = MP4_BoxGet( p_sample, "dac3", 0 ); + + p_track->fmt.i_codec = VLC_FOURCC( 'a', '5', '2', ' ' ); + if( p_dac3_box ) + { + static const int pi_bitrate[] = { + 32, 40, 48, 56, + 64, 80, 96, 112, + 128, 160, 192, 224, + 256, 320, 384, 448, + 512, 576, 640, + }; + MP4_Box_data_dac3_t *p_dac3 = p_dac3_box->data.p_dac3; + p_track->fmt.audio.i_channels = 0; + p_track->fmt.i_bitrate = 0; + if( p_dac3->i_bitrate_code < sizeof(pi_bitrate)/sizeof(*pi_bitrate) ) + p_track->fmt.i_bitrate = pi_bitrate[p_dac3->i_bitrate_code] * 1000; + p_track->fmt.audio.i_bitspersample = 0; + } + break; + } + case( VLC_FOURCC( 'e', 'c', '-', '3' ) ): + { + p_track->fmt.i_codec = VLC_FOURCC( 'e', 'a', 'c', '3' ); + break; + } case( VLC_FOURCC( 'r', 'a', 'w', ' ' ) ): case( VLC_FOURCC( 'N', 'O', 'N', 'E' ) ): @@ -1740,69 +1832,6 @@ static int TrackCreateES( demux_t *p_demux, mp4_track_t *p_track, #undef p_decconfig - /* some last initialisation */ - switch( p_track->fmt.i_cat ) - { - case VIDEO_ES: - p_track->fmt.video.i_width = p_sample->data.p_sample_vide->i_width; - p_track->fmt.video.i_height = p_sample->data.p_sample_vide->i_height; - p_track->fmt.video.i_bits_per_pixel = - p_sample->data.p_sample_vide->i_depth; - - /* fall on display size */ - if( p_track->fmt.video.i_width <= 0 ) - p_track->fmt.video.i_width = p_track->i_width; - if( p_track->fmt.video.i_height <= 0 ) - p_track->fmt.video.i_height = p_track->i_height; - - /* Find out apect ratio from display size */ - if( p_track->i_width > 0 && p_track->i_height > 0 && - /* Work-around buggy muxed files */ - p_sample->data.p_sample_vide->i_width != p_track->i_width ) - p_track->fmt.video.i_aspect = - VOUT_ASPECT_FACTOR * p_track->i_width / p_track->i_height; - - /* Support for cropping (eg. in H263 files) */ - p_track->fmt.video.i_visible_width = p_track->fmt.video.i_width; - p_track->fmt.video.i_visible_height = p_track->fmt.video.i_height; - - /* Frame rate */ - p_track->fmt.video.i_frame_rate = p_track->i_timescale; - p_track->fmt.video.i_frame_rate_base = 1; - - if( p_track->fmt.video.i_frame_rate && - (p_box = MP4_BoxGet( p_track->p_stbl, "stts" )) && - p_box->data.p_stts->i_entry_count >= 1 ) - { - p_track->fmt.video.i_frame_rate_base = - p_box->data.p_stts->i_sample_delta[0]; - } - - break; - - case AUDIO_ES: - p_track->fmt.audio.i_channels = - p_sample->data.p_sample_soun->i_channelcount; - p_track->fmt.audio.i_rate = - p_sample->data.p_sample_soun->i_sampleratehi; - p_track->fmt.i_bitrate = p_sample->data.p_sample_soun->i_channelcount * - p_sample->data.p_sample_soun->i_sampleratehi * - p_sample->data.p_sample_soun->i_samplesize; - p_track->fmt.audio.i_bitspersample = - p_sample->data.p_sample_soun->i_samplesize; - - if( p_track->i_sample_size != 0 && - p_sample->data.p_sample_soun->i_qt_version == 1 && p_sample->data.p_sample_soun->i_sample_per_packet <= 0 ) - { - msg_Err( p_demux, "Invalid sample per packet value for qt_version 1" ); - return VLC_EGENERIC; - } - break; - - default: - break; - } - if( pp_es ) *pp_es = es_out_Add( p_demux->out, &p_track->fmt ); From linkfanel at yahoo.fr Wed Feb 18 11:07:23 2009 From: linkfanel at yahoo.fr (Pierre Ynard) Date: Wed, 18 Feb 2009 11:07:23 +0100 Subject: [vlc-devel] [PATCH] Fix compilation on WinCE Message-ID: <20090218100723.GA25853@via.ecp.fr> Update forgotten function calls diff --git a/src/modules/modules.c b/src/modules/modules.c index 805ea21..476809e 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -1059,7 +1059,7 @@ static void AllocatePluginDir( vlc_object_t *p_this, module_bank_t *p_bank, if( GetFileAttributes( psz_path ) & FILE_ATTRIBUTE_DIRECTORY ) #endif { - AllocatePluginDir( p_this, psz_path, i_maxdepth - 1 ); + AllocatePluginDir( p_this, p_bank, psz_path, i_maxdepth - 1 ); } else if( i_len > strlen( LIBEXT ) /* We only load files ending with LIBEXT */ @@ -1087,7 +1087,7 @@ static void AllocatePluginDir( vlc_object_t *p_this, module_bank_t *p_bank, } psz_file = psz_path; - AllocatePluginFile( p_this, psz_file, i_time, i_size ); + AllocatePluginFile( p_this, p_bank, psz_file, i_time, i_size ); } } while( !p_this->p_libvlc->b_die && FindNextFile( handle, &finddata ) ); Regards, -- Pierre Ynard "Une ?me dans un corps, c'est comme un dessin sur une feuille de papier." From anna.richter1 at gmx.net Wed Feb 18 13:09:56 2009 From: anna.richter1 at gmx.net (Anna Richter) Date: Wed, 18 Feb 2009 13:09:56 +0100 Subject: [vlc-devel] Start a VLC from a C-Code without any URL Message-ID: <20090218120956.197230@gmx.net> Hello everybody! I habe the following problem: i need to implement a multimedia-streaming solution with the feature, that the server streams a video to a client and plays this video at the same time. VLC player is used to display the data. How I do this: Client-Side on my client-pc is a program (vlcsocket) which creates a UDP socket, binds it to an IP-address and then let it join a multicast group. Then this program starts a new VLC-Client (using this source code: http://wiki.videolan.org/LibVLC_Tutorial ) and waits for the data from the server. The Videodata-URL is given to the program as a paratemeter, means the call to this programm looks like this: ./vlcsocket rtsp://192.168.67.12:8556/newTest.mpg. That works so far and the client socket receives and plays the videostream. Server-Side The server is waiting for a client connection. When a client request is received, the server starts streaming the videodata to the multicast IP-address. At the same time the video data has to be displayed on this server PC. For this task I have the following idea: parallel to the server another vlcsocket-program is running. This program is similar to that one on the client side, it also creates a new socket, binds it to an IP-address and let it join the multicast group. Then it should create a new VLC-Player and just wait for videodata from the server. And here my problem begins: first of all: I start this program independently from the server. So the program should just start and wait for the data. Second: the program doesn?t receive any data-url as a parameter. This is because this program should always play the same data, that is sent to the requesting client. That is a problem, because of the function m = libvlc_media_new (inst, movieurl, &ex); When I try to start the program without any url I receive the message: segmentation fault and the program exits. The other problem is that I don?t know how to make the program creating a new vlc-player-instance and then just wait for incoming data. It should do just as the official VLC player when you type "vlc" on the terminal: just be ready. I tried it with the recvfrom()-function, but the program just blocks and nothing happens. Below you can view the program code. It would be great, if you knew to help me. Best wishes Anna P.S. Here comes the source code of the vlcsocket-program on the server-side: #include #include #include #include #include #include #include #define RECEIVESIZE 10000 void DieWithError(char*errorMessage); static void raise(libvlc_exception_t * ex) { if (libvlc_exception_raised (ex)) { fprintf (stderr, "error: %s\n", libvlc_exception_get_message(ex)); exit (-1); } } int main(int argc, char* argv[]) { int sock; /*Socket descriptor*/ struct sockaddr_in receiverAddr; /*socket IP and port*/ unsigned short receiverPort = 9000; struct ip_mreq multicastRequest; /*multicast group char *movieurl; struct sockaddr_in serverAddr; char receiveBuffer[RECEIVESIZE]; int receiveBytes; int serverSize; /*Create a socket*/ if((sock = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)) < 0) { DieWithError("Failed to create a socket"); } memset(&receiverAddr, 0, sizeof(receiverAddr)); receiverAddr.sin_family = AF_INET; receiverAddr.sin_addr.s_addr = htonl(INADDR_ANY); receiverAddr.sin_port = htons(receiverPort); /*Bind this socket to a IP-Adress and Port number*/ if(bind(sock, (struct sockaddr*) &receiverAddr, sizeof(receiverAddr)) < 0) { DieWithError("bind() failed"); } /*Specify the multicast group*/ multicastRequest.imr_multiaddr.s_addr = inet_addr("224.1.2.3"); multicastRequest.imr_interface.s_addr = htonl(INADDR_ANY); /*Join the multicast-group*/ if(setsockopt(sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (void *) &multicastRequest, sizeof(multicastRequest)) < 0) { DieWithError("setsockopt() failed"); } serverSize = sizeof(serverAddr); receiveBytes = recvfrom(sock, receiveBuffer, RECEIVESIZE, 0, (struct sockaddr *) &serverAddr, &serverSize); const char * const vlc_args[] = { "-I", "dummy", /* Don't use any interface */ "--ignore-config", /* Don't use VLC's config */ "--plugin-path=/set/your/path/to/libvlc/module/if/you/are/on/windows/or/macosx" }; if(argc == 2) { movieurl=argv[1]; } else { movieurl = NULL; } libvlc_exception_t ex; libvlc_instance_t * inst; libvlc_media_player_t *mp; libvlc_media_t *m; libvlc_exception_init (&ex); /* init vlc modules, should be done only once */ inst = libvlc_new (sizeof(vlc_args) / sizeof(vlc_args[0]), vlc_args, &ex); raise (&ex); /* Create a new item */ m = libvlc_media_new (inst, movieurl, &ex); raise (&ex); /* XXX: demo art and meta information fetching */ /* Create a media player playing environement */ mp = libvlc_media_player_new_from_media (m, &ex); raise (&ex); /* No need to keep the media now */ libvlc_media_release (m); #if 0 /* This is a non working code that show how to hooks into a window, * if we have a window around */ libvlc_drawable_t drawable = xdrawable; /* or on windows */ libvlc_drawable_t drawable = hwnd; libvlc_media_player_set_drawable (mp, drawable, &ex); raise (&ex); #endif /* play the media_player */ libvlc_media_player_play (mp, &ex); raise (&ex); sleep (50); /*Let it play a bit */ /* Stop playing */ libvlc_media_player_stop (mp, &ex); /* Free the media_player */ libvlc_media_player_release (mp); libvlc_release (inst); raise (&ex); return 0; } void DieWithError(char*errorMessage) { perror(errorMessage); exit(1); } -- Jetzt 1 Monat kostenlos! GMX FreeDSL - Telefonanschluss + DSL f?r nur 17,95 Euro/mtl.!* http://dsl.gmx.de/?ac=OM.AD.PD003K11308T4569a -------------- next part -------------- A non-text attachment was scrubbed... Name: vlcsocket_new.c Type: text/x-csrc Size: 3641 bytes Desc: not available URL: From git at videolan.org Wed Feb 18 13:21:16 2009 From: git at videolan.org (git version control) Date: Wed, 18 Feb 2009 13:21:16 +0100 (CET) Subject: [vlc-devel] commit: Update forgotten function calls (Geoffroy Couprie ) Message-ID: <20090218122116.E4AFD2F804@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Wed Feb 18 13:09:26 2009 +0100| [10c08ec843a2d6d96d081f5bd987a3064825c40a] | committer: Geoffroy Couprie Update forgotten function calls Fixed by Pierre Ynard > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=10c08ec843a2d6d96d081f5bd987a3064825c40a --- src/modules/modules.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules/modules.c b/src/modules/modules.c index 805ea21..476809e 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -1059,7 +1059,7 @@ static void AllocatePluginDir( vlc_object_t *p_this, module_bank_t *p_bank, if( GetFileAttributes( psz_path ) & FILE_ATTRIBUTE_DIRECTORY ) #endif { - AllocatePluginDir( p_this, psz_path, i_maxdepth - 1 ); + AllocatePluginDir( p_this, p_bank, psz_path, i_maxdepth - 1 ); } else if( i_len > strlen( LIBEXT ) /* We only load files ending with LIBEXT */ @@ -1087,7 +1087,7 @@ static void AllocatePluginDir( vlc_object_t *p_this, module_bank_t *p_bank, } psz_file = psz_path; - AllocatePluginFile( p_this, psz_file, i_time, i_size ); + AllocatePluginFile( p_this, p_bank, psz_file, i_time, i_size ); } } while( !p_this->p_libvlc->b_die && FindNextFile( handle, &finddata ) ); From git at videolan.org Wed Feb 18 21:15:07 2009 From: git at videolan.org (git version control) Date: Wed, 18 Feb 2009 21:15:07 +0100 (CET) Subject: [vlc-devel] commit: Fixed mms udp polling and network timeout. (Laurent Aimar ) Message-ID: <20090218201507.3983D2F834@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 18 20:52:09 2009 +0100| [366ec46f5e2df248858b1a6ac978a823f33225ac] | committer: Laurent Aimar Fixed mms udp polling and network timeout. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=366ec46f5e2df248858b1a6ac978a823f33225ac --- modules/access/mms/mmstu.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/modules/access/mms/mmstu.c b/modules/access/mms/mmstu.c index e96317b..9f24789 100644 --- a/modules/access/mms/mmstu.c +++ b/modules/access/mms/mmstu.c @@ -1088,13 +1088,13 @@ static int NetFillBuffer( access_t *p_access ) } if( i_udp > 0 ) { - ufd[nfd].fd = p_sys->i_handle_tcp; + ufd[nfd].fd = p_sys->i_handle_udp; ufd[nfd].events = POLLIN; nfd++; } /* We'll wait 0.5 second if nothing happens */ - timeout = 500; + timeout = __MIN( 500, p_sys->i_timeout ); if( i_try * timeout > p_sys->i_timeout ) { @@ -1107,7 +1107,8 @@ static int NetFillBuffer( access_t *p_access ) return -1; } - if( !vlc_object_alive (p_access) || p_access->b_error ) return -1; + if( !vlc_object_alive (p_access) || p_access->b_error ) + return -1; //msg_Dbg( p_access, "NetFillBuffer: trying again (select)" ); From git at videolan.org Wed Feb 18 21:15:07 2009 From: git at videolan.org (git version control) Date: Wed, 18 Feb 2009 21:15:07 +0100 (CET) Subject: [vlc-devel] commit: Added a "key-rate-normal" to reset input playback rate to 1x ( Laurent Aimar ) Message-ID: <20090218201507.4C1A12F839@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 18 21:11:52 2009 +0100| [97732ebb5fb41073093f74c8167bea0895550f63] | committer: Laurent Aimar Added a "key-rate-normal" to reset input playback rate to 1x It is related to #1122 and #1848. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=97732ebb5fb41073093f74c8167bea0895550f63 --- include/vlc_keys.h | 5 ++++- modules/control/hotkeys.c | 6 ++++++ src/libvlc-module.c | 7 +++++++ 3 files changed, 17 insertions(+), 1 deletions(-) diff --git a/include/vlc_keys.h b/include/vlc_keys.h index bfd2672..60a3075 100644 --- a/include/vlc_keys.h +++ b/include/vlc_keys.h @@ -342,6 +342,9 @@ typedef enum vlc_key { /* scaling */ ACTIONID_TOGGLE_AUTOSCALE, ACTIONID_SCALE_UP, - ACTIONID_SCALE_DOWN + ACTIONID_SCALE_DOWN, + /* */ + ACTIONID_RATE_NORMAL, + } vlc_key_t; #endif diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 74cf5a1..490bae9 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -757,6 +757,12 @@ static void Run( intf_thread_t *p_intf ) vout_OSDMessage( VLC_OBJECT(p_input), DEFAULT_CHAN, _("Slower") ); } + else if( i_action == ACTIONID_RATE_NORMAL ) + { + var_SetInteger( p_input, "rate", INPUT_RATE_DEFAULT ); + vout_OSDMessage( VLC_OBJECT(p_input), DEFAULT_CHAN, + _("1x") ); + } else if( i_action == ACTIONID_POSITION && b_seekable ) { DisplayPosition( p_intf, p_vout, p_input ); diff --git a/src/libvlc-module.c b/src/libvlc-module.c index e719b60..4ee70fc 100644 --- a/src/libvlc-module.c +++ b/src/libvlc-module.c @@ -1215,6 +1215,8 @@ static const char *const ppsz_albumart_descriptions[] = #define FASTER_KEY_LONGTEXT N_("Select the hotkey to use for fast forward playback.") #define SLOWER_KEY_TEXT N_("Slower") #define SLOWER_KEY_LONGTEXT N_("Select the hotkey to use for slow motion playback.") +#define RATE_NORMAL_KEY_TEXT N_("Normal rate") +#define RATE_NORMAL_KEY_LONGTEXT N_("Select the hotkey to set the playback rate back to normal.") #define NEXT_KEY_TEXT N_("Next") #define NEXT_KEY_LONGTEXT N_("Select the hotkey to use to skip to the next item in the playlist.") #define PREV_KEY_TEXT N_("Previous") @@ -2114,6 +2116,7 @@ vlc_module_begin () # define KEY_PLAY KEY_UNSET # define KEY_FASTER KEY_MODIFIER_COMMAND|'=' # define KEY_SLOWER KEY_MODIFIER_COMMAND|'-' +# define KEY_RATE_NORMAL KEY_UNSET # define KEY_NEXT KEY_MODIFIER_COMMAND|KEY_RIGHT # define KEY_PREV KEY_MODIFIER_COMMAND|KEY_LEFT # define KEY_STOP KEY_MODIFIER_COMMAND|'.' @@ -2225,6 +2228,7 @@ vlc_module_begin () # define KEY_PLAY KEY_UNSET # define KEY_FASTER '+' # define KEY_SLOWER '-' +# define KEY_RATE_NORMAL KEY_UNSET # define KEY_NEXT 'n' # define KEY_PREV 'p' # define KEY_STOP 's' @@ -2345,6 +2349,8 @@ vlc_module_begin () FASTER_KEY_LONGTEXT, false ) add_key( "key-slower", KEY_SLOWER, NULL, SLOWER_KEY_TEXT, SLOWER_KEY_LONGTEXT, false ) + add_key( "key-rate-normal", KEY_RATE_NORMAL, NULL, RATE_NORMAL_KEY_TEXT, + RATE_NORMAL_KEY_LONGTEXT, false ) add_key( "key-next", KEY_NEXT, NULL, NEXT_KEY_TEXT, NEXT_KEY_LONGTEXT, false ) add_key( "key-prev", KEY_PREV, NULL, PREV_KEY_TEXT, @@ -2687,6 +2693,7 @@ const struct hotkey libvlc_hotkeys[] = { "key-next", ACTIONID_NEXT, 0, }, { "key-faster", ACTIONID_FASTER, 0, }, { "key-slower", ACTIONID_SLOWER, 0, }, + { "key-rate-normal", ACTIONID_RATE_NORMAL, 0, }, { "key-toggle-fullscreen", ACTIONID_TOGGLE_FULLSCREEN, 0, }, { "key-leave-fullscreen", ACTIONID_LEAVE_FULLSCREEN, 0, }, { "key-vol-up", ACTIONID_VOL_UP, 0, }, From git at videolan.org Wed Feb 18 22:58:34 2009 From: git at videolan.org (git version control) Date: Wed, 18 Feb 2009 22:58:34 +0100 (CET) Subject: [vlc-devel] commit: Allow to only specify --cdda-track to select a cd audio track. ( Laurent Aimar ) Message-ID: <20090218215834.B515E2F81C@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 18 22:56:41 2009 +0100| [55e3dca3b7164bfb8aeafc21b9e9ea6258cf4bf9] | committer: Laurent Aimar Allow to only specify --cdda-track to select a cd audio track. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=55e3dca3b7164bfb8aeafc21b9e9ea6258cf4bf9 --- modules/access/cdda.c | 19 +++++++++---------- 1 files changed, 9 insertions(+), 10 deletions(-) diff --git a/modules/access/cdda.c b/modules/access/cdda.c index e8c4ba6..8664102 100644 --- a/modules/access/cdda.c +++ b/modules/access/cdda.c @@ -77,7 +77,7 @@ vlc_module_begin () add_integer( "cdda-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT, CACHING_LONGTEXT, true ) - add_integer( "cdda-track", -1 , NULL, NULL, NULL, true ) + add_integer( "cdda-track", 0 , NULL, NULL, NULL, true ) change_internal () add_integer( "cdda-first-sector", -1, NULL, NULL, NULL, true ) change_internal () @@ -142,7 +142,6 @@ static int Open( vlc_object_t *p_this ) access_sys_t *p_sys; vcddev_t *vcddev; char *psz_name; - int i_mrl_tracknum = -1; int i_ret; if( !p_access->psz_path || !*p_access->psz_path ) @@ -178,9 +177,9 @@ static int Open( vlc_object_t *p_this ) p_sys->vcddev = vcddev; /* Do we play a single track ? */ - p_sys->i_track = var_CreateGetInteger( p_access, "cdda-track" ); + p_sys->i_track = var_CreateGetInteger( p_access, "cdda-track" ) - 1; - if( p_sys->i_track < 0 && i_mrl_tracknum <= 0 ) + if( p_sys->i_track < 0 ) { /* We only do separate items if the whole disc is requested */ input_thread_t *p_input = (input_thread_t*)vlc_object_find( p_access, VLC_OBJECT_INPUT, FIND_PARENT ); @@ -224,17 +223,17 @@ static int Open( vlc_object_t *p_this ) /* Tracknumber in MRL */ if( p_sys->i_first_sector < 0 || p_sys->i_last_sector < 0 ) { - int i_titles; - if( i_mrl_tracknum <= 0 ) + const int i_titles = ioctl_GetTracksMap( VLC_OBJECT(p_access), + p_sys->vcddev, &p_sys->p_sectors ); + if( p_sys->i_track >= i_titles ) { - msg_Err( p_access, "wrong sector information" ); + msg_Err( p_access, "invalid track number" ); goto error; } - i_titles = ioctl_GetTracksMap( VLC_OBJECT(p_access), - p_sys->vcddev, &p_sys->p_sectors ); + p_sys->i_first_sector = p_sys->p_sectors[p_sys->i_track]; + p_sys->i_last_sector = p_sys->p_sectors[p_sys->i_track+1]; } - p_sys->i_sector = p_sys->i_first_sector; p_access->info.i_size = (p_sys->i_last_sector - p_sys->i_first_sector) * (int64_t)CDDA_DATA_SIZE; From git at videolan.org Thu Feb 19 00:02:17 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 00:02:17 +0100 (CET) Subject: [vlc-devel] commit: Fixed a memleak in cdda. (Laurent Aimar ) Message-ID: <20090218230217.DA5682F5E7@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 19 00:01:27 2009 +0100| [b706620b1012130eeeb4075fe93e250f87c4ddd2] | committer: Laurent Aimar Fixed a memleak in cdda. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b706620b1012130eeeb4075fe93e250f87c4ddd2 --- modules/access/cdda.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/modules/access/cdda.c b/modules/access/cdda.c index 8664102..b416dd9 100644 --- a/modules/access/cdda.c +++ b/modules/access/cdda.c @@ -245,6 +245,7 @@ static int Open( vlc_object_t *p_this ) return VLC_SUCCESS; error: + free( p_sys->p_sectors ); ioctl_Close( VLC_OBJECT(p_access), p_sys->vcddev ); free( p_sys ); return VLC_EGENERIC; @@ -257,6 +258,8 @@ static void Close( vlc_object_t *p_this ) { access_t *p_access = (access_t *)p_this; access_sys_t *p_sys = p_access->p_sys; + + free( p_sys->p_sectors ); ioctl_Close( p_this, p_sys->vcddev ); free( p_sys ); } From brezhoneg1 at yahoo.fr Thu Feb 19 00:33:27 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Thu, 19 Feb 2009 00:33:27 +0100 Subject: [vlc-devel] [PATCH] -- corrects two skins2 crashes Message-ID: <003101c99221$573f1da0$4c9ef8c1@CCCC> This patch corrects segfaults when the video widget of a skin doesn't exist or is hidden. - gui/skins/src/skins_main.cpp : When the video window doesn't exist or is hidden, a Null window is passed to the window provider process. Stating VLC_EGENERIC instead of VLC_SUCCESS allows probing to continue. - In gui/qt4/qt4.cpp Makes sure the qt4 window provider doesn't take over and try to provide a video widget for skins (also crash). Not setting qt4-iface in dialog-provider-only mode solves the problem. Erwan10 -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Corrects-crashing-when-a-skin-doesn-t-have-a-video-w.diff Type: application/octet-stream Size: 2018 bytes Desc: not available URL: From mozvip at gmail.com Wed Feb 18 13:58:47 2009 From: mozvip at gmail.com (Guillaume Serre) Date: Wed, 18 Feb 2009 13:58:47 +0100 Subject: [vlc-devel] RTMP input : allow to change the swfUrl Message-ID: <9a7755b60902180458w6171dbbfpc70668c1d041772@mail.gmail.com> Hi, It would be great if the harcoded value for swfUrl would be moved to the preferences instead, so that we can change it. FI, the swfUrl value used by VLC is harcoded to "file://mac.flv" in the file modules/access/rtmp/rtmp_amf_flv.c (between lines 418 and 430). Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Thu Feb 19 01:41:06 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 01:41:06 +0100 (CET) Subject: [vlc-devel] commit: WinCE: fix compilation of wince.cpp (Geoffroy Couprie ) Message-ID: <20090219004106.4449C2F851@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Wed Feb 18 18:53:58 2009 +0100| [7480fa285fc662ba062f6b44ce9e2d627e358767] | committer: Geoffroy Couprie WinCE: fix compilation of wince.cpp > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7480fa285fc662ba062f6b44ce9e2d627e358767 --- modules/gui/wince/wince.cpp | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/gui/wince/wince.cpp b/modules/gui/wince/wince.cpp index 3580b57..1a6928c 100644 --- a/modules/gui/wince/wince.cpp +++ b/modules/gui/wince/wince.cpp @@ -198,8 +198,8 @@ static void Run( intf_thread_t *p_intf ) p_intf->pf_show_dialog = NULL; } else - WaitForSingleObject (p_priv->thread_ready, INFINITE); - CloseHandle (p_priv->thread_ready); + WaitForSingleObject (p_intf->p_sys->thread_ready, INFINITE); + CloseHandle (p_intf->p_sys->thread_ready); } else { From git at videolan.org Thu Feb 19 01:41:06 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 01:41:06 +0100 (CET) Subject: [vlc-devel] commit: WinCE intf: remove VLC_Changeset (Geoffroy Couprie ) Message-ID: <20090219004106.53A8E2F86E@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Wed Feb 18 18:54:48 2009 +0100| [465ce16e5880de5bec69003f48469fd45a56be9f] | committer: Geoffroy Couprie WinCE intf: remove VLC_Changeset > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=465ce16e5880de5bec69003f48469fd45a56be9f --- modules/gui/wince/interface.cpp | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/modules/gui/wince/interface.cpp b/modules/gui/wince/interface.cpp index be5cc40..b97e766 100644 --- a/modules/gui/wince/interface.cpp +++ b/modules/gui/wince/interface.cpp @@ -507,8 +507,7 @@ LRESULT Interface::WndProc( HWND hwnd, UINT msg, WPARAM wp, LPARAM lp ) _("(c) 1996-2008 - the VideoLAN Team\n\n") + _("Compiled by ") + VLC_CompileBy() + "@" + VLC_CompileHost() + "." + VLC_CompileDomain() + ".\n" + - _("Compiler: ") + VLC_Compiler() + ".\n" + - _("Based on Git commit: ") + VLC_Changeset() + ".\n\n" + + _("Compiler: ") + VLC_Compiler() + ".\n\n" + _("The VideoLAN team \n" "http://www.videolan.org/"); From git at videolan.org Thu Feb 19 01:41:06 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 01:41:06 +0100 (CET) Subject: [vlc-devel] commit: WinCE intf: LVITEM needs an index (Geoffroy Couprie ) Message-ID: <20090219004106.672122F851@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Thu Feb 19 01:35:51 2009 +0100| [3220b6ce9386c3dd498ae0b5f5e732a0cc895561] | committer: Geoffroy Couprie WinCE intf: LVITEM needs an index > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3220b6ce9386c3dd498ae0b5f5e732a0cc895561 --- modules/gui/wince/playlist.cpp | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/modules/gui/wince/playlist.cpp b/modules/gui/wince/playlist.cpp index bd0ff58..fd695a4 100644 --- a/modules/gui/wince/playlist.cpp +++ b/modules/gui/wince/playlist.cpp @@ -631,6 +631,8 @@ void Playlist::Rebuild() playlist_item_t * p_root = p_playlist->p_local_onelevel; playlist_item_t * p_child = NULL; + int iItem = 0; + while( ( p_child = playlist_GetNextLeaf( p_playlist, p_root, p_child, FALSE, FALSE ) ) ) { LVITEM lv; @@ -638,12 +640,13 @@ void Playlist::Rebuild() lv.pszText = _T(""); lv.cchTextMax = 1; lv.iSubItem = 0; - lv.iItem = i; + lv.iItem = iItem; ListView_InsertItem( hListView, &lv ); ListView_SetItemText( hListView, lv.iItem, 0, _FROMMB(p_child->p_input->psz_name) ); UpdateItem( p_child->i_id ); + iItem++; } PL_UNLOCK; From git at videolan.org Thu Feb 19 01:41:06 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 01:41:06 +0100 (CET) Subject: [vlc-devel] commit: WinCE intf: don't use old preferences macros (Geoffroy Couprie ) Message-ID: <20090219004106.7AD6A2F306@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Thu Feb 19 01:36:52 2009 +0100| [3bc410784e8d63794bcd7ab2a582dac67ee70629] | committer: Geoffroy Couprie WinCE intf: don't use old preferences macros > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3bc410784e8d63794bcd7ab2a582dac67ee70629 --- modules/gui/wince/preferences.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/wince/preferences.cpp b/modules/gui/wince/preferences.cpp index 488c637..554a37a 100644 --- a/modules/gui/wince/preferences.cpp +++ b/modules/gui/wince/preferences.cpp @@ -366,7 +366,7 @@ PrefsTreeCtrl::PrefsTreeCtrl( intf_thread_t *_p_intf, ConfigTreeData *config_data = new ConfigTreeData; config_data->i_object_id = TYPE_CATEGORY; config_data->psz_help = strdup(MAIN_HELP); - config_data->psz_name = strdup( GENERAL_TITLE ); + config_data->psz_name = strdup( "General" ); tvi.pszText = _T("General settings"); tvi.cchTextMax = lstrlen(_T("General settings")); tvi.lParam = (long)config_data; From jb at videolan.org Thu Feb 19 01:56:49 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Thu, 19 Feb 2009 01:56:49 +0100 Subject: [vlc-devel] RE : [PATCH] -- qt4 cone display issue In-Reply-To: <002101c98f94$448d6a20$0212f8c1@CCCC> References: <49975BA7.7070807@gmail.com> <002101c98f94$448d6a20$0212f8c1@CCCC> Message-ID: <20090219005649.GA32596@videolan.org> On Sun, Feb 15, 2009 at 06:38:49PM +0100, brezhoneg1 wrote : > Yes, patches tested and working > > Yet, find attached a new updated version (a now unused signal had been > forgotten) Have you tested those patches with no embedded video and various qt-display-mode? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Thu Feb 19 02:42:34 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 02:42:34 +0100 (CET) Subject: [vlc-devel] commit: WinCE: don't use features absent of Windows Mobile ( Geoffroy Couprie ) Message-ID: <20090219014234.493D42F840@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Thu Feb 19 02:11:08 2009 +0100| [aaee4b600893c2cbb37f36e3b703b7fc1d431d6a] | committer: Geoffroy Couprie WinCE: don't use features absent of Windows Mobile > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=aaee4b600893c2cbb37f36e3b703b7fc1d431d6a --- modules/access_output/file.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/modules/access_output/file.c b/modules/access_output/file.c index 4d137b5..6a3cd86 100644 --- a/modules/access_output/file.c +++ b/modules/access_output/file.c @@ -116,11 +116,15 @@ static int Open( vlc_object_t *p_this ) if( !strcmp( p_access->psz_path, "-" ) ) { +#ifndef UNDER_CE #ifdef WIN32 setmode (fileno (stdout), O_BINARY); #endif fd = dup (fileno (stdout)); msg_Dbg( p_access, "using stdout" ); +#else +#warning stdout is not supported on Windows Mobile, but may be used on Windows CE +#endif } else { From git at videolan.org Thu Feb 19 02:42:34 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 02:42:34 +0100 (CET) Subject: [vlc-devel] commit: WinCE: add missing include in vlm.c (Geoffroy Couprie ) Message-ID: <20090219014234.58E3C2F852@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Thu Feb 19 02:42:00 2009 +0100| [f129ccad24126fe9b044a57d1a77f28325f54541] | committer: Geoffroy Couprie WinCE: add missing include in vlm.c > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f129ccad24126fe9b044a57d1a77f28325f54541 --- src/input/vlm.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/src/input/vlm.c b/src/input/vlm.c index 74bfae8..9816a4b 100644 --- a/src/input/vlm.c +++ b/src/input/vlm.c @@ -42,6 +42,10 @@ # include /* gettimeofday() */ #endif +#ifdef UNDER_CE +#include /* gettimeofday() */ +#endif + #ifdef HAVE_TIME_H # include /* ctime() */ # include /* ftime() */ From benjihan at users.sourceforge.net Thu Feb 19 03:24:03 2009 From: benjihan at users.sourceforge.net (=?UTF-8?Q?Benjamin_G=C3=A9rard?=) Date: Thu, 19 Feb 2009 03:24:03 +0100 Subject: [vlc-devel] [PATCH] dynamic file extensions In-Reply-To: <1e0b1f250902171213h7f3596cfhcc6d5d92942c435f@mail.gmail.com> References: <1e0b1f250902171213h7f3596cfhcc6d5d92942c435f@mail.gmail.com> Message-ID: <1e0b1f250902181824h416b767bw4f78a051b0401081@mail.gmail.com> Please ignore this patch. I've made a few mistakes with git. I'm going to submit a new one. -- B. From sashipa.ben at gmail.com Thu Feb 19 03:27:58 2009 From: sashipa.ben at gmail.com (=?UTF-8?B?w5/RlMWL?=) Date: Thu, 19 Feb 2009 03:27:58 +0100 Subject: [vlc-devel] [PATCH] file extension manager (fixed patch) Message-ID: <1e0b1f250902181827h23b9dbd2r408ef950bf75a35c@mail.gmail.com> Add a file extension manager to libvlccore. This manager allows to register file extensions associate with categories (currently audio video play-list and subtitle). It is thread safe. For now it is initialized with the old hard-coded vlc extension list. In the future modules (mainly demuxer but not necessary) should register their file extensions at start-up. For this to work properly the module cache (and the module struct) probably need to be modified so that file extensions registered by a module appear in the cache. This would be my next move. This is an (hopefully) fixed version of my previous patch. Please ignore the old one. Sorry for the mistakes. -- B. -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Add-a-file-extension-manager-to-libvlccore.-This-man.patch Type: application/octet-stream Size: 25667 bytes Desc: not available URL: From jb at videolan.org Thu Feb 19 11:28:02 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Thu, 19 Feb 2009 11:28:02 +0100 Subject: [vlc-devel] [cube@cubidou.net: [Videolan-devel] access/file shortcut to open file descriptors] Message-ID: <20090219102802.GA11272@videolan.org> Wrong mailing-list, forwarding here. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ -------------- next part -------------- An embedded message was scrubbed... From: Quentin Garnier Subject: [Videolan-devel] access/file shortcut to open file descriptors Date: Wed, 18 Jun 2008 21:41:24 +0200 Size: 6839 URL: From rdenis at simphalempin.com Thu Feb 19 12:13:45 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 19 Feb 2009 12:13:45 +0100 Subject: [vlc-devel] [cube@cubidou.net: [Videolan-devel] access/file shortcut to open file descriptors] In-Reply-To: <20090219102802.GA11272@videolan.org> References: <20090219102802.GA11272@videolan.org> Message-ID: <850f59c87e79d4612d1e6036c864eedc@chewa.net> Hello, "filedesc://" evokes file descriptION. In my opinion, the usual accronym for file descriptOR is just "fd://". Also, it seems the dup() call is missing. Or why should this behave differently from the stdin case? There are a few subtle differences between this patch and "/dev/fd"/"/proc/self/fd", e.g.: - it reads the file from current descriptor offset instead of from the beginning, - it changes the file descriptor offset, - it inherits file locks, - on Linux, /proc/self/fd cannot open sockets and anonymous pipes, - on OSX, /dev/fd cannot open directories. I guess these are non-issues. Regards, -- R?mi Denis-Courmont From guru.video at gmail.com Thu Feb 19 12:36:21 2009 From: guru.video at gmail.com (Video Guru) Date: Thu, 19 Feb 2009 17:06:21 +0530 Subject: [vlc-devel] VLC as a frame-server : some problems remains. Message-ID: Hi all, I am trying to use libvlc as a frame-server to my application. I have my own display code which renders to TV Out, own audio playback, modified vmem and amem to give me date information to my application. I manage a large buffer of audio and video in my application and the playback is smooth. Now, the real question. libvlc is limiting the delivery rate to vmem based on the fps of the media. I dont want that. I want to get frames as fast as possible to fill my buffer, when my buffer is near full, I will either pause vlc, or hold the vmem lock (with of course, --no-drop-frames). Please guide, how to disable frame limiting, or at-least point to the function/file where it is done. - Dabdab. India. --------------------------------------------------------------------- Electricity is actually made up of extremely tiny particles called electrons, that you cannot see with the naked eye unless you have been drinking. - Dave Barry From rdenis at simphalempin.com Thu Feb 19 12:41:37 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 19 Feb 2009 12:41:37 +0100 Subject: [vlc-devel] Grab RTP header In-Reply-To: References: Message-ID: <3cbc52165d7d84c2dd0b3e067bda24f4@chewa.net> Hello, On Mon, 22 Dec 2008 16:08:16 +0200, "Rosenfeld Tamir" wrote: > If the output streamer insert propriety info in RTP extensions header, > > How can I grab it at the client side? (If there is a way) Define "the client side". -- R?mi Denis-Courmont From rdenis at simphalempin.com Thu Feb 19 12:43:56 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 19 Feb 2009 12:43:56 +0100 Subject: [vlc-devel] =?utf-8?q?=5BVideolan-devel=5D_RTMP_output_for_hire?= =?utf-8?q?=3F?= In-Reply-To: References: Message-ID: <7330e614a785e50e8fc60726d8311991@chewa.net> On Thu, 10 Apr 2008 15:41:45 -0400, "Darin Chambers" wrote: > My company has an interest in a developer getting VLC to output into > Flash Media Interactive Server (RTMP protocol). From what I've seen > RTMP output is not being worked on. Are there any qualified individuals > interested in a possible contract to get VLC to output to FMS? vlc-devel at videolan.org is probably a better audience. -- R?mi Denis-Courmont From rdenis at simphalempin.com Thu Feb 19 12:47:17 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 19 Feb 2009 12:47:17 +0100 Subject: [vlc-devel] VLC as a frame-server : some problems remains. In-Reply-To: References: Message-ID: <384df51e0357877df83932f2da922dc6@chewa.net> On Thu, 19 Feb 2009 17:06:21 +0530, Video Guru wrote: > libvlc is limiting the delivery rate to vmem based on the fps of the > media. I dont want that. I want to get frames as fast as possible to > fill my buffer, when my buffer is near full, I will either pause vlc, > or hold the vmem lock (with of course, --no-drop-frames). I suspect that the vmem plugin supports only one frame buffer, and that would be the issue. VLC has to wait until there is one buffer available. -- R?mi Denis-Courmont From guru.video at gmail.com Thu Feb 19 13:03:58 2009 From: guru.video at gmail.com (Video Guru) Date: Thu, 19 Feb 2009 17:33:58 +0530 Subject: [vlc-devel] VLC as a frame-server : some problems remains. In-Reply-To: <384df51e0357877df83932f2da922dc6@chewa.net> References: <384df51e0357877df83932f2da922dc6@chewa.net> Message-ID: Thanks Remi for the reply. On vmem's lock callback, I immediately give a pointer from my applications managed buffers, and returns. After vmem's unlock I mark that buffer as filled for the display use. I have 100 such buffers. But vmem lock callback is arriving at the media's fps, i.e., 25 Hz. So the callback rate is being limited by the VLC, may be for the A/V sync etc. But I am managing my own A/V sync based on the dates so I want the max speed which disk io/codec/vlc can reach. Please guide. On Thu, Feb 19, 2009 at 5:17 PM, R?mi Denis-Courmont wrote: > > On Thu, 19 Feb 2009 17:06:21 +0530, Video Guru > wrote: >> libvlc is limiting the delivery rate to vmem based on the fps of the >> media. I dont want that. I want to get frames as fast as possible to >> fill my buffer, when my buffer is near full, I will either pause vlc, >> or hold the vmem lock (with of course, --no-drop-frames). > > I suspect that the vmem plugin supports only one frame buffer, and that > would be the issue. VLC has to wait until there is one buffer available. > > -- > R?mi Denis-Courmont > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > -- --------------------------------------------------------------------- Electricity is actually made up of extremely tiny particles called electrons, that you cannot see with the naked eye unless you have been drinking. - Dave Barry From brezhoneg1 at yahoo.fr Thu Feb 19 14:03:12 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Thu, 19 Feb 2009 14:03:12 +0100 Subject: [vlc-devel] RE : RE : [PATCH] -- qt4 cone display issue In-Reply-To: <20090219005649.GA32596@videolan.org> Message-ID: <001901c99292$6cd5ef10$8252fac1@CCCC> > > Have you tested those patches with no embedded video and various > qt-display-mode? > Yes, No problem. I tested them. You can trust me ! As a reminder, Patch 1 : the real patch (change order used to show/hide cone and video widget). This change 1/ brings better performance 2/ avoids fleeting weird behavior. Patch 2 (not compulsory) : allows tracking resizing events in debug mode. I sent it because one can be surprised at what a difference it makes for QT4 to choose the right vs wrong order of hiding/showing things. Erwan10 From git at videolan.org Thu Feb 19 14:20:58 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 14:20:58 +0100 (CET) Subject: [vlc-devel] commit: Win32: go to fullscreen on the same monitor as the vlc window ( Geoffroy Couprie ) Message-ID: <20090219132058.1CC8E2F8FE@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Thu Feb 19 14:14:54 2009 +0100| [5568c88e76b8f016756ee8349190b96dd94f345b] | committer: Geoffroy Couprie Win32: go to fullscreen on the same monitor as the vlc window Fixes #2517 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5568c88e76b8f016756ee8349190b96dd94f345b --- modules/video_output/msw/events.c | 26 +++++++++++--------------- 1 files changed, 11 insertions(+), 15 deletions(-) diff --git a/modules/video_output/msw/events.c b/modules/video_output/msw/events.c index 9fe3c95..6dea945 100644 --- a/modules/video_output/msw/events.c +++ b/modules/video_output/msw/events.c @@ -1128,15 +1128,6 @@ static WINDOWPLACEMENT getWindowState(HWND hwnd) return window_placement; } -/* Internal wrapper over SetWindowPlacement */ -static void SetWindowState(HWND hwnd, int nShowCmd,WINDOWPLACEMENT window_placement) -{ - window_placement.showCmd = nShowCmd; - SetWindowPlacement( hwnd, &window_placement ); - SetWindowPos( hwnd, 0, 0, 0, 0, 0, - SWP_NOMOVE|SWP_NOSIZE|SWP_NOZORDER|SWP_FRAMECHANGED); -} - /* Internal wrapper to call vout_ControlWindow for hparent */ static int vaControlParentWindow( vout_thread_t *p_vout, int i_query, va_list args ) @@ -1200,9 +1191,11 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout ) SWP_NOZORDER|SWP_FRAMECHANGED ); #endif } - - /* Maximize window */ - SetWindowState( hwnd, SW_SHOWMAXIMIZED, window_placement ); + else + { + /* Maximize non embedded window */ + ShowWindow( hwnd, SW_SHOWMAXIMIZED ); + } if( p_vout->p_sys->hparent ) { @@ -1230,9 +1223,6 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout ) /* Change window style, no borders and no title bar */ SetWindowLong( hwnd, GWL_STYLE, p_vout->p_sys->i_window_style ); - /* Normal window */ - SetWindowState( hwnd, SW_SHOWNORMAL, window_placement ); - if( p_vout->p_sys->hparent ) { RECT rect; @@ -1251,6 +1241,12 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout ) SetForegroundWindow( p_vout->p_sys->hparent ); ShowWindow( hwnd, SW_HIDE ); } + else + { + /* return to normal window for non embedded vout */ + SetWindowPlacement( hwnd, &window_placement ); + ShowWindow( hwnd, SW_SHOWNORMAL ); + } /* Make sure the mouse cursor is displayed */ PostMessage( p_vout->p_sys->hwnd, WM_VLC_SHOW_MOUSE, 0, 0 ); From brezhoneg1 at yahoo.fr Thu Feb 19 14:23:29 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Thu, 19 Feb 2009 14:23:29 +0100 Subject: [vlc-devel] RE : VLC as a frame-server : some problems remains. In-Reply-To: Message-ID: <002a01c99295$41e13370$8252fac1@CCCC> Just as a thought, Why not modify vmem to make it a fake video encoder instead of a vout plugin and use it in a sout chain. >From what I recall, when just transcoding in vlc (no display at all), the speed limit is removed ..... Erwan10 > -----Message d'origine----- > De?: vlc-devel-bounces at videolan.org [mailto:vlc-devel- > bounces at videolan.org] De la part de Video Guru > Envoy??: jeudi 19 f?vrier 2009 13:04 > ??: Mailing list for VLC media player developers > Objet?: Re: [vlc-devel] VLC as a frame-server : some problems remains. > > Thanks Remi for the reply. > > On vmem's lock callback, I immediately give a pointer from my > applications managed buffers, and returns. After vmem's unlock I mark > that buffer as filled for the display use. I have 100 such buffers. > But vmem lock callback is arriving at the media's fps, i.e., 25 Hz. > > So the callback rate is being limited by the VLC, may be for the A/V > sync etc. But I am managing my own A/V sync based on the dates so I > want the max speed which disk io/codec/vlc can reach. > > Please guide. > > > On Thu, Feb 19, 2009 at 5:17 PM, R?mi Denis-Courmont > wrote: > > > > On Thu, 19 Feb 2009 17:06:21 +0530, Video Guru > > wrote: > >> libvlc is limiting the delivery rate to vmem based on the fps of the > >> media. I dont want that. I want to get frames as fast as possible to > >> fill my buffer, when my buffer is near full, I will either pause vlc, > >> or hold the vmem lock (with of course, --no-drop-frames). > > > > I suspect that the vmem plugin supports only one frame buffer, and that > > would be the issue. VLC has to wait until there is one buffer available. > > > > -- > > R?mi Denis-Courmont > > > > _______________________________________________ > > vlc-devel mailing list > > To unsubscribe or modify your subscription options: > > http://mailman.videolan.org/listinfo/vlc-devel > > > > > > -- > --------------------------------------------------------------------- > > Electricity is actually made up of extremely tiny particles called > electrons, that you cannot see with the naked eye unless you have been > drinking. > > - Dave Barry > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel From jb at videolan.org Thu Feb 19 15:29:19 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Thu, 19 Feb 2009 15:29:19 +0100 Subject: [vlc-devel] commit: Win32: go to fullscreen on the same monitor as the vlc window ( Geoffroy Couprie ) In-Reply-To: <20090219132058.1CC8E2F8FE@skanda.videolan.org> References: <20090219132058.1CC8E2F8FE@skanda.videolan.org> Message-ID: <20090219142919.GA26902@videolan.org> On Thu, Feb 19, 2009 at 02:20:58PM +0100, git version control wrote : > vlc | branch: master | Geoffroy Couprie | Thu Feb 19 14:14:54 2009 +0100| [5568c88e76b8f016756ee8349190b96dd94f345b] | committer: Geoffroy Couprie > > Win32: go to fullscreen on the same monitor as the vlc window > Fixes #2517 Confirmed on Windows Seven. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Thu Feb 19 15:34:14 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 15:34:14 +0100 (CET) Subject: [vlc-devel] commit: Win32: go to fullscreen on the same monitor as the vlc window ( Geoffroy Couprie ) Message-ID: <20090219143414.82FD02F84A@skanda.videolan.org> vlc | branch: 0.9-bugfix | Geoffroy Couprie | Thu Feb 19 14:14:54 2009 +0100| [616104b4a5f7f503f243933b7a13211d2f54cd9a] | committer: Jean-Baptiste Kempf Win32: go to fullscreen on the same monitor as the vlc window Fixes #2517 (cherry picked from commit 5568c88e76b8f016756ee8349190b96dd94f345b) Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=616104b4a5f7f503f243933b7a13211d2f54cd9a --- modules/video_output/msw/events.c | 26 +++++++++++--------------- 1 files changed, 11 insertions(+), 15 deletions(-) diff --git a/modules/video_output/msw/events.c b/modules/video_output/msw/events.c index f219e8b..2342797 100644 --- a/modules/video_output/msw/events.c +++ b/modules/video_output/msw/events.c @@ -1149,15 +1149,6 @@ static WINDOWPLACEMENT getWindowState(HWND hwnd) return window_placement; } -/* Internal wrapper over SetWindowPlacement */ -static void SetWindowState(HWND hwnd, int nShowCmd,WINDOWPLACEMENT window_placement) -{ - window_placement.showCmd = nShowCmd; - SetWindowPlacement( hwnd, &window_placement ); - SetWindowPos( hwnd, 0, 0, 0, 0, 0, - SWP_NOMOVE|SWP_NOSIZE|SWP_NOZORDER|SWP_FRAMECHANGED); -} - /* Internal wrapper to call vout_ControlWindow for hparent */ static void ControlParentWindow( vout_thread_t *p_vout, int i_query, ... ) { @@ -1203,9 +1194,11 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout ) mi.rcMonitor.bottom - mi.rcMonitor.top, SWP_NOZORDER|SWP_FRAMECHANGED ); } - - /* Maximize window */ - SetWindowState( hwnd, SW_SHOWMAXIMIZED, window_placement ); + else + { + /* Maximize non embedded window */ + ShowWindow( hwnd, SW_SHOWMAXIMIZED ); + } if( p_vout->p_sys->hparent ) { @@ -1233,9 +1226,6 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout ) /* Change window style, no borders and no title bar */ SetWindowLong( hwnd, GWL_STYLE, p_vout->p_sys->i_window_style ); - /* Normal window */ - SetWindowState( hwnd, SW_SHOWNORMAL, window_placement ); - if( p_vout->p_sys->hparent ) { RECT rect; @@ -1254,6 +1244,12 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout ) SetForegroundWindow( p_vout->p_sys->hparent ); ShowWindow( hwnd, SW_HIDE ); } + else + { + /* return to normal window for non embedded vout */ + SetWindowPlacement( hwnd, &window_placement ); + ShowWindow( hwnd, SW_SHOWNORMAL ); + } /* Make sure the mouse cursor is displayed */ PostMessage( p_vout->p_sys->hwnd, WM_VLC_SHOW_MOUSE, 0, 0 ); From git at videolan.org Thu Feb 19 15:37:34 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 15:37:34 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_added_missing_playlist_?= =?utf-8?q?locks_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090219143734.20B5D2F467@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Wed Feb 18 10:55:32 2009 +0100| [0bd6fe5f997142bfaa6f24244d966fd9d040faf2] | committer: Felix Paul K?hne macosx: added missing playlist locks > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0bd6fe5f997142bfaa6f24244d966fd9d040faf2 --- modules/gui/macosx/intf.m | 6 ++++++ modules/gui/macosx/playlist.m | 4 ++++ 2 files changed, 10 insertions(+), 0 deletions(-) diff --git a/modules/gui/macosx/intf.m b/modules/gui/macosx/intf.m index 2ac52a1..9b64436 100644 --- a/modules/gui/macosx/intf.m +++ b/modules/gui/macosx/intf.m @@ -1544,7 +1544,11 @@ static void * manage_cleanup( void * args ) /* update our info-panel to reflect the new item, if we don't show * the playlist or the selection is empty */ if( [self isPlaylistCollapsed] == YES ) + { + PL_LOCK; [[self getInfo] updatePanelWithItem: playlist_CurrentPlayingItem( p_playlist )->p_input]; + PL_UNLOCK; + } /* seekable streams */ b_seekable = var_GetBool( p_input, "can-seek" ); @@ -1836,11 +1840,13 @@ end: if( p_input && vlc_object_alive (p_input) ) { NSString *o_temp; + PL_LOCK; playlist_item_t * p_item = playlist_CurrentPlayingItem( p_playlist ); if( input_item_GetNowPlaying( p_item->p_input ) ) o_temp = [NSString stringWithUTF8String:input_item_GetNowPlaying( p_item->p_input )]; else o_temp = [NSString stringWithUTF8String:p_item->p_input->psz_name]; + PL_UNLOCK; [self setScrollField: o_temp stopAfter:-1]; [[[self getControls] getFSPanel] setStreamTitle: o_temp]; vlc_object_release( p_input ); diff --git a/modules/gui/macosx/playlist.m b/modules/gui/macosx/playlist.m index 14018c6..334edfe 100644 --- a/modules/gui/macosx/playlist.m +++ b/modules/gui/macosx/playlist.m @@ -573,7 +573,9 @@ playlist_item_t *p_item, *p_temp_item; NSMutableArray *o_array = [NSMutableArray array]; + PL_LOCK; p_item = playlist_CurrentPlayingItem( p_playlist ); + PL_UNLOCK; if( p_item == NULL ) { pl_Release( VLCIntf ); @@ -1416,8 +1418,10 @@ id o_playing_item; + PL_LOCK; o_playing_item = [o_outline_dict objectForKey: [NSString stringWithFormat:@"%p", playlist_CurrentPlayingItem( p_playlist )]]; + PL_UNLOCK; if( [self isItem: [o_playing_item pointerValue] inNode: [item pointerValue] checkItemExistence: YES] From git at videolan.org Thu Feb 19 15:37:34 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 15:37:34 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A__implemented_saving_of_?= =?utf-8?q?the_debug_log_as_RTFD_and_slightly_extended_the_catcher_for_out?= =?utf-8?q?dated_OS_X_versions_=2E_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090219143734.32AE72F863@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Wed Feb 18 11:56:30 2009 +0100| [a8038909a53411e7978b2ae0856a0e60ddf1651b] | committer: Felix Paul K?hne macosx: implemented saving of the debug log as RTFD and slightly extended the catcher for outdated OS X versions. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a8038909a53411e7978b2ae0856a0e60ddf1651b --- .../English.lproj/MainMenu.nib/classes.nib | 4 +- .../Resources/English.lproj/MainMenu.nib/info.nib | 6 +- .../English.lproj/MainMenu.nib/keyedobjects.nib | Bin 119465 -> 119996 bytes modules/gui/macosx/intf.h | 6 +- modules/gui/macosx/intf.m | 123 +++++++++++++------- 5 files changed, 89 insertions(+), 50 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=a8038909a53411e7978b2ae0856a0e60ddf1651b From git at videolan.org Thu Feb 19 15:37:34 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 15:37:34 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx-port=3A__removed_compatibi?= =?utf-8?q?lity_code_for_outdated_versions_of_OS_X_=28_Felix_Paul_K=C3=BCh?= =?utf-8?q?ne_=29?= Message-ID: <20090219143734.4EC0E2F2C9@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Wed Feb 18 12:14:25 2009 +0100| [47801e515603ae4e395f16254b5222fb71fc3427] | committer: Felix Paul K?hne macosx-port: removed compatibility code for outdated versions of OS X > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=47801e515603ae4e395f16254b5222fb71fc3427 --- modules/codec/quicktime.c | 23 ++++--------- modules/gui/macosx/embeddedwindow.m | 20 +++--------- modules/misc/quartztext.c | 10 +----- .../macosx/vlc_app/Sources/VLCBrowsableVideoView.m | 8 ++--- src/misc/darwin_specific.c | 34 +------------------ 5 files changed, 18 insertions(+), 77 deletions(-) diff --git a/modules/codec/quicktime.c b/modules/codec/quicktime.c index fd75b64..e5b5778 100644 --- a/modules/codec/quicktime.c +++ b/modules/codec/quicktime.c @@ -1,7 +1,7 @@ /***************************************************************************** * quicktime.c: a quicktime decoder that uses the QT library/dll ***************************************************************************** - * Copyright (C) 2003 the VideoLAN team + * Copyright (C) 2003, 2008 - 2009 the VideoLAN team * $Id$ * * Authors: Laurent Aimar @@ -234,9 +234,13 @@ static int Open( vlc_object_t *p_this ) err = Gestalt(gestaltQuickTimeVersion, &qtVersion); err = Gestalt(gestaltSystemVersion, &macosversion); #ifndef NDEBUG - msg_Dbg( p_this, "mac os version is %#lx", macosversion ); - msg_Dbg( p_this, "quicktime version is %#lx", qtVersion ); + msg_Dbg( p_this, "Mac OS version is %#lx", macosversion ); + msg_Dbg( p_this, "Quicktime version is %#lx", qtVersion ); #endif + + /* bail out. This plugin is soo Carbon, that it can't be used on 10.5 at all */ + msg_Info( p_dec, "Your Mac OS version is to new to use this plugin for anything." ); + return VLC_EGENERIC; #endif switch( p_dec->fmt_in.i_codec ) @@ -307,19 +311,6 @@ static int Open( vlc_object_t *p_this ) p_dec->fmt_out.i_cat = AUDIO_ES; return VLC_SUCCESS; #else - -#ifdef __APPLE__ - /* FIXME: right now, we don't support audio decoding on 10.5 and later - because we are still using the hardcore-outdated SoundManager API, - which was removed after 10.4 */ - - if( macosversion >= 0x1050 || err != noErr ) - { - msg_Warn( p_dec, "Your Mac OS version doesn't have SoundManager anymore. " - "You can't use this plugin for audio." ); - return VLC_EGENERIC; - } -#endif return OpenAudio( p_dec ); #endif diff --git a/modules/gui/macosx/embeddedwindow.m b/modules/gui/macosx/embeddedwindow.m index 540cbfc..9ee0397 100644 --- a/modules/gui/macosx/embeddedwindow.m +++ b/modules/gui/macosx/embeddedwindow.m @@ -1,7 +1,7 @@ /***************************************************************************** * embeddedwindow.m: MacOS X interface module ***************************************************************************** - * Copyright (C) 2005-2008 the VideoLAN team + * Copyright (C) 2005-2009 the VideoLAN team * $Id$ * * Authors: Benjamin Pracht @@ -261,10 +261,9 @@ [o_fullscreen_window setBackgroundColor: [NSColor blackColor]]; [o_fullscreen_window setCanBecomeKeyWindow: YES]; - if (![self isVisible] || [self alphaValue] == 0.0 || MACOS_VERSION < 10.4f) + if (![self isVisible] || [self alphaValue] == 0.0) { - /* We don't animate if we are not visible or if we are running on - * Mac OS X <10.4 which doesn't support NSAnimation, instead we + /* We don't animate if we are not visible, instead we * simply fade the display */ CGDisplayFadeReservationToken token; @@ -301,14 +300,6 @@ EnableScreenUpdates(); } - if (MACOS_VERSION < 10.4f) - { - /* We were already fullscreen nothing to do when NSAnimation - * is not supported */ - [self unlockFullscreenAnimation]; - return; - } - /* We are in fullscreen (and no animation is running) */ if (b_fullscreen) { @@ -410,10 +401,9 @@ return; } - if (fadeout || MACOS_VERSION < 10.4f) + if (fadeout) { - /* We don't animate if we are not visible or if we are running on - * Mac OS X <10.4 which doesn't support NSAnimation, instead we + /* We don't animate if we are not visible, instead we * simply fade the display */ CGDisplayFadeReservationToken token; diff --git a/modules/misc/quartztext.c b/modules/misc/quartztext.c index 31d64cb..a19c2a3 100644 --- a/modules/misc/quartztext.c +++ b/modules/misc/quartztext.c @@ -1,7 +1,7 @@ /***************************************************************************** * quartztext.c : Put text on the video, using Mac OS X Quartz Engine ***************************************************************************** - * Copyright (C) 2007 the VideoLAN team + * Copyright (C) 2007, 2009 the VideoLAN team * $Id$ * * Authors: Bernie Purcell @@ -667,11 +667,7 @@ static CGContextRef CreateOffScreenContext( int i_width, int i_height, p_bitmap->p_data = calloc( i_height, p_bitmap->i_bytesPerRow ); -#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_4 *pp_colorSpace = CGColorSpaceCreateWithName( kCGColorSpaceGenericRGB ); -#else - *pp_colorSpace = CreateGenericRGBColorSpace(); -#endif if( p_bitmap->p_data && *pp_colorSpace ) { @@ -681,14 +677,10 @@ static CGContextRef CreateOffScreenContext( int i_width, int i_height, } if( p_context ) { -#if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_1 - // OS X 10.1 doesn't support weak linking of this call which is only available - // int 10.4 and later if( CGContextSetAllowsAntialiasing != NULL ) { CGContextSetAllowsAntialiasing( p_context, true ); } -#endif } *pp_memory = p_bitmap; } diff --git a/projects/macosx/vlc_app/Sources/VLCBrowsableVideoView.m b/projects/macosx/vlc_app/Sources/VLCBrowsableVideoView.m index b504b8b..d34d210 100644 --- a/projects/macosx/vlc_app/Sources/VLCBrowsableVideoView.m +++ b/projects/macosx/vlc_app/Sources/VLCBrowsableVideoView.m @@ -3,7 +3,7 @@ * browsing ***************************************************************************** * Copyright (C) 2007 Pierre d'Herbemont - * Copyright (C) 2007 the VideoLAN team + * Copyright (C) 2007, 2009 the VideoLAN team * $Id$ * * Authors: Pierre d'Herbemont @@ -683,8 +683,7 @@ if (![[self window] isVisible] || [[self window] alphaValue] == 0.0 || [self isHiddenOrHasHiddenAncestor] ) { - /* We don't animate if we are not visible or if we are running on - * Mac OS X <10.4 which doesn't support NSAnimation, instead we + /* We don't animate if we are not visible, instead we * simply fade the display */ CGDisplayFadeReservationToken token; @@ -817,8 +816,7 @@ if (fadeout || [tempFullScreenView isHiddenOrHasHiddenAncestor]) { - /* We don't animate if we are not visible or if we are running on - * Mac OS X <10.4 which doesn't support NSAnimation, instead we + /* We don't animate if we are not visible, instead we * simply fade the display */ CGDisplayFadeReservationToken token; diff --git a/src/misc/darwin_specific.c b/src/misc/darwin_specific.c index f751c63..f47ddbf 100644 --- a/src/misc/darwin_specific.c +++ b/src/misc/darwin_specific.c @@ -1,7 +1,7 @@ /***************************************************************************** * darwin_specific.m: Darwin specific features ***************************************************************************** - * Copyright (C) 2001-2007 the VideoLAN team + * Copyright (C) 2001-2009 the VideoLAN team * $Id$ * * Authors: Sam Hocevar @@ -44,33 +44,6 @@ # define MAXPATHLEN 1024 #endif -/* CFLocaleCopyAvailableLocaleIdentifiers is present only on post-10.4 */ -extern CFArrayRef CFLocaleCopyAvailableLocaleIdentifiers(void) __attribute__((weak_import)); - -/* emulate CFLocaleCopyAvailableLocaleIdentifiers on pre-10.4 */ -static CFArrayRef copy_all_locale_indentifiers(void) -{ - CFMutableArrayRef available_locales; - DIR * dir; - struct dirent *file; - - dir = opendir( "/usr/share/locale" ); - available_locales = CFArrayCreateMutable( kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks ); - - while ( (file = readdir(dir)) ) - { - /* we should probably filter out garbage */ - /* we can't use CFStringCreateWithFileSystemRepresentation as it is - * supported only on post-10.4 (and this function is only for pre-10.4) */ - CFStringRef locale = CFStringCreateWithCString( kCFAllocatorDefault, file->d_name, kCFStringEncodingUTF8 ); - CFArrayAppendValue( available_locales, (void*)locale ); - CFRelease( locale ); - } - - closedir( dir ); - return available_locales; -} - /***************************************************************************** * system_Init: fill in program path & retrieve language *****************************************************************************/ @@ -149,10 +122,7 @@ void system_Init( libvlc_int_t *p_this, int *pi_argc, const char *ppsz_argv[] ) CFArrayRef all_locales, preferred_locales; char psz_locale[50]; - if( CFLocaleCopyAvailableLocaleIdentifiers ) - all_locales = CFLocaleCopyAvailableLocaleIdentifiers(); - else - all_locales = copy_all_locale_indentifiers(); + all_locales = CFLocaleCopyAvailableLocaleIdentifiers(); preferred_locales = CFBundleCopyLocalizationsForPreferences( all_locales, NULL ); From git at videolan.org Thu Feb 19 15:37:34 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 15:37:34 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A__re-arranged_the_audio_?= =?utf-8?q?and_video_menus_to_look_similar_to_the_Qt4_interface_=2E_Additi?= =?utf-8?q?onally=2C_implemented_an_=27Open_File=2E=2E=2E=27_item_in_the_s?= =?utf-8?q?ubtitles-submenu_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090219143734.678EF2F95A@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Thu Feb 19 15:37:19 2009 +0100| [b021f08d84b02f9ac672f5af74242d63a2cda970] | committer: Felix Paul K?hne macosx: re-arranged the audio and video menus to look similar to the Qt4 interface. Additionally, implemented an 'Open File...' item in the subtitles-submenu > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b021f08d84b02f9ac672f5af74242d63a2cda970 --- .../English.lproj/MainMenu.nib/classes.nib | 3 +- .../Resources/English.lproj/MainMenu.nib/info.nib | 10 +-- .../English.lproj/MainMenu.nib/keyedobjects.nib | Bin 119996 -> 120713 bytes modules/gui/macosx/controls.h | 7 +- modules/gui/macosx/controls.m | 62 +++++++++++++++++++- modules/gui/macosx/intf.h | 1 + modules/gui/macosx/intf.m | 10 +++- 7 files changed, 77 insertions(+), 16 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=b021f08d84b02f9ac672f5af74242d63a2cda970 From git at videolan.org Thu Feb 19 16:10:20 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 16:10:20 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_more_approbiate_locking?= =?utf-8?q?_suggested_by_fenrir_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090219151020.318842F988@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Thu Feb 19 16:10:17 2009 +0100| [12dd5ea5617f78ad80764d9aef2fffd870a318cb] | committer: Felix Paul K?hne macosx: more approbiate locking suggested by fenrir and fixed a small typo > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=12dd5ea5617f78ad80764d9aef2fffd870a318cb --- modules/gui/macosx/intf.m | 2 +- modules/gui/macosx/playlist.m | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/gui/macosx/intf.m b/modules/gui/macosx/intf.m index 7d3fc06..01bdef0 100644 --- a/modules/gui/macosx/intf.m +++ b/modules/gui/macosx/intf.m @@ -324,7 +324,7 @@ static VLCMain *_o_sharedMainInstance = nil; NSAlert *ourAlert; int i_returnValue; NSString *o_blabla; - if( MACOS_VERSION == 10.5f ) + if( MACOS_VERSION == 10.4f ) o_blabla = _NS("VLC's last release for your OS is the 0.9 series." ); else if( MACOS_VERSION == 10.3f ) o_blabla = _NS("VLC's last release for your OS is VLC 0.8.6i, which is prone to known security issues." ); diff --git a/modules/gui/macosx/playlist.m b/modules/gui/macosx/playlist.m index 334edfe..393fabe 100644 --- a/modules/gui/macosx/playlist.m +++ b/modules/gui/macosx/playlist.m @@ -575,9 +575,9 @@ PL_LOCK; p_item = playlist_CurrentPlayingItem( p_playlist ); - PL_UNLOCK; if( p_item == NULL ) { + PL_UNLOCK; pl_Release( VLCIntf ); return; } @@ -601,6 +601,7 @@ } + PL_UNLOCK; pl_Release( VLCIntf ); } From git at videolan.org Thu Feb 19 16:14:28 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 16:14:28 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx-plugin=3A_fixed_complation?= =?utf-8?q?_on_the_buildbots_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090219151428.B78672F987@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Thu Feb 19 16:14:25 2009 +0100| [c66c918f55406dfe59763ee379648ccc36ee85fa] | committer: Felix Paul K?hne macosx-plugin: fixed complation on the buildbots > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c66c918f55406dfe59763ee379648ccc36ee85fa --- projects/mozilla/Makefile.am | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index c04dad1..ff4a0bb 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -106,13 +106,13 @@ VLC\ Plugin.plugin: npvlc.rsrc $(lib_LTLIBRARIES) rm -Rf "$@" $(INSTALL) -d "VLC-Plugin.plugin/Contents/MacOS/lib" $(INSTALL) -d "VLC-Plugin.plugin/Contents/Resources" - ACTION="release-makefile" PRODUCT="VLC-Plugin.plugin" src_dir=$(srcdir) build_dir=$(top_builddir) sh ../macosx/framework/Pre-Compile.sh + ACTION="release-makefile" PRODUCT="VLC-Plugin.plugin" src_dir=$(srcdir) build_dir=$(top_builddir) sh "$(top_srcdir)/projects/macosx/framework/Pre-Compile.sh" $(INSTALL) .libs/npvlc.dylib "VLC-Plugin.plugin/Contents/MacOS/VLC Plugin" dylib="VLC-Plugin.plugin/Contents/MacOS/VLC Plugin"; $(FIXEXECPATH); $(INSTALL) .libs/npvlc.dylib "VLC-Plugin.plugin/Contents/MacOS/lib" dylib="VLC-Plugin.plugin/Contents/MacOS/lib/npvlc.dylib"; $(FIXEXECPATH); $(INSTALL) npvlc.rsrc "VLC-Plugin.plugin/Contents/Resources/VLC Plugin.rsrc" - $(INSTALL) "$(top_builddir)/extras/package/macosx/plugin/Info.plist" "VLC-Plugin.plugin/Contents/Info.plist" + $(INSTALL) "$(top_srcdir)/extras/package/macosx/plugin/Info.plist" "VLC-Plugin.plugin/Contents/Info.plist" mv "VLC-Plugin.plugin" "VLC Plugin.plugin" find "VLC Plugin.plugin" -type d -exec chmod ugo+rx '{}' \; find "VLC Plugin.plugin" -type f -exec chmod ugo+r '{}' \; From git at videolan.org Thu Feb 19 16:26:00 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 16:26:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_fixed_compilation_warning_=28_Fel?= =?utf-8?q?ix_Paul_K=C3=BChne__=29?= Message-ID: <20090219152600.8AC522F939@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Thu Feb 19 16:25:55 2009 +0100| [392cc7bc82542afd615310b9553603e43dbf51a1] | committer: Felix Paul K?hne fixed compilation warning > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=392cc7bc82542afd615310b9553603e43dbf51a1 --- modules/gui/macosx/fspanel.h | 2 +- modules/gui/macosx/fspanel.m | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/gui/macosx/fspanel.h b/modules/gui/macosx/fspanel.h index 1a38d89..2c5494a 100644 --- a/modules/gui/macosx/fspanel.h +++ b/modules/gui/macosx/fspanel.h @@ -37,7 +37,7 @@ int i_device; } - (id)initWithContentRect: (NSRect)contentRect - styleMask: (unsigned int)aStyle + styleMask: (NSUInteger)aStyle backing: (NSBackingStoreType)bufferingType defer: (BOOL)flag; - (void)awakeFromNib; diff --git a/modules/gui/macosx/fspanel.m b/modules/gui/macosx/fspanel.m index f59d579..5b997be 100644 --- a/modules/gui/macosx/fspanel.m +++ b/modules/gui/macosx/fspanel.m @@ -41,7 +41,7 @@ @implementation VLCFSPanel /* We override this initializer so we can set the NSBorderlessWindowMask styleMask, and set a few other important settings */ - (id)initWithContentRect:(NSRect)contentRect - styleMask:(NSInteger)aStyle + styleMask:(NSUInteger)aStyle backing:(NSBackingStoreType)bufferingType defer:(BOOL)flag { From git at videolan.org Thu Feb 19 16:56:31 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 16:56:31 +0100 (CET) Subject: [vlc-devel] commit: Contribs/win32: Use std=gnu99 (Jean-Baptiste Kempf ) Message-ID: <20090219155631.B665F2F5BD@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Thu Feb 19 16:54:29 2009 +0100| [cbb613cdc42171252ca46318165ab6ad7fa32beb] | committer: Jean-Baptiste Kempf Contribs/win32: Use std=gnu99 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cbb613cdc42171252ca46318165ab6ad7fa32beb --- extras/contrib/src/Patches/ffmpeg-svn-win32.patch | 21 ++++++++++++++++----- 1 files changed, 16 insertions(+), 5 deletions(-) diff --git a/extras/contrib/src/Patches/ffmpeg-svn-win32.patch b/extras/contrib/src/Patches/ffmpeg-svn-win32.patch index 2e06224..bd715fc 100644 --- a/extras/contrib/src/Patches/ffmpeg-svn-win32.patch +++ b/extras/contrib/src/Patches/ffmpeg-svn-win32.patch @@ -1,13 +1,24 @@ Index: configure =================================================================== ---- configure (revision 15654) -+++ configure (working copy) -@@ -1141,7 +1141,7 @@ - TMPS="${TMPDIR1}/ffmpeg-conf-${RANDOM}-$$-${RANDOM}.S" - TMPSH="${TMPDIR1}/ffmpeg-conf-${RANDOM}-$$-${RANDOM}.sh" +--- configure (r?vision 17381) ++++ configure (copie de travail) +@@ -1359,7 +1359,7 @@ + die "C compiler test failed." + fi -check_cflags -std=c99 +#check_cflags -std=c99 case "$arch" in i386|i486|i586|i686|i86pc|BePC) +@@ -1531,8 +1531,8 @@ + objformat="win32" + enable dos_paths + if ! enabled x86_64; then +- check_cpp_condition _mingw.h "(__MINGW32_MAJOR_VERSION > 3) || (__MINGW32_MAJOR_VERSION == 3 && __MINGW32_MINOR_VERSION >= 15)" || +- die "ERROR: MinGW runtime version must be >= 3.15." ++ check_cpp_condition _mingw.h "(__MINGW32_MAJOR_VERSION > 3) || (__MINGW32_MAJOR_VERSION == 3 && __MINGW32_MINOR_VERSION >= 13)" || ++ die "ERROR: MinGW runtime version must be >= 3.13." + enabled_any avisynth vfwcap_demuxer && + { check_cpp_condition w32api.h "(__W32API_MAJOR_VERSION > 3) || (__W32API_MAJOR_VERSION == 3 && __W32API_MINOR_VERSION >= 13)" || + die "ERROR: avisynth and vfwcap_demuxer require w32api version 3.13 or later."; } From linkfanel at yahoo.fr Thu Feb 19 17:04:02 2009 From: linkfanel at yahoo.fr (Pierre Ynard) Date: Thu, 19 Feb 2009 17:04:02 +0100 Subject: [vlc-devel] [PATCH] WinCE: fix infinite loop in vasprintf replacement Message-ID: <20090219160402.GA14734@via.ecp.fr> WinCE's vsnprintf does return the number of characters to write, instead of -1, if it is equal to the size argument, whereas in this case the output was indeed truncated (the final '\0' was truncated). Failure to handle this case leads to infinite loops, when the number of characters to write equals exactly 50 (which happens for example when trying to play an mp4 file). diff --git a/include/vlc_fixups.h b/include/vlc_fixups.h index 726bb9e..87626e8 100644 --- a/include/vlc_fixups.h +++ b/include/vlc_fixups.h @@ -77,8 +77,7 @@ static inline int vasprintf (char **strp, const char *fmt, va_list ap) } /* Else try again with more space. */ - if (n == -1) - size *= 2; /* twice the old size */ + size *= 2; /* twice the old size */ if ((np = (char *) realloc (res, size)) == NULL) { Regards, -- Pierre Ynard "Une ?me dans un corps, c'est comme un dessin sur une feuille de papier." From rem at videolan.org Thu Feb 19 17:06:52 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 19 Feb 2009 18:06:52 +0200 Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_added_missing_playlist_?= =?utf-8?q?locks_=28_Felix_Paul_K=C3=BChne_=29?= In-Reply-To: <20090219143734.20B5D2F467@skanda.videolan.org> References: <20090219143734.20B5D2F467@skanda.videolan.org> Message-ID: <200902191806.53979.rem@videolan.org> Le jeudi 19 f?vrier 2009 16:37:34 git version control, vous avez ?crit?: > vlc | branch: master | Felix Paul K?hne | Wed Feb 18 > 10:55:32 2009 +0100| [0bd6fe5f997142bfaa6f24244d966fd9d040faf2] | > committer: Felix Paul K?hne > > macosx: added missing playlist locks > > > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0bd6fe5f997142bfaa > >6f24244d966fd9d040faf2 > > --- > > modules/gui/macosx/intf.m | 6 ++++++ > modules/gui/macosx/playlist.m | 4 ++++ > 2 files changed, 10 insertions(+), 0 deletions(-) > > diff --git a/modules/gui/macosx/intf.m b/modules/gui/macosx/intf.m > index 2ac52a1..9b64436 100644 > --- a/modules/gui/macosx/intf.m > +++ b/modules/gui/macosx/intf.m > @@ -1544,7 +1544,11 @@ static void * manage_cleanup( void * args ) > /* update our info-panel to reflect the new item, if we don't > show * the playlist or the selection is empty */ > if( [self isPlaylistCollapsed] == YES ) > + { > + PL_LOCK; > [[self getInfo] updatePanelWithItem: > playlist_CurrentPlayingItem( p_playlist )->p_input]; + > PL_UNLOCK; > + } I don't know the playlist code very well - but... it seems odd that one would want to get the input item, do nothing with it and then unlock. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Thu Feb 19 17:13:02 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 17:13:02 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_PulseAudio_cannot_be_unloaded_-_f?= =?utf-8?q?ixes_=232538_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090219161302.EAFB32F9D4@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 19 18:12:08 2009 +0200| [8b40fb0f0bfb71913fe5dd22402ecfa479d80b6d] | committer: R?mi Denis-Courmont PulseAudio cannot be unloaded - fixes #2538 (I would not be surprised if the bug were in the VLC plugin though) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8b40fb0f0bfb71913fe5dd22402ecfa479d80b6d --- modules/audio_output/pulse.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/audio_output/pulse.c b/modules/audio_output/pulse.c index 4ce9ccb..19e4b75 100644 --- a/modules/audio_output/pulse.c +++ b/modules/audio_output/pulse.c @@ -103,6 +103,7 @@ vlc_module_begin () add_shortcut( "pulseaudio" ) add_shortcut( "pa" ) set_callbacks( Open, Close ) + linked_with_a_crap_library_which_uses_atexit() vlc_module_end () /***************************************************************************** From fkuehne.videolan at googlemail.com Thu Feb 19 17:34:52 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Thu, 19 Feb 2009 17:34:52 +0100 Subject: [vlc-devel] Removal of the QuickTime input plugin Message-ID: <5FF079FF-3C57-46EE-A907-1CC07E7A540C@gmail.com> Hello guys, the QuickTime Input plugin is horribly broken for quite some time now and it is probably better (and easier and faster) to rewrite it than fixing it. It still uses the SoundManager and QuickDraw APIs to decode stuff with QuickTime. Video decoding started to fail on 10.4 (almost 3 years ago!) and Audio decoding will finally be broken once we release VLC 1.0 (since it isn't compatible with the 10.5 SDK). Therefore, I suggest to remove this plugin completely and replace it with a proper re-implementation based upon QTKit (Mac OS X only). The only part of the plugin which may be still working is the included Win32 port, which doesn't appear too tested and I'm wondering whether it is still used at all... What do you guys think? Best regards, Felix From fkuehne.videolan at googlemail.com Thu Feb 19 17:37:36 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Thu, 19 Feb 2009 17:37:36 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_macosx=3A_added_missing_play?= =?iso-8859-1?q?list_locks_=28_Felix_Paul_K=FChne_=29?= In-Reply-To: <200902191806.53979.rem@videolan.org> References: <20090219143734.20B5D2F467@skanda.videolan.org> <200902191806.53979.rem@videolan.org> Message-ID: <564ED5CF-3D75-40C8-82CA-19BF6D984428@gmail.com> Am 19.02.2009 um 17:06 schrieb R?mi Denis-Courmont: > I don't know the playlist code very well - but... it seems odd that > one would > want to get the input item, do nothing with it and then unlock. This code forwards the input item to another object within the OS X interface (which doesn't know about the playlist itself) to show meta data and stats. I agree, that this object (VLCPlaylistInfo) should probably lock the playlist itself once it got the input item, but that's to be done at a later point and introduce race conditions... Best regards, Felix From git at videolan.org Thu Feb 19 18:20:42 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 18:20:42 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Missing_dependency_=28_R=C3=A9mi_?= =?utf-8?q?Denis-Courmont_=29?= Message-ID: <20090219172042.929792F901@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 19 19:19:52 2009 +0200| [db7548c0695b67ad42cc69e19a8d24a7974be70e] | committer: R?mi Denis-Courmont Missing dependency > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=db7548c0695b67ad42cc69e19a8d24a7974be70e --- bindings/cil/tests/Makefile.am | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/bindings/cil/tests/Makefile.am b/bindings/cil/tests/Makefile.am index 116102d..c463c3f 100644 --- a/bindings/cil/tests/Makefile.am +++ b/bindings/cil/tests/Makefile.am @@ -7,7 +7,8 @@ dist_check_SCRIPTS = missing_api SOURCES_testvlc = testvlc.cs LDADD_testvlc = -lib:../src -r:VideoLAN.LibVLC.dll -testvlc.exe: $(SOURCES_testvlc) - $(CSC) -target:exe -out:$@ $(CSFLAGS) $^ $(LDADD_testvlc) +testvlc.exe: $(SOURCES_testvlc) ../src/VideoLAN.LibVLC.dll + $(CSC) -target:exe -out:$@ $(CSFLAGS) $(SOURCES_testvlc) \ + $(LDADD_testvlc) TESTS = missing_api From git at videolan.org Thu Feb 19 18:23:02 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 18:23:02 +0100 (CET) Subject: [vlc-devel] commit: darwin_specific: put psz_vlcpath to null after it being freed. ( Jean-Paul Saman ) Message-ID: <20090219172302.4947A2F9BE@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Tue Feb 17 20:59:14 2009 +0100| [63cedb8d9b7235aef2d178f2b2bce369d5eeea47] | committer: Jean-Paul Saman darwin_specific: put psz_vlcpath to null after it being freed. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=63cedb8d9b7235aef2d178f2b2bce369d5eeea47 --- src/misc/darwin_specific.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/src/misc/darwin_specific.c b/src/misc/darwin_specific.c index f47ddbf..b33b3bb 100644 --- a/src/misc/darwin_specific.c +++ b/src/misc/darwin_specific.c @@ -157,5 +157,6 @@ void system_End( libvlc_int_t *p_this ) { (void)p_this; free( psz_vlcpath ); + psz_vlcpath = NULL; } From git at videolan.org Thu Feb 19 18:23:02 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 18:23:02 +0100 (CET) Subject: [vlc-devel] commit: modules: initialize return pointer to NULL (Jean-Paul Saman ) Message-ID: <20090219172302.58A972F9C8@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Thu Feb 19 08:30:49 2009 +0100| [866faad67c52b93f57d1fc32fa155ca12828e869] | committer: Jean-Paul Saman modules: initialize return pointer to NULL If module_find() does not find the requested module it would return an uninitialized pointer. This made VLC webplugin crash under MacOS X. Thus make sure to initialize it properly to NULL. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=866faad67c52b93f57d1fc32fa155ca12828e869 --- src/modules/modules.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/modules/modules.c b/src/modules/modules.c index 476809e..c1116de 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -683,7 +683,7 @@ void __module_unneed( vlc_object_t * p_this, module_t * p_module ) */ module_t *module_find( const char * psz_name ) { - module_t **list, *module; + module_t **list, *module = NULL; list = module_list_get (NULL); if (!list) From git at videolan.org Thu Feb 19 18:29:12 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 18:29:12 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Start_rewriting_the_CIL_bindings_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090219172912.AE8F12F910@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 19 19:28:32 2009 +0200| [a744c7cf2fbb9a1f19d97a64e5f65d60e357e1cc] | committer: R?mi Denis-Courmont Start rewriting the CIL bindings > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a744c7cf2fbb9a1f19d97a64e5f65d60e357e1cc --- bindings/cil/src/Makefile.am | 2 + bindings/cil/src/exception.cs | 17 ++- bindings/cil/src/libvlc.cs | 366 +++++++++++----------------------------- bindings/cil/src/marshal.cs | 56 +++++-- bindings/cil/src/media.cs | 102 ++++++++++++ bindings/cil/src/player.cs | 130 +++++++++++++++ bindings/cil/src/ustring.cs | 28 +++- bindings/cil/tests/testvlc.cs | 26 +-- 8 files changed, 417 insertions(+), 310 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=a744c7cf2fbb9a1f19d97a64e5f65d60e357e1cc From pdherbemont at free.fr Thu Feb 19 20:18:33 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Thu, 19 Feb 2009 20:18:33 +0100 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_macosx=3A_added_missing_play?= =?iso-8859-1?q?list_locks_=28_Felix_Paul_K=FChne_=29?= In-Reply-To: <564ED5CF-3D75-40C8-82CA-19BF6D984428@gmail.com> References: <20090219143734.20B5D2F467@skanda.videolan.org> <200902191806.53979.rem@videolan.org> <564ED5CF-3D75-40C8-82CA-19BF6D984428@gmail.com> Message-ID: On Thu, Feb 19, 2009 at 5:37 PM, Felix Paul K?hne wrote: > > Am 19.02.2009 um 17:06 schrieb R?mi Denis-Courmont: > >> I don't know the playlist code very well - but... it seems odd that >> one would >> want to get the input item, do nothing with it and then unlock. > > This code forwards the input item to another object within the OS X > interface (which doesn't know about the playlist itself) to show meta > data and stats. I agree, that this object (VLCPlaylistInfo) should > probably lock the playlist itself once it got the input item, but > that's to be done at a later point and introduce race conditions... There is no point to lock the playlist because an input item is being used. The input item should be locked, not the playlist. Anyway, input item should be autolock itself for most if not all operations. Note that the playlist_item_t object is a strange object that can never be released. Pierre. From git at videolan.org Thu Feb 19 22:27:54 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 22:27:54 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Revert_=22modules=3A_initialize_r?= =?utf-8?q?eturn_pointer_to_NULL=22_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090219212755.208712F3BA@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Thu Feb 19 19:31:47 2009 +0200| [37af1e427d48f56f1033baabda39122dc699495c] | committer: R?mi Denis-Courmont Revert "modules: initialize return pointer to NULL" This reverts commit 866faad67c52b93f57d1fc32fa155ca12828e869. module_t **list, *module; list = module_list_get (NULL); if (!list) return NULL; for (size_t i = 0; (module = list[i]) != NULL; i++) ^^^^^^^^ I think this needs no more comment. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=37af1e427d48f56f1033baabda39122dc699495c --- src/modules/modules.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/modules/modules.c b/src/modules/modules.c index c1116de..476809e 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -683,7 +683,7 @@ void __module_unneed( vlc_object_t * p_this, module_t * p_module ) */ module_t *module_find( const char * psz_name ) { - module_t **list, *module = NULL; + module_t **list, *module; list = module_list_get (NULL); if (!list) From rem at videolan.org Thu Feb 19 22:31:46 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Thu, 19 Feb 2009 23:31:46 +0200 Subject: [vlc-devel] commit: modules: initialize return pointer to NULL (Jean-Paul Saman ) In-Reply-To: <20090219172302.58A972F9C8@skanda.videolan.org> References: <20090219172302.58A972F9C8@skanda.videolan.org> Message-ID: <200902192331.47065.rem@videolan.org> Le jeudi 19 f?vrier 2009 19:23:02 git version control, vous avez ?crit?: > vlc | branch: master | Jean-Paul Saman | Thu Feb 19 > 08:30:49 2009 +0100| [866faad67c52b93f57d1fc32fa155ca12828e869] | > committer: Jean-Paul Saman > > modules: initialize return pointer to NULL > > If module_find() does not find the requested module it would return an > uninitialized pointer. This made VLC webplugin crash under MacOS X. Thus > make sure to initialize it properly to NULL. Ok... what is it you want so that you will stop pushing such non-sense? Waiting did not work. Asking did not work. Asking for the termination of your commit rights did not work. Stopping my reviews is not acceptable as -contrary to you if I'm to trust your push pattern- I do actually care about our code base quality. -- R?mi Denis-Courmont From rem at videolan.org Thu Feb 19 23:05:00 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 00:05:00 +0200 Subject: [vlc-devel] [PATCH] file extension manager (fixed patch) In-Reply-To: <1e0b1f250902181827h23b9dbd2r408ef950bf75a35c@mail.gmail.com> References: <1e0b1f250902181827h23b9dbd2r408ef950bf75a35c@mail.gmail.com> Message-ID: <200902200005.00329.rem@videolan.org> Le jeudi 19 f?vrier 2009 04:27:58 ???, vous avez ?crit?: > This is an (hopefully) fixed version of my previous patch. Please > ignore the old one. Sorry for the mistakes. A bunch of comments... +/** + * Initialise extension manager. + * + * \retval VLC_SUCCESS on success + * \retval VLC_EGENERIC on failure + */ Not sure if Doxygen supports multiple \retval per function. +LIBVLC_EXTERN int fileext_Init(void); LIBVLC_EXTERN is for... LibVLC public APIs. Internal VLC core APIs are simply "extern", which is usually not even specified since it is the default. + /* XXX: dynamic file extension: + returns MALLOCated strings caller should FREE them ! + */ +# include +# define _EXTENSIONS_AUDIO fileext_Get( FILEEXT_AUDIO ) +# define _EXTENSIONS_VIDEO fileext_Get( FILEEXT_VIDEO ) +# define _EXTENSIONS_PLAYLIST fileext_Get( FILEEXT_PLAYLIST ) +# define _EXTENSIONS_MEDIA fileext_Get( FILEEXT_MEDIA ) +# define _EXTENSIONS_SUBTITLE fileext_Get( FILEEXT_SUBTITLE ) Identifier with a leading underscore are reserved by the C standard. It is best to not add anymore of these than we already have. diff --git a/modules/gui/qt4/dialogs_provider.hpp b/modules/gui/qt4/dialogs_provider.hpp index c08a6a5..391765d 100644 --- a/modules/gui/qt4/dialogs_provider.hpp +++ b/modules/gui/qt4/dialogs_provider.hpp It would be nice to split this into multiple patches (new API and back-end, using the new API, and removal of old cruft). + int len = + strlen (psz_playlist) + strlen(psz_allfiles) + strlen(psz_pl_exts) + 16; + + list = new char [len]; + if( list ) + { + sprintf(list,"%s|%s|%s|*",psz_playlist,psz_pl_exts,psz_allfiles); Using asprintf() (or QString) would be simpler and less likely to break if someone changes the code later. +fileext_TypeName +fileext_TypeOf +fileext_Get +fileext_Add +fileext_Del Did $(make check) allow this? I think libvlccore.sym is supposed to be sorted. +/* Copy buffer with lowercase transform */ +static inline void lowercpy(char * d, const char * s, const int l) +{ + int i; + for( i = 0; i < l; ++i ) + d[i] = tolower(s[i]); +} Use size_t for array sizes. (I am also not a big fan of const for by-value parameters, as they're kinda useless, but I don't think we have a policy against that). +/* MUST BE LOCK s/LOCK/LOCKED/ + fileext = realloc(pool->fileext, newmax * sizeof(fileext_t)); Potential integer overflow? Maybe not really an issue. +void fileext_Cleanup(void) +{ + pool_cleanup(&pool); +} + +/** + * Initialise extension manager. + * + * \retval VLC_SUCCESS on success + * \retval !VLC_SUCCESS error code of failure + */ +int fileext_Init(void) +{ + int err; + + err = pool_init(&pool) != VLC_SUCCESS; With the public API, we may have multiple instances in the same process. I am afraid this is not thread-safe. + for ( ; ; ) { + err = VLC_EGENERIC; + if ( 0 > pool_add_exts(&pool,aud_exts,FILEEXT_AUDIO)) break; + if ( 0 > pool_add_exts(&pool,vid_exts,FILEEXT_VIDEO)) break; + if ( 0 > pool_add_exts(&pool,pls_exts,FILEEXT_PLAYLIST)) break; + if ( 0 > pool_add_exts(&pool,sub_exts,FILEEXT_SUBTITLE)) break; + err = VLC_SUCCESS; + break; It seems that you really don't like goto :D +char * fileext_Get( int types ) +{ + return valid_type(types) + ? pool_get(&pool, types) + : 0 + ; +} Please use NULL rather than 0. We don't like implicit cast warnings. Regards, -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Thu Feb 19 23:20:24 2009 From: git at videolan.org (git version control) Date: Thu, 19 Feb 2009 23:20:24 +0100 (CET) Subject: [vlc-devel] commit: Contribs: faac && faad2 update. (Jean-Baptiste Kempf ) Message-ID: <20090219222024.955AB2F6B0@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Thu Feb 19 23:17:53 2009 +0100| [5987ab5a787aa8cd9f8d83522cc1ee9454f24ae8] | committer: Jean-Baptiste Kempf Contribs: faac && faad2 update. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5987ab5a787aa8cd9f8d83522cc1ee9454f24ae8 --- extras/contrib/src/packages.mak | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/extras/contrib/src/packages.mak b/extras/contrib/src/packages.mak index 816e980..f1594c8 100644 --- a/extras/contrib/src/packages.mak +++ b/extras/contrib/src/packages.mak @@ -82,11 +82,11 @@ SPEEX_VERSION=1.2rc1 SPEEX_URL=http://downloads.us.xiph.org/releases/speex/speex-$(SPEEX_VERSION).tar.gz SHOUT_VERSION=2.2.2 SHOUT_URL=http://downloads.us.xiph.org/releases/libshout/libshout-$(SHOUT_VERSION).tar.gz -FAAD2_VERSION=2.6.1 +FAAD2_VERSION=2.7 FAAD2_URL=$(SF)/faac/faad2-$(FAAD2_VERSION).tar.gz #FAAD2_URL=$(VIDEOLAN)/testing/contrib/faad2-$(FAAD2_VERSION).tar.bz2 FAAD2_CVSROOT=:pserver:anonymous at cvs.audiocoding.com:/cvsroot/faac -FAAC_VERSION=1.26 +FAAC_VERSION=1.28 FAAC_URL=$(SF)/faac/faac-$(FAAC_VERSION).tar.gz LAME_VERSION=398-2 LAME_URL=$(SF)/lame/lame-$(LAME_VERSION).tar.gz From sashipa.ben at gmail.com Fri Feb 20 00:20:24 2009 From: sashipa.ben at gmail.com (=?UTF-8?B?w5/RlMWL?=) Date: Fri, 20 Feb 2009 00:20:24 +0100 Subject: [vlc-devel] [PATCH] file extension manager (fixed patch) In-Reply-To: <200902200005.00329.rem@videolan.org> References: <1e0b1f250902181827h23b9dbd2r408ef950bf75a35c@mail.gmail.com> <200902200005.00329.rem@videolan.org> Message-ID: <1e0b1f250902191520i14f3d4f6j5694b299054586f7@mail.gmail.com> On Thu, Feb 19, 2009 at 11:05 PM, R?mi Denis-Courmont wrote: > Le jeudi 19 f?vrier 2009 04:27:58 ???, vous avez ?crit : >> This is an (hopefully) fixed version of my previous patch. Please >> ignore the old one. Sorry for the mistakes. > > A bunch of comments... > > +/** > + * Initialise extension manager. > + * > + * \retval VLC_SUCCESS on success > + * \retval VLC_EGENERIC on failure > + */ > > Not sure if Doxygen supports multiple \retval per function. > I'm sure it does. > +LIBVLC_EXTERN int fileext_Init(void); > > LIBVLC_EXTERN is for... LibVLC public APIs. Internal VLC core APIs are > simply "extern", which is usually not even specified since it is the default. > > extern won't link against C++. ... As far as VLC core is in C I agree with you. > + /* XXX: dynamic file extension: > + returns MALLOCated strings caller should FREE them ! > + */ > +# include > +# define _EXTENSIONS_AUDIO fileext_Get( FILEEXT_AUDIO ) > +# define _EXTENSIONS_VIDEO fileext_Get( FILEEXT_VIDEO ) > +# define _EXTENSIONS_PLAYLIST fileext_Get( FILEEXT_PLAYLIST ) > +# define _EXTENSIONS_MEDIA fileext_Get( FILEEXT_MEDIA ) > +# define _EXTENSIONS_SUBTITLE fileext_Get( FILEEXT_SUBTITLE ) > > Identifier with a leading underscore are reserved by the C standard. > It is best to not add anymore of these than we already have. > My bad. I have modified these for searching previous use of theses macros. I should have restored original names. > diff --git a/modules/gui/qt4/dialogs_provider.hpp > b/modules/gui/qt4/dialogs_provider.hpp > index c08a6a5..391765d 100644 > --- a/modules/gui/qt4/dialogs_provider.hpp > +++ b/modules/gui/qt4/dialogs_provider.hpp > > It would be nice to split this into multiple patches (new API and back-end, > using the new API, and removal of old cruft). > Damn it. That's what I did first :) > + int len = > + strlen (psz_playlist) + strlen(psz_allfiles) + strlen(psz_pl_exts) + > 16; > + > + list = new char [len]; > + if( list ) > + { > + sprintf(list,"%s|%s|%s|*",psz_playlist,psz_pl_exts,psz_allfiles); > > Using asprintf() (or QString) would be simpler and less likely to break if > someone changes the code later. > I don't know anything about Qstuff; never used and never wanted to. asprintf is a convenient GNU extension. > +fileext_TypeName > +fileext_TypeOf > +fileext_Get > +fileext_Add > +fileext_Del > > Did $(make check) allow this? I think libvlccore.sym is supposed to be sorted. > > +/* Copy buffer with lowercase transform */ > +static inline void lowercpy(char * d, const char * s, const int l) > +{ > + int i; > + for( i = 0; i < l; ++i ) > + d[i] = tolower(s[i]); > +} > > Use size_t for array sizes. (I am also not a big fan of const for by-value > parameters, as they're kinda useless, but I don't think we have a policy > against that). > Totally useless in that context. I'm copying exclusively file extension that are never longer than a few chars. size_t looks like a waste too me. > +/* MUST BE LOCK > > s/LOCK/LOCKED/ > > + fileext = realloc(pool->fileext, newmax * sizeof(fileext_t)); > > Potential integer overflow? Maybe not really an issue. > In what world ? 16 bit integer ? 65536/12 = 5461 extensions before a possible overflow :D > +void fileext_Cleanup(void) > +{ > + pool_cleanup(&pool); > +} > + > +/** > + * Initialise extension manager. > + * > + * \retval VLC_SUCCESS on success > + * \retval !VLC_SUCCESS error code of failure > + */ > +int fileext_Init(void) > +{ > + int err; > + > + err = pool_init(&pool) != VLC_SUCCESS; > > With the public API, we may have multiple instances in the same process. I am > afraid this is not thread-safe. > Process or thread ? That's all the difference. Processes do not share data so each have it's own pool. At init time (and cleanup) I have assume there is only one thread. This init should take place before module loading. I thought the source location where I have included the calls to theses functions was right. I may be wrong as I'm not well aware of VLC general architecture. > + for ( ; ; ) { > + err = VLC_EGENERIC; > + if ( 0 > pool_add_exts(&pool,aud_exts,FILEEXT_AUDIO)) break; > + if ( 0 > pool_add_exts(&pool,vid_exts,FILEEXT_VIDEO)) break; > + if ( 0 > pool_add_exts(&pool,pls_exts,FILEEXT_PLAYLIST)) break; > + if ( 0 > pool_add_exts(&pool,sub_exts,FILEEXT_SUBTITLE)) break; > + err = VLC_SUCCESS; > + break; > > It seems that you really don't like goto :D I don't really care :-) . It's sometime convenient to do as such. > > +char * fileext_Get( int types ) > +{ > + return valid_type(types) > + ? pool_get(&pool, types) > + : 0 > + ; > +} > > Please use NULL rather than 0. We don't like implicit cast warnings. I have never seen any cast warning for 0 to pointer converson in C whatever -Wall -pedantic -std= combinaison I ever used. But I don't mind using NULL. -- B. From fpkuehne at googlemail.com Thu Feb 19 17:42:13 2009 From: fpkuehne at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Thu, 19 Feb 2009 17:42:13 +0100 Subject: [vlc-devel] Removal of the QuickTime input plugin In-Reply-To: <5FF079FF-3C57-46EE-A907-1CC07E7A540C@gmail.com> References: <5FF079FF-3C57-46EE-A907-1CC07E7A540C@gmail.com> Message-ID: <8100C61C-5733-4694-A9C7-BCE29DA9DF0A@gmail.com> Am 19.02.2009 um 17:34 schrieb Felix Paul K?hne: > the QuickTime Input plugin This should read _decoder_ plugin of course... *sigh* Best, F. From cube at cubidou.net Thu Feb 19 15:08:13 2009 From: cube at cubidou.net (Quentin Garnier) Date: Thu, 19 Feb 2009 15:08:13 +0100 Subject: [vlc-devel] [cube@cubidou.net: [Videolan-devel] access/file shortcut to open file descriptors] In-Reply-To: <850f59c87e79d4612d1e6036c864eedc@chewa.net> References: <20090219102802.GA11272@videolan.org> <850f59c87e79d4612d1e6036c864eedc@chewa.net> Message-ID: <20090219140813.GA29459@shaak.vert-toit.net> On Thu, Feb 19, 2009 at 12:13:45PM +0100, R?mi Denis-Courmont wrote: > > Hello, > > "filedesc://" evokes file descriptION. In my opinion, the usual accronym > for file descriptOR is just "fd://". You commit the code (or not), you get to choose. > Also, it seems the dup() call is missing. Or why should this behave > differently from the stdin case? Honestly, I don't remember. But then, why do you feel the need to do dup(0)? > There are a few subtle differences between this patch and > "/dev/fd"/"/proc/self/fd", e.g.: > - it reads the file from current descriptor offset instead of from the > beginning, > - it changes the file descriptor offset, > - it inherits file locks, > - on Linux, /proc/self/fd cannot open sockets and anonymous pipes, > - on OSX, /dev/fd cannot open directories. - it's possible to use it on Windows Not that it is really relevant to me anymore, because I had to split libvlc usage in a forked process otherwise it'd deadlock very easily on Windows (IIRC), which means I could use stdin. Not that the resulting application is completely bug free either, but that project is very low priority. -- Quentin Garnier - cube at cubidou.net - cube at NetBSD.org "See the look on my face from staying too long in one place [...] every time the morning breaks I know I'm closer to falling" KT Tunstall, Saving My Face, Drastic Fantastic, 2007. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 486 bytes Desc: not available URL: From git at videolan.org Fri Feb 20 00:45:54 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 00:45:54 +0100 (CET) Subject: [vlc-devel] commit: Qt: menus, minor code reorg. (Jean-Baptiste Kempf ) Message-ID: <20090219234554.406832F911@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 20 00:36:33 2009 +0100| [b9bfa887799054cfd7c2a801021870de8fdbdaa4] | committer: Jean-Baptiste Kempf Qt: menus, minor code reorg. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b9bfa887799054cfd7c2a801021870de8fdbdaa4 --- modules/gui/qt4/menus.cpp | 55 +++++++++++++++++++++++--------------------- 1 files changed, 29 insertions(+), 26 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 960789f..063dfae 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -110,6 +110,26 @@ void addDPStaticEntry( QMenu *menu, action->setData( true ); } +/*** + * Same for MIM + ***/ +void addMIMStaticEntry( intf_thread_t *p_intf, + QMenu *menu, + const QString text, + const char *icon, + const char *member ) +{ + if( strlen( icon ) > 0 ) + { + QAction *action = menu->addAction( text, THEMIM, member ); + action->setIcon( QIcon( icon ) ); + } + else + { + menu->addAction( text, THEMIM, member ); + } +} + /** * @brief Enable all static entries, disable the others * @param enable if false, disable all entries @@ -144,24 +164,18 @@ int DeleteNonStaticEntries( QMenu *menu ) return i_ret; } -/*** - * Same for MIM - ***/ -void addMIMStaticEntry( intf_thread_t *p_intf, - QMenu *menu, - const QString text, - const char *icon, - const char *member ) +/** + * \return QAction associated to psz_var variable + **/ +static QAction * FindActionWithVar( QMenu *menu, const char *psz_var ) { - if( strlen( icon ) > 0 ) - { - QAction *action = menu->addAction( text, THEMIM, member ); - action->setIcon( QIcon( icon ) ); - } - else + QList< QAction* > actions = menu->actions(); + for( int i = 0; i < actions.size(); ++i ) { - menu->addAction( text, THEMIM, member ); + if( actions[i]->data().toString() == psz_var ) + return actions[i]; } + return NULL; } /***************************************************************************** @@ -225,17 +239,6 @@ static int AudioAutoMenuBuilder( aout_instance_t *p_object, return VLC_SUCCESS; } -static QAction * FindActionWithVar( QMenu *menu, const char *psz_var ) -{ - QList< QAction* > actions = menu->actions(); - for( int i = 0; i < actions.size(); ++i ) - { - if( actions[i]->data().toString() == psz_var ) - return actions[i]; - } - return NULL; -} - /***************************************************************************** * All normal menus * Simple Code From git at videolan.org Fri Feb 20 00:45:54 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 00:45:54 +0100 (CET) Subject: [vlc-devel] commit: Qt: menus, comments fixes. (Jean-Baptiste Kempf ) Message-ID: <20090219234554.5027B2F9A5@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 20 00:44:13 2009 +0100| [4d866e7a568a29694cf0dfbf050369d0bb6cbe6e] | committer: Jean-Baptiste Kempf Qt: menus, comments fixes. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4d866e7a568a29694cf0dfbf050369d0bb6cbe6e --- modules/gui/qt4/menus.cpp | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 063dfae..a6c2319 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -277,8 +277,10 @@ void QVLCMenu::createMenuBar( MainInterface *mi, gives the QProcess::destroyed timeout issue on Cleanlooks style with setDesktopAware set to false */ QMenuBar *bar = mi->menuBar(); + BAR_ADD( FileMenu( p_intf, bar ), qtr( "&Media" ) ); + /* Dynamic menus, rebuilt before being showed */ BAR_DADD( NavigMenu( p_intf, bar ), qtr( "P&layback" ), 3 ); BAR_DADD( AudioMenu( p_intf, bar ), qtr( "&Audio" ), 1 ); BAR_DADD( VideoMenu( p_intf, bar ), qtr( "&Video" ), 2 ); @@ -286,7 +288,6 @@ void QVLCMenu::createMenuBar( MainInterface *mi, BAR_ADD( ToolsMenu( bar ), qtr( "&Tools" ) ); BAR_ADD( ViewMenu( p_intf, NULL, mi, visual_selector_enabled, true ), qtr( "V&iew" ) ); - BAR_ADD( HelpMenu( bar ), qtr( "&Help" ) ); } #undef BAR_ADD @@ -341,7 +342,9 @@ QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf, QWidget *parent ) return menu; } -/* Playlist/MediaLibrary Control */ +/** + * Tools, like Media Information, Preferences or Messages + **/ QMenu *QVLCMenu::ToolsMenu( QMenu *menu ) { addDPStaticEntry( menu, qtr( I_MENU_EXT ), ":/settings", @@ -380,7 +383,7 @@ QMenu *QVLCMenu::ToolsMenu( QWidget *parent ) /** * View Menu - * This menu can be an interface menu but also a right click menu. + * Interface Modification **/ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, QMenu *current, @@ -464,7 +467,6 @@ QMenu *QVLCMenu::InterfacesMenu( intf_thread_t *p_intf, QMenu *current ) { vector objects; vector varnames; - /** \todo add "switch to XXX" */ varnames.push_back( "intf-add" ); objects.push_back( VLC_OBJECT(p_intf) ); @@ -473,7 +475,7 @@ QMenu *QVLCMenu::InterfacesMenu( intf_thread_t *p_intf, QMenu *current ) /** * Main Audio Menu - */ + **/ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) { vector objects; From git at videolan.org Fri Feb 20 01:19:30 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 01:19:30 +0100 (CET) Subject: [vlc-devel] commit: Qt: menu, code simplification. (Jean-Baptiste Kempf ) Message-ID: <20090220001930.66B5D2F9D7@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 20 01:18:22 2009 +0100| [087123fe974490145e8c1a50ec726cd4c7dd3187] | committer: Jean-Baptiste Kempf Qt: menu, code simplification. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=087123fe974490145e8c1a50ec726cd4c7dd3187 --- modules/gui/qt4/actions_manager.hpp | 2 +- modules/gui/qt4/menus.cpp | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/modules/gui/qt4/actions_manager.hpp b/modules/gui/qt4/actions_manager.hpp index 9fa3e88..463edc5 100644 --- a/modules/gui/qt4/actions_manager.hpp +++ b/modules/gui/qt4/actions_manager.hpp @@ -79,8 +79,8 @@ public slots: void toggleMuteAudio(); void AudioUp(); void AudioDown(); -protected slots: void play(); +protected slots: void fullscreen(); void snapshot(); void playlist(); diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index a6c2319..1db4644 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -614,6 +614,7 @@ QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QMenu *menu ) } + /* */ input_thread_t *p_object; vector objects; vector varnames; @@ -622,15 +623,20 @@ QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QMenu *menu ) if( p_object ) vlc_object_hold( p_object ); InputAutoMenuBuilder( p_object, objects, varnames ); + + /* Title and so on */ PUSH_VAR( "prev-title" ); PUSH_VAR( "next-title" ); PUSH_VAR( "prev-chapter" ); PUSH_VAR( "next-chapter" ); + + menu->addSeparator(); + EnableStaticEntries( menu, ( p_object != NULL ) ); + if( p_object ) - { vlc_object_release( p_object ); - } + return Populate( p_intf, menu, varnames, objects ); } @@ -715,23 +721,17 @@ void QVLCMenu::PopupMenuControlEntries( QMenu *menu, intf_thread_t *p_intf, input_thread_t *p_input ) { - if( p_input ) + if( !p_input || var_GetInteger( p_input, "state" ) != PLAYING_S ) + { + QAction *action = menu->addAction( qtr( "Play" ), + ActionsManager::getInstance( p_intf ), SLOT( play() ) ); + action->setIcon( QIcon( ":/play" ) ); + } + else { - vlc_value_t val; - var_Get( p_input, "state", &val ); - if( val.i_int == PLAYING_S ) addMIMStaticEntry( p_intf, menu, qtr( "Pause" ), ":/pause", SLOT( togglePlayPause() ) ); - else - addMIMStaticEntry( p_intf, menu, qtr( "Play" ), - ":/play", SLOT( togglePlayPause() ) ); } - else if( THEPL->items.i_size ) - addMIMStaticEntry( p_intf, menu, qtr( "Play" ), - ":/play", SLOT( togglePlayPause() ) ); - else - addDPStaticEntry( menu, qtr( "Play" ), - ":/play", SLOT( openDialog() ) ); addMIMStaticEntry( p_intf, menu, qtr( "Stop" ), ":/stop", SLOT( stop() ) ); From rdenis at simphalempin.com Fri Feb 20 09:27:23 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 09:27:23 +0100 Subject: [vlc-devel] Removal of the QuickTime input plugin In-Reply-To: <5FF079FF-3C57-46EE-A907-1CC07E7A540C@gmail.com> References: <5FF079FF-3C57-46EE-A907-1CC07E7A540C@gmail.com> Message-ID: On Thu, 19 Feb 2009 17:34:52 +0100, "Felix Paul K?hne" wrote: > The > only part of the plugin which may be still working is the included > Win32 port, which doesn't appear too tested and I'm wondering whether > it is still used at all... I don't know. On Linux, it builds (or used to) wit the DLL loader but has been missing a symbol for as long as we've had the loader in the tree. -- R?mi Denis-Courmont From jpd at m2x.nl Fri Feb 20 09:31:25 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Fri, 20 Feb 2009 09:31:25 +0100 (CET) Subject: [vlc-devel] Start a VLC from a C-Code without any URL In-Reply-To: <20090218120956.197230@gmx.net> References: <20090218120956.197230@gmx.net> Message-ID: <28be8581529ad14fda1eca4abab66400.squirrel@m2x.nl> On Wed, February 18, 2009 13:09, Anna Richter wrote: > I habe the following problem: i need to implement a multimedia-streaming > solution with the feature, that the server streams a video to a client and > plays this video at the same time. VLC player is used to display the data. Since nobody else has answered so far I'll take a shot, though I must admit not being hindered by much factual knowledge either (yet). You mention multicast, so my first thought would be to tell your monitoring instance of vlc to listen on the same multicast address and show whatever it sees. A second suggestion would be to keep a vlc instance running and give it regular instructions whenever needed over the `remote control' interface it provides. Note that you probably will have to tell the sender to deliver multicast packets sent to the local machine also. At least on some systems it does not do so unless you tell it to. This would be a system control option. From rdenis at simphalempin.com Fri Feb 20 09:33:03 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 09:33:03 +0100 Subject: [vlc-devel] [PATCH] file extension manager (fixed patch) In-Reply-To: <1e0b1f250902191520i14f3d4f6j5694b299054586f7@mail.gmail.com> References: <1e0b1f250902181827h23b9dbd2r408ef950bf75a35c@mail.gmail.com> <200902200005.00329.rem@videolan.org> <1e0b1f250902191520i14f3d4f6j5694b299054586f7@mail.gmail.com> Message-ID: On Fri, 20 Feb 2009 00:20:24 +0100, ??? wrote: > extern won't link against C++. ... As far as VLC core is in C I agree with > you. The core _is_ in C. In fact, those declarations should be in a private header inside src/ rather than include/ >> Using asprintf() (or QString) would be simpler and less likely to break >> if someone changes the code later. >> > > I don't know anything about Qstuff; never used and never wanted to. > asprintf is a convenient GNU extension. Nope. VLC does provide asprintf() on non-GNU systems. > Totally useless in that context. I'm copying exclusively file > extension that are never longer than > a few chars. size_t looks like a waste too me. On 32-bits system, it won't make a difference. On 64-bits, they will both spend on register anyway. >> With the public API, we may have multiple instances in the same process. >> I am afraid this is not thread-safe. >> > > Process or thread ? We can have multiple instances in a single process, in the same or in different thread. -- R?mi Denis-Courmont From rdenis at simphalempin.com Fri Feb 20 09:34:01 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 09:34:01 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_PulseAudio_cannot_be_unloaded_-_f?= =?utf-8?q?ixes_=232538_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <20090219161302.EAFB32F9D4@skanda.videolan.org> References: <20090219161302.EAFB32F9D4@skanda.videolan.org> Message-ID: <7c8d5df8bc321d886ea34bd179053ef9@chewa.net> On Thu, 19 Feb 2009 17:13:02 +0100 (CET), git at videolan.org (git version control) wrote: > vlc | branch: master | R?mi Denis-Courmont | Thu > Feb 19 18:12:08 2009 +0200| [8b40fb0f0bfb71913fe5dd22402ecfa479d80b6d] | > committer: R?mi Denis-Courmont > > PulseAudio cannot be unloaded - fixes #2538 > > (I would not be surprised if the bug were in the VLC plugin though) Someone should really look at this closer. Unfortunately the bug report is not very content-rich (and I don't use PulseAudio). -- R?mi Denis-Courmont From git at videolan.org Fri Feb 20 09:39:44 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 09:39:44 +0100 (CET) Subject: [vlc-devel] commit: Ensure cone is hidden before video is shown in qt4 interface ( Joseph Tulou ) Message-ID: <20090220083944.4EB222FA31@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Sun Feb 15 11:36:52 2009 +0100| [7353924f5580954f23e4808dee34b73813c6a926] | committer: Jean-Baptiste Kempf Ensure cone is hidden before video is shown in qt4 interface Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7353924f5580954f23e4808dee34b73813c6a926 --- modules/gui/qt4/components/interface_widgets.cpp | 6 ------ modules/gui/qt4/components/interface_widgets.hpp | 3 --- modules/gui/qt4/main_interface.cpp | 9 +++++++++ modules/gui/qt4/main_interface.hpp | 1 + 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/modules/gui/qt4/components/interface_widgets.cpp b/modules/gui/qt4/components/interface_widgets.cpp index 3f40b2f..e9a26db 100644 --- a/modules/gui/qt4/components/interface_widgets.cpp +++ b/modules/gui/qt4/components/interface_widgets.cpp @@ -76,11 +76,6 @@ VideoWidget::VideoWidget( intf_thread_t *_p_i ) : QFrame( NULL ), p_intf( _p_i ) Widgets with this attribute set do not participate in composition management */ setAttribute( Qt::WA_PaintOnScreen, true ); - - /* The core can ask through a callback to show the video. */ - connect( this, SIGNAL(askVideoWidgetToShow( unsigned int, unsigned int)), - this, SLOT(SetSizing(unsigned int, unsigned int )), - Qt::BlockingQueuedConnection ); } void VideoWidget::paintEvent(QPaintEvent *ev) @@ -112,7 +107,6 @@ WId VideoWidget::request( vout_thread_t *p_nvout, int *pi_x, int *pi_y, *pi_height = size().height(); } - emit askVideoWidgetToShow( *pi_width, *pi_height ); if( p_vout ) { msg_Dbg( p_intf, "embedded video already in use" ); diff --git a/modules/gui/qt4/components/interface_widgets.hpp b/modules/gui/qt4/components/interface_widgets.hpp index 3b7d01b..77f2326 100644 --- a/modules/gui/qt4/components/interface_widgets.hpp +++ b/modules/gui/qt4/components/interface_widgets.hpp @@ -80,9 +80,6 @@ private: QSize videoSize; -signals: - void askVideoWidgetToShow( unsigned int, unsigned int ); - public slots: void SetSizing( unsigned int, unsigned int ); diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index ada35f2..06aaab0 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -214,9 +214,15 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf ) this, SLOT(releaseVideoSlot( void )), Qt::BlockingQueuedConnection ); if( videoWidget ) + { CONNECT( this, askVideoToResize( unsigned int, unsigned int ), videoWidget, SetSizing( unsigned int, unsigned int ) ); + connect( this, SIGNAL(askVideoToShow( unsigned int, unsigned int)), + videoWidget, SLOT(SetSizing(unsigned int, unsigned int )), + Qt::BlockingQueuedConnection ); + } + CONNECT( this, askUpdate(), this, doComponentsUpdate() ); /* Size and placement of interface */ @@ -662,6 +668,9 @@ WId MainInterface::requestVideo( vout_thread_t *p_nvout, int *pi_x, else bgWasVisible = false; + /* ask videoWidget to show */ + emit askVideoToShow( *pi_width, *pi_height ); + /* Consider the video active now */ videoIsActive = true; diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp index 95e0a78..c84df94 100644 --- a/modules/gui/qt4/main_interface.hpp +++ b/modules/gui/qt4/main_interface.hpp @@ -174,6 +174,7 @@ private slots: signals: void askReleaseVideo( ); void askVideoToResize( unsigned int, unsigned int ); + void askVideoToShow( unsigned int, unsigned int ); void askVideoToToggle(); void askBgWidgetToToggle(); void askUpdate(); From jb at videolan.org Fri Feb 20 09:41:08 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Fri, 20 Feb 2009 09:41:08 +0100 Subject: [vlc-devel] RE : RE : [PATCH] -- qt4 cone display issue In-Reply-To: <001901c99292$6cd5ef10$8252fac1@CCCC> References: <20090219005649.GA32596@videolan.org> <001901c99292$6cd5ef10$8252fac1@CCCC> Message-ID: <20090220084108.GA9560@videolan.org> On Thu, Feb 19, 2009 at 02:03:12PM +0100, brezhoneg1 wrote : > As a reminder, > Patch 1 : the real patch (change order used to show/hide cone and video > widget). This change 1/ brings better performance 2/ avoids fleeting > weird behavior. Applied. > Patch 2 (not compulsory) : allows tracking resizing events in debug > mode. > I sent it because one can be surprised at what a difference it makes for > QT4 to choose the right vs wrong order of hiding/showing things. Rejected because of use of qWarning and not msg_Dbg, and because it introduce new functions, even in release mode. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Fri Feb 20 09:46:48 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Fri, 20 Feb 2009 09:46:48 +0100 Subject: [vlc-devel] [PATCH] Fix a VLC crash when exiting and there are two or more video filters loaded In-Reply-To: <5334c8b0902170715s68fb6126m726e652e11dd8989@mail.gmail.com> References: <5334c8b0902170715s68fb6126m726e652e11dd8989@mail.gmail.com> Message-ID: <20090220084648.GB9560@videolan.org> Hello, On Tue, Feb 17, 2009 at 04:15:57PM +0100, Aur?lien Nephtali wrote : > When using last VLC from git, this command makes VLC crash when closed : > > ./vlc -vv -I dummy udp://@233.0.0.1:7400 --sout > '#transcode{deinterlace,vcodec=mpgv,height=176,width=144}:std{access=file,mux=ts,dst=/dev/null}' > > For a full description of the problem you can look at > https://trac.videolan.org/vlc/ticket/1929 Anyone can confirm this? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Fri Feb 20 09:51:39 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Fri, 20 Feb 2009 09:51:39 +0100 Subject: [vlc-devel] [PATCH] -- corrects two skins2 crashes In-Reply-To: <003101c99221$573f1da0$4c9ef8c1@CCCC> References: <003101c99221$573f1da0$4c9ef8c1@CCCC> Message-ID: <20090220085139.GA12068@videolan.org> On Thu, Feb 19, 2009 at 12:33:27AM +0100, brezhoneg1 wrote : > This patch corrects segfaults when the video widget of a skin doesn't > exist or is hidden. Sorry, I cannot test, the skins are very broken here, and don't even show a video. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Fri Feb 20 09:55:34 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Fri, 20 Feb 2009 09:55:34 +0100 Subject: [vlc-devel] RE : [PATCH] - issue with mouse-x/mouse-y on Linux In-Reply-To: <000201c98caa$96785fd0$c122fac1@CCCC> References: <200902112310.37762.rem@videolan.org> <000201c98caa$96785fd0$c122fac1@CCCC> Message-ID: <20090220085534.GA12577@videolan.org> 'lo, On Thu, Feb 12, 2009 at 01:41:00AM +0100, brezhoneg1 wrote : > These updated patches should be better. Courmisch, status of this? > My understanding is that the person who developed this mouse-x/mouse-y > stuff slightly changed the formula to take into account the video > offsets, but forgot to update the comments and the additional boundary > tests. What about our beloved win32 and mac vouts? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From abethke at oamk.fi Fri Feb 20 10:48:10 2009 From: abethke at oamk.fi (Alexander Bethke) Date: Fri, 20 Feb 2009 11:48:10 +0200 Subject: [vlc-devel] jvlc: Getting any response from VLM In-Reply-To: <499997EF.1030200@carone.org> References: <20090110235458.093B82D203@skanda.videolan.org> <49995BC2.7000509@oamk.fi> <499997EF.1030200@carone.org> Message-ID: <499E7C5A.9000708@oamk.fi> Hi again, thanks for the hints Filippo, I decided to be giving it a shot improving the communication between jvlc and vlm. But before I can verify my changes, I need to get the tests running correctly. When I run for instance VLMTest>testAddVod I get the following as tail of vlc's output (spawned when the local vlm variable from the test method is destroyed): [0x93e0f00] main interface debug: removing module "screensaver" [0x93e07f0] main interface debug: removing module "inhibit" [0x94595b8] main interface debug: removing module "hotkeys" java: ../../src/misc/objects.c:660: __vlc_object_release: Assertion `internals->i_children == 0' failed. What's that assertion in the last line? It's always spawned when calling vlm.addVod in a test. The JUnit test runner then just gets stuck. I built vlc from git from like some weeks ago. I applied your patch regarding OPTION_DLOPEN_GLOBAL, to jna, deployed it as 3.0.10-SNAPSHOT and altered the jvlc-poms to use that one. I have added my lib location in the vm-arguments of the VLMTest run configuration in eclipse (-Djna.library.path=/usr/local/lib, so Linux it is). With what setup do you develop jvlc? I gonna pull the latest vlc trunk down now and try it again with that, perhaps that works better, stay tuned. Hope you can help getting me started. Regards, Alex By the way, I registered to the jvlc trac, but I just can't log in, it always throws me back to the password prompt. username: abethke Filippo Carone wrote: > Alexander Bethke ha scritto: > >> Hi everybody, >> >> I am trying to implement a live transcoding controller that wraps VLM >> via jvlc. Sending a command to VLM works fine, but it seems there is no >> way to get information back from jvlc. I understand that there is no >> fancy playback event handling with jvlc>VLM like when using jvlc as a >> player with MediaDescriptor. But what I don't understand is why no VLM >> method throws a VLCException. showMedia has return type void and I don't >> get any console logging from any VLM command (apart from actual VLC >> logging, when VLM triggered it right). >> Am I getting something wrong? Or is that just unimplemented? >> >> > > Hi Alexander, > VLM methods in JVLC should throw exceptions just like other JVLC > methods. The current implementation throws exceptions away, but if you > need exceptions now you may consider using > org.videolan.jvlc.internal.LibVlc.libvlc_vlm_* methods which fill the > libvlc_exception_t class correctly. > > The best would be to check the status of the libvlc_exception_t class in > VLM.java and throw the VLCException accordingly. Any patch will be > kindly accepted ;) > > Cheers, > Filippo > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > > From git at videolan.org Fri Feb 20 10:54:37 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 10:54:37 +0100 (CET) Subject: [vlc-devel] commit: WInCE: fix infinite loop in vasprintf replacement ( Geoffroy Couprie ) Message-ID: <20090220095437.8DB872FA85@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Fri Feb 20 10:50:18 2009 +0100| [ee2ac0d64fa697b3eb53a276e6537c475cc5b3a3] | committer: Geoffroy Couprie WInCE: fix infinite loop in vasprintf replacement fixed by Pierre Ynard > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ee2ac0d64fa697b3eb53a276e6537c475cc5b3a3 --- include/vlc_fixups.h | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/include/vlc_fixups.h b/include/vlc_fixups.h index 726bb9e..87626e8 100644 --- a/include/vlc_fixups.h +++ b/include/vlc_fixups.h @@ -77,8 +77,7 @@ static inline int vasprintf (char **strp, const char *fmt, va_list ap) } /* Else try again with more space. */ - if (n == -1) - size *= 2; /* twice the old size */ + size *= 2; /* twice the old size */ if ((np = (char *) realloc (res, size)) == NULL) { From guru.video at gmail.com Fri Feb 20 11:12:58 2009 From: guru.video at gmail.com (Video Guru) Date: Fri, 20 Feb 2009 15:42:58 +0530 Subject: [vlc-devel] RE : VLC as a frame-server : some problems remains. In-Reply-To: <002a01c99295$41e13370$8252fac1@CCCC> References: <002a01c99295$41e13370$8252fac1@CCCC> Message-ID: TThanks Erwan10, for your valuable suggestion. I was looking at the \modules\codec\avcodec\encoder.c and the dummy one : modules\misc\dummy\encoder.c but could not gather much. My questions are : 1. How do I pass the config parameters like the format & size of the video frame to it, and how to force the back-end modules to give frame in this format/size. Also how can I callback to my application (like vmem) from the encoder thread. 2. Same goes for audio, but I think if I can get it done for video, it could be done with the audio also. And here are my assumptions, correct me if I am wrong. 1. I am planning to pass the date information from video and audio to my application where it will do the sync, so the date information in video and audio will help me do the sync. 2. All the video frames and audio buffers which I get in my_encoder.c will be in proper sequence, like frame 1,2,3,4......... Please guide. On Thu, Feb 19, 2009 at 6:53 PM, brezhoneg1 wrote: > Just as a thought, > > Why not modify vmem to make it a fake video encoder instead of a vout > plugin and use it in a sout chain. > From what I recall, when just transcoding in vlc (no display at all), > the speed limit is removed ..... > > Erwan10 > >> -----Message d'origine----- >> De : vlc-devel-bounces at videolan.org [mailto:vlc-devel- >> bounces at videolan.org] De la part de Video Guru >> Envoy? : jeudi 19 f?vrier 2009 13:04 >> ? : Mailing list for VLC media player developers >> Objet : Re: [vlc-devel] VLC as a frame-server : some problems remains. >> >> Thanks Remi for the reply. >> >> On vmem's lock callback, I immediately give a pointer from my >> applications managed buffers, and returns. After vmem's unlock I mark >> that buffer as filled for the display use. I have 100 such buffers. >> But vmem lock callback is arriving at the media's fps, i.e., 25 Hz. >> >> So the callback rate is being limited by the VLC, may be for the A/V >> sync etc. But I am managing my own A/V sync based on the dates so I >> want the max speed which disk io/codec/vlc can reach. >> >> Please guide. >> >> >> On Thu, Feb 19, 2009 at 5:17 PM, R?mi Denis-Courmont >> wrote: >> > >> > On Thu, 19 Feb 2009 17:06:21 +0530, Video Guru > >> > wrote: >> >> libvlc is limiting the delivery rate to vmem based on the fps of > the >> >> media. I dont want that. I want to get frames as fast as possible > to >> >> fill my buffer, when my buffer is near full, I will either pause > vlc, >> >> or hold the vmem lock (with of course, --no-drop-frames). >> > >> > I suspect that the vmem plugin supports only one frame buffer, and > that >> > would be the issue. VLC has to wait until there is one buffer > available. >> > >> > -- >> > R?mi Denis-Courmont >> > >> > _______________________________________________ >> > vlc-devel mailing list >> > To unsubscribe or modify your subscription options: >> > http://mailman.videolan.org/listinfo/vlc-devel >> > >> >> >> >> -- >> --------------------------------------------------------------------- >> >> Electricity is actually made up of extremely tiny particles called >> electrons, that you cannot see with the naked eye unless you have been >> drinking. >> >> - Dave Barry >> _______________________________________________ >> vlc-devel mailing list >> To unsubscribe or modify your subscription options: >> http://mailman.videolan.org/listinfo/vlc-devel > > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > -- --------------------------------------------------------------------- Electricity is actually made up of extremely tiny particles called electrons, that you cannot see with the naked eye unless you have been drinking. - Dave Barry From rdenis at simphalempin.com Fri Feb 20 12:06:56 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 12:06:56 +0100 Subject: [vlc-devel] [PATCH] Fix a VLC crash when exiting and there are two or more video filters loaded In-Reply-To: <20090220084648.GB9560@videolan.org> References: <5334c8b0902170715s68fb6126m726e652e11dd8989@mail.gmail.com> <20090220084648.GB9560@videolan.org> Message-ID: <0d45febd66c273d45b0f3ef2719a4844@chewa.net> On Fri, 20 Feb 2009 09:46:48 +0100, Jean-Baptiste Kempf wrote: > Anyone can confirm this? I could not figure the code out. Antoine should check. -- R?mi Denis-Courmont From rdenis at simphalempin.com Fri Feb 20 12:07:51 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 12:07:51 +0100 Subject: [vlc-devel] RE : [PATCH] - issue with mouse-x/mouse-y on Linux In-Reply-To: <20090220085534.GA12577@videolan.org> References: <200902112310.37762.rem@videolan.org> <000201c98caa$96785fd0$c122fac1@CCCC> <20090220085534.GA12577@videolan.org> Message-ID: On Fri, 20 Feb 2009 09:55:34 +0100, Jean-Baptiste Kempf wrote: > On Thu, Feb 12, 2009 at 01:41:00AM +0100, brezhoneg1 wrote : >> These updated patches should be better. > > Courmisch, status of this? I think it's impossible to get things right with the current vout architecture. -- R?mi Denis-Courmont From git at videolan.org Fri Feb 20 13:33:42 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 13:33:42 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx-plugin=3A_really_fix_the_c?= =?utf-8?q?ompilation_if_top=5Fbuilddir_!=3D_top=5Fsrcdir_=28_Felix_Paul_K?= =?utf-8?b?w7xobmUgKQ==?= Message-ID: <20090220123342.78FAB2F863@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Fri Feb 20 13:33:31 2009 +0100| [521b3b3d69c41e3f7366d06becd8a99e4b305fb8] | committer: Felix Paul K?hne macosx-plugin: really fix the compilation if top_builddir != top_srcdir > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=521b3b3d69c41e3f7366d06becd8a99e4b305fb8 --- projects/mozilla/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/projects/mozilla/Makefile.am b/projects/mozilla/Makefile.am index ff4a0bb..0ee94fe 100644 --- a/projects/mozilla/Makefile.am +++ b/projects/mozilla/Makefile.am @@ -112,7 +112,7 @@ VLC\ Plugin.plugin: npvlc.rsrc $(lib_LTLIBRARIES) $(INSTALL) .libs/npvlc.dylib "VLC-Plugin.plugin/Contents/MacOS/lib" dylib="VLC-Plugin.plugin/Contents/MacOS/lib/npvlc.dylib"; $(FIXEXECPATH); $(INSTALL) npvlc.rsrc "VLC-Plugin.plugin/Contents/Resources/VLC Plugin.rsrc" - $(INSTALL) "$(top_srcdir)/extras/package/macosx/plugin/Info.plist" "VLC-Plugin.plugin/Contents/Info.plist" + $(INSTALL) "$(top_builddir)/extras/package/macosx/plugin/Info.plist" "VLC-Plugin.plugin/Contents/Info.plist" mv "VLC-Plugin.plugin" "VLC Plugin.plugin" find "VLC Plugin.plugin" -type d -exec chmod ugo+rx '{}' \; find "VLC Plugin.plugin" -type f -exec chmod ugo+r '{}' \; From git at videolan.org Fri Feb 20 13:53:44 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 13:53:44 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_contribs=3A_backported_the_bin-pa?= =?utf-8?q?ckage_mechanism_for_OSX_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090220125344.A2DC32F911@skanda.videolan.org> vlc | branch: 0.9-bugfix | Felix Paul K?hne | Fri Feb 20 13:53:25 2009 +0100| [f6a0db6b2d8c50d118383e62544c7044bb3fa255] | committer: Felix Paul K?hne contribs: backported the bin-package mechanism for OSX A i386 package is already present on ganesh. A PPC package will follow within the day > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f6a0db6b2d8c50d118383e62544c7044bb3fa255 --- extras/contrib/Makefile | 36 ++++++++++++++++++++++++++++++++---- extras/contrib/bootstrap | 9 +++++++++ 2 files changed, 41 insertions(+), 4 deletions(-) diff --git a/extras/contrib/Makefile b/extras/contrib/Makefile index 1c62f5b..3b838b3 100644 --- a/extras/contrib/Makefile +++ b/extras/contrib/Makefile @@ -27,11 +27,39 @@ include ./config.mak BUILDDIRS = bin doc etc include info lib man sbin share vlc-lib tmp gecko-sdk -all: +ifdef HAVE_DARWIN_OS +TARGETALL=using-bin +else +TARGETALL=using-src +endif + +all: $(TARGETALL) + +using-src: $(MAKE) -C src -contrib-macosx.tar.bz2: - $(WGET) $(CONTRIB_URL) +# shortcut +src: using-src + +ifdef HAVE_DARWIN_OS + +CONTRIBREV=0.9.9 +DARWIN_COMPILER=GCC +contrib-macosx-$(ARCH)-$(CONTRIBREV)-$(DARWIN_COMPILER).tar.bz2: + $(WGET) ftp://ftp.videolan.org/pub/videolan/testing/contrib/$@ + +using-bin: contrib-macosx-$(ARCH)-$(CONTRIBREV)-$(DARWIN_COMPILER).tar.bz2 + @if test -d tmp; then \ + echo "Move away ./tmp, it's in the way" ; \ + exit 1 ; \ + fi + mkdir tmp + (cd tmp && tar jxvf ../$<) + ./change_prefix.sh tmp @@CONTRIB_PREFIX@@ $(PREFIX) + for dir in `(cd tmp && find . -type d)`; do mkdir -p -- $$dir; done + for i in `(cd tmp && find . -not -type d)`; do mv -f tmp/$$i $$i; done + rm -rf tmp +endif clean-src: rm -rf $(BUILDDIRS) @@ -52,7 +80,7 @@ package-macosx: fi mkdir tmp tar cf - bin sbin include lib vlc-lib share/aclocal* share/autoconf* \ - share/automake* share/gettext* \ + share/automake* share/gettext* share/libtool* gecko-sdk \ | (cd tmp; tar xf -) ./change_prefix.sh tmp $(PREFIX) @@CONTRIB_PREFIX@@ (cd tmp; tar cf - .) | bzip2 -c > contrib-macosx.tar.bz2 diff --git a/extras/contrib/bootstrap b/extras/contrib/bootstrap index 0fcb9e5..08f9ab4 100755 --- a/extras/contrib/bootstrap +++ b/extras/contrib/bootstrap @@ -70,6 +70,15 @@ if test "$HOST" != "$BUILD"; then STRIP="${HOST}-strip" fi +case $HOST in + *powerpc*|*ppc*) + echo "ARCH=ppc" >> config.mak + ;; + *86*) + echo "ARCH=i386" >> config.mak + ;; +esac + # Check the HAVE_{OS} case $HOST in *darwin*) From brezhoneg1 at yahoo.fr Fri Feb 20 14:01:56 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Fri, 20 Feb 2009 14:01:56 +0100 Subject: [vlc-devel] RE : [PATCH] -- corrects two skins2 crashes In-Reply-To: <20090220085139.GA12068@videolan.org> Message-ID: <001601c9935b$6a60b700$8e55fac1@CCCC> > > On Thu, Feb 19, 2009 at 12:33:27AM +0100, brezhoneg1 wrote : > > This patch corrects segfaults when the video widget of a skin doesn't > > exist or is hidden. > > Sorry, I cannot test, the skins are very broken here, and don't even > show a video. > Are they really that broken? I've tested them with latest git on Linux and the 2009-02-11 build from your web site on Windows. Here are the feedbacks: - On Linux The only big problem was crashes when no video widget is visible (Null pointer which means crashing at the vout level) (corrected by the patch) - On Windows In the 2009-02-11 build, skin.dtd and skin.catalog were missing. I had to retrieve them elsewhere and copy them to the default skins directory. No crashes on Windows (a Null pointer doesn't seem to upset the windows vout the same way it does with Linux !). - Design issue When a skin has got a video window in a hidden state, it could be better to trigger showing the video window and use it rather than deliver a null pointer to vout which then spawns a non-skinned window. To wrap it up, - one patch (rather straightforward and self-explanatory) to prevent crashes on Linux - sbdy has to make sure Windows build does ship skin.dtd and skin.catalog - In future (paradise?), design issue should be looked at Erwan10 From git at videolan.org Fri Feb 20 14:22:54 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 14:22:54 +0100 (CET) Subject: [vlc-devel] commit: Corrects crashing when a skin doesn't have a video widget. ( Joseph Tulou ) Message-ID: <20090220132254.D53D72FA8C@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Wed Feb 18 16:57:55 2009 +0100| [a8291189ab6f75e859e934b884faa53b4770873a] | committer: Jean-Baptiste Kempf Corrects crashing when a skin doesn't have a video widget. Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a8291189ab6f75e859e934b884faa53b4770873a --- modules/gui/qt4/qt4.cpp | 9 ++++++--- modules/gui/skins2/src/skin_main.cpp | 14 ++++++++++---- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/modules/gui/qt4/qt4.cpp b/modules/gui/qt4/qt4.cpp index 15a8f88..3d4cda2 100644 --- a/modules/gui/qt4/qt4.cpp +++ b/modules/gui/qt4/qt4.cpp @@ -293,9 +293,12 @@ static int Open( vlc_object_t *p_this ) while( p_sys->p_mi == NULL && !p_sys->b_isDialogProvider ) iface.ready.wait( &iface.lock ); - var_Create (p_this->p_libvlc, "qt4-iface", VLC_VAR_ADDRESS); - val.p_address = p_this; - var_Set (p_this->p_libvlc, "qt4-iface", val); + if( !p_sys->b_isDialogProvider ) + { + var_Create (p_this->p_libvlc, "qt4-iface", VLC_VAR_ADDRESS); + val.p_address = p_this; + var_Set (p_this->p_libvlc, "qt4-iface", val); + } return VLC_SUCCESS; } diff --git a/modules/gui/skins2/src/skin_main.cpp b/modules/gui/skins2/src/skin_main.cpp index a116e75..be5bb55 100644 --- a/modules/gui/skins2/src/skin_main.cpp +++ b/modules/gui/skins2/src/skin_main.cpp @@ -305,12 +305,18 @@ static int WindowOpen( vlc_object_t *p_this ) pWnd->handle.hwnd = VlcProc::getWindow( pIntf, pWnd->vout, &pWnd->pos_x, &pWnd->pos_y, &pWnd->width, &pWnd->height ); - pWnd->p_private = pIntf; - pWnd->control = &VlcProc::controlWindow; - return VLC_SUCCESS; + if( pWnd->handle.hwnd ) + { + pWnd->p_private = pIntf; + pWnd->control = &VlcProc::controlWindow; + return VLC_SUCCESS; + } + else + { + return VLC_EGENERIC; + } } - static void WindowClose( vlc_object_t *p_this ) { vout_window_t *pWnd = (vout_window_t *)p_this; From git at videolan.org Fri Feb 20 14:22:54 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 14:22:54 +0100 (CET) Subject: [vlc-devel] commit: Qt menus: add faster/slower/normal rate (Jean-Baptiste Kempf ) Message-ID: <20090220132254.E68532FACC@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 20 10:22:46 2009 +0100| [d1ceadaf8bc7ccba0bc92d1d49d2c46d1f5f7fd5] | committer: Jean-Baptiste Kempf Qt menus: add faster/slower/normal rate > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d1ceadaf8bc7ccba0bc92d1d49d2c46d1f5f7fd5 --- modules/gui/qt4/menus.cpp | 28 +++++++++++++++++++++++++++- 1 files changed, 27 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 1db4644..a87725d 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -721,9 +721,12 @@ void QVLCMenu::PopupMenuControlEntries( QMenu *menu, intf_thread_t *p_intf, input_thread_t *p_input ) { + QAction *action; + + /* Play or Pause action and icon */ if( !p_input || var_GetInteger( p_input, "state" ) != PLAYING_S ) { - QAction *action = menu->addAction( qtr( "Play" ), + action = menu->addAction( qtr( "Play" ), ActionsManager::getInstance( p_intf ), SLOT( play() ) ); action->setIcon( QIcon( ":/play" ) ); } @@ -733,8 +736,24 @@ void QVLCMenu::PopupMenuControlEntries( QMenu *menu, ":/pause", SLOT( togglePlayPause() ) ); } + /* Stop */ addMIMStaticEntry( p_intf, menu, qtr( "Stop" ), ":/stop", SLOT( stop() ) ); + + /* Faster/Slower */ + action = menu->addAction( qtr( "Faster" ), THEMIM->getIM(), SLOT( faster() ) ); + action->setIcon( QIcon( ":/faster") ); + menu->addAction( qtr( "Normal Speed" ), THEMIM->getIM(), SLOT( normalRate() ) ); + action = menu->addAction( qtr( "Slower" ), THEMIM->getIM(), SLOT( slower() ) ); + action->setIcon( QIcon( ":/slower") ); +} + + +void QVLCMenu::PopupMenuPlaylistControlEntries( QMenu *menu, + intf_thread_t *p_intf, + input_thread_t *p_input ) +{ + /* Next / Previous */ addMIMStaticEntry( p_intf, menu, qtr( "Previous" ), ":/previous", SLOT( prev() ) ); addMIMStaticEntry( p_intf, menu, qtr( "Next" ), @@ -823,6 +842,9 @@ void QVLCMenu::MiscPopupMenu( intf_thread_t *p_intf ) PopupMenuControlEntries( menu, p_intf, p_input ); menu->addSeparator(); + PopupMenuPlaylistControlEntries( menu, p_intf, p_input ); + + menu->addSeparator(); PopupMenuStaticEntries( menu ); p_intf->p_sys->p_popup_menu = menu; @@ -850,6 +872,9 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) PopupMenuControlEntries( menu, p_intf, p_input ); menu->addSeparator(); + PopupMenuPlaylistControlEntries( menu, p_intf, p_input ); + menu->addSeparator(); + if( p_input ) { vout_thread_t *p_vout = THEMIM->getVout(); @@ -989,6 +1014,7 @@ void QVLCMenu::updateSystrayMenu( MainInterface *mi, sysMenu->addSeparator(); PopupMenuControlEntries( sysMenu, p_intf, p_input ); + PopupMenuPlaylistControlEntries( sysMenu, p_intf, p_input ); sysMenu->addSeparator(); addDPStaticEntry( sysMenu, qtr( "&Open Media" ), From git at videolan.org Fri Feb 20 14:22:55 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 14:22:55 +0100 (CET) Subject: [vlc-devel] commit: Doing Meuuh's work :p (Jean-Baptiste Kempf ) Message-ID: <20090220132255.0924D2FAD9@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 20 14:19:34 2009 +0100| [fd139121a62064ead89639b68fc109e45efda260] | committer: Jean-Baptiste Kempf Doing Meuuh's work :p > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fd139121a62064ead89639b68fc109e45efda260 --- doc/fortunes.txt | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/doc/fortunes.txt b/doc/fortunes.txt index feefba1..9406996 100644 --- a/doc/fortunes.txt +++ b/doc/fortunes.txt @@ -889,3 +889,12 @@ VLC development is NOT about being a sed god. < thresh> a coworker of mine typed that, really -- #videolan % +< jpsaman> where is dionoea when you need him? +< j-b> at work? +< xtophe> without internet +< DiDjCodt> he's slicing some pyramids in pieces... +< TypX> or he has been rapt by alien +< TypX> and will come back in six month as usual +< linkfanel> dionoea has been raped by aliens??? + -- #videolan +% From brezhoneg1 at yahoo.fr Fri Feb 20 14:29:40 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Fri, 20 Feb 2009 14:29:40 +0100 Subject: [vlc-devel] RE : RE : [PATCH] - issue with mouse-x/mouse-y on Linux In-Reply-To: Message-ID: <002901c9935f$497b66d0$8e55fac1@CCCC> > On Fri, 20 Feb 2009 09:55:34 +0100, Jean-Baptiste Kempf > wrote: > > On Thu, Feb 12, 2009 at 01:41:00AM +0100, brezhoneg1 wrote : > >> These updated patches should be better. > > > > Courmisch, status of this? > > I think it's impossible to get things right with the current vout > architecture. > This patch just corrects a (small but real) bug ! It's no big deal and the blame should not be put on the vout architecture in that matter. The developer who coded the formula for mouse-x/mouse-y (formula is indeed right) just forgot to keep the extra boundary tests in sync on Linux. Developers for windows and Mac probably realized something was wrong, because they just ignored these additional tests! Erwan10 From git at videolan.org Fri Feb 20 14:33:00 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 14:33:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_contribs=3A_compilation_fixes_=28?= =?utf-8?q?_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090220133300.CB8D52FA37@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Fri Feb 20 14:32:47 2009 +0100| [b1e669cc51556e0aef7357b15d44505113a2f4bb] | committer: Felix Paul K?hne contribs: compilation fixes > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b1e669cc51556e0aef7357b15d44505113a2f4bb --- extras/contrib/src/Makefile | 4 +- .../src/Patches/ffmpeg-macosx-intel-mmx.patch | 29 +++-- extras/contrib/src/Patches/live-uselocale.patch | 137 ++++++++++---------- 3 files changed, 90 insertions(+), 80 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=b1e669cc51556e0aef7357b15d44505113a2f4bb From rdenis at simphalempin.com Fri Feb 20 14:48:10 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 14:48:10 +0100 Subject: [vlc-devel] RE : RE : [PATCH] - issue with mouse-x/mouse-y on Linux In-Reply-To: <002901c9935f$497b66d0$8e55fac1@CCCC> References: <002901c9935f$497b66d0$8e55fac1@CCCC> Message-ID: <0beb612a1a6f32a20616d48d1b2a306b@chewa.net> On Fri, 20 Feb 2009 14:29:40 +0100, "brezhoneg1" wrote: > This patch just corrects a (small but real) bug ! It's no big deal and > the blame should not be put on the vout architecture in that matter. It is a problem with the architecture, unless I missed the answer to my earlier points about deinterlace, rotate and such. The only solution is to translate the mouse events in the filters themselves. -- R?mi Denis-Courmont From git at videolan.org Fri Feb 20 15:06:48 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 15:06:48 +0100 (CET) Subject: [vlc-devel] commit: mozilla: video is displayed again (Jean-Paul Saman ) Message-ID: <20090220140648.8F56C2FA4A@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Fri Feb 20 11:55:22 2009 +0100| [e538b7082ff17fb1ff04ea89cc4dd2e8143122ae] | committer: Jean-Paul Saman mozilla: video is displayed again > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e538b7082ff17fb1ff04ea89cc4dd2e8143122ae --- modules/gui/macosx/voutgl.m | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/gui/macosx/voutgl.m b/modules/gui/macosx/voutgl.m index 47dac9e..831f059 100644 --- a/modules/gui/macosx/voutgl.m +++ b/modules/gui/macosx/voutgl.m @@ -110,11 +110,11 @@ int OpenVideoGL ( vlc_object_t * p_this ) p_vout->p_sys = malloc( sizeof( vout_sys_t ) ); if( p_vout->p_sys == NULL ) - return( 1 ); + return VLC_ENOMEM; memset( p_vout->p_sys, 0, sizeof( vout_sys_t ) ); - var_Get( p_vout->p_libvlc, "drawable", &value_drawable ); + var_Get( p_vout->p_libvlc, "drawable-xid", &value_drawable ); if( value_drawable.i_int != 0 ) { static const GLint ATTRIBUTES[] = { @@ -497,7 +497,7 @@ static int aglInit( vout_thread_t * p_vout ) Rect viewBounds; Rect clipBounds; - var_Get( p_vout->p_libvlc, "drawable", &val ); + var_Get( p_vout->p_libvlc, "drawable-xid", &val ); p_vout->p_sys->agl_drawable = (AGLDrawable)val.i_int; aglSetDrawable(p_vout->p_sys->agl_ctx, p_vout->p_sys->agl_drawable); @@ -617,7 +617,7 @@ static int aglManage( vout_thread_t * p_vout ) Rect viewBounds; Rect clipBounds; - var_Get( p_vout->p_libvlc, "drawable", &val ); + var_Get( p_vout->p_libvlc, "drawable-xid", &val ); p_vout->p_sys->agl_drawable = (AGLDrawable)val.i_int; aglSetDrawable(p_vout->p_sys->agl_ctx, p_vout->p_sys->agl_drawable); From git at videolan.org Fri Feb 20 15:07:47 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 15:07:47 +0100 (CET) Subject: [vlc-devel] commit: llvm seems to solve our cancellation issues. Revert " Compilation fix" (Derk-Jan Hartman ) Message-ID: <20090220140747.515812FA6A@skanda.videolan.org> vlc | branch: master | Derk-Jan Hartman | Fri Feb 20 15:04:45 2009 +0100| [19e9de434c48cd2dbea1ad3872c041daf0a26668] | committer: Derk-Jan Hartman llvm seems to solve our cancellation issues. Revert "Compilation fix" This reverts commit 076dc4357cbe4eec9085a59162c6910a07d0b850. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=19e9de434c48cd2dbea1ad3872c041daf0a26668 --- src/misc/mtime.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/misc/mtime.c b/src/misc/mtime.c index 2b27fbf..96049e5 100644 --- a/src/misc/mtime.c +++ b/src/misc/mtime.c @@ -352,8 +352,8 @@ void mwait( mtime_t date ) #elif defined( __APPLE__ ) /* Explicit hack: OSX does not cancel at nanosleep() */ - vlc_mutex_t lock; - vlc_cond_t wait; + struct vlc_mutex_t lock; + struct vlc_cond_t wait; vlc_mutex_init (&lock); vlc_cond_init (&wait); From git at videolan.org Fri Feb 20 15:07:47 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 15:07:47 +0100 (CET) Subject: [vlc-devel] commit: llvm seems to solve our cancellation issues. Revert " Tentative hack for OSX msleep/mwait cancellation" (Derk-Jan Hartman ) Message-ID: <20090220140747.608172FA7E@skanda.videolan.org> vlc | branch: master | Derk-Jan Hartman | Fri Feb 20 15:06:10 2009 +0100| [9cb16e8f71a79a2cd2a012cca0923a3660a6d32c] | committer: Derk-Jan Hartman llvm seems to solve our cancellation issues. Revert "Tentative hack for OSX msleep/mwait cancellation" This reverts commit 3b6ed8084e27fa27f51d3abdeb37052ea9af38fb. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9cb16e8f71a79a2cd2a012cca0923a3660a6d32c --- src/misc/mtime.c | 21 +-------------------- 1 files changed, 1 insertions(+), 20 deletions(-) diff --git a/src/misc/mtime.c b/src/misc/mtime.c index 96049e5..bc622c1 100644 --- a/src/misc/mtime.c +++ b/src/misc/mtime.c @@ -350,25 +350,6 @@ void mwait( mtime_t date ) } vlc_testcancel(); -#elif defined( __APPLE__ ) - /* Explicit hack: OSX does not cancel at nanosleep() */ - struct vlc_mutex_t lock; - struct vlc_cond_t wait; - - vlc_mutex_init (&lock); - vlc_cond_init (&wait); - vlc_mutex_lock (&lock); - - vlc_cleanup_push (vlc_mutex_destroy, &lock); - vlc_cleanup_push (vlc_cond_destroy, &wait); - vlc_cleanup_push (vlc_mutex_unlock, &lock); - - vlc_cond_timedwait (&wait, &lock, date); - - vlc_cleanup_run (); - vlc_cleanup_run (); - vlc_cleanup_run (); - #else mtime_t delay = date - mdate(); if( delay > 0 ) @@ -417,7 +398,7 @@ void msleep( mtime_t delay ) #elif defined( HAVE_KERNEL_OS_H ) snooze( delay ); -#elif defined( WIN32 ) || defined( UNDER_CE ) || defined( __APPLE__ ) +#elif defined( WIN32 ) || defined( UNDER_CE ) mwait (mdate () + delay); #elif defined( HAVE_NANOSLEEP ) From git at videolan.org Fri Feb 20 15:07:47 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 15:07:47 +0100 (CET) Subject: [vlc-devel] commit: llvm seems to solve our cancellation issues. Revert "mtime: Make nanosleep a bit more cancelable than what it is on osx." ( Derk-Jan Hartman ) Message-ID: <20090220140747.72B822FA83@skanda.videolan.org> vlc | branch: master | Derk-Jan Hartman | Fri Feb 20 15:06:32 2009 +0100| [71b7780d5bd9c5f8e6c32a462ef1cec42ee27921] | committer: Derk-Jan Hartman llvm seems to solve our cancellation issues. Revert "mtime: Make nanosleep a bit more cancelable than what it is on osx." This reverts commit e1cb28a3a913418ac845c622e0d1647ed0d24d39. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=71b7780d5bd9c5f8e6c32a462ef1cec42ee27921 --- src/misc/mtime.c | 14 -------------- 1 files changed, 0 insertions(+), 14 deletions(-) diff --git a/src/misc/mtime.c b/src/misc/mtime.c index bc622c1..c3d9abd 100644 --- a/src/misc/mtime.c +++ b/src/misc/mtime.c @@ -362,20 +362,6 @@ void mwait( mtime_t date ) #include "libvlc.h" /* vlc_backtrace() */ #undef msleep -#if defined(__APPLE__) && defined( HAVE_NANOSLEEP ) -/* Mac OS X 10.5's nanosleep is not a cancellation point */ -static inline int -semi_testcancelable_nanosleep(const struct timespec *rqtp, struct timespec *rmtp) -{ - int ret; - pthread_testcancel(); - ret = nanosleep(rqtp, rmtp); - pthread_testcancel(); - return ret; -} -#define nanosleep semi_testcancelable_nanosleep -#endif - /** * Portable usleep(). Cancellation point. * From hartman at videolan.org Fri Feb 20 15:21:02 2009 From: hartman at videolan.org (Derk-Jan Hartman) Date: Fri, 20 Feb 2009 15:21:02 +0100 Subject: [vlc-devel] commit: mozilla: video is displayed again (Jean-Paul Saman ) In-Reply-To: <20090220140648.8F56C2FA4A@skanda.videolan.org> References: <20090220140648.8F56C2FA4A@skanda.videolan.org> Message-ID: <72A9A84D-2808-4091-8831-D458E7123F24@videolan.org> On 20 feb 2009, at 15:06, git version control wrote: > vlc | branch: master | Jean-Paul Saman | Fri > Feb 20 11:55:22 2009 +0100| > [e538b7082ff17fb1ff04ea89cc4dd2e8143122ae] | committer: Jean-Paul > Saman > > mozilla: video is displayed again This is incorrect and should be reverted. an X11 windows id is not an apple window/drawable ID. The better strategy is to define a drawable- agl DJ > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e538b7082ff17fb1ff04ea89cc4dd2e8143122ae > --- > > modules/gui/macosx/voutgl.m | 8 ++++---- > 1 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/modules/gui/macosx/voutgl.m b/modules/gui/macosx/voutgl.m > index 47dac9e..831f059 100644 > --- a/modules/gui/macosx/voutgl.m > +++ b/modules/gui/macosx/voutgl.m > @@ -110,11 +110,11 @@ int OpenVideoGL ( vlc_object_t * p_this ) > > p_vout->p_sys = malloc( sizeof( vout_sys_t ) ); > if( p_vout->p_sys == NULL ) > - return( 1 ); > + return VLC_ENOMEM; > > memset( p_vout->p_sys, 0, sizeof( vout_sys_t ) ); > > - var_Get( p_vout->p_libvlc, "drawable", &value_drawable ); > + var_Get( p_vout->p_libvlc, "drawable-xid", &value_drawable ); > if( value_drawable.i_int != 0 ) > { > static const GLint ATTRIBUTES[] = { > @@ -497,7 +497,7 @@ static int aglInit( vout_thread_t * p_vout ) > Rect viewBounds; > Rect clipBounds; > > - var_Get( p_vout->p_libvlc, "drawable", &val ); > + var_Get( p_vout->p_libvlc, "drawable-xid", &val ); > p_vout->p_sys->agl_drawable = (AGLDrawable)val.i_int; > aglSetDrawable(p_vout->p_sys->agl_ctx, p_vout->p_sys- > >agl_drawable); > > @@ -617,7 +617,7 @@ static int aglManage( vout_thread_t * p_vout ) > Rect viewBounds; > Rect clipBounds; > > - var_Get( p_vout->p_libvlc, "drawable", &val ); > + var_Get( p_vout->p_libvlc, "drawable-xid", &val ); > p_vout->p_sys->agl_drawable = (AGLDrawable)val.i_int; > aglSetDrawable(p_vout->p_sys->agl_ctx, p_vout->p_sys- > >agl_drawable); > > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > From jean-paul.saman at planet.nl Fri Feb 20 15:36:57 2009 From: jean-paul.saman at planet.nl (jean-paul.saman at planet.nl) Date: Fri, 20 Feb 2009 15:36:57 +0100 Subject: [vlc-devel] commit: mozilla: video is displayed again(Jean-Paul Saman ) References: <20090220140648.8F56C2FA4A@skanda.videolan.org> <72A9A84D-2808-4091-8831-D458E7123F24@videolan.org> Message-ID: <58909A1972DA06479F516447E272A2C801A12D1F@CPEXBE-EML19.kpnsp.local> According to our IRC conversation drawable and drawable-xid are semantically the same. The point of courmisch commit on this subject was that all parent windows handlers are specific to a platform and that they should no use the same event. Is this correct courmisch? If so, then it should indeed be reverted. It would then be better to introduce "drawable-agl" and "drawable-ogl" too. Do I interpret it correctly now? Gtz Jean-Paul Saman. -----Original Message----- From: vlc-devel-bounces at videolan.org on behalf of Derk-Jan Hartman Sent: Fri 2/20/2009 3:21 PM To: Mailing list for VLC media player developers Subject: Re: [vlc-devel] commit: mozilla: video is displayed again(Jean-Paul Saman ) On 20 feb 2009, at 15:06, git version control wrote: > vlc | branch: master | Jean-Paul Saman | Fri > Feb 20 11:55:22 2009 +0100| > [e538b7082ff17fb1ff04ea89cc4dd2e8143122ae] | committer: Jean-Paul > Saman > > mozilla: video is displayed again This is incorrect and should be reverted. an X11 windows id is not an apple window/drawable ID. The better strategy is to define a drawable- agl -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Fri Feb 20 15:46:21 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 15:46:21 +0100 (CET) Subject: [vlc-devel] commit: Fix compilation (Jean-Baptiste Kempf ) Message-ID: <20090220144621.8F0DA2FAE7@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 20 15:44:59 2009 +0100| [4a49ce095158d52988c42fabc0db82786495f9b4] | committer: Jean-Baptiste Kempf Fix compilation > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4a49ce095158d52988c42fabc0db82786495f9b4 --- modules/gui/qt4/menus.hpp | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/menus.hpp b/modules/gui/qt4/menus.hpp index 8741e9e..1decda3 100644 --- a/modules/gui/qt4/menus.hpp +++ b/modules/gui/qt4/menus.hpp @@ -119,6 +119,8 @@ private: static void PopupMenuStaticEntries( QMenu *menu ); static void PopupMenuControlEntries( QMenu *menu, intf_thread_t *p_intf, input_thread_t *p_input ); + static void PopupMenuPlaylistControlEntries( QMenu *menu, intf_thread_t *p_intf, + input_thread_t *p_input ); /* Generic automenu methods */ static QMenu * Populate( intf_thread_t *, QMenu *current, vector&, vector& ); From git at videolan.org Fri Feb 20 15:49:27 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 15:49:27 +0100 (CET) Subject: [vlc-devel] commit: Forwardport 5ead92ffd58088828ed802173d963b2571f0cd69 (Pierre d' Herbemont ) Message-ID: <20090220144927.21AF92FAEC@skanda.videolan.org> vlc | branch: master | Pierre d'Herbemont | Sun Feb 8 00:31:33 2009 +0100| [5a005c66194a61f1e24e1ea0a9547f996f541011] | committer: Derk-Jan Hartman Forwardport 5ead92ffd58088828ed802173d963b2571f0cd69 mtime: Use mach_absolute_time on Mac OS X instead of gettimeofday. mach_absolute_time() is a monotic clock, whereas gettimeofday() is not. For that reason setting your computer time while playing a movie won't halt playback anymore. Seems to fix the dropped frame issue on Mac OS X. Signed-off-by: Derk-Jan Hartman > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5a005c66194a61f1e24e1ea0a9547f996f541011 --- src/misc/mtime.c | 34 ++++++++++++++++++++++++++++++++++ src/misc/threads.c | 14 ++++++++++++++ 2 files changed, 48 insertions(+), 0 deletions(-) diff --git a/src/misc/mtime.c b/src/misc/mtime.c index c3d9abd..0dbb4df 100644 --- a/src/misc/mtime.c +++ b/src/misc/mtime.c @@ -56,6 +56,11 @@ # include #endif +#ifdef __APPLE__ +# include +# include +#endif + #if !defined(HAVE_STRUCT_TIMESPEC) struct timespec { @@ -168,6 +173,15 @@ static inline unsigned mprec( void ) #endif } +#ifdef __APPLE__ +static mach_timebase_info_data_t mtime_timebase_info; +static pthread_once_t mtime_timebase_info_once = PTHREAD_ONCE_INIT; +static void mtime_init_timebase(void) +{ + mach_timebase_info(&mtime_timebase_info); +} +#endif + /** * Return high precision date * @@ -193,6 +207,16 @@ mtime_t mdate( void ) #elif defined( HAVE_KERNEL_OS_H ) res = real_time_clock_usecs(); +#elif defined( __APPLE__ ) + pthread_once(&mtime_timebase_info_once, mtime_init_timebase); + uint64_t date = mach_absolute_time(); + + /* Convert to nanoseconds */ + date *= mtime_timebase_info.numer; + date /= mtime_timebase_info.denom; + + /* Convert to microseconds */ + res = date / 1000; #elif defined( WIN32 ) || defined( UNDER_CE ) /* We don't need the real date, just the value of a high precision timer */ static mtime_t freq = INT64_C(-1); @@ -299,6 +323,11 @@ mtime_t mdate( void ) i_previous_time = res; LeaveCriticalSection( &date_lock ); } +#elif defined( __APPLE__ ) /* The version that should be used, if it was cancelable */ + pthread_once(&mtime_timebase_info_once, mtime_init_timebase); + uint64_t mach_time = date * 1000 * mtime_timebase_info.denom / mtime_timebase_info.numer; + mach_wait_until(mach_time); + #else struct timeval tv_date; @@ -395,6 +424,11 @@ void msleep( mtime_t delay ) while( nanosleep( &ts_delay, &ts_delay ) && ( errno == EINTR ) ); +#elif defined( __APPLE__ ) /* The version that should be used, if it was cancelable */ + pthread_once(&mtime_timebase_info_once, mtime_init_timebase); + uint64_t mach_time = delay * 1000 * mtime_timebase_info.denom / mtime_timebase_info.numer; + mach_wait_until(mach_time + mach_absolute_time()); + #else struct timeval tv_delay; diff --git a/src/misc/threads.c b/src/misc/threads.c index f5b0d7e..8875d15 100644 --- a/src/misc/threads.c +++ b/src/misc/threads.c @@ -52,6 +52,10 @@ static vlc_threadvar_t cancel_key; # include #endif +#ifdef __APPLE__ +# include /* gettimeofday in vlc_cond_timedwait */ +#endif + /** * Print a backtrace to the standard error for debugging purpose. */ @@ -556,6 +560,16 @@ int vlc_cond_timedwait (vlc_cond_t *p_condvar, vlc_mutex_t *p_mutex, mtime_t deadline) { #if defined(LIBVLC_USE_PTHREAD) +#ifdef __APPLE__ + /* mdate() is mac_absolute_time on osx, which we must convert to do + * the same base than gettimeofday() on which pthread_cond_timedwait + * counts on. */ + mtime_t oldbase = mdate(); + struct timeval tv; + gettimeofday(&tv, NULL); + mtime_t newbase = (mtime_t)tv.tv_sec * 1000000 + (mtime_t) tv.tv_usec; + deadline = deadline - oldbase + newbase; +#endif lldiv_t d = lldiv( deadline, CLOCK_FREQ ); struct timespec ts = { d.quot, d.rem * (1000000000 / CLOCK_FREQ) }; From git at videolan.org Fri Feb 20 15:52:33 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 15:52:33 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_contribs=3A__updated_binary_?= =?utf-8?q?=C3=BCackage_for_OS_X_=2E_I=27_ll_only_provide_one_compiled_wit?= =?utf-8?q?h_llvm-gcc-4=2E2_=28i386_already_uploaded=2C__ppc_to_follow_lat?= =?utf-8?q?er_today=2C_x86=5F64_to_follow_once_VLC_1=2E0_is_branched=29_?= =?utf-8?b?KCBGZWxpeCBQYXVsIEvDvGhuZSAp?= Message-ID: <20090220145233.22E6F2FAE7@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Fri Feb 20 15:52:22 2009 +0100| [1dd4f850631e4a2df4f4caeae7713fe883d56c5a] | committer: Felix Paul K?hne contribs: updated binary ?ackage for OS X. I'll only provide one compiled with llvm-gcc-4.2 (i386 already uploaded, ppc to follow later today, x86_64 to follow once VLC 1.0 is branched) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1dd4f850631e4a2df4f4caeae7713fe883d56c5a --- extras/contrib/Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/extras/contrib/Makefile b/extras/contrib/Makefile index f00ced9..2ac9dfd 100644 --- a/extras/contrib/Makefile +++ b/extras/contrib/Makefile @@ -43,7 +43,7 @@ src: using-src ifdef HAVE_DARWIN_OS -CONTRIBREV=4 +CONTRIBREV=5 contrib-macosx-$(ARCH)-$(CONTRIBREV)-$(DARWIN_COMPILER).tar.bz2: $(WGET) ftp://ftp.videolan.org/pub/videolan/testing/contrib/$@ From brezhoneg1 at yahoo.fr Fri Feb 20 16:13:59 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Fri, 20 Feb 2009 16:13:59 +0100 Subject: [vlc-devel] RE : RE : RE : [PATCH] - issue with mouse-x/mouse-y onLinux In-Reply-To: <0beb612a1a6f32a20616d48d1b2a306b@chewa.net> Message-ID: <003801c9936d$e57be470$8e55fac1@CCCC> > > On Fri, 20 Feb 2009 14:29:40 +0100, "brezhoneg1" > wrote: > > This patch just corrects a (small but real) bug ! It's no big deal and > > the blame should not be put on the vout architecture in that matter. > > It is a problem with the architecture, unless I missed the answer to my > earlier points about deinterlace, rotate and such. > > The only solution is to translate the mouse events in the filters > themselves. Okay, I think I get what you mean. In today's formula, mouse-x/mouse-y pinpoint the coordinates in the original picture in most-but-not-all cases. What if the picture has been rotated? I agree an extra translation has to occur at the filter level to correct this filtering effect. So yes, there is a vout design issue here. But, that should not prevent from correcting a bug that has nothing to do with this design issue. Whatever the formula (and it can be challenged), let's make sure the resulting range of value is not truncated in an unfortunate way (nothing to do with a rationale, just a developer forgetting to update those boundary tests). At least, code will be more understandable and a bug is corrected. Erwan10 From sashipa.ben at gmail.com Fri Feb 20 16:22:37 2009 From: sashipa.ben at gmail.com (=?UTF-8?B?w5/RlMWL?=) Date: Fri, 20 Feb 2009 16:22:37 +0100 Subject: [vlc-devel] [PATCH] file extension manager (fixed patch) In-Reply-To: References: <1e0b1f250902181827h23b9dbd2r408ef950bf75a35c@mail.gmail.com> <200902200005.00329.rem@videolan.org> <1e0b1f250902191520i14f3d4f6j5694b299054586f7@mail.gmail.com> Message-ID: <1e0b1f250902200722v25c578b5s73877cf0fa9f3d84@mail.gmail.com> > The core _is_ in C. In fact, those declarations should be in a private > header inside src/ rather than include/ > Ok. I thought the VLC_EXPORT() macro was there to make the difference between private and public declaration. >>> Using asprintf() (or QString) would be simpler and less likely to break >>> if someone changes the code later. >>> >> >> I don't know anything about Qstuff; never used and never wanted to. >> asprintf is a convenient GNU extension. > > Nope. VLC does provide asprintf() on non-GNU systems. > asprintf it is. Anyway my changes in GUI code was mere workaround. If the VLC team intends to accept this patch; or at least see any interest in dynamically managing file extensions (I think they are some); may be it should be discuss somewhere and I be glad to give you my point of view and ideas. There is a wiki for that I guess. >> Totally useless in that context. I'm copying exclusively file >> extension that are never longer than >> a few chars. size_t looks like ?a waste too me. > > On 32-bits system, it won't make a difference. On 64-bits, they will both > spend on register anyway. > Can't size_t be more than 32bit on 32bit system on certain circumstance ? I guess it can. Anyway C lake a specific type for index. It's really architecture dependant (some oldies preffer 16bit index, some only have unsigned indexing ...) What we can expect from a C compiler is that it handles properly int since it is the most used index type. From my point of view using size_t should be use when you know the loop may be quiet large but int is the best average choice for ?well known? finite loops. Using size_t point out this code may loop over large buffer (eg larger than int size like a mmaped file or something that usually used size_t). But it's your call but i'm pretty sure most loop in VLC code use int index. Notice that the function we are talking about is not standard string op. It is just copying an extension which has already been measured and is less that 6 bytes long. Some other functions in my codes (the one parsing user provided extension list) may take advantage of using size_t but these functions use index only for parsing a single extension and walking in the string is done by incrementing the pointer. You remark points out a possible overflow in the parser when measuring an extension. In certain rare circumstance it could have lead to an infinite loop (need a whole int-indexable buffer full of alpha numeric char :) ). I have fixed that thank to you. >>> With the public API, we may have multiple instances in the same process. >>> I am afraid this is not thread-safe. >>> >> >> Process or thread ? > > We can have multiple instances in a single process, in the same or in > different thread. > Multiple instances of the core ? I mean there is necessary a part of the code that initialise things before the program forks into thread or process. If it is a process, I don't care. Each have to initialise its extension pool by calling fileext_init() or used an already initialised one that became two of them after the fork. Only thread trigger race condition so I have to be sure that fileext_Init() is called before any thread that might call fileext public function is created. I thought the part of the code I have added my init call was matching this condition. If not please tell me where I have to do put it. Regards, -- B. From git at videolan.org Fri Feb 20 16:25:12 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 16:25:12 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_simplifications=2E_=28_R=C3=A9mi_?= =?utf-8?q?Duraffort_=29?= Message-ID: <20090220152512.2661D2FADD@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Fri Feb 20 15:02:26 2009 +0100| [db8bc2b4bee3ff874080aa2a6293edf1a7af465e] | committer: R?mi Duraffort simplifications. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=db8bc2b4bee3ff874080aa2a6293edf1a7af465e --- modules/demux/playlist/sgimb.c | 18 ++---------------- 1 files changed, 2 insertions(+), 16 deletions(-) diff --git a/modules/demux/playlist/sgimb.c b/modules/demux/playlist/sgimb.c index c83e604..f2d83a3 100644 --- a/modules/demux/playlist/sgimb.c +++ b/modules/demux/playlist/sgimb.c @@ -398,23 +398,9 @@ static int Demux ( demux_t *p_demux ) } } if( !p_sys->psz_mcast_ip ) - { - char *psz_option; - if( asprintf( &psz_option, "rtsp-caching=5000" ) != -1 ) - { - input_item_AddOption( p_child, psz_option, VLC_INPUT_OPTION_TRUSTED ); - free( psz_option ); - } - } + input_item_AddOption( p_child, "rtsp-caching=5000", VLC_INPUT_OPTION_TRUSTED ); if( !p_sys->psz_mcast_ip && p_sys->b_rtsp_kasenna ) - { - char *psz_option; - if( asprintf( &psz_option, "rtsp-kasenna" ) != -1 ) - { - input_item_AddOption( p_child, psz_option, VLC_INPUT_OPTION_TRUSTED ); - free( psz_option ); - } - } + input_item_AddOption( p_child, "rtsp-kasenna", VLC_INPUT_OPTION_TRUSTED ); input_item_AddSubItem( p_current_input, p_child ); vlc_gc_decref( p_child ); From rem at videolan.org Fri Feb 20 16:34:38 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 17:34:38 +0200 Subject: [vlc-devel] commit: mozilla: video is displayed again(Jean-Paul Saman ) In-Reply-To: <58909A1972DA06479F516447E272A2C801A12D1F@CPEXBE-EML19.kpnsp.local> References: <20090220140648.8F56C2FA4A@skanda.videolan.org> <72A9A84D-2808-4091-8831-D458E7123F24@videolan.org> <58909A1972DA06479F516447E272A2C801A12D1F@CPEXBE-EML19.kpnsp.local> Message-ID: <200902201734.40240.rem@videolan.org> Le vendredi 20 f?vrier 2009 16:36:57 jean-paul.saman at planet.nl, vous avez ?crit?: > According to our IRC conversation drawable and drawable-xid are > semantically the same. The point of courmisch commit on this subject was > that all parent windows handlers are specific to a platform and that they > should no use the same event. Is this correct courmisch? My point was that some platforms may support more than one type of windows. X11 output may work on Windows (since Xlib supports Win32) and OSX. And with a little bit of work, the MSW output could be handled through libwine (the DirectX output _almost_ compiles on Linux). So this commit is wrong. Worse, it assumes sizeof(int)>=sizeof(void *) which is NOT true on 64-bits OSX. Instead a separate drawable-agl should be added on OSX, as far as AGL really is OSX specific. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From rem at videolan.org Fri Feb 20 16:52:58 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 17:52:58 +0200 Subject: [vlc-devel] [PATCH] file extension manager (fixed patch) In-Reply-To: <1e0b1f250902200722v25c578b5s73877cf0fa9f3d84@mail.gmail.com> References: <1e0b1f250902181827h23b9dbd2r408ef950bf75a35c@mail.gmail.com> <1e0b1f250902200722v25c578b5s73877cf0fa9f3d84@mail.gmail.com> Message-ID: <200902201752.58895.rem@videolan.org> Le vendredi 20 f?vrier 2009 17:22:37 ???, vous avez ?crit?: > Can't size_t be more than 32bit on 32bit system on certain circumstance ? That depends what you call a 32-bits system. > I guess it can. Anyway C lake a specific type for index. It's really > architecture dependant (some oldies preffer 16bit index, some only have > unsigned indexing ...) > What we can expect from a C compiler is that it handles properly int > since it is the most used index type. From my point of view using size_t > should be use when you know the loop may be quiet large but int is the best > average choice for ?well known? finite loops. Using size_t point out this > code may loop over large buffer (eg larger than int size like a mmaped file > or something that usually used size_t). If you want to be pedantic... size_t is defined as the return type of the sizeof() operator, and is hence the natural type for (unsigned) array item index. int is defined as at least 16-bits. This is wrong. > But it's your call but i'm pretty sure most loop in VLC code use int index. Old code does, especially due to the table macros. Most newer code uses size_t. > > We can have multiple instances in a single process, in the same or in > > different thread. > > Multiple instances of the core ? We can have multiple instances created from the same thread as well as different threads of the same process. > I mean there is necessary a part of the code that initialise things > before the program forks into thread or process. Only on Windows. There we have the DLL entry point in src/misc/threads.c. > If it is a process, I don't care. Each have to initialise its > extension pool by calling fileext_init() or used an already initialised one > that became two of them after the fork. Actually, LibVLC cannot live through fork(). > Only thread trigger race condition so I have to be sure that fileext_Init() > is called before any thread that might call fileext public function is > created. I thought the part of the code I have added my init call was > matching this condition. That place is called before the running LibVLC instance creates threads. But we can make no assumption about the caller of LibVLC, or other LibVLC instances. > If not please tell me where I have to do put it. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From jean-paul.saman at planet.nl Fri Feb 20 16:52:23 2009 From: jean-paul.saman at planet.nl (jean-paul.saman at planet.nl) Date: Fri, 20 Feb 2009 16:52:23 +0100 Subject: [vlc-devel] commit: mozilla: video is displayed again(Jean-PaulSaman ) References: <20090220140648.8F56C2FA4A@skanda.videolan.org><72A9A84D-2808-4091-8831-D458E7123F24@videolan.org><58909A1972DA06479F516447E272A2C801A12D1F@CPEXBE-EML19.kpnsp.local> <200902201734.40240.rem@videolan.org> Message-ID: <58909A1972DA06479F516447E272A2C801A12D20@CPEXBE-EML19.kpnsp.local> Thanks for explaining. I wil cleanup the mess and introduce a drawable-agl for MacOSX only. Gtz Jean-Paul Saman. -----Original Message----- From: vlc-devel-bounces at videolan.org on behalf of R?mi Denis-Courmont Sent: Fri 2/20/2009 4:34 PM To: vlc-devel at videolan.org Subject: Re: [vlc-devel] commit: mozilla: video is displayed again(Jean-PaulSaman ) Le vendredi 20 f?vrier 2009 16:36:57 jean-paul.saman at planet.nl, vous avez ?crit?: > According to our IRC conversation drawable and drawable-xid are > semantically the same. The point of courmisch commit on this subject was > that all parent windows handlers are specific to a platform and that they > should no use the same event. Is this correct courmisch? My point was that some platforms may support more than one type of windows. X11 output may work on Windows (since Xlib supports Win32) and OSX. And with a little bit of work, the MSW output could be handled through libwine (the DirectX output _almost_ compiles on Linux). So this commit is wrong. Worse, it assumes sizeof(int)>=sizeof(void *) which is NOT true on 64-bits OSX. Instead a separate drawable-agl should be added on OSX, as far as AGL really is OSX specific. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary _______________________________________________ vlc-devel mailing list To unsubscribe or modify your subscription options: http://mailman.videolan.org/listinfo/vlc-devel -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Fri Feb 20 17:03:45 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:03:45 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_silly_cast_=28_R=C3=A9mi_D?= =?utf-8?q?enis-Courmont_=29?= Message-ID: <20090220160345.ED09E2FAAB@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Fri Feb 20 18:03:28 2009 +0200| [9ffe4d65c8a288b49a53d5b20611e6195643f652] | committer: R?mi Denis-Courmont Remove silly cast > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9ffe4d65c8a288b49a53d5b20611e6195643f652 --- modules/control/hotkeys.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 490bae9..e024269 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -1064,7 +1064,7 @@ static void DisplayPosition( intf_thread_t *p_intf, vout_thread_t *p_vout, if( time.i_time > 0 ) { secstotimestr( psz_duration, time.i_time / 1000000 ); - vout_OSDMessage( p_input, POSITION_TEXT_CHAN, (char *) "%s / %s", + vout_OSDMessage( p_input, POSITION_TEXT_CHAN, "%s / %s", psz_time, psz_duration ); } else if( i_seconds > 0 ) From git at videolan.org Fri Feb 20 17:11:20 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:11:20 +0100 (CET) Subject: [vlc-devel] commit: rc: "state" does not return playlist_status_t but input_state_e. ( Jean-Paul Saman ) Message-ID: <20090220161120.CF9A22FB32@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Thu Feb 19 16:01:48 2009 +0100| [d83d614c6f17b4ec5a3ab701b976bb192d033479] | committer: Jean-Paul Saman rc: "state" does not return playlist_status_t but input_state_e. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d83d614c6f17b4ec5a3ab701b976bb192d033479 --- modules/control/rc.c | 13 +++++++------ 1 files changed, 7 insertions(+), 6 deletions(-) diff --git a/modules/control/rc.c b/modules/control/rc.c index 6f5d205..389a2f2 100644 --- a/modules/control/rc.c +++ b/modules/control/rc.c @@ -1051,7 +1051,7 @@ static int Input( vlc_object_t *p_this, char const *psz_cmd, if( !p_input ) return VLC_ENOOBJ; var_Get( p_input, "state", &val ); - if( ( ( val.i_int == PAUSE_S ) || ( val.i_int == PLAYLIST_PAUSED ) ) && + if( ( val.i_int == PAUSE_S ) && ( strcmp( psz_cmd, "pause" ) != 0 ) ) { msg_rc( _("Press menu select or pause to continue.") ); @@ -1328,7 +1328,7 @@ static int Playlist( vlc_object_t *p_this, char const *psz_cmd, var_Get( p_input, "state", &val ); vlc_object_release( p_input ); - if( ( val.i_int == PAUSE_S ) || ( val.i_int == PLAYLIST_PAUSED ) ) + if( val.i_int == PAUSE_S ) { msg_rc( _("Type 'menu select' or 'pause' to continue.") ); pl_Release( p_this ); @@ -1583,7 +1583,7 @@ static int Volume( vlc_object_t *p_this, char const *psz_cmd, vlc_value_t val; var_Get( p_input, "state", &val ); - if( ( val.i_int == PAUSE_S ) || ( val.i_int == PLAYLIST_PAUSED ) ) + if( val.i_int == PAUSE_S ) { msg_rc( _("Type 'menu select' or 'pause' to continue.") ); vlc_object_release( p_input ); @@ -1654,7 +1654,7 @@ static int VolumeMove( vlc_object_t *p_this, char const *psz_cmd, vlc_value_t val; var_Get( p_input, "state", &val ); - if( ( val.i_int == PAUSE_S ) || ( val.i_int == PLAYLIST_PAUSED ) ) + if( val.i_int == PAUSE_S ) { msg_rc( _("Type 'menu select' or 'pause' to continue.") ); vlc_object_release( p_input ); @@ -1839,7 +1839,8 @@ static int AudioConfig( vlc_object_t *p_this, char const *psz_cmd, vlc_value_t val; var_Get( p_input, "state", &val ); - if( ( val.i_int == PAUSE_S ) || ( val.i_int == PLAYLIST_PAUSED ) ) { + if( val.i_int == PAUSE_S ) + { msg_rc( _("Type 'menu select' or 'pause' to continue.") ); vlc_object_release( p_input ); return VLC_EGENERIC; @@ -1938,7 +1939,7 @@ static int Menu( vlc_object_t *p_this, char const *psz_cmd, var_Get( p_input, "state", &val ); vlc_object_release( p_input ); - if( ( ( val.i_int == PAUSE_S ) || ( val.i_int == PLAYLIST_PAUSED ) ) && + if( ( val.i_int == PAUSE_S ) && ( strcmp( newval.psz_string, "select" ) != 0 ) ) { msg_rc( _("Type 'menu select' or 'pause' to continue.") ); From git at videolan.org Fri Feb 20 17:11:20 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:11:20 +0100 (CET) Subject: [vlc-devel] commit: rc: add missing playlist_Lock()/playlist_Unlock() for playlist_Status(). (Jean-Paul Saman ) Message-ID: <20090220161120.E72DE2FB1F@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Thu Feb 19 16:14:36 2009 +0100| [15b0e318a9d0e898243e44afc2030e819d3aa925] | committer: Jean-Paul Saman rc: add missing playlist_Lock()/playlist_Unlock() for playlist_Status(). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=15b0e318a9d0e898243e44afc2030e819d3aa925 --- modules/control/rc.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/modules/control/rc.c b/modules/control/rc.c index 389a2f2..29a9f1e 100644 --- a/modules/control/rc.c +++ b/modules/control/rc.c @@ -990,8 +990,9 @@ static int StateChanged( vlc_object_t *p_this, char const *psz_cmd, p_input = vlc_object_find( p_intf, VLC_OBJECT_INPUT, FIND_ANYWHERE ); if( p_input ) { - p_playlist = pl_Hold( p_input ); char cmd[6]; + p_playlist = pl_Hold( p_input ); + playlist_Lock( p_playlist ); switch( playlist_Status( p_playlist ) ) { case PLAYLIST_STOPPED: @@ -1006,6 +1007,7 @@ static int StateChanged( vlc_object_t *p_this, char const *psz_cmd, default: cmd[0] = '\0'; } /* var_GetInteger( p_input, "state" ) */ + playlist_Unlock( p_playlist ); msg_rc( STATUS_CHANGE "( %s state: %d ): %s", cmd, newval.i_int, ppsz_input_state[ newval.i_int ] ); From git at videolan.org Fri Feb 20 17:11:21 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:11:21 +0100 (CET) Subject: [vlc-devel] commit: lua playlist: add playlist parser for Anevia Toucan list_streams. idp functionality. (Jean-Paul Saman ) Message-ID: <20090220161121.10FFA2FB36@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Fri Feb 20 16:56:11 2009 +0100| [07a69e826ecb666cce2fd75c91dcc88f40dd8b97] | committer: Jean-Paul Saman lua playlist: add playlist parser for Anevia Toucan list_streams.idp functionality. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=07a69e826ecb666cce2fd75c91dcc88f40dd8b97 --- share/Makefile.am | 1 + share/lua/playlist/anevia_streams.lua | 90 +++++++++++++++++++++++++++++++++ 2 files changed, 91 insertions(+), 0 deletions(-) diff --git a/share/Makefile.am b/share/Makefile.am index 8667507..3abf2d1 100644 --- a/share/Makefile.am +++ b/share/Makefile.am @@ -242,6 +242,7 @@ DIST_lua= \ lua/meta/01_musicbrainz.lua \ lua/meta/10_googleimage.lua \ lua/playlist/README.txt \ + lua/playlist/anevia_streams.lua \ lua/playlist/appletrailers.lua \ lua/playlist/break.lua \ lua/playlist/dailymotion.lua \ diff --git a/share/lua/playlist/anevia_streams.lua b/share/lua/playlist/anevia_streams.lua new file mode 100644 index 0000000..c9b1f19 --- /dev/null +++ b/share/lua/playlist/anevia_streams.lua @@ -0,0 +1,90 @@ +--[[ + $Id$ + + Parse list of available streams on Anevia Toucan servers. + The URI rtsp://ipaddress:554/list_streams.idp describes a list of + available streams on the server. + + Copyright ? 2009 M2X BV + + Authors: Jean-Paul Saman + + 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 + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. +--]] + +-- Probe function. +function probe() + return vlc.access == "http" + and string.match( vlc.path, "list_streams.idp" ) +end + +-- Parse function. +function parse() + p = {} + _,_,server = string.find( vlc.path, "(.*)/list_streams.idp" ) + while true do + line = vlc.readline() + if not line then break end + + if string.match( line, " " ) then + break + elseif string.match( line, "" ) then + while true do + line = vlc.readline() + if not line then break end + if string.match( line, " " ) then + break; + elseif string.match( line, "" ) then + _,_,streamer = string.find( line, "name=\"(.*)\"" ) + while true do + line = vlc.readline() + if not line then break end + -- ignore tags + -- ignore tags + if string.match( line, "" ) then + _,_,path = string.find( line, "name=\"(.*)\"" ) + while true do + line = vlc.readline() + if not line then break end + if string.match( line, "" ) then + _,_,media = string.find( line, "id=\"(.*)\"" ) + video = "rtsp://" .. tostring(server) .. "/" .. tostring(path) .. "/" .. tostring(media) + vlc.msg.dbg( "adding to playlist " .. tostring(video) ) + table.insert( p, { path = video; name = media, url = video } ) + end +-- end of input tag found + if string.match( line, "" ) then + break + end + end + end + end + if not line then break end +-- end of streamer tag found + if string.match( line, "" ) then + break + end + end + if not line then break end +-- end of streams-list tag found + if string.match( line, "" ) then + break + end + end + end + + end + return p +end From git at videolan.org Fri Feb 20 17:13:54 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:13:54 +0100 (CET) Subject: [vlc-devel] commit: Revert "mozilla: video is displayed again" (Jean-Paul Saman ) Message-ID: <20090220161354.C5DDF2FB22@skanda.videolan.org> vlc | branch: master | Jean-Paul Saman | Fri Feb 20 17:09:42 2009 +0100| [76aa264984fd32e7d2d7dfb2bcc573ee520ad8f8] | committer: Jean-Paul Saman Revert "mozilla: video is displayed again" This reverts commit e538b7082ff17fb1ff04ea89cc4dd2e8143122ae. I misunderstood the usage case for drawable-xid. MacOS X AGL needs a separate instance of drawable events. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=76aa264984fd32e7d2d7dfb2bcc573ee520ad8f8 --- modules/gui/macosx/voutgl.m | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/gui/macosx/voutgl.m b/modules/gui/macosx/voutgl.m index 831f059..47dac9e 100644 --- a/modules/gui/macosx/voutgl.m +++ b/modules/gui/macosx/voutgl.m @@ -110,11 +110,11 @@ int OpenVideoGL ( vlc_object_t * p_this ) p_vout->p_sys = malloc( sizeof( vout_sys_t ) ); if( p_vout->p_sys == NULL ) - return VLC_ENOMEM; + return( 1 ); memset( p_vout->p_sys, 0, sizeof( vout_sys_t ) ); - var_Get( p_vout->p_libvlc, "drawable-xid", &value_drawable ); + var_Get( p_vout->p_libvlc, "drawable", &value_drawable ); if( value_drawable.i_int != 0 ) { static const GLint ATTRIBUTES[] = { @@ -497,7 +497,7 @@ static int aglInit( vout_thread_t * p_vout ) Rect viewBounds; Rect clipBounds; - var_Get( p_vout->p_libvlc, "drawable-xid", &val ); + var_Get( p_vout->p_libvlc, "drawable", &val ); p_vout->p_sys->agl_drawable = (AGLDrawable)val.i_int; aglSetDrawable(p_vout->p_sys->agl_ctx, p_vout->p_sys->agl_drawable); @@ -617,7 +617,7 @@ static int aglManage( vout_thread_t * p_vout ) Rect viewBounds; Rect clipBounds; - var_Get( p_vout->p_libvlc, "drawable-xid", &val ); + var_Get( p_vout->p_libvlc, "drawable", &val ); p_vout->p_sys->agl_drawable = (AGLDrawable)val.i_int; aglSetDrawable(p_vout->p_sys->agl_ctx, p_vout->p_sys->agl_drawable); From git at videolan.org Fri Feb 20 17:27:27 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:27:27 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Unused_variable_=28_R=C3=A9mi_Den?= =?utf-8?q?is-Courmont_=29?= Message-ID: <20090220162727.575B22FB48@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Fri Feb 20 18:18:05 2009 +0200| [2d50850e3eb4b83d9d74cac6c7e6ff22454548cd] | committer: R?mi Denis-Courmont Unused variable > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2d50850e3eb4b83d9d74cac6c7e6ff22454548cd --- modules/access/pvr.c | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/modules/access/pvr.c b/modules/access/pvr.c index 7b8ca94..88aa35f 100644 --- a/modules/access/pvr.c +++ b/modules/access/pvr.c @@ -994,7 +994,6 @@ static ssize_t Read( access_t * p_access, uint8_t * p_buffer, size_t i_len ) static int Control( access_t *p_access, int i_query, va_list args ) { bool *pb_bool; - int *pi_int; int64_t *pi_64; switch( i_query ) From git at videolan.org Fri Feb 20 17:27:27 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:27:27 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_format-security_warnings_=28_?= =?utf-8?b?RnLDqWTDqXJpYyBDcm96YXQgKQ==?= Message-ID: <20090220162727.6D4BB2FB52@skanda.videolan.org> vlc | branch: master | Fr?d?ric Crozat | Fri Feb 20 18:13:02 2009 +0200| [25c5812608316c7cd9b19c0adf8b111cb46774f8] | committer: R?mi Denis-Courmont Fix format-security warnings Trimmed and Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=25c5812608316c7cd9b19c0adf8b111cb46774f8 --- modules/control/hotkeys.c | 2 +- modules/control/rc.c | 2 +- modules/control/telnet.c | 2 +- modules/misc/lua/libs/osd.c | 2 +- modules/misc/lua/vlc.c | 2 +- src/input/vlmshell.c | 27 ++++++++++++++------------- 6 files changed, 19 insertions(+), 18 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index e024269..45ff51a 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -1069,7 +1069,7 @@ static void DisplayPosition( intf_thread_t *p_intf, vout_thread_t *p_vout, } else if( i_seconds > 0 ) { - vout_OSDMessage( p_input, POSITION_TEXT_CHAN, psz_time ); + vout_OSDMessage( p_input, POSITION_TEXT_CHAN, "%s", psz_time ); } if( p_vout->b_fullscreen ) diff --git a/modules/control/rc.c b/modules/control/rc.c index 29a9f1e..9146258 100644 --- a/modules/control/rc.c +++ b/modules/control/rc.c @@ -634,7 +634,7 @@ static void Run( intf_thread_t *p_intf ) if( psz_msg ) { - msg_rc( psz_msg ); + msg_rc( "%s", psz_msg ); free( psz_msg ); } } diff --git a/modules/control/telnet.c b/modules/control/telnet.c index a321d79..85ecaab 100644 --- a/modules/control/telnet.c +++ b/modules/control/telnet.c @@ -456,7 +456,7 @@ static void Run( intf_thread_t *p_intf ) if( psz_msg ) { vlm_message_t *message; - message = vlm_MessageNew( "Module command", psz_msg ); + message = vlm_MessageNew( "Module command", "%s", psz_msg ); Write_message( cl, message, NULL, WRITE_MODE_CMD ); vlm_MessageDelete( message ); free( psz_msg ); diff --git a/modules/misc/lua/libs/osd.c b/modules/misc/lua/libs/osd.c index c0a43cc..05c1aae 100644 --- a/modules/misc/lua/libs/osd.c +++ b/modules/misc/lua/libs/osd.c @@ -85,7 +85,7 @@ static int vlclua_osd_message( lua_State *L ) const char *psz_message = luaL_checkstring( L, 1 ); int i_chan = luaL_optint( L, 2, DEFAULT_CHAN ); vlc_object_t *p_this = vlclua_get_this( L ); - vout_OSDMessage( p_this, i_chan, psz_message ); + vout_OSDMessage( p_this, i_chan, "%s", psz_message ); return 0; } diff --git a/modules/misc/lua/vlc.c b/modules/misc/lua/vlc.c index 1b06125..f59c391 100644 --- a/modules/misc/lua/vlc.c +++ b/modules/misc/lua/vlc.c @@ -317,7 +317,7 @@ void __vlclua_read_custom_meta_data( vlc_object_t *p_this, lua_State *L, psz_meta_category, psz_meta_name, psz_meta_value ); input_item_AddInfo( p_input, psz_meta_category, - psz_meta_name, psz_meta_value ); + psz_meta_name, "%s", psz_meta_value ); } lua_pop( L, 1 ); /* pop item */ /* ... item meta key value key2 */ diff --git a/src/input/vlmshell.c b/src/input/vlmshell.c index b55e632..da79d1f 100644 --- a/src/input/vlmshell.c +++ b/src/input/vlmshell.c @@ -533,7 +533,7 @@ static int ExecuteExport( vlm_t *p_vlm, vlm_message_t **pp_status ) { char *psz_export = Save( p_vlm ); - *pp_status = vlm_MessageNew( "export", psz_export ); + *pp_status = vlm_MessageNew( "export", "%s", psz_export ); free( psz_export ); return VLC_SUCCESS; } @@ -909,7 +909,7 @@ int ExecuteCommand( vlm_t *p_vlm, const char *psz_command, if( psz_temp == NULL ) { - p_message = vlm_MessageNew( "Incomplete command", psz_command ); + p_message = vlm_MessageNew( "Incomplete command", "%s", psz_command ); goto error; } @@ -1304,7 +1304,7 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) if( p_cfg->b_vod ) vlm_MessageAdd( p_msg, - vlm_MessageNew( "mux", p_cfg->vod.psz_mux ) ); + vlm_MessageNew( "mux", "%s", p_cfg->vod.psz_mux ) ); else vlm_MessageAdd( p_msg, vlm_MessageNew( "loop", p_cfg->broadcast.b_loop ? "yes" : "no" ) ); @@ -1316,13 +1316,13 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) if( asprintf( &psz_tmp, "%d", i+1 ) != -1 ) { vlm_MessageAdd( p_msg_sub, - vlm_MessageNew( psz_tmp, p_cfg->ppsz_input[i] ) ); + vlm_MessageNew( psz_tmp, "%s", p_cfg->ppsz_input[i] ) ); free( psz_tmp ); } } vlm_MessageAdd( p_msg, - vlm_MessageNew( "output", p_cfg->psz_output ? p_cfg->psz_output : "" ) ); + vlm_MessageNew( "output", "%s", p_cfg->psz_output ? p_cfg->psz_output : "" ) ); p_msg_sub = vlm_MessageAdd( p_msg, vlm_MessageNew( "options", vlm_NULL ) ); for( i = 0; i < p_cfg->i_option; i++ ) @@ -1343,7 +1343,7 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) p_msg_instance = vlm_MessageAdd( p_msg_sub, vlm_MessageNew( "instance" , vlm_NULL ) ); vlm_MessageAdd( p_msg_instance, - vlm_MessageNew( "name" , p_instance->psz_name ? p_instance->psz_name : "default" ) ); + vlm_MessageNew( "name" , "%s", p_instance->psz_name ? p_instance->psz_name : "default" ) ); vlm_MessageAdd( p_msg_instance, vlm_MessageNew( "state", val.i_int == PLAYING_S ? "playing" : @@ -1358,7 +1358,7 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) var_Get ## type( p_instance->p_input, a ) ) != -1 ) \ { \ vlm_MessageAdd( p_msg_instance, vlm_MessageNew( a, \ - psz_tmp ) ); \ + "%s", psz_tmp ) ); \ free( psz_tmp ); \ } APPEND_INPUT_INFO( "position", "%f", Float ); @@ -1373,7 +1373,7 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) if( asprintf( &psz_tmp, "%d", p_instance->i_index + 1 ) != -1 ) { vlm_MessageAdd( p_msg_instance, vlm_MessageNew( "playlistindex", - psz_tmp ) ); + "%s", psz_tmp ) ); free( psz_tmp ); } } @@ -1422,7 +1422,7 @@ static vlm_message_t *vlm_Show( vlm_t *vlm, vlm_media_sys_t *media, date.tm_hour, date.tm_min, date.tm_sec ) != -1 ) { vlm_MessageAdd( msg_schedule, - vlm_MessageNew( "date", psz_date ) ); + vlm_MessageNew( "date", "%s", psz_date ) ); free( psz_date ); } } @@ -1450,13 +1450,13 @@ static vlm_message_t *vlm_Show( vlm_t *vlm, vlm_media_sys_t *media, sprintf( buffer, "%d/%d/%d-%d:%d:%d", date.tm_year, date.tm_mon, date.tm_mday, date.tm_hour, date.tm_min, date.tm_sec); - vlm_MessageAdd( msg_schedule, vlm_MessageNew("period", buffer) ); + vlm_MessageAdd( msg_schedule, vlm_MessageNew("period", "%s", buffer) ); } else vlm_MessageAdd( msg_schedule, vlm_MessageNew("period", "0") ); sprintf( buffer, "%d", schedule->i_repeat ); - vlm_MessageAdd( msg_schedule, vlm_MessageNew( "repeat", buffer ) ); + vlm_MessageAdd( msg_schedule, vlm_MessageNew( "repeat", "%s", buffer ) ); msg_child = vlm_MessageAdd( msg_schedule, vlm_MessageNew("commands", vlm_NULL ) ); @@ -1491,7 +1491,8 @@ static vlm_message_t *vlm_Show( vlm_t *vlm, vlm_media_sys_t *media, i_vod) == -1 ) return NULL; p_msg = vlm_MessageNew( "show", vlm_NULL ); - p_msg_child = vlm_MessageAdd( p_msg, vlm_MessageNew( "media", psz_count ) ); + p_msg_child = vlm_MessageAdd( p_msg, vlm_MessageNew( "media", "%s", + psz_count ) ); free( psz_count ); for( i = 0; i < vlm->i_media; i++ ) @@ -1550,7 +1551,7 @@ static vlm_message_t *vlm_Show( vlm_t *vlm, vlm_media_sys_t *media, #endif vlm_MessageAdd( msg_schedule, - vlm_MessageNew( "next launch", psz_date ) ); + vlm_MessageNew( "next launch", "%s", psz_date ) ); #endif } } From git at videolan.org Fri Feb 20 17:28:42 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:28:42 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_format-security_warnings_=28_?= =?utf-8?b?RnLDqWTDqXJpYyBDcm96YXQgKQ==?= Message-ID: <20090220162842.35B652FB32@skanda.videolan.org> vlc | branch: 0.9-bugfix | Fr?d?ric Crozat | Fri Feb 20 18:13:02 2009 +0200| [ebec76a70af18d520f9053b9238b6bfd6e039fb6] | committer: R?mi Denis-Courmont Fix format-security warnings Trimmed and Signed-off-by: R?mi Denis-Courmont (cherry picked from commit 25c5812608316c7cd9b19c0adf8b111cb46774f8) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ebec76a70af18d520f9053b9238b6bfd6e039fb6 --- modules/control/hotkeys.c | 2 +- modules/control/rc.c | 2 +- modules/control/telnet.c | 2 +- modules/misc/lua/libs/osd.c | 2 +- modules/misc/lua/vlc.c | 2 +- src/input/vlmshell.c | 27 ++++++++++++++------------- 6 files changed, 19 insertions(+), 18 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 22a0887..0cec029 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -985,7 +985,7 @@ static void DisplayPosition( intf_thread_t *p_intf, vout_thread_t *p_vout, } else if( i_seconds > 0 ) { - vout_OSDMessage( p_input, POSITION_TEXT_CHAN, psz_time ); + vout_OSDMessage( p_input, POSITION_TEXT_CHAN, "%s", psz_time ); } if( !p_vout->p_window || p_vout->b_fullscreen ) diff --git a/modules/control/rc.c b/modules/control/rc.c index 2deed06..168aaa8 100644 --- a/modules/control/rc.c +++ b/modules/control/rc.c @@ -638,7 +638,7 @@ static void Run( intf_thread_t *p_intf ) if( psz_msg ) { - msg_rc( psz_msg ); + msg_rc( "%s", psz_msg ); free( psz_msg ); } } diff --git a/modules/control/telnet.c b/modules/control/telnet.c index 1ac35f8..643defd 100644 --- a/modules/control/telnet.c +++ b/modules/control/telnet.c @@ -459,7 +459,7 @@ static void Run( intf_thread_t *p_intf ) if( psz_msg ) { vlm_message_t *message; - message = vlm_MessageNew( "Module command", psz_msg ); + message = vlm_MessageNew( "Module command", "%s", psz_msg ); Write_message( cl, message, NULL, WRITE_MODE_CMD ); vlm_MessageDelete( message ); free( psz_msg ); diff --git a/modules/misc/lua/libs/osd.c b/modules/misc/lua/libs/osd.c index c0a43cc..05c1aae 100644 --- a/modules/misc/lua/libs/osd.c +++ b/modules/misc/lua/libs/osd.c @@ -85,7 +85,7 @@ static int vlclua_osd_message( lua_State *L ) const char *psz_message = luaL_checkstring( L, 1 ); int i_chan = luaL_optint( L, 2, DEFAULT_CHAN ); vlc_object_t *p_this = vlclua_get_this( L ); - vout_OSDMessage( p_this, i_chan, psz_message ); + vout_OSDMessage( p_this, i_chan, "%s", psz_message ); return 0; } diff --git a/modules/misc/lua/vlc.c b/modules/misc/lua/vlc.c index dcf87b1..397c279 100644 --- a/modules/misc/lua/vlc.c +++ b/modules/misc/lua/vlc.c @@ -317,7 +317,7 @@ void __vlclua_read_custom_meta_data( vlc_object_t *p_this, lua_State *L, psz_meta_category, psz_meta_name, psz_meta_value ); input_item_AddInfo( p_input, psz_meta_category, - psz_meta_name, psz_meta_value ); + psz_meta_name, "%s", psz_meta_value ); } lua_pop( L, 1 ); /* pop item */ /* ... item meta key value key2 */ diff --git a/src/input/vlmshell.c b/src/input/vlmshell.c index 0d8bc10..5a8796a 100644 --- a/src/input/vlmshell.c +++ b/src/input/vlmshell.c @@ -522,7 +522,7 @@ static int ExecuteExport( vlm_t *p_vlm, vlm_message_t **pp_status ) { char *psz_export = Save( p_vlm ); - *pp_status = vlm_MessageNew( "export", psz_export ); + *pp_status = vlm_MessageNew( "export", "%s", psz_export ); free( psz_export ); return VLC_SUCCESS; } @@ -898,7 +898,7 @@ int ExecuteCommand( vlm_t *p_vlm, const char *psz_command, if( psz_temp == NULL ) { - p_message = vlm_MessageNew( "Incomplete command", psz_command ); + p_message = vlm_MessageNew( "Incomplete command", "%s", psz_command ); goto error; } @@ -1293,7 +1293,7 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) if( p_cfg->b_vod ) vlm_MessageAdd( p_msg, - vlm_MessageNew( "mux", p_cfg->vod.psz_mux ) ); + vlm_MessageNew( "mux", "%s", p_cfg->vod.psz_mux ) ); else vlm_MessageAdd( p_msg, vlm_MessageNew( "loop", p_cfg->broadcast.b_loop ? "yes" : "no" ) ); @@ -1305,13 +1305,13 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) if( asprintf( &psz_tmp, "%d", i+1 ) != -1 ) { vlm_MessageAdd( p_msg_sub, - vlm_MessageNew( psz_tmp, p_cfg->ppsz_input[i] ) ); + vlm_MessageNew( psz_tmp, "%s", p_cfg->ppsz_input[i] ) ); free( psz_tmp ); } } vlm_MessageAdd( p_msg, - vlm_MessageNew( "output", p_cfg->psz_output ? p_cfg->psz_output : "" ) ); + vlm_MessageNew( "output", "%s", p_cfg->psz_output ? p_cfg->psz_output : "" ) ); p_msg_sub = vlm_MessageAdd( p_msg, vlm_MessageNew( "options", vlm_NULL ) ); for( i = 0; i < p_cfg->i_option; i++ ) @@ -1332,7 +1332,7 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) p_msg_instance = vlm_MessageAdd( p_msg_sub, vlm_MessageNew( "instance" , vlm_NULL ) ); vlm_MessageAdd( p_msg_instance, - vlm_MessageNew( "name" , p_instance->psz_name ? p_instance->psz_name : "default" ) ); + vlm_MessageNew( "name" , "%s", p_instance->psz_name ? p_instance->psz_name : "default" ) ); vlm_MessageAdd( p_msg_instance, vlm_MessageNew( "state", val.i_int == PLAYING_S ? "playing" : @@ -1347,7 +1347,7 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) var_Get ## type( p_instance->p_input, a ) ) != -1 ) \ { \ vlm_MessageAdd( p_msg_instance, vlm_MessageNew( a, \ - psz_tmp ) ); \ + "%s", psz_tmp ) ); \ free( psz_tmp ); \ } APPEND_INPUT_INFO( "position", "%f", Float ); @@ -1362,7 +1362,7 @@ static vlm_message_t *vlm_ShowMedia( vlm_media_sys_t *p_media ) if( asprintf( &psz_tmp, "%d", p_instance->i_index + 1 ) != -1 ) { vlm_MessageAdd( p_msg_instance, vlm_MessageNew( "playlistindex", - psz_tmp ) ); + "%s", psz_tmp ) ); free( psz_tmp ); } } @@ -1411,7 +1411,7 @@ static vlm_message_t *vlm_Show( vlm_t *vlm, vlm_media_sys_t *media, date.tm_hour, date.tm_min, date.tm_sec ) != -1 ) { vlm_MessageAdd( msg_schedule, - vlm_MessageNew( "date", psz_date ) ); + vlm_MessageNew( "date", "%s", psz_date ) ); free( psz_date ); } } @@ -1439,13 +1439,13 @@ static vlm_message_t *vlm_Show( vlm_t *vlm, vlm_media_sys_t *media, sprintf( buffer, "%d/%d/%d-%d:%d:%d", date.tm_year, date.tm_mon, date.tm_mday, date.tm_hour, date.tm_min, date.tm_sec); - vlm_MessageAdd( msg_schedule, vlm_MessageNew("period", buffer) ); + vlm_MessageAdd( msg_schedule, vlm_MessageNew("period", "%s", buffer) ); } else vlm_MessageAdd( msg_schedule, vlm_MessageNew("period", "0") ); sprintf( buffer, "%d", schedule->i_repeat ); - vlm_MessageAdd( msg_schedule, vlm_MessageNew( "repeat", buffer ) ); + vlm_MessageAdd( msg_schedule, vlm_MessageNew( "repeat", "%s", buffer ) ); msg_child = vlm_MessageAdd( msg_schedule, vlm_MessageNew("commands", vlm_NULL ) ); @@ -1480,7 +1480,8 @@ static vlm_message_t *vlm_Show( vlm_t *vlm, vlm_media_sys_t *media, i_vod) == -1 ) return NULL; p_msg = vlm_MessageNew( "show", vlm_NULL ); - p_msg_child = vlm_MessageAdd( p_msg, vlm_MessageNew( "media", psz_count ) ); + p_msg_child = vlm_MessageAdd( p_msg, vlm_MessageNew( "media", "%s", + psz_count ) ); free( psz_count ); for( i = 0; i < vlm->i_media; i++ ) @@ -1539,7 +1540,7 @@ static vlm_message_t *vlm_Show( vlm_t *vlm, vlm_media_sys_t *media, #endif vlm_MessageAdd( msg_schedule, - vlm_MessageNew( "next launch", psz_date ) ); + vlm_MessageNew( "next launch", "%s", psz_date ) ); #endif } } From support at streamalerts.com Fri Feb 20 17:53:21 2009 From: support at streamalerts.com (Stream Alerts) Date: Fri, 20 Feb 2009 11:53:21 -0500 Subject: [vlc-devel] How to continue playing an online playlist with LibVLC? Message-ID: <2273df8$28e27b83$32ef2562$@com> Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4 Hello! I'm having trouble figuring out how to make a LibVLC player play through a playlist found online. The player grabs the playlist and is able to parse it (in this case a Windows Media .ASX file) but after it finishes parsing, it just returns libvlc_MediaPlayerEndReached and does not actually play the streams in the list. If I open the same URL in VLC proper, it plays without any problems. Below is the debug output and the code and options I'm using. Thank you in advanced for any help ya'll can give me! Sincerely, Chris Larsen DEBUG: [00000001] main libvlc debug: VLC media player - version 0.9.8a Grishenko - (c) 1996-2008 the VideoLAN team [00000001] main libvlc debug: libvlc was configured with ./configure '--host=i5 86-mingw32msvc' '--build=i386-linux' '--enable-mkv' '--enable-release' '--withou t-contrib' '--enable-nls' '--enable-shared-libvlc' '--enable-update-check' '--en able-lua' '--enable-faad' '--enable-flac' '--enable-theora' '--enable-twolame' ' --enable-quicktime' '--enable-real' '--enable-realrtsp' '--enable-ffmpeg' '--wit h-ffmpeg-mp3lame' '--with-ffmpeg-faac' '--with-ffmpeg-config-path=/usr/win32/bin ' '--with-ffmpeg-zlib' '--enable-live555' '--with-live555-tree=/usr/win32/live.c om' '--ena [00000001] main libvlc debug: translation test: code is "C" [00000001] main libvlc debug: checking builtin modules [00000001] main libvlc debug: checking plugin modules [00000001] main libvlc debug: recursively browsing `c:\VLC\vlc_tester\Debug\modules' [00000001] main libvlc debug: recursively browsing `c:\VLC\vlc_tester\Debug\plugins' [00000001] main libvlc debug: recursively browsing `C:\VLC\plugins' [00000001] main libvlc debug: module bank initialized, found 264 modules [00000001] main libvlc debug: CPU has capabilities 486 586 MMX MMXEXT SSE SSE2 F PU [00000001] main libvlc debug: looking for memcpy module: 3 candidates [00000001] main libvlc debug: using memcpy module "memcpymmxext" [00000360] main interaction debug: thread 4964 (Interaction control) created at priority 0 (interface/interaction.c:382) [00000360] main interaction debug: thread started [00000362] main input debug: Creating an input for 'Media Library' [00000362] main input debug: Input is a meta file: disabling unneeded options [00000362] main input debug: `file/xspf-open://C:\Users\~\AppData\Roaming\v lc\ml.xspf' gives access `file' demux `xspf-open' path `C:\Users\~\AppData\ Roaming\vlc\ml.xspf' [00000362] main input debug: creating access 'file' path='C:\Users\~\AppDat a\Roaming\vlc\ml.xspf' [00000363] main access debug: looking for access module: 2 candidates [00000363] access_file access debug: opening file `C:\Users\~\AppData\Roami ng\vlc\ml.xspf' [00000363] main access debug: using access module "access_file" [00000363] main access debug: TIMER module_Need() : 2.000 ms - Total 2.000 ms / 1 intvls (Avg 2.000 ms) [00000364] main stream debug: Using AStream*Stream [00000364] main stream debug: pre-buffering... [00000364] main stream debug: received first data for our buffer [00000362] main input debug: creating demux: access='file' demux='xspf-open' pat h='C:\Users\~\AppData\Roaming\vlc\ml.xspf' [00000365] main demux debug: looking for demux module: 1 candidate [00000365] playlist demux debug: using XSPF playlist reader [00000365] main demux debug: using demux module "playlist" [00000365] main demux debug: TIMER module_Need() : 2.000 ms - Total 2.000 ms / 1 intvls (Avg 2.000 ms) [00000362] main input debug: `file/xspf-open://C:\Users\~\AppData\Roaming\v lc\ml.xspf' successfully opened [00000366] main xml debug: looking for xml module: 2 candidates [00000366] main xml debug: using xml module "xml" [00000366] main xml debug: TIMER module_Need() : 1.000 ms - Total 1.000 ms / 1 i ntvls (Avg 1.000 ms) [00000365] playlist demux debug: parsed 0 tracks successfully [00000366] main xml debug: removing module "xml" [00000362] main input debug: EOF reached [00000362] main input debug: control type=1 [00000365] main demux debug: removing module "playlist" [00000363] main access debug: removing module "access_file" [00000362] main input debug: TIMER input launching for 'Media Library' : 21.000 ms - Total 21.000 ms / 1 intvls (Avg 21.000 ms) [00000367] main preparser debug: waiting for thread initialization [00000367] main preparser debug: thread started [00000367] main preparser debug: thread 5044 (preparser) created at priority 0 ( playlist/thread.c:79) [00000368] main fetcher debug: waiting for thread initialization [00000368] main fetcher debug: thread started [00000368] main fetcher debug: thread 5056 (fetcher) created at priority 0 (play list/thread.c:108) [00000361] main playlist debug: waiting for thread initialization [00000361] main playlist debug: thread started [00000361] main playlist debug: rebuilding array of current - root Playlist [00000361] main playlist debug: rebuild done - 0 items, index -1 [00000361] main playlist debug: thread 5052 (playlist) created at priority 0 (pl aylist/thread.c:117) [00000369] main interface debug: looking for interface module: 1 candidate [00000369] main interface debug: using interface module "hotkeys" [00000369] main interface debug: TIMER module_Need() : 1.000 ms - Total 1.000 ms / 1 intvls (Avg 1.000 ms) [00000369] main interface debug: thread 5076 (interface) created at priority 0 ( interface/interface.c:168) [00000369] main interface debug: thread started [00000361] main playlist debug: adding item `' ( ) [00000361] main playlist debug: adding item `' ( ) [00000361] main playlist debug: adding item `' ( ) ----- try to play.... [00000370] main input debug: Creating an input for 'http://www.beethoven.com/bee thoven_ad.asx' [00000370] main input debug: waiting for thread initialization [00000370] main input debug: thread started [00000370] main input debug: `http://www.beethoven.com/beethoven_ad.asx' gives a ccess `http' demux `' path `www.beethoven.com/beethoven_ad.asx' [00000370] main input debug: thread 5188 (input) created at priority 1 (input/in put.c:370) [00000370] main input debug: creating demux: access='http' demux='' path='www.be ethoven.com/beethoven_ad.asx' [00000371] main demux debug: looking for access_demux module: 0 candidates [00000361] main playlist debug: no fetch required for http://www.beethoven.com/b eethoven_ad.asx (art currently (null)) State: 0 [00000371] main demux warning: no access_demux module matched "http" [00000371] main demux debug: TIMER module_Need() : 2.000 ms - Total 2.000 ms / 1 intvls (Avg 2.000 ms) [00000370] main input debug: creating access 'http' path='www.beethoven.com/beet hoven_ad.asx' [00000372] main access debug: looking for access module: 2 candidates [00000372] access_http access debug: http: server='www.beethoven.com' port=80 fi le='/beethoven_ad.asx [00000372] main access debug: net: connecting to www.beethoven.com port 80 [00000372] main access debug: connection: Resource temporarily unavailable [00000372] main access debug: connection succeeded (socket = 5360) [00000372] access_http access debug: protocol 'HTTP' answer code 206 [00000372] access_http access debug: this frame size=1482 [00000372] access_http access debug: Content-Type: video/x-ms-asf [00000372] access_http access debug: stream size=1482,pos=0,remaining=1482 [00000372] access_http access debug: Server: Microsoft-IIS/6.0 [00000372] access_http access debug: We have a Cookie we won't remember: Coyote- 2-ac10036f=ac10030a:0; path=/ [00000372] main access debug: using access module "access_http" [00000372] main access debug: TIMER module_Need() : 200.000 ms - Total 200.000 m s / 1 intvls (Avg 200.000 ms) [00000373] main stream debug: Using AStream*Stream [00000373] main stream debug: pre-buffering... [00000373] main stream debug: received first data for our buffer [00000370] main input debug: creating demux: access='http' demux='' path='www.be ethoven.com/beethoven_ad.asx' [00000374] main demux debug: looking for demux module: 51 candidates [00000374] playlist demux debug: found valid ASX playlist [00000374] main demux debug: using demux module "playlist" [00000374] main demux debug: TIMER module_Need() : 1.000 ms - Total 1.000 ms / 1 intvls (Avg 1.000 ms) [00000370] main input debug: `http://www.beethoven.com/beethoven_ad.asx' success fully opened @@@@@@@@@@@@@ Caught event: libvlc_MediaPlayerPlaying [00000374] playlist demux debug: param name strlen: 8 [00000374] playlist demux debug: param name: HTMLView [00000374] playlist demux debug: param name strlen: 8 [00000374] playlist demux debug: param name: HTMLView [00000374] playlist demux debug: param name strlen: 8 [00000374] playlist demux debug: param name: HTMLView [00000370] main input debug: EOF reached [00000370] main input debug: control type=1 @@@@@@@@@@@@@ Caught event: libvlc_MediaPlayerEndReached OPTIONS: -I dummy --vout dummy --aout dummy --no-plugins-cache --verbose=2 --no-video-title-show --ignore-config --no-sub-autodetect CODE: libvlc_exception_init (&ex); inst = libvlc_new (sizeof(vlc_args) / sizeof(vlc_args[0]), vlc_args, &ex); m = libvlc_media_new (inst, url.c_str(), &ex); mp = libvlc_media_player_new_from_media (m, &ex); libvlc_event_manager_t *em; em = libvlc_media_player_event_manager( mp, &ex ); libvlc_event_attach( em, libvlc_MediaPlayerPlaying, Media_State_Changed, NULL, &ex ); libvlc_event_attach( em, libvlc_MediaPlayerEndReached, Media_State_Changed, NULL, &ex ); libvlc_media_player_play (mp, &ex); Sleep(INFINITE); -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Fri Feb 20 17:54:31 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:54:31 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_libxml=3A_fix_plugin_re-entrancy_?= =?utf-8?q?-_refs_=232541_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090220165431.18C3B2FB5A@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Fri Feb 20 18:52:47 2009 +0200| [cf44d7458dcd61fc124e945c4284448d6ab88ff5] | committer: R?mi Denis-Courmont libxml: fix plugin re-entrancy - refs #2541 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cf44d7458dcd61fc124e945c4284448d6ab88ff5 --- modules/misc/xml/libxml.c | 17 +++++++++++++++-- 1 files changed, 15 insertions(+), 2 deletions(-) diff --git a/modules/misc/xml/libxml.c b/modules/misc/xml/libxml.c index f4bad58..28a6696 100644 --- a/modules/misc/xml/libxml.c +++ b/modules/misc/xml/libxml.c @@ -67,6 +67,9 @@ static void CatalogLoad( xml_t *, const char * ); static void CatalogAdd( xml_t *, const char *, const char *, const char * ); static int StreamRead( void *p_context, char *p_buffer, int i_buffer ); +static unsigned refs = 0; +static vlc_mutex_t lock = VLC_STATIC_MUTEX; + /***************************************************************************** * Module initialization *****************************************************************************/ @@ -74,7 +77,13 @@ static int Open( vlc_object_t *p_this ) { xml_t *p_xml = (xml_t *)p_this; - xmlInitParser(); + if( !xmlHasFeature( XML_WITH_THREAD ) ) + return VLC_EGENERIC; + + vlc_mutex_lock( &lock ); + if( refs++ == 0 ) + xmlInitParser(); + vlc_mutex_unlock( &lock ); p_xml->pf_reader_create = ReaderCreate; p_xml->pf_reader_delete = ReaderDelete; @@ -90,7 +99,11 @@ static int Open( vlc_object_t *p_this ) *****************************************************************************/ static void Close( vlc_object_t *p_this ) { - xmlCleanupParser(); + vlc_mutex_lock( &lock ); + if( --refs == 0 ) + xmlCleanupParser(); + vlc_mutex_unlock( &lock ); + VLC_UNUSED(p_this); return; } From git at videolan.org Fri Feb 20 17:55:01 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 17:55:01 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_libxml=3A_fix_plugin_re-entrancy_?= =?utf-8?q?-_refs_=232541_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090220165501.35E3E2FB6B@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Fri Feb 20 18:52:47 2009 +0200| [e54510695e1959508a6ca3a6d064c7e687d870c6] | committer: R?mi Denis-Courmont libxml: fix plugin re-entrancy - refs #2541 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e54510695e1959508a6ca3a6d064c7e687d870c6 --- modules/misc/xml/libxml.c | 17 +++++++++++++++-- 1 files changed, 15 insertions(+), 2 deletions(-) diff --git a/modules/misc/xml/libxml.c b/modules/misc/xml/libxml.c index 1b25a82..96b4e9c 100644 --- a/modules/misc/xml/libxml.c +++ b/modules/misc/xml/libxml.c @@ -67,6 +67,9 @@ static void CatalogLoad( xml_t *, const char * ); static void CatalogAdd( xml_t *, const char *, const char *, const char * ); static int StreamRead( void *p_context, char *p_buffer, int i_buffer ); +static unsigned refs = 0; +static vlc_mutex_t lock = VLC_STATIC_MUTEX; + /***************************************************************************** * Module initialization *****************************************************************************/ @@ -74,7 +77,13 @@ static int Open( vlc_object_t *p_this ) { xml_t *p_xml = (xml_t *)p_this; - xmlInitParser(); + if( !xmlHasFeature( XML_WITH_THREAD ) ) + return VLC_EGENERIC; + + vlc_mutex_lock( &lock ); + if( refs++ == 0 ) + xmlInitParser(); + vlc_mutex_unlock( &lock ); p_xml->pf_reader_create = ReaderCreate; p_xml->pf_reader_delete = ReaderDelete; @@ -90,7 +99,11 @@ static int Open( vlc_object_t *p_this ) *****************************************************************************/ static void Close( vlc_object_t *p_this ) { - xmlCleanupParser(); + vlc_mutex_lock( &lock ); + if( --refs == 0 ) + xmlCleanupParser(); + vlc_mutex_unlock( &lock ); + VLC_UNUSED(p_this); return; } From git at videolan.org Fri Feb 20 18:09:09 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 18:09:09 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Revert_=22libxml=3A_fix_plugin_re?= =?utf-8?q?-entrancy_-_refs_=232541=22_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090220170909.F27842FAD0@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Fri Feb 20 19:08:21 2009 +0200| [e94b79b1d2503152a4fdc018e89dfe744ef1218d] | committer: R?mi Denis-Courmont Revert "libxml: fix plugin re-entrancy - refs #2541" Hmm, we lack API support in 0.9, so keep the old crashing behavior. This reverts commit e54510695e1959508a6ca3a6d064c7e687d870c6. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e94b79b1d2503152a4fdc018e89dfe744ef1218d --- modules/misc/xml/libxml.c | 17 ++--------------- 1 files changed, 2 insertions(+), 15 deletions(-) diff --git a/modules/misc/xml/libxml.c b/modules/misc/xml/libxml.c index 96b4e9c..1b25a82 100644 --- a/modules/misc/xml/libxml.c +++ b/modules/misc/xml/libxml.c @@ -67,9 +67,6 @@ static void CatalogLoad( xml_t *, const char * ); static void CatalogAdd( xml_t *, const char *, const char *, const char * ); static int StreamRead( void *p_context, char *p_buffer, int i_buffer ); -static unsigned refs = 0; -static vlc_mutex_t lock = VLC_STATIC_MUTEX; - /***************************************************************************** * Module initialization *****************************************************************************/ @@ -77,13 +74,7 @@ static int Open( vlc_object_t *p_this ) { xml_t *p_xml = (xml_t *)p_this; - if( !xmlHasFeature( XML_WITH_THREAD ) ) - return VLC_EGENERIC; - - vlc_mutex_lock( &lock ); - if( refs++ == 0 ) - xmlInitParser(); - vlc_mutex_unlock( &lock ); + xmlInitParser(); p_xml->pf_reader_create = ReaderCreate; p_xml->pf_reader_delete = ReaderDelete; @@ -99,11 +90,7 @@ static int Open( vlc_object_t *p_this ) *****************************************************************************/ static void Close( vlc_object_t *p_this ) { - vlc_mutex_lock( &lock ); - if( --refs == 0 ) - xmlCleanupParser(); - vlc_mutex_unlock( &lock ); - + xmlCleanupParser(); VLC_UNUSED(p_this); return; } From jean-paul.saman at planet.nl Fri Feb 20 18:26:32 2009 From: jean-paul.saman at planet.nl (jean-paul.saman at planet.nl) Date: Fri, 20 Feb 2009 18:26:32 +0100 Subject: [vlc-devel] [RFC] stream quality indicator on qt4 Message-ID: <58909A1972DA06479F516447E272A2C801A12D21@CPEXBE-EML19.kpnsp.local> A client of mine is interested in having an indication on the quality of the input stream displayed in the Statistics dialog window. I cooked up the attached patch to count the number of BLOCK_FLAG_CORRUPTED occurrences which should be an indication of missing data and thus also 'quality'. Please comment on this idea: 1) Is this the right approach? 2) Is it safe enough to get into 1.0.0 release? Gtz Jean-Paul Saman -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: stream-quality-statistics.patch Type: text/x-patch Size: 5542 bytes Desc: stream-quality-statistics.patch URL: From rem at videolan.org Fri Feb 20 18:32:41 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Fri, 20 Feb 2009 19:32:41 +0200 Subject: [vlc-devel] [RFC] stream quality indicator on qt4 In-Reply-To: <58909A1972DA06479F516447E272A2C801A12D21@CPEXBE-EML19.kpnsp.local> References: <58909A1972DA06479F516447E272A2C801A12D21@CPEXBE-EML19.kpnsp.local> Message-ID: <200902201932.42007.rem@videolan.org> Le vendredi 20 f?vrier 2009 19:26:32 jean-paul.saman at planet.nl, vous avez ?crit?: > A client of mine is interested in having an indication on the quality of > the input stream displayed in the Statistics dialog window. I cooked up the > attached patch to count the number of BLOCK_FLAG_CORRUPTED occurrences > which should be an indication of missing data and thus also 'quality'. What if you just loose packets? There is BLOCK_FLAG_DISCONTINUITY, however it won't tell you how many packets were lost. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From jean-paul.saman at planet.nl Fri Feb 20 18:35:48 2009 From: jean-paul.saman at planet.nl (jean-paul.saman at planet.nl) Date: Fri, 20 Feb 2009 18:35:48 +0100 Subject: [vlc-devel] [RFC] stream quality indicator on qt4 References: <58909A1972DA06479F516447E272A2C801A12D21@CPEXBE-EML19.kpnsp.local> <200902201932.42007.rem@videolan.org> Message-ID: <58909A1972DA06479F516447E272A2C801A12D22@CPEXBE-EML19.kpnsp.local> The ts demuxer doesn't set BLOCK_FLAG_DISCONTINUITY but flags BLOCK_FLAG_CORRUPTED instead (modules/demux/ts.c line: 1993) to indicate corrupted data. Even this won't tell you how much exactly is lost. It only tells you how many times the demux noticed it. -----Original Message----- From: vlc-devel-bounces at videolan.org on behalf of R?mi Denis-Courmont Sent: Fri 2/20/2009 6:32 PM To: vlc-devel at videolan.org Subject: Re: [vlc-devel] [RFC] stream quality indicator on qt4 Le vendredi 20 f?vrier 2009 19:26:32 jean-paul.saman at planet.nl, vous avez ?crit?: > A client of mine is interested in having an indication on the quality of > the input stream displayed in the Statistics dialog window. I cooked up the > attached patch to count the number of BLOCK_FLAG_CORRUPTED occurrences > which should be an indication of missing data and thus also 'quality'. What if you just loose packets? There is BLOCK_FLAG_DISCONTINUITY, however it won't tell you how many packets were lost. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary _______________________________________________ vlc-devel mailing list To unsubscribe or modify your subscription options: http://mailman.videolan.org/listinfo/vlc-devel -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Fri Feb 20 19:27:45 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 19:27:45 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_set_llvm-gcc_as_the_def?= =?utf-8?q?ault_compiler_for_the_contribs_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090220182745.672062F468@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Fri Feb 20 19:27:34 2009 +0100| [ed0d83037ef49dab6a4014d92965e8ba3eda61ba] | committer: Felix Paul K?hne macosx: set llvm-gcc as the default compiler for the contribs > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ed0d83037ef49dab6a4014d92965e8ba3eda61ba --- extras/contrib/bootstrap | 29 ++++++++++++++--------------- 1 files changed, 14 insertions(+), 15 deletions(-) diff --git a/extras/contrib/bootstrap b/extras/contrib/bootstrap index 4264b90..3b2bcec 100755 --- a/extras/contrib/bootstrap +++ b/extras/contrib/bootstrap @@ -88,9 +88,9 @@ case $HOST in echo "HAVE_DARWIN_OS = 1" >> config.mak echo "HAVE_BSD = 1" >> config.mak if test $CONTRIBS_CC_LLVM; then - echo "DARWIN_COMPILER = LLVMGCC" >> config.mak - else echo "DARWIN_COMPILER = GCC" >> config.mak + else + echo "DARWIN_COMPILER = LLVMGCC" >> config.mak fi ;; *linux*) @@ -144,14 +144,14 @@ case $HOST in ;; powerpc-apple-darwin9) # Mac OS X 10.5 with Xcode 3, specific rules apply - if test -z "$CONTRIBS_CC_LLVM"; then - SDK_TARGET=10.4 - else + if test "$CONTRIBS_CC_LLVM"; then SDK_TARGET=10.5 + else + SDK_TARGET=10.4 fi echo "SDK_TARGET = ${SDK_TARGET}" >> config.mak echo "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}" >> config.mak - if test -z "$CONTRIBS_CC_LLVM"; then + if test "$CONTRIBS_CC_LLVM"; then echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk" >> config.mak else echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.5.sdk" >> config.mak @@ -161,7 +161,7 @@ case $HOST in CFLAGS_TUNING=" -arch ppc -mtune=G4" EXTRA_CFLAGS=" -D\${ENVP} -isysroot \${MACOSX_SDK} -mmacosx-version-min=\${SDK_TARGET}" EXTRA_LDFLAGS=" -isysroot \${MACOSX_SDK} -Wl,-syslibroot,\${MACOSX_SDK}" - if test -z "$CONTRIBS_CC_LLVM"; then + if test "$CONTRIBS_CC_LLVM"; then CC="gcc" CXX="g++" else @@ -179,7 +179,7 @@ case $HOST in fi ;; i686-apple-darwin9) - if test -z "$CONTRIBS_CC_LLVM"; then + if test "$CONTRIBS_CC_LLVM"; then SDK_TARGET=10.4 else SDK_TARGET=10.5 @@ -194,7 +194,7 @@ case $HOST in exit 1 fi echo "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}" >> config.mak - if test -z "$CONTRIBS_CC_LLVM"; then + if test "$CONTRIBS_CC_LLVM"; then echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk" >> config.mak else echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.5.sdk" >> config.mak @@ -202,7 +202,7 @@ case $HOST in CFLAGS_TUNING=" -march=pentium-m -mtune=prescott" EXTRA_CFLAGS=" -D\${ENVP} -isysroot \${MACOSX_SDK} -mmacosx-version-min=\${SDK_TARGET}" EXTRA_LDFLAGS=" -isysroot \${MACOSX_SDK} -Wl,-syslibroot,\${MACOSX_SDK}" - if test -z "$CONTRIBS_CC_LLVM"; then + if test "$CONTRIBS_CC_LLVM"; then CC="gcc" CXX="g++" else @@ -374,7 +374,6 @@ if test -z "$CONTRIBS_RELEASE"; then echo "*****************************************************************" else echo "EXTRA_CFLAGS += -DNDEBUG" >> config.mak - set -x fi if test $HAVE_DARWIN_9; then @@ -382,11 +381,11 @@ if test -z "$CONTRIBS_CC_LLVM"; then set +x echo echo "*****************************************************************" - echo "* In case that you target Mac OS X 10.5 or later only, *" - echo "* we recommend to use llvm-gcc-4.2 for compilation. *" - echo "* Please run CONTRIBS_CC_LLVM=yes ./bootstrap to do so. *" + echo "* We are using the llvm-gcc-4.2 compiler by default on OS X, *" + echo "* so no build will run on earlier version than Mac OS X 10.5. *" + echo "* *" + echo "* Please run CONTRIBS_CC_LLVM=no ./bootstrap to disable this. *" echo "*****************************************************************" - set -x fi fi From brezhoneg1 at yahoo.fr Fri Feb 20 19:32:35 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Fri, 20 Feb 2009 19:32:35 +0100 Subject: [vlc-devel] RE : How to continue playing an online playlist with LibVLC? In-Reply-To: <2273df8$28e27b83$32ef2562$@com> Message-ID: <001401c99389$9a79dc90$a151fac1@CCCC> Hi, When using a media/media_player in libvlc, playlists (asx, m3u, xspf, dir, ...) are only parsed and never launched automatically. Once the parsing is done, a media_list made up of all the items found in the playlist is available at the media level. It's up to you to decide what to do with it. Erwan10 -----Message d'origine----- De?: vlc-devel-bounces at videolan.org [mailto:vlc-devel-bounces at videolan.org] De la part de Stream Alerts Envoy??: vendredi 20 f?vrier 2009 17:53 ??: vlc-devel at videolan.org Objet?: [vlc-devel] How to continue playing an online playlist with LibVLC? Hello! I'm having trouble figuring out how to make a LibVLC player play through a playlist found online. The player grabs the playlist and is able to parse it (in this case a Windows Media .ASX file) but after it finishes parsing, it just returns libvlc_MediaPlayerEndReached and does not actually play the streams in the list. If I open the same URL in VLC proper, it plays without any problems. Below is the debug output and the code and options I'm using. Thank you in advanced for any help ya'll can give me! Sincerely, Chris Larsen DEBUG: [00000001] main libvlc debug: VLC media player - version 0.9.8a Grishenko - (c) 1996-2008 the VideoLAN team [00000001] main libvlc debug: libvlc was configured with ./configure? '--host=i5 86-mingw32msvc' '--build=i386-linux' '--enable-mkv' '--enable-release' '--withou t-contrib' '--enable-nls' '--enable-shared-libvlc' '--enable-update-check' '--en able-lua' '--enable-faad' '--enable-flac' '--enable-theora' '--enable-twolame' ' --enable-quicktime' '--enable-real' '--enable-realrtsp' '--enable-ffmpeg' '--wit h-ffmpeg-mp3lame' '--with-ffmpeg-faac' '--with-ffmpeg-config-path=/usr/win32/bin ' '--with-ffmpeg-zlib' '--enable-live555' '--with-live555-tree=/usr/win32/live.c om' '--ena [00000001] main libvlc debug: translation test: code is "C" [00000001] main libvlc debug: checking builtin modules [00000001] main libvlc debug: checking plugin modules [00000001] main libvlc debug: recursively browsing `c:\VLC\vlc_tester\Debug\modules' [00000001] main libvlc debug: recursively browsing `c:\VLC\vlc_tester\Debug\plugins' [00000001] main libvlc debug: recursively browsing `C:\VLC\plugins' [00000001] main libvlc debug: module bank initialized, found 264 modules [00000001] main libvlc debug: CPU has capabilities 486 586 MMX MMXEXT SSE SSE2 F PU [00000001] main libvlc debug: looking for memcpy module: 3 candidates [00000001] main libvlc debug: using memcpy module "memcpymmxext" [00000360] main interaction debug: thread 4964 (Interaction control) created at priority 0 (interface/interaction.c:382) [00000360] main interaction debug: thread started [00000362] main input debug: Creating an input for 'Media Library' [00000362] main input debug: Input is a meta file: disabling unneeded options [00000362] main input debug: `file/xspf-open://C:\Users\~\AppData\Roaming\v lc\ml.xspf' gives access `file' demux `xspf-open' path `C:\Users\~\AppData\ Roaming\vlc\ml.xspf' [00000362] main input debug: creating access 'file' path='C:\Users\~\AppDat a\Roaming\vlc\ml.xspf' [00000363] main access debug: looking for access module: 2 candidates [00000363] access_file access debug: opening file `C:\Users\~\AppData\Roami ng\vlc\ml.xspf' [00000363] main access debug: using access module "access_file" [00000363] main access debug: TIMER module_Need() : 2.000 ms - Total 2.000 ms / 1 intvls (Avg 2.000 ms) [00000364] main stream debug: Using AStream*Stream [00000364] main stream debug: pre-buffering... [00000364] main stream debug: received first data for our buffer [00000362] main input debug: creating demux: access='file' demux='xspf-open' pat h='C:\Users\~\AppData\Roaming\vlc\ml.xspf' [00000365] main demux debug: looking for demux module: 1 candidate [00000365] playlist demux debug: using XSPF playlist reader [00000365] main demux debug: using demux module "playlist" [00000365] main demux debug: TIMER module_Need() : 2.000 ms - Total 2.000 ms / 1 ?intvls (Avg 2.000 ms) [00000362] main input debug: `file/xspf-open://C:\Users\~\AppData\Roaming\v lc\ml.xspf' successfully opened [00000366] main xml debug: looking for xml module: 2 candidates [00000366] main xml debug: using xml module "xml" [00000366] main xml debug: TIMER module_Need() : 1.000 ms - Total 1.000 ms / 1 i ntvls (Avg 1.000 ms) [00000365] playlist demux debug: parsed 0 tracks successfully [00000366] main xml debug: removing module "xml" [00000362] main input debug: EOF reached [00000362] main input debug: control type=1 [00000365] main demux debug: removing module "playlist" [00000363] main access debug: removing module "access_file" [00000362] main input debug: TIMER input launching for 'Media Library' : 21.000 ms - Total 21.000 ms / 1 intvls (Avg 21.000 ms) [00000367] main preparser debug: waiting for thread initialization [00000367] main preparser debug: thread started [00000367] main preparser debug: thread 5044 (preparser) created at priority 0 ( playlist/thread.c:79) [00000368] main fetcher debug: waiting for thread initialization [00000368] main fetcher debug: thread started [00000368] main fetcher debug: thread 5056 (fetcher) created at priority 0 (play list/thread.c:108) [00000361] main playlist debug: waiting for thread initialization [00000361] main playlist debug: thread started [00000361] main playlist debug: rebuilding array of current - root Playlist [00000361] main playlist debug: rebuild done - 0 items, index -1 [00000361] main playlist debug: thread 5052 (playlist) created at priority 0 (pl aylist/thread.c:117) [00000369] main interface debug: looking for interface module: 1 candidate [00000369] main interface debug: using interface module "hotkeys" [00000369] main interface debug: TIMER module_Need() : 1.000 ms - Total 1.000 ms ?/ 1 intvls (Avg 1.000 ms) [00000369] main interface debug: thread 5076 (interface) created at priority 0 ( interface/interface.c:168) [00000369] main interface debug: thread started [00000361] main playlist debug: adding item `' (? ) [00000361] main playlist debug: adding item `' (? ) [00000361] main playlist debug: adding item `' (? ) ----- try to play.... [00000370] main input debug: Creating an input for 'http://www.beethoven.com/bee thoven_ad.asx' [00000370] main input debug: waiting for thread initialization [00000370] main input debug: thread started [00000370] main input debug: `http://www.beethoven.com/beethoven_ad.asx' gives a ccess `http' demux `' path `www.beethoven.com/beethoven_ad.asx' [00000370] main input debug: thread 5188 (input) created at priority 1 (input/in put.c:370) [00000370] main input debug: creating demux: access='http' demux='' path='www.be ethoven.com/beethoven_ad.asx' [00000371] main demux debug: looking for access_demux module: 0 candidates [00000361] main playlist debug: no fetch required for http://www.beethoven.com/b eethoven_ad.asx (art currently (null)) State: 0 [00000371] main demux warning: no access_demux module matched "http" [00000371] main demux debug: TIMER module_Need() : 2.000 ms - Total 2.000 ms / 1 ?intvls (Avg 2.000 ms) [00000370] main input debug: creating access 'http' path='www.beethoven.com/beet hoven_ad.asx' [00000372] main access debug: looking for access module: 2 candidates [00000372] access_http access debug: http: server='www.beethoven.com' port=80 fi le='/beethoven_ad.asx [00000372] main access debug: net: connecting to www.beethoven.com port 80 [00000372] main access debug: connection: Resource temporarily unavailable [00000372] main access debug: connection succeeded (socket = 5360) [00000372] access_http access debug: protocol 'HTTP' answer code 206 [00000372] access_http access debug: this frame size=1482 [00000372] access_http access debug: Content-Type: video/x-ms-asf [00000372] access_http access debug: stream size=1482,pos=0,remaining=1482 [00000372] access_http access debug: Server: Microsoft-IIS/6.0 [00000372] access_http access debug: We have a Cookie we won't remember: Coyote- 2-ac10036f=ac10030a:0; path=/ [00000372] main access debug: using access module "access_http" [00000372] main access debug: TIMER module_Need() : 200.000 ms - Total 200.000 m s / 1 intvls (Avg 200.000 ms) [00000373] main stream debug: Using AStream*Stream [00000373] main stream debug: pre-buffering... [00000373] main stream debug: received first data for our buffer [00000370] main input debug: creating demux: access='http' demux='' path='www.be ethoven.com/beethoven_ad.asx' [00000374] main demux debug: looking for demux module: 51 candidates [00000374] playlist demux debug: found valid ASX playlist [00000374] main demux debug: using demux module "playlist" [00000374] main demux debug: TIMER module_Need() : 1.000 ms - Total 1.000 ms / 1 ?intvls (Avg 1.000 ms) [00000370] main input debug: `http://www.beethoven.com/beethoven_ad.asx' success fully opened @@@@@@@@@@@@@ Caught event: libvlc_MediaPlayerPlaying [00000374] playlist demux debug: param name strlen: 8 [00000374] playlist demux debug: param name: HTMLView [00000374] playlist demux debug: param name strlen: 8 [00000374] playlist demux debug: param name: HTMLView [00000374] playlist demux debug: param name strlen: 8 [00000374] playlist demux debug: param name: HTMLView [00000370] main input debug: EOF reached [00000370] main input debug: control type=1 @@@@@@@@@@@@@ Caught event: libvlc_MediaPlayerEndReached OPTIONS: -I dummy --vout dummy --aout dummy --no-plugins-cache --verbose=2 --no-video-title-show --ignore-config --no-sub-autodetect CODE: libvlc_exception_init (&ex); inst = libvlc_new (sizeof(vlc_args) / sizeof(vlc_args[0]), vlc_args, &ex); m = libvlc_media_new (inst, url.c_str(), &ex); mp = libvlc_media_player_new_from_media (m, &ex); libvlc_event_manager_t *em; em = libvlc_media_player_event_manager( mp, &ex ); libvlc_event_attach( em, libvlc_MediaPlayerPlaying, Media_State_Changed, NULL, &ex ); libvlc_event_attach( em, libvlc_MediaPlayerEndReached, Media_State_Changed, NULL, &ex ); libvlc_media_player_play (mp, &ex); Sleep(INFINITE); From sashipa.ben at gmail.com Fri Feb 20 19:39:15 2009 From: sashipa.ben at gmail.com (=?UTF-8?B?w5/RlMWL?=) Date: Fri, 20 Feb 2009 19:39:15 +0100 Subject: [vlc-devel] [PATCH] file extension manager (fixed patch) In-Reply-To: <200902201752.58895.rem@videolan.org> References: <1e0b1f250902181827h23b9dbd2r408ef950bf75a35c@mail.gmail.com> <1e0b1f250902200722v25c578b5s73877cf0fa9f3d84@mail.gmail.com> <200902201752.58895.rem@videolan.org> Message-ID: <1e0b1f250902201039u20c60109pe9a3d43a23ed72e3@mail.gmail.com> > If you want to be pedantic... > > size_t is defined as the return type of the sizeof() operator, and is hence > the natural type for (unsigned) array item index. int is defined as at least > 16-bits. This is wrong. > I was more pratical than pedantic and I see no contradiction. You can easily imagine memory models where size_t is not the best possible index for small loop. Thus int is not neccessary the best either but as it is used by tonnes of program (I won't explain bit to gram conversion :P) pre or post size_t standardisation so compilers have to deals with it. But as I don't care much I will change it to size_t or remove index and use pointer increments instead. >> But it's your call but i'm pretty sure most loop in VLC code use int index. > > Old code does, especially due to the table macros. Most newer code uses > size_t. > >> > We can have multiple instances in a single process, in the same or in >> > different thread. >> >> Multiple instances of the core ? > > We can have multiple instances created from the same thread as well as > different threads of the same process. > >> I mean there is necessary a part of the code that initialise things >> before the program forks into thread or process. > > Only on Windows. There we have the DLL entry point in src/misc/threads.c. > >> If it is a process, I don't care. Each have to initialise its >> extension pool by calling fileext_init() or used an already initialised one >> that became two of them after the fork. > > Actually, LibVLC cannot live through fork(). > >> Only thread trigger race condition so I have to be sure that fileext_Init() >> is called before any thread that might call fileext public function is >> created. I thought the part of the code I have added my init call was >> matching this condition. > > That place is called before the running LibVLC instance creates threads. But > we can make no assumption about the caller of LibVLC, or other LibVLC > instances. > >> If not please tell me where I have to do put it. > Ok if I understood well you mean I can't use static data (except for const) ? -- B. From jb at videolan.org Fri Feb 20 19:54:21 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Fri, 20 Feb 2009 19:54:21 +0100 Subject: [vlc-devel] RE : [PATCH] -- corrects two skins2 crashes In-Reply-To: <001601c9935b$6a60b700$8e55fac1@CCCC> References: <20090220085139.GA12068@videolan.org> <001601c9935b$6a60b700$8e55fac1@CCCC> Message-ID: <20090220185421.GA4794@videolan.org> On Fri, Feb 20, 2009 at 02:01:56PM +0100, brezhoneg1 wrote : > Are they really that broken? Here, yes :D > I've tested them with latest git on Linux and the 2009-02-11 build from > your web site on Windows. > Here are the feedbacks: > > - On Linux > The only big problem was crashes when no video widget is visible (Null > pointer which means crashing at the vout level) (corrected by the patch) And applied. > - On Windows > In the 2009-02-11 build, skin.dtd and skin.catalog were missing. I had > to retrieve them elsewhere and copy them to the default skins directory. Build system issue, not really important, but still the skin.dtd and catalog are not moved to $(builddir)/share... > - Design issue > When a skin has got a video window in a hidden state, it could be better > to trigger showing the video window and use it rather than deliver a > null pointer to vout which then spawns a non-skinned window. Patch? > To wrap it up, > - one patch (rather straightforward and self-explanatory) to prevent > crashes on Linux > - sbdy has to make sure Windows build does ship skin.dtd and > skin.catalog > - In future (paradise?), design issue should be looked at To me, there are more issues, especially the skin reparenting of video outputs (see trac) Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Fri Feb 20 20:26:13 2009 From: git at videolan.org (git version control) Date: Fri, 20 Feb 2009 20:26:13 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_contribs=3A_remove_non-working_co?= =?utf-8?q?mpilation_support_for_OS_X_Tiger_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090220192613.D6EF02FB30@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Fri Feb 20 20:26:06 2009 +0100| [e4fa3e2f367910c1ead73c660fafdacfa054985a] | committer: Felix Paul K?hne contribs: remove non-working compilation support for OS X Tiger > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e4fa3e2f367910c1ead73c660fafdacfa054985a --- extras/contrib/bootstrap | 34 ++++++++-------------------------- 1 files changed, 8 insertions(+), 26 deletions(-) diff --git a/extras/contrib/bootstrap b/extras/contrib/bootstrap index 3b2bcec..3e41d47 100755 --- a/extras/contrib/bootstrap +++ b/extras/contrib/bootstrap @@ -109,38 +109,20 @@ esac case $HOST in ppc-darwin) -# Mac OS X < 10.4 + # Mac OS X < 10.4 echo "Your version of Mac OS X is too old!" >&2 - echo "Compiling VLC requires 10.4.x or later" >&2 + echo "Compiling VLC requires 10.5.x or later" >&2 exit 1 ;; powerpc-apple-darwin8) -# Mac OS X 10.4 or 10.5 with Xcode 2.5 -# Makefile cross compiling is only supported with gcc-4.0 -# ENVP defines the oldest environment on which the program will be able to run - SDK_TARGET=10.4 - echo "SDK_TARGET = ${SDK_TARGET}" >> config.mak - echo "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}" >> config.mak - echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk" >> config.mak - CFLAGS_TUNING=" -arch ppc -mtune=G4" - EXTRA_CFLAGS=" -D\${ENVP} -mmacosx-version-min=\${SDK_TARGET}" - CC="gcc -isysroot \${MACOSX_SDK}" - CXX="g++ -isysroot \${MACOSX_SDK}" - LD="ld -arch ppc -syslibroot \${MACOSX_SDK}" - echo "PATH = /bin:/usr/bin:/usr/local/bin" >> config.mak - cat src/Distributions/darwin.mak >> distro.mak + echo "Your version of Mac OS X is too old!" >&2 + echo "Compiling and running VLC requires 10.5.x or later" >&2 + exit 1 ;; i686-apple-darwin8) - SDK_TARGET=10.4 - echo "SDK_TARGET = ${SDK_TARGET}" >> config.mak - echo "HAVE_DARWIN_OS_ON_INTEL = 1" >> config.mak - echo "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}" >> config.mak - echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk" >> config.mak - CFLAGS_TUNING=" -march=pentium-m -mtune=prescott" - EXTRA_CFLAGS=" -D\${ENVP} -isysroot \${MACOSX_SDK} -mmacosx-version-min=\${SDK_TARGET}" - EXTRA_LDFLAGS=" -isysroot \${MACOSX_SDK} -Wl,-syslibroot,\${MACOSX_SDK}" - echo "PATH = /bin:/usr/bin:/usr/local/bin" >> config.mak - cat src/Distributions/darwin.mak >> distro.mak + echo "Your version of Mac OS X is too old!" >&2 + echo "Compiling and running VLC requires 10.5.x or later" >&2 + exit 1 ;; powerpc-apple-darwin9) # Mac OS X 10.5 with Xcode 3, specific rules apply From support at streamalerts.com Fri Feb 20 21:40:10 2009 From: support at streamalerts.com (Stream Alerts) Date: Fri, 20 Feb 2009 15:40:10 -0500 Subject: [vlc-devel] RE : How to continue playing an online playlist with LibVLC? Message-ID: <70ddf280$1045d656$3cbea4f9$@com> Thank you Erwan10! That makes sense. How do I extract that media_list after the playlist is parsed? libvlc_media_subitems()? I tried refreshing my media object with libvlc_media_player_get_media() and then called libvlc_media_subitems() but it returned a null pointer. How else can I grab the information? Thanks! Sincerely, Chris Larsen ---------------------------------------- From: "brezhoneg1" Sent: Friday, February 20, 2009 1:33 PM To: "Mailing list for VLC media player developers" Subject: [vlc-devel] RE : How to continue playing an online playlist with LibVLC? Hi, When using a media/media_player in libvlc, playlists (asx, m3u, xspf, dir, ...) are only parsed and never launched automatically. Once the parsing is done, a media_list made up of all the items found in the playlist is available at the media level. It's up to you to decide what to do with it. Erwan10 -----Message d'origine----- De : vlc-devel-bounces at videolan.org [mailto:vlc-devel-bounces at videolan.org] De la part de Stream Alerts Envoy? : vendredi 20 f?vrier 2009 17:53 ? : vlc-devel at videolan.org Objet : [vlc-devel] How to continue playing an online playlist with LibVLC? Hello! I'm having trouble figuring out how to make a LibVLC player play through a playlist found online. The player grabs the playlist and is able to parse it (in this case a Windows Media .ASX file) but after it finishes parsing, it just returns libvlc_MediaPlayerEndReached and does not actually play the streams in the list. If I open the same URL in VLC proper, it plays without any problems. Below is the debug output and the code and options I'm using. Thank you in advanced for any help ya'll can give me! Sincerely, Chris Larsen DEBUG: [00000001] main libvlc debug: VLC media player - version 0.9.8a Grishenko - (c) 1996-2008 the VideoLAN team [00000001] main libvlc debug: libvlc was configured with ./configure '--host=i5 86-mingw32msvc' '--build=i386-linux' '--enable-mkv' '--enable-release' '--withou t-contrib' '--enable-nls' '--enable-shared-libvlc' '--enable-update-check' '--en able-lua' '--enable-faad' '--enable-flac' '--enable-theora' '--enable-twolame' ' --enable-quicktime' '--enable-real' '--enable-realrtsp' '--enable-ffmpeg' '--wit h-ffmpeg-mp3lame' '--with-ffmpeg-faac' '--with-ffmpeg-config-path=/usr/win32/bin ' '--with-ffmpeg-zlib' '--enable-live555' '--with-live555-tree=/usr/win32/live.c om' '--ena [00000001] main libvlc debug: translation test: code is "C" [00000001] main libvlc debug: checking builtin modules [00000001] main libvlc debug: checking plugin modules [00000001] main libvlc debug: recursively browsing `c:\VLC\vlc_tester\Debug\modules' [00000001] main libvlc debug: recursively browsing `c:\VLC\vlc_tester\Debug\plugins' [00000001] main libvlc debug: recursively browsing `C:\VLC\plugins' [00000001] main libvlc debug: module bank initialized, found 264 modules [00000001] main libvlc debug: CPU has capabilities 486 586 MMX MMXEXT SSE SSE2 F PU [00000001] main libvlc debug: looking for memcpy module: 3 candidates [00000001] main libvlc debug: using memcpy module "memcpymmxext" [00000360] main interaction debug: thread 4964 (Interaction control) created at priority 0 (interface/interaction.c:382) [00000360] main interaction debug: thread started [00000362] main input debug: Creating an input for 'Media Library' [00000362] main input debug: Input is a meta file: disabling unneeded options [00000362] main input debug: `file/xspf-open://C:\Users\~\AppData\Roaming\v lc\ml.xspf' gives access `file' demux `xspf-open' path `C:\Users\~\AppData\ Roaming\vlc\ml.xspf' [00000362] main input debug: creating access 'file' path='C:\Users\~\AppDat a\Roaming\vlc\ml.xspf' [00000363] main access debug: looking for access module: 2 candidates [00000363] access_file access debug: opening file `C:\Users\~\AppData\Roami ng\vlc\ml.xspf' [00000363] main access debug: using access module "access_file" [00000363] main access debug: TIMER module_Need() : 2.000 ms - Total 2.000 ms / 1 intvls (Avg 2.000 ms) [00000364] main stream debug: Using AStream*Stream [00000364] main stream debug: pre-buffering... [00000364] main stream debug: received first data for our buffer [00000362] main input debug: creating demux: access='file' demux='xspf-open' pat h='C:\Users\~\AppData\Roaming\vlc\ml.xspf' [00000365] main demux debug: looking for demux module: 1 candidate [00000365] playlist demux debug: using XSPF playlist reader [00000365] main demux debug: using demux module "playlist" [00000365] main demux debug: TIMER module_Need() : 2.000 ms - Total 2.000 ms / 1 intvls (Avg 2.000 ms) [00000362] main input debug: `file/xspf-open://C:\Users\~\AppData\Roaming\v lc\ml.xspf' successfully opened [00000366] main xml debug: looking for xml module: 2 candidates [00000366] main xml debug: using xml module "xml" [00000366] main xml debug: TIMER module_Need() : 1.000 ms - Total 1.000 ms / 1 i ntvls (Avg 1.000 ms) [00000365] playlist demux debug: parsed 0 tracks successfully [00000366] main xml debug: removing module "xml" [00000362] main input debug: EOF reached [00000362] main input debug: control type=1 [00000365] main demux debug: removing module "playlist" [00000363] main access debug: removing module "access_file" [00000362] main input debug: TIMER input launching for 'Media Library' : 21.000 ms - Total 21.000 ms / 1 intvls (Avg 21.000 ms) [00000367] main preparser debug: waiting for thread initialization [00000367] main preparser debug: thread started [00000367] main preparser debug: thread 5044 (preparser) created at priority 0 ( playlist/thread.c:79) [00000368] main fetcher debug: waiting for thread initialization [00000368] main fetcher debug: thread started [00000368] main fetcher debug: thread 5056 (fetcher) created at priority 0 (play list/thread.c:108) [00000361] main playlist debug: waiting for thread initialization [00000361] main playlist debug: thread started [00000361] main playlist debug: rebuilding array of current - root Playlist [00000361] main playlist debug: rebuild done - 0 items, index -1 [00000361] main playlist debug: thread 5052 (playlist) created at priority 0 (pl aylist/thread.c:117) [00000369] main interface debug: looking for interface module: 1 candidate [00000369] main interface debug: using interface module "hotkeys" [00000369] main interface debug: TIMER module_Need() : 1.000 ms - Total 1.000 ms / 1 intvls (Avg 1.000 ms) [00000369] main interface debug: thread 5076 (interface) created at priority 0 ( interface/interface.c:168) [00000369] main interface debug: thread started [00000361] main playlist debug: adding item `' ( ) [00000361] main playlist debug: adding item `' ( ) [00000361] main playlist debug: adding item `' ( ) ----- try to play.... [00000370] main input debug: Creating an input for 'http://www.beethoven.com/bee thoven_ad.asx' [00000370] main input debug: waiting for thread initialization [00000370] main input debug: thread started [00000370] main input debug: `http://www.beethoven.com/beethoven_ad.asx' gives a ccess `http' demux `' path `www.beethoven.com/beethoven_ad.asx' [00000370] main input debug: thread 5188 (input) created at priority 1 (input/in put.c:370) [00000370] main input debug: creating demux: access='http' demux='' path='www.be ethoven.com/beethoven_ad.asx' [00000371] main demux debug: looking for access_demux module: 0 candidates [00000361] main playlist debug: no fetch required for http://www.beethoven.com/b eethoven_ad.asx (art currently (null)) State: 0 [00000371] main demux warning: no access_demux module matched "http" [00000371] main demux debug: TIMER module_Need() : 2.000 ms - Total 2.000 ms / 1 intvls (Avg 2.000 ms) [00000370] main input debug: creating access 'http' path='www.beethoven.com/beet hoven_ad.asx' [00000372] main access debug: looking for access module: 2 candidates [00000372] access_http access debug: http: server='www.beethoven.com' port=80 fi le='/beethoven_ad.asx [00000372] main access debug: net: connecting to www.beethoven.com port 80 [00000372] main access debug: connection: Resource temporarily unavailable [00000372] main access debug: connection succeeded (socket = 5360) [00000372] access_http access debug: protocol 'HTTP' answer code 206 [00000372] access_http access debug: this frame size=1482 [00000372] access_http access debug: Content-Type: video/x-ms-asf [00000372] access_http access debug: stream size=1482,pos=0,remaining=1482 [00000372] access_http access debug: Server: Microsoft-IIS/6.0 [00000372] access_http access debug: We have a Cookie we won't remember: Coyote- 2-ac10036f=ac10030a:0; path=/ [00000372] main access debug: using access module "access_http" [00000372] main access debug: TIMER module_Need() : 200.000 ms - Total 200.000 m s / 1 intvls (Avg 200.000 ms) [00000373] main stream debug: Using AStream*Stream [00000373] main stream debug: pre-buffering... [00000373] main stream debug: received first data for our buffer [00000370] main input debug: creating demux: access='http' demux='' path='www.be ethoven.com/beethoven_ad.asx' [00000374] main demux debug: looking for demux module: 51 candidates [00000374] playlist demux debug: found valid ASX playlist [00000374] main demux debug: using demux module "playlist" [00000374] main demux debug: TIMER module_Need() : 1.000 ms - Total 1.000 ms / 1 intvls (Avg 1.000 ms) [00000370] main input debug: `http://www.beethoven.com/beethoven_ad.asx' success fully opened @@@@@@@@@@@@@ Caught event: libvlc_MediaPlayerPlaying [00000374] playlist demux debug: param name strlen: 8 [00000374] playlist demux debug: param name: HTMLView [00000374] playlist demux debug: param name strlen: 8 [00000374] playlist demux debug: param name: HTMLView [00000374] playlist demux debug: param name strlen: 8 [00000374] playlist demux debug: param name: HTMLView [00000370] main input debug: EOF reached [00000370] main input debug: control type=1 @@@@@@@@@@@@@ Caught event: libvlc_MediaPlayerEndReached OPTIONS: -I dummy --vout dummy --aout dummy --no-plugins-cache --verbose=2 --no-video-title-show --ignore-config --no-sub-autodetect CODE: libvlc_exception_init (&ex); inst = libvlc_new (sizeof(vlc_args) / sizeof(vlc_args[0]), vlc_args, &ex); m = libvlc_media_new (inst, url.c_str(), &ex); mp = libvlc_media_player_new_from_media (m, &ex); libvlc_event_manager_t *em; em = libvlc_media_player_event_manager( mp, &ex ); libvlc_event_attach( em, libvlc_MediaPlayerPlaying, Media_State_Changed, NULL, &ex ); libvlc_event_attach( em, libvlc_MediaPlayerEndReached, Media_State_Changed, NULL, &ex ); libvlc_media_player_play (mp, &ex); Sleep(INFINITE); _______________________________________________ vlc-devel mailing list To unsubscribe or modify your subscription options: http://mailman.videolan.org/listinfo/vlc-devel -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Sat Feb 21 00:54:25 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 00:54:25 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_improved_font_selection?= =?utf-8?q?_in_the_simple_prefs_by_using_the_10_=2E5_API_=28_Felix_Paul_K?= =?utf-8?b?w7xobmUgKQ==?= Message-ID: <20090220235425.CC1032FA16@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Sat Feb 21 00:50:42 2009 +0100| [de50f7f2d5bce022db38bc7aa21feea61ae4b655] | committer: Felix Paul K?hne macosx: improved font selection in the simple prefs by using the 10.5 API > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=de50f7f2d5bce022db38bc7aa21feea61ae4b655 --- modules/gui/macosx/simple_prefs.m | 8 +------- 1 files changed, 1 insertions(+), 7 deletions(-) diff --git a/modules/gui/macosx/simple_prefs.m b/modules/gui/macosx/simple_prefs.m index 81dc192..00011b4 100644 --- a/modules/gui/macosx/simple_prefs.m +++ b/modules/gui/macosx/simple_prefs.m @@ -1059,11 +1059,6 @@ static inline void save_module_list( intf_thread_t * p_intf, id object, const ch [o_video_snap_folder_fld setStringValue: [o_selectFolderPanel filename]]; b_videoSettingChanged = YES; } - else if( contextInfo == o_osd_font_btn ) - { - [o_osd_font_fld setStringValue: [o_selectFolderPanel filename]]; - b_osdSettingChanged = YES; - } } [o_selectFolderPanel release]; @@ -1095,8 +1090,7 @@ static inline void save_module_list( intf_thread_t * p_intf, id object, const ch NSFont * font = [NSFont fontWithDescriptor:[fd fontDescriptorWithFamily:fontFamilyName] textTransform:nil]; [[NSFontManager sharedFontManager] setSelectedFont:font isMultiple:NO]; } - [[NSFontManager sharedFontManager] setDelegate: self]; - [o_sprefs_win makeFirstResponder: o_sprefs_win]; + [[NSFontManager sharedFontManager] setTarget: self]; [[NSFontPanel sharedFontPanel] orderFront:self]; } From git at videolan.org Sat Feb 21 00:54:25 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 00:54:25 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_fixed_make_dist_=28_Felix_Paul_K?= =?utf-8?b?w7xobmUgKQ==?= Message-ID: <20090220235425.DD6D52FB19@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Sat Feb 21 00:54:00 2009 +0100| [c609bd896bad57b76befe29770e0ff56c10dbf2e] | committer: Felix Paul K?hne fixed make dist > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c609bd896bad57b76befe29770e0ff56c10dbf2e --- Makefile.am | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/Makefile.am b/Makefile.am index e3a87d2..0e81341 100644 --- a/Makefile.am +++ b/Makefile.am @@ -272,7 +272,6 @@ EXTRA_DIST += \ extras/package/macosx/plugin/InstallerInfo.plist.in \ extras/package/macosx/plugin/InstallerDescription.plist \ extras/package/macosx/plugin/pbdevelopment.plist \ - extras/package/macosx/plugin/English.lproj/InfoPlist.strings.in \ extras/package/macosx/eyetvplugin/EyeTVPluginDefs.h \ extras/package/macosx/eyetvplugin/Info.plist \ extras/package/macosx/eyetvplugin/eyetvplugin.c \ From rem at videolan.org Sat Feb 21 09:22:17 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 21 Feb 2009 10:22:17 +0200 Subject: [vlc-devel] [PATCH] file extension manager (fixed patch) In-Reply-To: <1e0b1f250902201039u20c60109pe9a3d43a23ed72e3@mail.gmail.com> References: <1e0b1f250902181827h23b9dbd2r408ef950bf75a35c@mail.gmail.com> <200902201752.58895.rem@videolan.org> <1e0b1f250902201039u20c60109pe9a3d43a23ed72e3@mail.gmail.com> Message-ID: <200902211022.19183.rem@videolan.org> Le vendredi 20 f?vrier 2009 20:39:15 ???, vous avez ?crit?: > Ok if I understood well you mean I can't use static data (except for const) > ? You can, if it is protected by a static mutex, reference counted properly, and can do something sensible when there are multiple instances using it. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Sat Feb 21 09:38:54 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 09:38:54 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Update_HACKING_=28_R=C3=A9mi_Deni?= =?utf-8?q?s-Courmont_=29?= Message-ID: <20090221083854.483332F901@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 10:38:22 2009 +0200| [498b9a3688a4b28acad4ec4e5e55fe68f77866bf] | committer: R?mi Denis-Courmont Update HACKING > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=498b9a3688a4b28acad4ec4e5e55fe68f77866bf --- HACKING | 8 ++------ 1 files changed, 2 insertions(+), 6 deletions(-) diff --git a/HACKING b/HACKING index 5003540..804a186 100644 --- a/HACKING +++ b/HACKING @@ -47,17 +47,13 @@ The bootstrap script does the following actions: Modules.am file. A module "foo" exists if there is a Modules.am file in the modules/ directory which defines SOURCES_foo. - - create a top-level Modules.am file (which will be included by Makefile.am) - which contains additional build rules for modules, and includes all the - Modules.am files that were found in modules/ - - create an m4/private.m4 from configure.ac, generating m4 macros that will be needed by configure.ac. - create a Makefile.am file for each Modules.am file found in modules/ . - - run autopoint (previously gettextize) to create an intl/ directory, - needed when libgettext is not available. + - run autopoint (previously gettextize) to provide build system support + for internationalization. - run the usual aclocal, autoheader, automake and autoconf, which create the various Makefile.in files from the corresponding Makefile.am and the From git at videolan.org Sat Feb 21 10:53:21 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 10:53:21 +0100 (CET) Subject: [vlc-devel] commit: Qt: reverse Button. (Jean-Baptiste Kempf ) Message-ID: <20090221095321.C5C692F8FE@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 21 10:45:38 2009 +0100| [a04b972d1ee9bfd55f063ff1b3e415ab24163a2f] | committer: Jean-Baptiste Kempf Qt: reverse Button. Make it checkable, change the text for the toolbar editor and show it only on input. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a04b972d1ee9bfd55f063ff1b3e415ab24163a2f --- modules/gui/qt4/components/controller.cpp | 6 +++++- modules/gui/qt4/components/controller.hpp | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp index b9e60d1..3cb2d23 100644 --- a/modules/gui/qt4/components/controller.cpp +++ b/modules/gui/qt4/components/controller.cpp @@ -380,7 +380,11 @@ QWidget *AbstractController::createWidget( buttonType_e button, int options ) setupButton( reverseButton ); CONNECT_MAP_SET( reverseButton, REVERSE_ACTION ); BUTTON_SET_BAR( reverseButton ); - ENABLE_ON_INPUT( reverseButton ); + reverseButton->setCheckable( true ); + /* You should, of COURSE change this to the correct event, + when/if we have one, that tells us if trickplay is possible . */ + CONNECT( this, inputExists( bool ), reverseButton, setVisible( bool ) ); + reverseButton->setVisible( false ); widget = reverseButton; } break; diff --git a/modules/gui/qt4/components/controller.hpp b/modules/gui/qt4/components/controller.hpp index 43e8f7c..43ae9be 100644 --- a/modules/gui/qt4/components/controller.hpp +++ b/modules/gui/qt4/components/controller.hpp @@ -101,7 +101,7 @@ typedef enum buttonType_e static const QString nameL[BUTTON_MAX] = { "Play", "Stop", "Open", "Previous", "Next", "Slower", "Faster", "Fullscreen", "De-Fullscreen", "Extended panel", "Playlist", "Snapshot", "Record", "A->B Loop", - "Frame By Frame", "Reverse", "Skip backward" , "Skip forward", + "Frame By Frame", "Trickplay Reverse", "Skip backward" , "Skip forward", "Quit" }; static const QString tooltipL[BUTTON_MAX] = { I_PLAY_TOOLTIP, _("Stop playback"), _("Open a media"), From git at videolan.org Sat Feb 21 10:56:15 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 10:56:15 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Support_for_opening_any_file_desc?= =?utf-8?q?riptor_with_fd=3A//_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090221095615.B95D12F8FE@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 11:55:14 2009 +0200| [3fc7274ffd449868982bd5fb2d5a98d81ffb25f7] | committer: R?mi Denis-Courmont Support for opening any file descriptor with fd:// > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3fc7274ffd449868982bd5fb2d5a98d81ffb25f7 --- modules/access/file.c | 15 ++++++++------- 1 files changed, 8 insertions(+), 7 deletions(-) diff --git a/modules/access/file.c b/modules/access/file.c index 91f2a84..555f1bd 100644 --- a/modules/access/file.c +++ b/modules/access/file.c @@ -88,6 +88,7 @@ vlc_module_begin () add_obsolete_string( "file-cat" ) set_capability( "access", 50 ) add_shortcut( "file" ) + add_shortcut( "fd" ) add_shortcut( "stream" ) set_callbacks( Open, Close ) vlc_module_end () @@ -121,8 +122,6 @@ static int Open( vlc_object_t *p_this ) access_t *p_access = (access_t*)p_this; access_sys_t *p_sys; - bool b_stdin = !strcmp (p_access->psz_path, "-"); - /* Update default_pts to a suitable value for file access */ var_Create( p_access, "file-caching", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT ); @@ -135,13 +134,17 @@ static int Open( vlc_object_t *p_this ) p_sys->b_pace_control = true; /* Open file */ - msg_Dbg (p_access, "opening file `%s'", p_access->psz_path); - int fd = -1; - if (b_stdin) + + if (!strcasecmp (p_access->psz_access, "fd")) + fd = dup (atoi (p_access->psz_path)); + else if (!strcmp (p_access->psz_path, "-")) fd = dup (0); else + { + msg_Dbg (p_access, "opening file `%s'", p_access->psz_path); fd = open_file (p_access, p_access->psz_path); + } if (fd == -1) goto error; @@ -165,8 +168,6 @@ static int Open( vlc_object_t *p_this ) else if (!S_ISBLK (st.st_mode)) p_access->pf_seek = NoSeek; #else - if (b_stdin) - p_access->pf_seek = NoSeek; # warning File size not known! #endif From git at videolan.org Sat Feb 21 10:59:31 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 10:59:31 +0100 (CET) Subject: [vlc-devel] commit: More NEWS. (Jean-Baptiste Kempf ) Message-ID: <20090221095931.A9FB62FB0E@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 21 10:58:13 2009 +0100| [16a3cb1bc6505191c1144fa52a295f87a4458ced] | committer: Jean-Baptiste Kempf More NEWS. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=16a3cb1bc6505191c1144fa52a295f87a4458ced --- NEWS | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/NEWS b/NEWS index aac52e5..86afb70 100644 --- a/NEWS +++ b/NEWS @@ -35,8 +35,9 @@ Access: * New OSS and Alsa accesses. The v4l2 and v4l modules no longer support OSS or Alsa audio input. Use --input-slave alsa:// or oss:// if needed. * DVB scanning on linux - * EXPERIMENTAL Blu-Ray Disc Folder support + * EXPERIMENTAL Blu-Ray Disc and AVCHD Folders support * On-the-fly zip file decompression and browsing (MRL of the form zip://file.zip|file.avi to specify the file) + * Opening of any file descriptor using 'fd://' Inputs: * Mouse cursor support in x11 and win32 screen modules From jb at videolan.org Sat Feb 21 11:08:39 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 21 Feb 2009 11:08:39 +0100 Subject: [vlc-devel] [RFC] stream quality indicator on qt4 In-Reply-To: <58909A1972DA06479F516447E272A2C801A12D21@CPEXBE-EML19.kpnsp.local> References: <58909A1972DA06479F516447E272A2C801A12D21@CPEXBE-EML19.kpnsp.local> Message-ID: <20090221100839.GA14759@videolan.org> On Fri, Feb 20, 2009 at 06:26:32PM +0100, jean-paul.saman at planet.nl wrote : > A client of mine is interested in having an indication on the quality of the input stream displayed in the Statistics dialog window. I cooked up the attached patch to count the number of BLOCK_FLAG_CORRUPTED occurrences which should be an indication of missing data and thus also 'quality'. > > Please comment on this idea: > 1) Is this the right approach? > 2) Is it safe enough to get into 1.0.0 release? At least, it is ok on the Qt4 side. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Sat Feb 21 11:49:03 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 11:49:03 +0100 (CET) Subject: [vlc-devel] commit: Qt reverse for trickplay: show the button by default, and show it only when trickplay is possible. (Jean-Baptiste Kempf ) Message-ID: <20090221104903.6C1002FB19@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 21 11:46:09 2009 +0100| [e6072d0d9ce86621feadde64471f749671f15b8b] | committer: Jean-Baptiste Kempf Qt reverse for trickplay: show the button by default, and show it only when trickplay is possible. It is based on the "can-rewind" variable. This may be wrong, if so, tell me so and I'll revert this. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e6072d0d9ce86621feadde64471f749671f15b8b --- modules/gui/qt4/components/controller.cpp | 5 ++++- modules/gui/qt4/components/controller.hpp | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp index 3cb2d23..e1aaad1 100644 --- a/modules/gui/qt4/components/controller.cpp +++ b/modules/gui/qt4/components/controller.cpp @@ -79,6 +79,9 @@ void AbstractController::setStatus( int status ) emit inputIsRecordable( b_hasInput && var_GetBool( THEMIM->getInput(), "can-record" ) ); + + emit inputIsTrickPlayable( b_hasInput && + var_GetBool( THEMIM->getInput(), "can-rewind" ) ); } /* Generic button setup */ @@ -383,7 +386,7 @@ QWidget *AbstractController::createWidget( buttonType_e button, int options ) reverseButton->setCheckable( true ); /* You should, of COURSE change this to the correct event, when/if we have one, that tells us if trickplay is possible . */ - CONNECT( this, inputExists( bool ), reverseButton, setVisible( bool ) ); + CONNECT( this, inputIsTrickPlayable( bool ), reverseButton, setVisible( bool ) ); reverseButton->setVisible( false ); widget = reverseButton; } diff --git a/modules/gui/qt4/components/controller.hpp b/modules/gui/qt4/components/controller.hpp index 43ae9be..4a6b73e 100644 --- a/modules/gui/qt4/components/controller.hpp +++ b/modules/gui/qt4/components/controller.hpp @@ -38,7 +38,7 @@ #define MAIN_TB1_DEFAULT "64;39;64;38;65" #define MAIN_TB2_DEFAULT "0-2;64;3;1;4;64;7;10;9;64-4;37;65;35-4" #define ADV_TB_DEFAULT "12;11;13;14" -#define INPT_TB_DEFAULT "5-1;33;6-1" +#define INPT_TB_DEFAULT "5-1;15-1;33;6-1" #define FSC_TB_DEFAULT "0-2;64;3;1;4;64;37;64;38;64;8;65;35-4;34" @@ -162,6 +162,7 @@ signals: void inputExists( bool ); /// This might be usefull in the IM ? void inputPlaying( bool ); /// This might be usefull in the IM ? void inputIsRecordable( bool ); /// same ? + void inputIsTrickPlayable( bool ); /// same ? }; /* Advanced Button Bar */ From fkuehne.videolan at googlemail.com Sat Feb 21 12:17:32 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Sat, 21 Feb 2009 12:17:32 +0100 Subject: [vlc-devel] [RFC] stream quality indicator on qt4 In-Reply-To: <20090221100839.GA14759@videolan.org> References: <58909A1972DA06479F516447E272A2C801A12D21@CPEXBE-EML19.kpnsp.local> <20090221100839.GA14759@videolan.org> Message-ID: <3E4B728D-A3F2-49CE-B648-BF561E30F0C0@gmail.com> Am 21.02.2009 um 11:08 schrieb Jean-Baptiste Kempf: > On Fri, Feb 20, 2009 at 06:26:32PM +0100, jean-paul.saman at planet.nl > wrote : >> A client of mine is interested in having an indication on the >> quality of the input stream displayed in the Statistics dialog >> window. I cooked up the attached patch to count the number of >> BLOCK_FLAG_CORRUPTED occurrences which should be an indication of >> missing data and thus also 'quality'. >> >> Please comment on this idea: >> 1) Is this the right approach? >> 2) Is it safe enough to get into 1.0.0 release? > > At least, it is ok on the Qt4 side. Probably easy to port to the OSX interface too. I could take care of this, if desired. Best regards, Felix From jean-paul.saman at planet.nl Sat Feb 21 12:35:32 2009 From: jean-paul.saman at planet.nl (jean-paul.saman at planet.nl) Date: Sat, 21 Feb 2009 12:35:32 +0100 Subject: [vlc-devel] [RFC] stream quality indicator on qt4 References: <58909A1972DA06479F516447E272A2C801A12D21@CPEXBE-EML19.kpnsp.local><20090221100839.GA14759@videolan.org> <3E4B728D-A3F2-49CE-B648-BF561E30F0C0@gmail.com> Message-ID: <58909A1972DA06479F516447E272A2C801A12D23@CPEXBE-EML19.kpnsp.local> Indeed that would be nice and consistent along all interfaces. Can I assume there is no objection against this going into 1.0.0-git ?? -----Original Message----- From: vlc-devel-bounces at videolan.org on behalf of Felix Paul K?hne Sent: Sat 2/21/2009 12:17 PM To: Mailing list for VLC media player developers Subject: Re: [vlc-devel] [RFC] stream quality indicator on qt4 Am 21.02.2009 um 11:08 schrieb Jean-Baptiste Kempf: > On Fri, Feb 20, 2009 at 06:26:32PM +0100, jean-paul.saman at planet.nl > wrote : >> A client of mine is interested in having an indication on the >> quality of the input stream displayed in the Statistics dialog >> window. I cooked up the attached patch to count the number of >> BLOCK_FLAG_CORRUPTED occurrences which should be an indication of >> missing data and thus also 'quality'. >> >> Please comment on this idea: >> 1) Is this the right approach? >> 2) Is it safe enough to get into 1.0.0 release? > > At least, it is ok on the Qt4 side. Probably easy to port to the OSX interface too. I could take care of this, if desired. Best regards, Felix _______________________________________________ vlc-devel mailing list To unsubscribe or modify your subscription options: http://mailman.videolan.org/listinfo/vlc-devel -------------- next part -------------- An HTML attachment was scrubbed... URL: From georg.seifert at gmx.de Sat Feb 21 12:42:28 2009 From: georg.seifert at gmx.de (Georg Seifert) Date: Sat, 21 Feb 2009 12:42:28 +0100 Subject: [vlc-devel] Leopard: setContentBorderThickness Message-ID: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> hello, Is for 1.0 the support for Tiger is dropped, I will bring the setContentBorderThickness issue up again. (You can leave the checking out) > > @implementation VLCEmbeddedWindow > > - (id)initWithContentRect:(NSRect)contentRect styleMask: > (NSUInteger)windowStyle backing:(NSBackingStoreType)bufferingType > defer:(BOOL)deferCreation > { > BOOL useTextured = YES; > if([[NSWindow class] > instancesRespondToSelector > :@selector(setContentBorderThickness:forEdge:)]) > { > useTextured = NO; > windowStyle ^= NSTexturedBackgroundWindowMask; > } > self = [super initWithContentRect:contentRect styleMask:windowStyle > backing:bufferingType defer:deferCreation]; > if(!useTextured) > { > [self setContentBorderThickness:29.0 forEdge:NSMinYEdge]; > } > return self; > } There might be some tweaking of the nib-file necessary (using a more Leopard like button style). If anyone could try it out as I?m not able to build with the newest git. Regards Georg -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Sat Feb 21 12:58:00 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 12:58:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_contribs=3A_use_a_specific_pre-re?= =?utf-8?q?lease_version_of_LibSDL_1=2E_3_for_Darwin_=28already_covered_by?= =?utf-8?q?_the_5th_contribs_package=29_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090221115800.CA4D32FB4E@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Sat Feb 21 12:49:15 2009 +0100| [5c3061c517f36ec9faa225053d0e51c0e0a526e8] | committer: Felix Paul K?hne contribs: use a specific pre-release version of LibSDL 1.3 for Darwin (already covered by the 5th contribs package) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5c3061c517f36ec9faa225053d0e51c0e0a526e8 --- extras/contrib/src/Makefile | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 394bdd3..65ddd7d 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -2119,14 +2119,20 @@ CLEAN_PKG += tiff DISTCLEAN_PKG += tiff-$(TIFF_VERSION).tar.gz # *************************************************************************** -# SDL +# LibSDL # *************************************************************************** +ifndef HAVE_DARWIN_OS SDL-$(SDL_VERSION).tar.gz: $(WGET) $(SDL_URL) SDL: SDL-$(SDL_VERSION).tar.gz $(EXTRACT_GZ) +else +SDL: + $(SVN) co http://svn.libsdl.org/trunk/SDL -r 4444 SDL + (cd $@; sh autogen.sh) +endif .SDL: SDL (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-audio --disable-video-x11 --disable-video-aalib --disable-video-dga --disable-video-fbcon --disable-video-directfb --disable-video-ggi --disable-video-svga --disable-directx --enable-joystick --disable-cdrom --disable-threads --disable-sdl-dlopen CFLAGS="$(CFLAGS)" && make && make install) From git at videolan.org Sat Feb 21 12:58:00 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 12:58:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_contribs=3A_be_sexy_by_default_ak?= =?utf-8?q?a_apply_-DNDEBUG_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090221115800.DB0E32FB97@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Sat Feb 21 12:53:05 2009 +0100| [dd1639cd4c46101f65dc4cbd407f6daf9f34d9f5] | committer: Felix Paul K?hne contribs: be sexy by default aka apply -DNDEBUG > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dd1639cd4c46101f65dc4cbd407f6daf9f34d9f5 --- extras/contrib/bootstrap | 11 ++++------- 1 files changed, 4 insertions(+), 7 deletions(-) diff --git a/extras/contrib/bootstrap b/extras/contrib/bootstrap index 3e41d47..9594145 100755 --- a/extras/contrib/bootstrap +++ b/extras/contrib/bootstrap @@ -345,17 +345,14 @@ else fi if test -z "$CONTRIBS_RELEASE"; then + echo "EXTRA_CFLAGS += -DNDEBUG" >> config.mak set +x echo echo "*****************************************************************" - echo "* If you are building contribs for a release build of VLC *" - echo "* Please run CONTRIBS_RELEASE=sexy ./bootstrap *" - echo "* *" - echo "* Ignore this message if you don't compile the 3rd party *" - echo "* libraries your own aka by just running 'make' next. *" + echo "* If you need contribs with all debug information, run the *" + echo "* line and compile the libraries on your own. *" + echo "* CONTRIBS_RELEASE=no ./bootstrap *" echo "*****************************************************************" -else - echo "EXTRA_CFLAGS += -DNDEBUG" >> config.mak fi if test $HAVE_DARWIN_9; then From git at videolan.org Sat Feb 21 12:58:00 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 12:58:00 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_contribs=3A_the_vlc-lib_is_non-ex?= =?utf-8?q?istant_nowadays_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090221115800.EF0742FB9D@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Sat Feb 21 12:57:16 2009 +0100| [62eec6f8a0828cdffaff3499d659aa6d75a1e3ef] | committer: Felix Paul K?hne contribs: the vlc-lib is non-existant nowadays > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=62eec6f8a0828cdffaff3499d659aa6d75a1e3ef --- extras/contrib/Makefile | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/extras/contrib/Makefile b/extras/contrib/Makefile index 2ac9dfd..dc70f88 100644 --- a/extras/contrib/Makefile +++ b/extras/contrib/Makefile @@ -25,7 +25,7 @@ include ./config.mak -BUILDDIRS = bin doc etc include info lib man sbin share vlc-lib tmp gecko-sdk +BUILDDIRS = bin doc etc include info lib man sbin share tmp gecko-sdk ifdef HAVE_DARWIN_OS TARGETALL=using-bin @@ -80,7 +80,7 @@ package-macosx: exit 1 ; \ fi mkdir tmp - tar cf - bin sbin include lib vlc-lib share/aclocal* share/autoconf* \ + tar cf - bin sbin include lib share/aclocal* share/autoconf* \ share/automake* share/gettext* share/libtool* gecko-sdk \ | (cd tmp; tar xf -) ./change_prefix.sh tmp $(PREFIX) @@CONTRIB_PREFIX@@ From jean-paul.saman at planet.nl Sat Feb 21 13:37:03 2009 From: jean-paul.saman at planet.nl (jean-paul.saman at planet.nl) Date: Sat, 21 Feb 2009 13:37:03 +0100 Subject: [vlc-devel] [RFC] VLC RTSP trickplay support Message-ID: <58909A1972DA06479F516447E272A2C801A12D24@CPEXBE-EML19.kpnsp.local> While working on RTSP Scale (aka trickplay) to improve the user interface behaviour together with j-b the following issue came up: Currently the Qt4 interface shows a 'reverse' playback button when the demux supports the DEMUX_CAN_CONTROL_PACE feature. At the moment only our live555 demux module does use this. It basically means that the button is shown for every RTSP server even if it doesn't support 'Scale' functionality. According to RFC 2326 the 'Scale' header is optional and thus potentially not supported by every RTSP server out there. The only way to determine if this feature is supported by the RTSP server is to send him a PLAY request with a Scale header present. If the RTSP server does not support this, then the response will not include the Scale header. At the moment VLC has no clue if the RTSP server supports "Scale" or not. If it could then it would be possible to distinguish between RTSP servers that do and those that do not support 'Scale'. I cooked up a patch for live555 to export a method (hasScale()) which tells if the RTSP server supports scale. The patch is to illustrate a possible approach. Maybe Ross can comment on this approach and share his thoughts on how to best handle this issue. Gtz, Jean-Paul Saman. -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: vlc-live555-hasScale.patch Type: text/x-patch Size: 1501 bytes Desc: vlc-live555-hasScale.patch URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: live555-hasScale.patch Type: text/x-patch Size: 1230 bytes Desc: live555-hasScale.patch URL: From rem at videolan.org Sat Feb 21 13:59:03 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 21 Feb 2009 14:59:03 +0200 Subject: [vlc-devel] [RFC] VLC RTSP trickplay support In-Reply-To: <58909A1972DA06479F516447E272A2C801A12D24@CPEXBE-EML19.kpnsp.local> References: <58909A1972DA06479F516447E272A2C801A12D24@CPEXBE-EML19.kpnsp.local> Message-ID: <200902211459.04094.rem@videolan.org> Le samedi 21 f?vrier 2009 14:37:03 jean-paul.saman at planet.nl, vous avez ?crit?: > Currently the Qt4 interface shows a 'reverse' playback button when the > demux supports the DEMUX_CAN_CONTROL_PACE feature. At the moment only our > live555 demux module does use this. It basically means that the button is > shown for every RTSP server even if it doesn't support 'Scale' > functionality. > > According to RFC 2326 the 'Scale' header is optional and thus potentially > not supported by every RTSP server out there. The only way to determine if > this feature is supported by the RTSP server is to send him a PLAY request > with a Scale header present. If the RTSP server does not support this, then > the response will not include the Scale header. No. The presence of the optional Scale header only means the server understands the Scale parameter. It does not mean that it will support any specific Scale value: The server should try to approximate the viewing rate, but may restrict the range of scale values that it supports. The response MUST contain the actual scale value chosen by the server. Indeed, the VLC broadcast RTSP will return "Scale: 1." if it finds a Scale in a PLAY request. That's regardless of the client-requested Scale value however. Obviously it cannot support scaling in broadcast mode. Still, the server understands the Scale parameter. > At the moment VLC has no clue if the RTSP server supports "Scale" or not. > If it could then it would be possible to distinguish between RTSP servers > that do and those that do not support 'Scale'. That's a protocol problem. We have the exact same problem with seeking. We cannot fix that with RTSP/1.0. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Sat Feb 21 14:58:46 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 14:58:46 +0100 (CET) Subject: [vlc-devel] commit: Qt: display a locker in the statusBar when encryption is set. ( Jean-Baptiste Kempf ) Message-ID: <20090221135846.1E3732F8D7@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 21 14:52:22 2009 +0100| [a9d5d43afdd66d829cca40b1888709848d3b2e25] | committer: Jean-Baptiste Kempf Qt: display a locker in the statusBar when encryption is set. This needs the core event, of course, in order to work... (not yet done, and probably for later). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a9d5d43afdd66d829cca40b1888709848d3b2e25 --- modules/gui/qt4/input_manager.cpp | 1 + modules/gui/qt4/input_manager.hpp | 4 +++- modules/gui/qt4/main_interface.cpp | 15 +++++++++++++++ modules/gui/qt4/main_interface.hpp | 3 +++ 4 files changed, 22 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index fed980f..d2c9310 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -129,6 +129,7 @@ void InputManager::delInput() emit statusChanged( END_S ); emit teletextPossible( false ); + emit encryptionChanged( false ); emit AtoBchanged( false, false ); emit voutChanged( false ); emit voutListChanged( NULL, 0 ); diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp index 94f84d0..f7fb204 100644 --- a/modules/gui/qt4/input_manager.hpp +++ b/modules/gui/qt4/input_manager.hpp @@ -187,10 +187,12 @@ signals: void AtoBchanged( bool, bool ); /// Vout void voutChanged( bool ); + void voutListChanged( vout_thread_t **pp_vout, int i_vout ); + /// Other void synchroChanged(); void bookmarksChanged(); void cachingChanged( float ); - void voutListChanged( vout_thread_t **pp_vout, int i_vout ); + void encryptionChanged( bool ); }; class MainInputManager : public QObject diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index 06aaab0..a577ae9 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -82,6 +82,7 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf ) playlistVisible = false; input_name = ""; fullscreenControls = NULL; + cryptedLabel = NULL; /* Ask for privacy */ askForPrivacy(); @@ -348,6 +349,20 @@ inline void MainInterface::createStatusBar() - right-clicking and clicking just toggle between remaining and elapsed time.*/ CONNECT( timeLabel, timeLabelDoubleClicked(), THEDP, gotoTimeDialog() ); + + CONNECT( THEMIM->getIM(), encryptionChanged( bool ) , this, showCryptedLabel( bool ) ); +} + +void MainInterface::showCryptedLabel( bool ) +{ + if( cryptedLabel == NULL ) + { + cryptedLabel = new QLabel; + cryptedLabel->setPixmap( QPixmap( ":/eject" ) ); + statusBar()->addWidget( cryptedLabel ); + } + + cryptedLabel->show(); } inline void MainInterface::initSystray() diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp index c84df94..3f84db8 100644 --- a/modules/gui/qt4/main_interface.hpp +++ b/modules/gui/qt4/main_interface.hpp @@ -141,6 +141,7 @@ private: /* Status Bar */ QLabel *nameLabel; + QLabel *cryptedLabel; virtual void customEvent( QEvent *); virtual void keyPressEvent( QKeyEvent *); @@ -171,6 +172,8 @@ private slots: void handleSystrayClick( QSystemTrayIcon::ActivationReason ); void updateSystrayTooltipName( QString ); void updateSystrayTooltipStatus( int ); + + void showCryptedLabel( bool ); signals: void askReleaseVideo( ); void askVideoToResize( unsigned int, unsigned int ); From git at videolan.org Sat Feb 21 14:58:46 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 14:58:46 +0100 (CET) Subject: [vlc-devel] commit: Qt: deactivate the encryption functionnality until core or ts demux is ready. (Jean-Baptiste Kempf ) Message-ID: <20090221135846.2DD862F9D3@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 21 14:57:25 2009 +0100| [e876396adcc8151303d3cf3e199922f1aaf4b380] | committer: Jean-Baptiste Kempf Qt: deactivate the encryption functionnality until core or ts demux is ready. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e876396adcc8151303d3cf3e199922f1aaf4b380 --- modules/gui/qt4/input_manager.cpp | 4 +++- modules/gui/qt4/input_manager.hpp | 2 ++ modules/gui/qt4/main_interface.cpp | 7 ++++++- modules/gui/qt4/main_interface.hpp | 4 ++++ 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index d2c9310..9067b76 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -129,7 +129,6 @@ void InputManager::delInput() emit statusChanged( END_S ); emit teletextPossible( false ); - emit encryptionChanged( false ); emit AtoBchanged( false, false ); emit voutChanged( false ); emit voutListChanged( NULL, 0 ); @@ -138,6 +137,9 @@ void InputManager::delInput() emit artChanged( NULL ); emit infoChanged( NULL ); emit metaChanged( (input_item_t *)NULL ); +#if 0 + emit encryptionChanged( false ); +#endif } /* Convert the event from the callbacks in actions */ diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp index f7fb204..2560045 100644 --- a/modules/gui/qt4/input_manager.hpp +++ b/modules/gui/qt4/input_manager.hpp @@ -192,7 +192,9 @@ signals: void synchroChanged(); void bookmarksChanged(); void cachingChanged( float ); +#if 0 void encryptionChanged( bool ); +#endif }; class MainInputManager : public QObject diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index a577ae9..42d9f69 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -82,7 +82,9 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf ) playlistVisible = false; input_name = ""; fullscreenControls = NULL; +#if 0 cryptedLabel = NULL; +#endif /* Ask for privacy */ askForPrivacy(); @@ -349,10 +351,12 @@ inline void MainInterface::createStatusBar() - right-clicking and clicking just toggle between remaining and elapsed time.*/ CONNECT( timeLabel, timeLabelDoubleClicked(), THEDP, gotoTimeDialog() ); - +#if 0 CONNECT( THEMIM->getIM(), encryptionChanged( bool ) , this, showCryptedLabel( bool ) ); +#endif } +#if 0 void MainInterface::showCryptedLabel( bool ) { if( cryptedLabel == NULL ) @@ -364,6 +368,7 @@ void MainInterface::showCryptedLabel( bool ) cryptedLabel->show(); } +#endif inline void MainInterface::initSystray() { diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp index 3f84db8..df86b80 100644 --- a/modules/gui/qt4/main_interface.hpp +++ b/modules/gui/qt4/main_interface.hpp @@ -141,7 +141,9 @@ private: /* Status Bar */ QLabel *nameLabel; +#if 0 QLabel *cryptedLabel; +#endif virtual void customEvent( QEvent *); virtual void keyPressEvent( QKeyEvent *); @@ -173,7 +175,9 @@ private slots: void updateSystrayTooltipName( QString ); void updateSystrayTooltipStatus( int ); +#if 0 void showCryptedLabel( bool ); +#endif signals: void askReleaseVideo( ); void askVideoToResize( unsigned int, unsigned int ); From hartman at videolan.org Sat Feb 21 15:23:23 2009 From: hartman at videolan.org (Derk-Jan Hartman) Date: Sat, 21 Feb 2009 15:23:23 +0100 Subject: [vlc-devel] [RFC] VLC RTSP trickplay support In-Reply-To: <200902211459.04094.rem@videolan.org> References: <58909A1972DA06479F516447E272A2C801A12D24@CPEXBE-EML19.kpnsp.local> <200902211459.04094.rem@videolan.org> Message-ID: <380959E6-CA04-47AA-BBEB-7904BC666AD6@videolan.org> On 21 feb 2009, at 13:59, R?mi Denis-Courmont wrote: >> At the moment VLC has no clue if the RTSP server supports "Scale" >> or not. >> If it could then it would be possible to distinguish between RTSP >> servers >> that do and those that do not support 'Scale'. > > That's a protocol problem. We have the exact same problem with > seeking. > > We cannot fix that with RTSP/1.0. Seconded. This is a designchoice in the RTSP protocol. Everything is possible, but you are never guaranteed that anything should or will work. In hindsight it is one of the biggest problems with the entire RTSP protocol. Extensions to the protocol to query this information have been made, but are largely unsupported. RTSP 2.0 does solve this, but hardly anything supports RTSP 2.0 yet. DJ From pdherbemont at free.fr Sat Feb 21 15:32:56 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Sat, 21 Feb 2009 15:32:56 +0100 Subject: [vlc-devel] Leopard: setContentBorderThickness In-Reply-To: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> References: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> Message-ID: On Sat, Feb 21, 2009 at 12:42 PM, Georg Seifert wrote: > If anyone could try it out as I?m not able to build with the newest git. Buildbots are green, you should be able to build VLC with the latest dev tools. hint: try with a clean copy. Pierre. From hartman at videolan.org Sat Feb 21 15:43:19 2009 From: hartman at videolan.org (Derk-Jan Hartman) Date: Sat, 21 Feb 2009 15:43:19 +0100 Subject: [vlc-devel] Leopard: setContentBorderThickness In-Reply-To: References: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> Message-ID: On 21 feb 2009, at 15:32, Pierre d'Herbemont wrote: > On Sat, Feb 21, 2009 at 12:42 PM, Georg Seifert > wrote: >> If anyone could try it out as I?m not able to build with the newest >> git. > > Buildbots are green, you should be able to build VLC with the latest > dev tools. hint: try with a clean copy. Fresh from the presses: http://nightlies.videolan.org/build/macosx-intel/vlc-git-intel-20090221-1518.zip First OSX intel 1.0.0-git binary in quite some while. :D DJ From georg.seifert at gmx.de Sat Feb 21 15:58:33 2009 From: georg.seifert at gmx.de (Georg Seifert) Date: Sat, 21 Feb 2009 15:58:33 +0100 Subject: [vlc-devel] Leopard: setContentBorderThickness In-Reply-To: References: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> Message-ID: <2F1E1FD3-FDEC-42DB-AE24-A5666F8629B0@gmx.de> I just did a new git clone and did everything as described in the wiki anf get this: > /bin/sh ../../libtool --tag=CC --mode=link gcc -std=gnu99 - > isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5 > `top_builddir="../.." ../../vlc-config --cflags plugin > libx264_plugin.la` -I/Users/georg/Programmierung/vlc/vlc/./extras/ > contrib/include -D_INTL_REDIRECT_MACROS - > DMACOSX_DEPLOYMENT_TARGET=10.5 -Wall -Wextra -Wsign-compare -Wundef - > Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings - > Wmissing-prototypes -Werror-implicit-function-declaration -rpath '/ > Users/georg/Programmierung/vlc/vlc/vlc_install_dir/lib/vlc/codec' - > avoid-version -module -export-symbol-regex ^vlc_entry -shrext .dylib > -no-undefined `top_builddir="../.." ../../vlc-config --ldflags > plugin libx264_plugin.la` -L/Users/georg/Programmierung/vlc/vlc/./ > extras/contrib/lib -Wl,-headerpad_max_install_names -o > libx264_plugin.la libx264_plugin_la-x264.lo > `top_builddir="../.." ../../vlc-config -libs plugin > libx264_plugin.la` ../../src/libvlccore.la > libtool: link: warning: `/Users/georg/Programmierung/vlc/vlc/./ > extras/contrib/lib/libgcrypt.la' seems to be moved > libtool: link: warning: `/Users/georg/Programmierung/vlc/vlc/./ > extras/contrib/lib/libintl.la' seems to be moved > gcc -std=gnu99 -isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx- > version-min=10.5 -o .libs/libx264_plugin.dylib -bundle .libs/ > libx264_plugin_la-x264.o -L///Users/georg/Programmierung/vlc/vlc/ > extras/contrib/lib -lx264 -L/Users/georg/Programmierung/vlc/vlc/./ > extras/contrib/lib -lpthread -lmx -lm ../../src/.libs/ > libvlccore.dylib /Users/georg/Programmierung/vlc/vlc/./extras/ > contrib/lib/libgcrypt.dylib /Users/georg/Programmierung/vlc/vlc/./ > extras/contrib/lib/libintl.dylib /usr/lib/libiconv.dylib /usr/lib/ > libc.dylib -mmacosx-version-min=10.5 -march=pentium-m - > mtune=prescott -Wl,-read_only_relocs -Wl,suppress -Wl,- > headerpad_max_install_names > ld warning: in ///Users/georg/Programmierung/vlc/vlc/extras/contrib/ > lib/libx264.a, file is not of required architecture > Undefined symbols: > "_x264_encoder_close", referenced from: > _Close in libx264_plugin_la-x264.o > "_x264_encoder_encode", referenced from: > _Encode in libx264_plugin_la-x264.o > "_x264_encoder_open", referenced from: > _Open in libx264_plugin_la-x264.o > "_x264_encoder_headers", referenced from: > _Open in libx264_plugin_la-x264.o > "_x264_param_default", referenced from: > _Open in libx264_plugin_la-x264.o > "_x264_nal_encode", referenced from: > _Open in libx264_plugin_la-x264.o > _Encode in libx264_plugin_la-x264.o > ld: symbol(s) not found > collect2: ld returned 1 exit status > make[5]: *** [libx264_plugin.la] Error 1 > make[4]: *** [all-recursive] Error 1 > make[3]: *** [all] Error 2 > make[2]: *** [all-recursive] Error 1 > make[1]: *** [all-recursive] Error 1 > make: *** [all] Error 2 > Georg > On Sat, Feb 21, 2009 at 12:42 PM, Georg Seifert > wrote: >> If anyone could try it out as I?m not able to build with the newest >> git. > > Buildbots are green, you should be able to build VLC with the latest > dev tools. hint: try with a clean copy. > > Pierre. > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel From fkuehne.videolan at googlemail.com Sat Feb 21 16:36:10 2009 From: fkuehne.videolan at googlemail.com (=?WINDOWS-1252?Q?Felix_Paul_K=FChne?=) Date: Sat, 21 Feb 2009 16:36:10 +0100 Subject: [vlc-devel] Leopard: setContentBorderThickness In-Reply-To: <2F1E1FD3-FDEC-42DB-AE24-A5666F8629B0@gmx.de> References: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> <2F1E1FD3-FDEC-42DB-AE24-A5666F8629B0@gmx.de> Message-ID: <1DE1D25E-4F20-472E-AD31-81CAE078EF35@gmail.com> Am 21.02.2009 um 15:58 schrieb Georg Seifert: > I just did a new git clone and did everything as described in the wiki > anf get this: The wiki isn't up-to-date (to be updated soon...), so you can't know that llvm-gcc-4.2 as included in Xcode 3.1.2 (no earlier release supported) is required now. To make use of it, export the following in your shell before starting the configure script: CC /Developer/usr/bin/llvm-gcc-4.2 CXX /Developer/usr/bin/llvm-g++-4.2 OBJC /Developer/usr/bin/llvm-gcc-4.2 Just use ./configure without any options afterwards (except for debug or nls if desired). Using any SDK settings isn't required (nor valid in fact). This generates nice builds on both PowerPC and Intel based Macs (even if the buildbots may say differently), if top_builddir == top_srcdir. Make sure that you are using yesterday's contribs package (version 5). Best regards, Felix From pdherbemont at free.fr Sat Feb 21 17:04:12 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Sat, 21 Feb 2009 17:04:12 +0100 Subject: [vlc-devel] Leopard: setContentBorderThickness In-Reply-To: <1DE1D25E-4F20-472E-AD31-81CAE078EF35@gmail.com> References: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> <2F1E1FD3-FDEC-42DB-AE24-A5666F8629B0@gmx.de> <1DE1D25E-4F20-472E-AD31-81CAE078EF35@gmail.com> Message-ID: On Sat, Feb 21, 2009 at 4:36 PM, Felix Paul K?hne wrote: > > Am 21.02.2009 um 15:58 schrieb Georg Seifert: > >> I just did a new git clone and did everything as described in the wiki >> anf get this: > > The wiki isn't up-to-date (to be updated soon...), so you can't know > that llvm-gcc-4.2 as included in Xcode 3.1.2 (no earlier release > supported) is required now. To make use of it, export the following in > your shell before starting the configure script: > > CC /Developer/usr/bin/llvm-gcc-4.2 > CXX /Developer/usr/bin/llvm-g++-4.2 > OBJC /Developer/usr/bin/llvm-gcc-4.2 Could this be the defaults on Mac OS X? Pierre. From git at videolan.org Sat Feb 21 17:15:14 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:14 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Cleanup_instance_and_media_class_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090221161514.BC7E22F918@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 15:40:00 2009 +0200| [b93beb4cfd29d89c93072e13cec75f4bcf7f25ba] | committer: R?mi Denis-Courmont Cleanup instance and media class > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b93beb4cfd29d89c93072e13cec75f4bcf7f25ba --- bindings/cil/src/Makefile.am | 1 + bindings/cil/src/instance.cs | 148 +++++++++++++++++++++++++++++ bindings/cil/src/libvlc.cs | 211 +++++++++++++++++------------------------- bindings/cil/src/media.cs | 29 +----- 4 files changed, 237 insertions(+), 152 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=b93beb4cfd29d89c93072e13cec75f4bcf7f25ba From git at videolan.org Sat Feb 21 17:15:14 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:14 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Explicit_native_exception_methods?= =?utf-8?q?_scope_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090221161514.D77782FB3F@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 15:40:17 2009 +0200| [d1324549f23cf84d500188275032cf2a0640f65e] | committer: R?mi Denis-Courmont Explicit native exception methods scope > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d1324549f23cf84d500188275032cf2a0640f65e --- bindings/cil/src/exception.cs | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bindings/cil/src/exception.cs b/bindings/cil/src/exception.cs index 24b96fe..cc1d774 100644 --- a/bindings/cil/src/exception.cs +++ b/bindings/cil/src/exception.cs @@ -74,15 +74,15 @@ namespace VideoLAN.LibVLC IntPtr message; [DllImport ("libvlc.dll", EntryPoint="libvlc_exception_init")] - static extern void Init (NativeException e); + private static extern void Init (NativeException e); [DllImport ("libvlc.dll", EntryPoint="libvlc_exception_clear")] - static extern void Clear (NativeException e); + private static extern void Clear (NativeException e); /*[DllImport ("libvlc.dll", EntryPoint="libvlc_exception_raised")] - static extern int Raised (NativeException e);*/ + private static extern int Raised (NativeException e);*/ [DllImport ("libvlc.dll", EntryPoint="libvlc_exception_get_message")] - static extern IntPtr GetMessage (NativeException e); + private static extern IntPtr GetMessage (NativeException e); public NativeException () { From git at videolan.org Sat Feb 21 17:15:14 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:14 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_documentation_=28_R=C3=A9mi_D?= =?utf-8?q?enis-Courmont_=29?= Message-ID: <20090221161514.F059F2FB2F@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 15:55:36 2009 +0200| [708049c3a8e43fd04f75b9befbe30e9855693179] | committer: R?mi Denis-Courmont Fix documentation > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=708049c3a8e43fd04f75b9befbe30e9855693179 --- bindings/cil/src/exception.cs | 7 ++----- bindings/cil/src/instance.cs | 3 +++ bindings/cil/src/marshal.cs | 7 +++++++ bindings/cil/src/media.cs | 19 ++++++++++++++++++- bindings/cil/src/player.cs | 1 + 5 files changed, 31 insertions(+), 6 deletions(-) diff --git a/bindings/cil/src/exception.cs b/bindings/cil/src/exception.cs index cc1d774..9a9ce5a 100644 --- a/bindings/cil/src/exception.cs +++ b/bindings/cil/src/exception.cs @@ -60,11 +60,8 @@ namespace VideoLAN.LibVLC }; /** - * @section Internals - */ - - /** - * libvlc_exception_t: structure for unmanaged LibVLC exceptions + * @brief NativeException: CIL representation for libvlc_exception_t. + * @ingroup Internals */ [StructLayout (LayoutKind.Sequential)] public sealed class NativeException : IDisposable diff --git a/bindings/cil/src/instance.cs b/bindings/cil/src/instance.cs index 1641613..6970082 100644 --- a/bindings/cil/src/instance.cs +++ b/bindings/cil/src/instance.cs @@ -36,6 +36,9 @@ namespace VideoLAN.LibVLC */ internal sealed class InstanceHandle : NonNullHandle { + /** + * NonNullHandle.Destroy + */ protected override void Destroy () { LibVLC.Release (handle, null); diff --git a/bindings/cil/src/marshal.cs b/bindings/cil/src/marshal.cs index b68059b..9d37394 100644 --- a/bindings/cil/src/marshal.cs +++ b/bindings/cil/src/marshal.cs @@ -50,6 +50,9 @@ namespace VideoLAN.LibVLC } } + /** + * Destroys an handle. Cannot fail. + */ protected abstract void Destroy (); /** @@ -80,6 +83,10 @@ namespace VideoLAN.LibVLC this.handle = null; } + /** + * Checks if the LibVLC run-time raised an exception + * If so, raises a CIL exception. + */ protected void Raise () { ex.Raise (); diff --git a/bindings/cil/src/media.cs b/bindings/cil/src/media.cs index f5415f5..3a001b4 100644 --- a/bindings/cil/src/media.cs +++ b/bindings/cil/src/media.cs @@ -33,6 +33,9 @@ namespace VideoLAN.LibVLC */ internal sealed class MediaHandle : NonNullHandle { + /** + * NonNullHandle.Destroy + */ protected override void Destroy () { LibVLC.MediaRelease (handle); @@ -41,7 +44,8 @@ namespace VideoLAN.LibVLC /** * @brief Media: a source media - * Use this class to extract meta-informations from a media. + * @ingroup API + * Each media object represents an input media, such as a file or an URL. */ public class Media : BaseObject { @@ -67,6 +71,19 @@ namespace VideoLAN.LibVLC Raise (); } + /** + * Add VLC input item options to the media. + * @param options VLC options in VLC input item format + * (see example below) + * @param trusted whether the options are set by a trusted agent + * (e.g. the local computer configuration) or not + * (e.g. a downloaded file). + * @code + * Media m = new Media(vlc, "http://www.example.com/music.ogg"); + * m.AddOptions(":http-user-agent=LibVLC.Net " + * + ":http-proxy=proxy:8080", true); + * @endcode + */ public void AddOptions (string options, bool trusted) { U8String uopts = new U8String (options); diff --git a/bindings/cil/src/player.cs b/bindings/cil/src/player.cs index db96bae..ce1d325 100644 --- a/bindings/cil/src/player.cs +++ b/bindings/cil/src/player.cs @@ -68,6 +68,7 @@ namespace VideoLAN.LibVLC /** * @brief MediaPlayer: a simple media player + * @ingroup API * Use this class to play a media. */ public class MediaPlayer : BaseObject From git at videolan.org Sat Feb 21 17:15:15 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:15 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_libvlc=5Ffree=3A_wrapper_around_f?= =?utf-8?q?ree=28=29__when_the_C_run-time_is_not_known_=28_R=C3=A9mi_Denis?= =?utf-8?q?-Courmont_=29?= Message-ID: <20090221161515.33D042FB8C@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 16:41:04 2009 +0200| [d2e7edbdb2edf1afde6e67bef8161025dcbcad4a] | committer: R?mi Denis-Courmont libvlc_free: wrapper around free() when the C run-time is not known > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d2e7edbdb2edf1afde6e67bef8161025dcbcad4a --- include/vlc/libvlc.h | 7 +++++++ src/control/core.c | 5 +++++ src/libvlc.sym | 1 + 3 files changed, 13 insertions(+), 0 deletions(-) diff --git a/include/vlc/libvlc.h b/include/vlc/libvlc.h index 3b8d8fc..b953441 100644 --- a/include/vlc/libvlc.h +++ b/include/vlc/libvlc.h @@ -224,6 +224,13 @@ struct vlc_object_t; */ VLC_PUBLIC_API struct vlc_object_t *libvlc_get_vlc_instance(libvlc_instance_t *); +/** + * Frees an heap allocation (char *) returned by a LibVLC API. + * If you know you're using the same underlying C run-time as the LibVLC + * implementation, then you can call ANSI C free() directly instead. + */ +VLC_PUBLIC_API void libvlc_free( void *ptr ); + /** @}*/ /***************************************************************************** diff --git a/src/control/core.c b/src/control/core.c index af592b9..e52b3cb 100644 --- a/src/control/core.c +++ b/src/control/core.c @@ -215,3 +215,8 @@ vlc_object_t *libvlc_get_vlc_instance( libvlc_instance_t* p_instance ) vlc_object_hold( p_instance->p_libvlc_int ) ; return (vlc_object_t*) p_instance->p_libvlc_int ; } + +void libvlc_free( void *ptr ) +{ + free( ptr ); +} diff --git a/src/libvlc.sym b/src/libvlc.sym index 8de9c3f..759744d 100644 --- a/src/libvlc.sym +++ b/src/libvlc.sym @@ -31,6 +31,7 @@ libvlc_exception_get_message libvlc_exception_init libvlc_exception_raise libvlc_exception_raised +libvlc_free libvlc_get_changeset libvlc_get_compiler libvlc_get_fullscreen From git at videolan.org Sat Feb 21 17:15:15 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:15 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Safe_handle_class_for_LibVLC_heap?= =?utf-8?q?_allocation_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090221161515.704902FB2F@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 16:42:09 2009 +0200| [73f14c799831112f1b3612314606d6e317b0d5b8] | committer: R?mi Denis-Courmont Safe handle class for LibVLC heap allocation > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=73f14c799831112f1b3612314606d6e317b0d5b8 --- bindings/cil/src/libvlc.cs | 2 +- bindings/cil/src/ustring.cs | 32 +++++++++++++++++++++++++++++++- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs index 6087453..1728cc9 100644 --- a/bindings/cil/src/libvlc.cs +++ b/bindings/cil/src/libvlc.cs @@ -98,7 +98,7 @@ namespace VideoLAN.LibVLC [DllImport ("libvlc.dll", EntryPoint="libvlc_media_get_mrl")] public static extern - void MediaGetMRL (MediaHandle media); + MemoryHandle MediaGetMRL (MediaHandle media, NativeException ex); [DllImport ("libvlc.dll", EntryPoint="libvlc_media_duplicate")] public static extern diff --git a/bindings/cil/src/ustring.cs b/bindings/cil/src/ustring.cs index a605b8f..d6ad65a 100644 --- a/bindings/cil/src/ustring.cs +++ b/bindings/cil/src/ustring.cs @@ -33,7 +33,7 @@ namespace VideoLAN.LibVLC * arrays (as used by the native LibVLC) and managed strings. */ [StructLayout (LayoutKind.Sequential)] - public struct U8String + internal struct U8String { public byte[] mb_str; /**< nul-terminated UTF-8 bytes array */ @@ -91,4 +91,34 @@ namespace VideoLAN.LibVLC return new U8String (ptr).ToString (); } }; + + /** + * @brief MemoryHandle: heap allocation by the C run-time + * @ingroup Internals + */ + internal sealed class MemoryHandle : NonNullHandle + { + [DllImport ("libvlc.dll", EntryPoint="libvlc_free")] + private static extern void Free (IntPtr ptr); + + /** + * NonNullHandle.Destroy + */ + protected override void Destroy () + { + Free (handle); + } + + public override string ToString () + { + return U8String.FromNative (handle); + } + + public string Transform () + { + string value = ToString (); + Close (); + return value; + } + }; }; From git at videolan.org Sat Feb 21 17:15:15 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:15 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Extend_Media_class_=28_R=C3=A9mi_?= =?utf-8?q?Denis-Courmont_=29?= Message-ID: <20090221161515.8AFFC2F918@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 17:10:02 2009 +0200| [1f4b06d66bd0fc8e2bfeeaf8c77fd88802fe1025] | committer: R?mi Denis-Courmont Extend Media class > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1f4b06d66bd0fc8e2bfeeaf8c77fd88802fe1025 --- bindings/cil/src/libvlc.cs | 2 +- bindings/cil/src/media.cs | 58 +++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 58 insertions(+), 2 deletions(-) diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs index 1728cc9..157a32b 100644 --- a/bindings/cil/src/libvlc.cs +++ b/bindings/cil/src/libvlc.cs @@ -117,7 +117,7 @@ namespace VideoLAN.LibVLC public static extern MediaListHandle MediaSubItems (MediaHandle media, NativeException ex);*/ - /*[DllImport ("libvlc.dll", EntryPoint="libvlc_media_get_state")] + /*[DllImport ("libvlc.dll", EntryPoint="libvlc_media_event_manager")] public static extern EventManagerHandle MediaGetEventManager (MediaHandle media, NativeException ex);*/ diff --git a/bindings/cil/src/media.cs b/bindings/cil/src/media.cs index 3a001b4..18d6b78 100644 --- a/bindings/cil/src/media.cs +++ b/bindings/cil/src/media.cs @@ -47,7 +47,7 @@ namespace VideoLAN.LibVLC * @ingroup API * Each media object represents an input media, such as a file or an URL. */ - public class Media : BaseObject + public class Media : BaseObject, ICloneable { internal MediaHandle Handle { @@ -94,5 +94,61 @@ namespace VideoLAN.LibVLC LibVLC.MediaAddUntrustedOption (Handle, uopts, ex); Raise (); } + + /** + * The media location (file path, URL, ...). + */ + public string Location + { + get + { + MemoryHandle str = LibVLC.MediaGetMRL (Handle, ex); + Raise (); + return str.Transform (); + } + } + + private Media (MediaHandle handle) + { + this.handle = handle; + } + + /** + * Duplicates a media object. + */ + public object Clone () + { + return new Media (LibVLC.MediaDuplicate (Handle)); + } + + /** + * Duration of the media in microseconds. The precision of the result + * depends on the input stram protocol and file format. The value + * might be incorrect and unknown (VLC usually returns 0 then). + */ + public long Duration + { + get + { + long duration = LibVLC.MediaGetDuration (Handle, ex); + Raise (); + return duration; + } + } + + /** + * Whether the media was "preparsed". If true, the meta-infos were + * extracted, even before the media was played. This is normally only + * available if the input files is stored on a local filesystem. + */ + public bool IsPreparsed + { + get + { + int preparsed = LibVLC.MediaIsPreparsed (Handle, ex); + Raise (); + return preparsed != 0; + } + } }; }; From git at videolan.org Sat Feb 21 17:15:15 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:15 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Update_version_and_copyright=2E_T?= =?utf-8?q?his_depends_on_VLC_1=2E0_now=2E_=28_R=C3=A9mi_Denis-Courmont_?= =?utf-8?q?=29?= Message-ID: <20090221161515.AB4552FA91@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 18:13:06 2009 +0200| [ba68741a27542e5a03b626eb540223ef53811321] | committer: R?mi Denis-Courmont Update version and copyright. This depends on VLC 1.0 now. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ba68741a27542e5a03b626eb540223ef53811321 --- bindings/cil/configure.ac | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/cil/configure.ac b/bindings/cil/configure.ac index 6ecc599..33676a3 100644 --- a/bindings/cil/configure.ac +++ b/bindings/cil/configure.ac @@ -19,8 +19,8 @@ dnl * along with this program; if not, you can get it from: * dnl * http://www.gnu.org/copyleft/gpl.html * dnl *********************************************************************** -AC_COPYRIGHT([Copyright (C) 2004-2007 Remi Denis-Courmont]) -AC_INIT(libvlc-cil, 0.9.0, vlc-devel_no_bulk_mail at videolan.org) +AC_COPYRIGHT([Copyright (C) 2004-2009 Remi Denis-Courmont]) +AC_INIT(libvlc-cil, 1.0.0, vlc-devel_no_bulk_mail at videolan.org) AC_PREREQ(2.50) AC_CONFIG_SRCDIR(configure.ac) From git at videolan.org Sat Feb 21 17:15:15 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:15 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Mostly_implement_media_player_=28?= =?utf-8?q?_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090221161515.C94742FBBF@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 18:14:05 2009 +0200| [b8753d4dc225e5954b93b1e90b5257f722e7f23b] | committer: R?mi Denis-Courmont Mostly implement media player > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b8753d4dc225e5954b93b1e90b5257f722e7f23b --- bindings/cil/src/libvlc.cs | 77 +++++++++++- bindings/cil/src/player.cs | 310 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 383 insertions(+), 4 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=b8753d4dc225e5954b93b1e90b5257f722e7f23b From git at videolan.org Sat Feb 21 17:15:16 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:16 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Cleanup_test_cases_=28_R=C3=A9mi_?= =?utf-8?q?Denis-Courmont_=29?= Message-ID: <20090221161516.164E72FB95@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 18:14:19 2009 +0200| [0476f4d8bf959b8e6a7a92f13ab6c5e1dc53cc93] | committer: R?mi Denis-Courmont Cleanup test cases > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0476f4d8bf959b8e6a7a92f13ab6c5e1dc53cc93 --- bindings/cil/src/media.cs | 2 +- bindings/cil/tests/testvlc.cs | 21 ++++++++++++++------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/bindings/cil/src/media.cs b/bindings/cil/src/media.cs index 18d6b78..39f0290 100644 --- a/bindings/cil/src/media.cs +++ b/bindings/cil/src/media.cs @@ -124,7 +124,7 @@ namespace VideoLAN.LibVLC /** * Duration of the media in microseconds. The precision of the result * depends on the input stram protocol and file format. The value - * might be incorrect and unknown (VLC usually returns 0 then). + * might be incorrect and unknown (VLC usually returns 0 or -1 then). */ public long Duration { diff --git a/bindings/cil/tests/testvlc.cs b/bindings/cil/tests/testvlc.cs index b0d1c11..1e0c9c2 100644 --- a/bindings/cil/tests/testvlc.cs +++ b/bindings/cil/tests/testvlc.cs @@ -28,24 +28,31 @@ namespace VideoLAN.LibVLC.Test { public sealed class Test { + private static void DumpMedia (Media m) + { + Console.WriteLine ("Media at {0}", m.Location); + Console.WriteLine (" duration: {0}?s", m.Duration); + Console.WriteLine (" preparsed: {0}", m.IsPreparsed); + } + public static int Main (string[] args) { string[] argv = new string[]{ - "-v", "-I", "dummy", "--plugin-path=../../modules" + "-vv", "-I", "dummy", "--plugin-path=../../modules" }; - Console.WriteLine("Running on VLC {0} ({1})", VLC.Version, - VLC.ChangeSet); - Console.WriteLine("Compiled with {0}", VLC.Compiler); + Console.WriteLine ("Running on LibVLC {0} ({1})", VLC.Version, + VLC.ChangeSet); + Console.WriteLine (" (compiled with {0})", VLC.Compiler); VLC vlc = new VLC (argv); Media m = new Media (vlc, "/dev/null"); + DumpMedia (m); - vlc.AddInterface ("qt4"); - vlc.Run (); + DumpMedia ((Media)m.Clone ()); - m.Dispose (); vlc.Dispose (); + m.Dispose (); return 0; } }; From git at videolan.org Sat Feb 21 17:15:15 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:15:15 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Cleanup_media_player_=28_R=C3=A9m?= =?utf-8?q?i_Denis-Courmont_=29?= Message-ID: <20090221161515.189672FB79@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 16:37:14 2009 +0200| [b6cada70eb95dad0934fe65de8ed01dbb792b1c2] | committer: R?mi Denis-Courmont Cleanup media player > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b6cada70eb95dad0934fe65de8ed01dbb792b1c2 --- bindings/cil/src/libvlc.cs | 120 ++++++++++++++++++++++++++++++++++++++++++++ bindings/cil/src/player.cs | 51 ++++++------------- 2 files changed, 135 insertions(+), 36 deletions(-) diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs index 6f66b58..6087453 100644 --- a/bindings/cil/src/libvlc.cs +++ b/bindings/cil/src/libvlc.cs @@ -138,5 +138,125 @@ namespace VideoLAN.LibVLC /*[DllImport ("libvlc.dll", EntryPoint="libvlc_media_get_user_data")] public static extern IntPtr MediaIsPreparsed (MediaHandle media, NativeException ex);*/ + + /* media_player.c */ + [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_new")] + public static extern + PlayerHandle PlayerCreate (InstanceHandle inst, NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_new_from_media")] + public static extern + PlayerHandle PlayerCreateFromMedia (MediaHandle media, + NativeException ex); + + [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_release")] + public static extern + void PlayerRelease (IntPtr ptr); + + /* PlayerRetain */ + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_set_media")] + public static extern + void PlayerSetMedia (PlayerHandle player, MediaHandle media, + NativeException ex); + + /*[DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_get_media")] + public static extern + MediaHandle PlayerGetMedia (PlayerHandle player, + NativeException ex);*/ + + /*[DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_event_manager")] + public static extern + EventManagerHandle PlayerGetEventManager (PlayerHandle media, + NativeException ex);*/ + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_is_playing")] + public static extern + int PlayerIsPlaying (PlayerHandle player, NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_play")] + public static extern + void PlayerPlay (PlayerHandle player, NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_pause")] + public static extern + void PlayerPause (PlayerHandle player, NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_stop")] + public static extern + void PlayerStop (PlayerHandle player, NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_set_xwindow")] + public static extern + void PlayerSetXWindow (PlayerHandle player, int xid, + NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_get_xwindow")] + public static extern + int PlayerGetXWindow (PlayerHandle player, + NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_set_hwnd")] + public static extern + void PlayerSetHWND (PlayerHandle player, SafeHandle hwnd, + NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_get_hwnd")] + public static extern + IntPtr PlayerGetHWND (PlayerHandle player, NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_get_length")] + public static extern + long PlayerGetLength (PlayerHandle player, NativeException ex); + + [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_get_time")] + public static extern + long PlayerGetTime (PlayerHandle player, NativeException ex); + + [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_set_time")] + public static extern + void PlayerSetTime (PlayerHandle player, long time, + NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_get_position")] + public static extern + float PlayerGetPosition (PlayerHandle player, NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_set_position")] + public static extern + void PlayerSetPosition (PlayerHandle player, float position, + NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_get_chapter")] + public static extern + int PlayerGetChapter (PlayerHandle player, NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_set_chapter")] + public static extern + void PlayerSetChapter (PlayerHandle player, int chapter, + NativeException ex); + + [DllImport ("libvlc.dll", + EntryPoint="libvlc_media_player_get_chapter_count")] + public static extern + int PlayerGetChapterCounter (PlayerHandle player, NativeException ex); + + /* PlayerWillPlay */ }; }; diff --git a/bindings/cil/src/player.cs b/bindings/cil/src/player.cs index ce1d325..3e8c80e 100644 --- a/bindings/cil/src/player.cs +++ b/bindings/cil/src/player.cs @@ -35,34 +35,14 @@ using System.Runtime.InteropServices; namespace VideoLAN.LibVLC { /** - * @brief MediaPlayerHandle: unmanaged LibVLC media player pointer + * @brief PlayerHandle: unmanaged LibVLC media player pointer * @ingroup Internals */ - internal sealed class MediaPlayerHandle : NonNullHandle + internal sealed class PlayerHandle : NonNullHandle { - [DllImport ("libvlc.dll", - EntryPoint="libvlc_media_player_new")] - internal static extern - MediaPlayerHandle Create (InstanceHandle inst, NativeException ex); - [DllImport ("libvlc.dll", - EntryPoint="libvlc_media_player_new_from_media")] - internal static extern - MediaPlayerHandle Create (MediaHandle media, NativeException ex); - - [DllImport ("libvlc.dll", - EntryPoint="libvlc_media_player_release")] - internal static extern void Release (IntPtr ptr); - - [DllImport ("libvlc.dll", - EntryPoint="libvlc_media_player_set_media")] - internal static extern - MediaPlayerHandle SetMedia (MediaPlayerHandle player, - MediaHandle media, - NativeException ex); - protected override void Destroy () { - Release (handle); + LibVLC.PlayerRelease (handle); } }; @@ -71,13 +51,13 @@ namespace VideoLAN.LibVLC * @ingroup API * Use this class to play a media. */ - public class MediaPlayer : BaseObject + public class Player : BaseObject { - internal MediaPlayerHandle Handle + internal PlayerHandle Handle { get { - return handle as MediaPlayerHandle; + return handle as PlayerHandle; } } @@ -96,35 +76,34 @@ namespace VideoLAN.LibVLC { MediaHandle mh = (value != null) ? value.Handle : null; - MediaPlayerHandle.SetMedia (Handle, mh, null); + LibVLC.PlayerSetMedia (Handle, mh, null); media = value; } } /** - * Creates an empty MediaPlayer object. + * Creates a player with no medias. * An input media will be needed before this media player can be used. * * @param instance VLC instance */ - public MediaPlayer (VLC instance) + public Player (VLC instance) { this.media = null; - handle = MediaPlayerHandle.Create (instance.Handle, ex); - ex.Raise (); + handle = LibVLC.PlayerCreate (instance.Handle, ex); + Raise (); } /** - * Creates a MediaPlayer object from a Media object. - * This allows playing the specified media. + * Creates a player object for a given a media. * * @param media media object */ - public MediaPlayer (Media media) + public Player (Media media) { this.media = media; - handle = MediaPlayerHandle.Create (media.Handle, ex); - ex.Raise (); + handle = LibVLC.PlayerCreateFromMedia (media.Handle, ex); + Raise (); } }; From sashipa.ben at gmail.com Sat Feb 21 17:40:18 2009 From: sashipa.ben at gmail.com (=?UTF-8?B?IkJlbihqYW1pbikgR8OpcmFyZCI=?=) Date: Sat, 21 Feb 2009 17:40:18 +0100 Subject: [vlc-devel] top_srcdir issue Message-ID: <49A02E72.70907@gmail.com> The line (and possible others) MINIZIP_CFLAGS="-I../../../@top_srcdir@//libs/unzip" of `configure.ac' assumes that top_srcdir is relative path. I am not so sure about it. In fact top_srcdir is computed by configure by something similar to $(dirname "$0"). If configure script is called with an absolute path (e.g $ /src/vlc/configure) compilation will break. May be it is just illegal to use configure with absolute path but it does not seem like it. I have check for autoconf documentation as well as GNU default INSTALL file and I have not found any reference to such limitation. I am pretty sure configure would warn or error if this behavior was illegal. Probably MINIZIP_CFLAGS="-I at abs_top_srcdir@/libs/unzip" would do. regards, --B From git at videolan.org Sat Feb 21 17:46:09 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 17:46:09 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Basic_tests_for_the_media_player?= =?utf-8?q?=2C_fix_time_units_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090221164609.2A9512FBFD@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 18:45:47 2009 +0200| [6bc5c775567a83d01b1fdc179acf781635f1ebbc] | committer: R?mi Denis-Courmont Basic tests for the media player, fix time units > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6bc5c775567a83d01b1fdc179acf781635f1ebbc --- bindings/cil/src/player.cs | 5 +++-- bindings/cil/tests/testvlc.cs | 37 +++++++++++++++++++++++++++++++++---- 2 files changed, 36 insertions(+), 6 deletions(-) diff --git a/bindings/cil/src/player.cs b/bindings/cil/src/player.cs index fb17b1e..2e3d54b 100644 --- a/bindings/cil/src/player.cs +++ b/bindings/cil/src/player.cs @@ -193,7 +193,7 @@ namespace VideoLAN.LibVLC } /** - * Total length in microseconds of the playback (if known). + * Total length in milliseconds of the playback (if known). */ public long Length { @@ -206,7 +206,7 @@ namespace VideoLAN.LibVLC } /** - * Playback position in microseconds from the start (if applicable). + * Playback position in milliseconds from the start (if applicable). * Setting this value might not work depending on the underlying * media capability and file format. * @@ -229,6 +229,7 @@ namespace VideoLAN.LibVLC /** * Playback position as a fraction of the total (if applicable). + * At start, this is 0; at the end, this is 1. * Setting this value might not work depending on the underlying * media capability and file format. * diff --git a/bindings/cil/tests/testvlc.cs b/bindings/cil/tests/testvlc.cs index 1e0c9c2..3868cad 100644 --- a/bindings/cil/tests/testvlc.cs +++ b/bindings/cil/tests/testvlc.cs @@ -35,6 +35,21 @@ namespace VideoLAN.LibVLC.Test Console.WriteLine (" preparsed: {0}", m.IsPreparsed); } + private static void DumpPlayer (Player p) + { + if (!p.IsPlaying) + return; + + int percent = (int)(p.Position * 100); + Console.Write ("{0} of {1} ms ({2}%)\r", p.Time, p.Length, + percent); + } + + private static void Sleep (int msec) + { + System.Threading.Thread.Sleep (msec); + } + public static int Main (string[] args) { string[] argv = new string[]{ @@ -46,13 +61,27 @@ namespace VideoLAN.LibVLC.Test Console.WriteLine (" (compiled with {0})", VLC.Compiler); VLC vlc = new VLC (argv); - Media m = new Media (vlc, "/dev/null"); - DumpMedia (m); + foreach (string mrl in args) + { + Media media = new Media (vlc, mrl); + Player player = new Player (media); + + DumpMedia (media); + DumpMedia ((Media)media.Clone ()); - DumpMedia ((Media)m.Clone ()); + player.Play (); + do + { + DumpPlayer (player); + Sleep (500); + } + while (player.IsPlaying); + player.Stop (); + media.Dispose (); + player.Dispose (); + } vlc.Dispose (); - m.Dispose (); return 0; } }; From fkuehne.videolan at googlemail.com Sat Feb 21 18:09:29 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Sat, 21 Feb 2009 18:09:29 +0100 Subject: [vlc-devel] Leopard: setContentBorderThickness In-Reply-To: References: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> <2F1E1FD3-FDEC-42DB-AE24-A5666F8629B0@gmx.de> <1DE1D25E-4F20-472E-AD31-81CAE078EF35@gmail.com> Message-ID: <783A4A0A-2216-4E7C-8731-3B8552055AAA@gmail.com> Am 21.02.2009 um 17:04 schrieb Pierre d'Herbemont: > On Sat, Feb 21, 2009 at 4:36 PM, Felix Paul K?hne > wrote: >> >> CC /Developer/usr/bin/llvm-gcc-4.2 >> CXX /Developer/usr/bin/llvm-g++-4.2 >> OBJC /Developer/usr/bin/llvm-gcc-4.2 > > Could this be the defaults on Mac OS X? No, by default, none of these variables is set. The default GCC is still in version 4.0.1 (Leopard) [to be changed for SL as you know]. I'll include these compilers in the configure script later on, so they will get automatically chosen on OS X. Best regards, Felix From brezhoneg1 at yahoo.fr Sat Feb 21 18:23:10 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Sat, 21 Feb 2009 18:23:10 +0100 Subject: [vlc-devel] RE : RE : How to continue playing an online playlistwith LibVLC? In-Reply-To: <70ddf280$1045d656$3cbea4f9$@com> Message-ID: <002b01c99449$13ede110$1742fac1@CCCC> Actually, libvlc_media_player_play is asynchronous. It spawns others threads, and returns. The job is really done when you get a EndReached event. >From the moment on, libvlc_media_subitems() can be used. You can also just insert a small sleep(1) and it should work (at least for testing). Erwan10. -----Message d'origine----- De : vlc-devel-bounces at videolan.org [mailto:vlc-devel-bounces at videolan.org] De la part de Stream Alerts Envoy? : vendredi 20 f?vrier 2009 21:40 ? : Mailing list for VLC media player developers Objet : Re: [vlc-devel] RE : How to continue playing an online playlistwith LibVLC? Thank you Erwan10! That makes sense. How do I extract that media_list after the playlist is parsed? libvlc_media_subitems()? I tried refreshing my media object with libvlc_media_player_get_media() and then called libvlc_media_subitems() but it returned a null pointer. How else can I grab the information? Thanks! Sincerely, Chris Larsen -------------- next part -------------- An HTML attachment was scrubbed... URL: From brezhoneg1 at yahoo.fr Sat Feb 21 18:23:10 2009 From: brezhoneg1 at yahoo.fr (brezhoneg1) Date: Sat, 21 Feb 2009 18:23:10 +0100 Subject: [vlc-devel] RE : [PATCH] -- some more skins2 corrections In-Reply-To: <20090220185421.GA4794@videolan.org> Message-ID: <003001c99449$1b71dc20$1742fac1@CCCC> Two more patches to correct problems found with skins2 - patch1: corrects a missing playlist_lock, leading to an assert failed. - patch2: corrects a problem of "No DTD found" when trying to change skins. (first skin load is okay, and subsequent ones are not) This problem is seen both with the latest vlc build on Windows and on a hand-made vlc on Ubuntu7.10 Erwan10 -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-playlist-locking-forgotten-leads-to-PL_ASSERT_LOCKE.patch Type: application/octet-stream Size: 1032 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-corrects-no-dtd-found-when-changing-skins.patch Type: application/octet-stream Size: 1163 bytes Desc: not available URL: From git at videolan.org Sat Feb 21 18:27:50 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 18:27:50 +0100 (CET) Subject: [vlc-devel] commit: l10n: Russian update (Roustam Ghizdatov ) Message-ID: <20090221172750.044EE2FC25@skanda.videolan.org> vlc | branch: 0.9-bugfix | Roustam Ghizdatov | Sat Feb 21 17:18:26 2009 +0000| [656633230dbc7791c026ce20eae395c8b206a31e] | committer: Christophe Mutricy l10n: Russian update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=656633230dbc7791c026ce20eae395c8b206a31e --- po/ru.po | 1305 ++++++++++++++++++++++++++------------------------------------ 1 files changed, 541 insertions(+), 764 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=656633230dbc7791c026ce20eae395c8b206a31e From git at videolan.org Sat Feb 21 18:27:50 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 18:27:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_l10n=3A_Czech_update_=28_Tom?= =?utf-8?b?w6HFoSBDaHbDoXRhbCAp?= Message-ID: <20090221172750.328452FC25@skanda.videolan.org> vlc | branch: 0.9-bugfix | Tom?? Chv?tal | Sat Feb 21 17:23:10 2009 +0000| [ecebc6e3c14e6c6ac7fd9206136240bbcb87591e] | committer: Christophe Mutricy l10n: Czech update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ecebc6e3c14e6c6ac7fd9206136240bbcb87591e --- po/cs.po | 4148 ++++++++++++++++++++++++++++++++------------------------------ 1 files changed, 2126 insertions(+), 2022 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=ecebc6e3c14e6c6ac7fd9206136240bbcb87591e From git at videolan.org Sat Feb 21 18:37:39 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 18:37:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_l10n=3A_Czech_update_=28_Tom?= =?utf-8?b?w6HFoSBDaHbDoXRhbCAp?= Message-ID: <20090221173739.2C0232FC3D@skanda.videolan.org> vlc | branch: master | Tom?? Chv?tal | Sat Feb 21 17:32:18 2009 +0000| [f9a4251a2e4b0b9a93379f68e5e2083344c791ea] | committer: Christophe Mutricy l10n: Czech update With contributions from Kamil P?ral, Vojt?ch Smejkal and Jakub ???ek Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f9a4251a2e4b0b9a93379f68e5e2083344c791ea --- po/cs.po |15655 +++++++++++++++++++++++++++++++++----------------------------- 1 files changed, 8235 insertions(+), 7420 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=f9a4251a2e4b0b9a93379f68e5e2083344c791ea From git at videolan.org Sat Feb 21 19:29:47 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 19:29:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Provide_the_exception_code=2C_han?= =?utf-8?q?dle_lack_of_message=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090221182947.CADC42FBE1@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 20:28:55 2009 +0200| [e93cab16aa6670811ef563463575e9d4b1b04a03] | committer: R?mi Denis-Courmont Provide the exception code, handle lack of message. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e93cab16aa6670811ef563463575e9d4b1b04a03 --- bindings/cil/src/exception.cs | 40 ++++++++++++++++++++++++++++++++++++++-- 1 files changed, 38 insertions(+), 2 deletions(-) diff --git a/bindings/cil/src/exception.cs b/bindings/cil/src/exception.cs index 9a9ce5a..2b3118f 100644 --- a/bindings/cil/src/exception.cs +++ b/bindings/cil/src/exception.cs @@ -32,6 +32,18 @@ namespace VideoLAN.LibVLC */ public class VLCException : Exception { + int code; + /** + * VLC exception code. + */ + public int Code + { + get + { + return code; + } + } + /** * Creates a managed VLC exception. */ @@ -57,6 +69,25 @@ namespace VideoLAN.LibVLC : base (message, inner) { } + + /** + * Creates a VLC exception + * @param code VLC exception code + * @param message VLC exception message + */ + public VLCException (int code, string message) : base (message) + { + this.code = code; + } + + /** + * Creates a VLC exception + * @param code VLC exception code + */ + public VLCException (int code) : base () + { + this.code = code; + } }; /** @@ -92,11 +123,16 @@ namespace VideoLAN.LibVLC */ public void Raise () { + if (raised == 0) + return; + + string msg = U8String.FromNative (message); try { - string msg = U8String.FromNative (GetMessage (this)); if (msg != null) - throw new VLCException (msg); + throw new VLCException (code, msg); + else + throw new VLCException (code); } finally { From git at videolan.org Sat Feb 21 19:29:47 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 19:29:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Cleanup_IDisposable_support_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090221182947.DBF3D2FC02@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 21 20:29:18 2009 +0200| [8416c5ff45d9c99ecd53e1d088bece8808cb6bb4] | committer: R?mi Denis-Courmont Cleanup IDisposable support > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8416c5ff45d9c99ecd53e1d088bece8808cb6bb4 --- bindings/cil/src/exception.cs | 17 +++++++++++------ bindings/cil/src/marshal.cs | 16 ++++++++++++++-- 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/bindings/cil/src/exception.cs b/bindings/cil/src/exception.cs index 2b3118f..b8b3a88 100644 --- a/bindings/cil/src/exception.cs +++ b/bindings/cil/src/exception.cs @@ -105,12 +105,6 @@ namespace VideoLAN.LibVLC private static extern void Init (NativeException e); [DllImport ("libvlc.dll", EntryPoint="libvlc_exception_clear")] private static extern void Clear (NativeException e); - /*[DllImport ("libvlc.dll", - EntryPoint="libvlc_exception_raised")] - private static extern int Raised (NativeException e);*/ - [DllImport ("libvlc.dll", - EntryPoint="libvlc_exception_get_message")] - private static extern IntPtr GetMessage (NativeException e); public NativeException () { @@ -143,6 +137,17 @@ namespace VideoLAN.LibVLC /** IDisposable implementation. */ public void Dispose () { + Dispose (true); + GC.SuppressFinalize (this); + } + + ~NativeException () + { + Dispose (false); + } + + private void Dispose (bool disposing) + { Clear (this); } }; diff --git a/bindings/cil/src/marshal.cs b/bindings/cil/src/marshal.cs index 9d37394..2135aca 100644 --- a/bindings/cil/src/marshal.cs +++ b/bindings/cil/src/marshal.cs @@ -97,8 +97,20 @@ namespace VideoLAN.LibVLC */ public void Dispose () { - ex.Dispose (); - handle.Close (); + Dispose (true); + GC.SuppressFinalize (this); + } + + protected virtual void Dispose (bool disposing) + { + if (disposing) + { + ex.Dispose (); + if (handle != null) + handle.Close (); + } + ex = null; + handle = null; } }; }; From git at videolan.org Sat Feb 21 20:01:20 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 20:01:20 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_added_support_for_-O4_when_compil?= =?utf-8?q?ing_with_--disable-debug_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090221190120.8FDA62FBFC@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Sat Feb 21 20:00:45 2009 +0100| [8df8bef6d2ad3b0204140a447db08622765bfb3c] | committer: Felix Paul K?hne added support for -O4 when compiling with --disable-debug > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8df8bef6d2ad3b0204140a447db08622765bfb3c --- configure.ac | 44 ++++++++++++++++++++++++++------------------ 1 files changed, 26 insertions(+), 18 deletions(-) diff --git a/configure.ac b/configure.ac index e7f74ac..867edcf 100644 --- a/configure.ac +++ b/configure.ac @@ -1017,26 +1017,34 @@ else fi fi -AC_CACHE_CHECK([if \$CC accepts -O3], - [ac_cv_c_o3], - [CFLAGS="${CFLAGS_save} -O3" - AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)]) -if test "${ac_cv_c_o3}" != "no" -a "x${enable_debug}" = "xno"; then - CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O3" +AC_CACHE_CHECK([if \$CC accepts -O4], + [ac_cv_c_o4], + [CFLAGS="${CFLAGS_save} -O4" + AC_TRY_COMPILE([],,ac_cv_c_o4=yes, ac_cv_c_o4=no)]) +if test "${ac_cv_c_o4}" != "no" -a "x${enable_debug}" = "xno"; then + CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O4" else - AC_CACHE_CHECK([if \$CC accepts -O2], - [ac_cv_c_o2], - [CFLAGS="${CFLAGS_save} -O2" - AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)]) - if test "${ac_cv_c_o2}" != "no"; then - CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O2" + AC_CACHE_CHECK([if \$CC accepts -O3], + [ac_cv_c_o3], + [CFLAGS="${CFLAGS_save} -O3" + AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)]) + if test "${ac_cv_c_o3}" != "no" -a "x${enable_debug}" = "xno"; then + CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O3" else - AC_CACHE_CHECK([if \$CC accepts -O], - [ac_cv_c_o], - [CFLAGS="${CFLAGS_save} -O" - AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)]) - if test "${ac_cv_c_o}" != "no"; then - CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O" + AC_CACHE_CHECK([if \$CC accepts -O2], + [ac_cv_c_o2], + [CFLAGS="${CFLAGS_save} -O2" + AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)]) + if test "${ac_cv_c_o2}" != "no"; then + CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O2" + else + AC_CACHE_CHECK([if \$CC accepts -O], + [ac_cv_c_o], + [CFLAGS="${CFLAGS_save} -O" + AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)]) + if test "${ac_cv_c_o}" != "no"; then + CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O" + fi fi fi fi From noxelia at gmail.com Sat Feb 21 20:15:04 2009 From: noxelia at gmail.com (basos g) Date: Sat, 21 Feb 2009 19:15:04 +0000 Subject: [vlc-devel] [PATCH] FIX: Dshow "none" device open (#2201). Some cleaning In-Reply-To: <20090217130017.GA26865@via.ecp.fr> References: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> <200902111756.18051.rem@videolan.org> <9d98edc70902120605p4579d2c5rfe7aa3be2da4626e@mail.gmail.com> <9d98edc70902141233w234da439x63d2067e6a679357@mail.gmail.com> <9d98edc70902170451s3b821d7etcab9ee4b50a49e89@mail.gmail.com> <20090217130017.GA26865@via.ecp.fr> Message-ID: <9d98edc70902211115r14ac92d5ybec38a62fe6139c4@mail.gmail.com> 2009/2/17 Laurent Aimar : > Hi, > > On Tue, Feb 17, 2009, basos g wrote: >> 2009/2/14 basos g : >> > 2009/2/12 basos g : >> >> 2009/2/11 R?mi Denis-Courmont : >> >>> Le mercredi 11 f?vrier 2009 16:15:48 basos g, vous avez ?crit : >> >>>> These 2 patches address the issue in dshow as well as some other fixes >> >>>> >> >>>> -Fix dshow "none" deivice be recognized as none >> >>>> Note that another patch concerning var_optionParse string >> >>>> dequoting should be applied for this to be fixed >> >>>> ( the concept is not to provide quoted strings to dshow options ) >> >>>> -Account for the case when BOTH devices could not be opened >> >>>> (file an error, instead of seeming to play) >> >>>> -Cleaned a little >> >>>> -Added dbg and error msgs >> >>>> -Added coments >> >>> >> >>> I am not against removing quotes there, but we have to be consistent. >> >>> Discarding quotes is wrong. There has to be a way to pass a value that does >> >>> include quotes. >> >>> >> >>> -- >> >>> R?mi Denis-Courmont >> >>> http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary >> >>> _______________________________________________ >> >>> vlc-devel mailing list >> >>> To unsubscribe or modify your subscription options: >> >>> http://mailman.videolan.org/listinfo/vlc-devel >> >>> >> >> >> >> The point is that for the dshow we don't need quotes. >> >> Do we need them elsewhere ? >> >> I think quotes mean: take the hole following string including spaces. >> >> As long as the delimiting is done correctly i am not sure that we >> >> actualy need the quotes inside psz_data. >> >> >> >> eg. >> >> >> >> :adev="Create sound blaster" :vdev="vid1" :type=pal etc >> >> >> >> here psz_value for adev should be >> >> Creative sound blaster >> >> and not >> >> "Creative sound blaster" >> >> >> > >> > >> > So whats the point about quotes ? Do we need them ( e.g. is there a >> > case that in-string quotes are NEEDED ? >> > >> > Note that these 2 patches fix a (small) bug and i don't expect that >> > you want it to be ignored ? >> > >> >> Someone to check this ? >> It does not seem to break sthing. >> >> I re-sent the var_optionParse patch with a more clean way (str_dequote >> help funtion was added). >> >> NOTE that i could make this patch like str_quote(ing) all vars from >> dshow filter. >> But i doubt that any other input option user module actually needs >> quotes inside psz_data. So i propose to dequote every input string.. > > Sorry for the late review, > > I do not think it is valid. > I am pretty sure it is an interface(qt4) problem that add quotes where it > should not. > > Regards, > > -- > fenrir Possibly you have right on this. The interface should not add the quotes. But anyway does it hurt to dequote string input options? It is a heterogenous infastructure ( parsing is done in various places ) so this is a workaround.. And this bug is distributed. Parsing is done in qt4 module and parameters are used in dshow. All the parsing code should be in one place (for me) . My long term suggestion would be to parse input options at one place (input thread create() ?) and fill input parameters from there. But for now this should do the trick. From git at videolan.org Sat Feb 21 22:33:08 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 22:33:08 +0100 (CET) Subject: [vlc-devel] commit: playlist locking forgotten (causes PL_ASSERT_LOCKED to fail) ( Joseph Tulou ) Message-ID: <20090221213308.4A3452F81A@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Sat Feb 21 00:50:23 2009 +0100| [e3cffc1f47c1d663b44bab84acbe71f12f483a1d] | committer: R?mi Duraffort playlist locking forgotten (causes PL_ASSERT_LOCKED to fail) Signed-off-by: R?mi Duraffort > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e3cffc1f47c1d663b44bab84acbe71f12f483a1d --- modules/gui/skins2/vars/playtree.cpp | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/gui/skins2/vars/playtree.cpp b/modules/gui/skins2/vars/playtree.cpp index 0179f8c..839b928 100644 --- a/modules/gui/skins2/vars/playtree.cpp +++ b/modules/gui/skins2/vars/playtree.cpp @@ -136,7 +136,9 @@ void Playtree::onUpdateItem( int id ) playlist_item_t* pNode = (playlist_item_t*)(it->m_pData); UString *pName = new UString( getIntf(), pNode->p_input->psz_name ); it->m_cString = UStringPtr( pName ); + playlist_Lock( m_pPlaylist ); it->m_playing = playlist_CurrentPlayingItem( m_pPlaylist ) == pNode; + playlist_Unlock( m_pPlaylist ); if( it->m_playing ) descr.b_active_item = true; } else From git at videolan.org Sat Feb 21 22:33:08 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 22:33:08 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_xosd=3A_=28_R=C3=A9mi_Duraffort_?= =?utf-8?q?=29?= Message-ID: <20090221213308.580522FB2F@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sat Feb 21 22:14:38 2009 +0100| [81cbd185cc94d4d216370524618d295573cf3ae5] | committer: R?mi Duraffort xosd: * fix playlist lock (maybe not perfect) * add some forgotten vlc_restaure_cancel * simplifications > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=81cbd185cc94d4d216370524618d295573cf3ae5 --- modules/misc/notify/xosd.c | 37 +++++++++++++++++++++---------------- 1 files changed, 21 insertions(+), 16 deletions(-) diff --git a/modules/misc/notify/xosd.c b/modules/misc/notify/xosd.c index b080c66..09222bf 100644 --- a/modules/misc/notify/xosd.c +++ b/modules/misc/notify/xosd.c @@ -215,62 +215,68 @@ static void Run( intf_thread_t *p_intf ) { playlist_t *p_playlist; playlist_item_t *p_item = NULL; - input_item_t *p_input; - char psz_duration[MSTRTIME_MAX_SIZE+2]; char *psz_display = NULL; for( ;; ) { int canc = vlc_savecancel(); + if( p_intf->p_sys->b_need_update == true ) { p_intf->p_sys->b_need_update = false; p_playlist = pl_Hold( p_intf ); + PL_LOCK; if( playlist_IsEmpty( p_playlist ) ) { + PL_UNLOCK; pl_Release( p_intf ); + vlc_restorecancel( canc ); continue; } free( psz_display ); - psz_display = NULL; + int i_status = playlist_Status( p_playlist ); if( i_status == PLAYLIST_STOPPED ) { psz_display = strdup(_("Stop")); + PL_UNLOCK; pl_Release( p_intf ); } else if( i_status == PLAYLIST_PAUSED ) { psz_display = strdup(_("Pause")); + PL_UNLOCK; pl_Release( p_intf ); } else { p_item = playlist_CurrentPlayingItem( p_playlist ); - p_input = p_item->p_input; - - pl_Release( p_intf ); if( !p_item ) + { + PL_UNLOCK; + pl_Release( p_intf ); + vlc_restorecancel( canc ); continue; + } + input_item_t *p_input = p_item->p_input; + vlc_gc_incref( p_input ); + + PL_UNLOCK; + pl_Release( p_intf ); mtime_t i_duration = input_item_GetDuration( p_input ); if( i_duration != -1 ) { char psz_durationstr[MSTRTIME_MAX_SIZE]; secstotimestr( psz_durationstr, i_duration / 1000000 ); - sprintf( psz_duration, "(%s)", psz_durationstr ); + if( asprintf( &psz_display, "%s (%s)", p_input->psz_name, psz_durationstr ) == -1 ) + psz_display = NULL; } else - { - sprintf( psz_duration," " ); - } + psz_display = strdup( p_input->psz_name ); - psz_display = (char *)malloc( - (strlen( p_input->psz_name ) + - MSTRTIME_MAX_SIZE + 2+6 + 10 +10 )); - sprintf( psz_display,"%s %s", - p_input->psz_name, psz_duration); + vlc_gc_decref( p_input ); } /* Display */ @@ -279,7 +285,6 @@ static void Run( intf_thread_t *p_intf ) XOSD_string, psz_display ); } - vlc_restorecancel( canc ); msleep( INTF_IDLE_SLEEP ); } From git at videolan.org Sat Feb 21 22:33:08 2009 From: git at videolan.org (git version control) Date: Sat, 21 Feb 2009 22:33:08 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_rc=3A_remove_one_vlc=5Fobject=5Ff?= =?utf-8?b?aW5kLiAoIFLDqW1pIER1cmFmZm9ydCAp?= Message-ID: <20090221213308.6A5412FB99@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sat Feb 21 22:30:03 2009 +0100| [57cd88227f6aeb11e7c0f21406d3bfbdd5461fde] | committer: R?mi Duraffort rc: remove one vlc_object_find. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=57cd88227f6aeb11e7c0f21406d3bfbdd5461fde --- modules/control/rc.c | 52 +++++++++++++++++++++++-------------------------- 1 files changed, 24 insertions(+), 28 deletions(-) diff --git a/modules/control/rc.c b/modules/control/rc.c index 9146258..119ba0b 100644 --- a/modules/control/rc.c +++ b/modules/control/rc.c @@ -984,36 +984,32 @@ static int StateChanged( vlc_object_t *p_this, char const *psz_cmd, VLC_UNUSED(p_this); VLC_UNUSED(psz_cmd); VLC_UNUSED(oldval); intf_thread_t *p_intf = (intf_thread_t*)p_data; playlist_t *p_playlist = NULL; - input_thread_t *p_input = NULL; + char cmd[6]; vlc_mutex_lock( &p_intf->p_sys->status_lock ); - p_input = vlc_object_find( p_intf, VLC_OBJECT_INPUT, FIND_ANYWHERE ); - if( p_input ) - { - char cmd[6]; - p_playlist = pl_Hold( p_input ); - playlist_Lock( p_playlist ); - switch( playlist_Status( p_playlist ) ) - { - case PLAYLIST_STOPPED: - strcpy( cmd, "stop" ); - break; - case PLAYLIST_RUNNING: - strcpy( cmd, "play" ); - break; - case PLAYLIST_PAUSED: - strcpy( cmd, "pause" ); - break; - default: - cmd[0] = '\0'; - } /* var_GetInteger( p_input, "state" ) */ - playlist_Unlock( p_playlist ); - msg_rc( STATUS_CHANGE "( %s state: %d ): %s", - cmd, newval.i_int, - ppsz_input_state[ newval.i_int ] ); - vlc_object_release( p_playlist ); - vlc_object_release( p_input ); - } + p_playlist = pl_Hold( p_intf ); + PL_LOCK; + int i_status = playlist_Status( p_playlist ); + PL_UNLOCK; + pl_Release( p_intf ); + + switch( i_status ) + { + case PLAYLIST_STOPPED: + strcpy( cmd, "stop" ); + break; + case PLAYLIST_RUNNING: + strcpy( cmd, "play" ); + break; + case PLAYLIST_PAUSED: + strcpy( cmd, "pause" ); + break; + default: + cmd[0] = '\0'; + } /* var_GetInteger( p_input, "state" ) */ + msg_rc( STATUS_CHANGE "( %s state: %d ): %s", cmd, newval.i_int, + ppsz_input_state[ newval.i_int ] ); + vlc_mutex_unlock( &p_intf->p_sys->status_lock ); return VLC_SUCCESS; } From noxelia at gmail.com Sun Feb 22 02:37:47 2009 From: noxelia at gmail.com (basos g) Date: Sun, 22 Feb 2009 01:37:47 +0000 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Privatize_vout=5FSnapshot=28?= =?iso-8859-1?q?=29_=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <20090214180247.D1B7E2F3C4@skanda.videolan.org> References: <20090214180247.D1B7E2F3C4@skanda.videolan.org> Message-ID: <9d98edc70902211737v1420724bsda44d4025632531d@mail.gmail.com> 2009/2/14 git version control : > vlc | branch: master | R?mi Denis-Courmont | Sat Feb 14 19:40:05 2009 +0200| [003d86fa032d98fbb096fb6b656fc9332e01fca2] | committer: R?mi Denis-Courmont > > Privatize vout_Snapshot() > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=003d86fa032d98fbb096fb6b656fc9332e01fca2 > --- > > include/vlc_vout.h | 1 - > src/libvlccore.sym | 1 - > 2 files changed, 0 insertions(+), 2 deletions(-) > > diff --git a/include/vlc_vout.h b/include/vlc_vout.h > index c3445af..9744319 100644 > --- a/include/vlc_vout.h > +++ b/include/vlc_vout.h > @@ -676,7 +676,6 @@ VLC_EXPORT( void, vout_PlacePicture, ( const vout_thread_t *, unsig > > VLC_EXPORT( int, vout_vaControlDefault, ( vout_thread_t *, int, va_list ) ); > void vout_IntfInit( vout_thread_t * ); > -VLC_EXPORT( int, vout_Snapshot, ( vout_thread_t *p_vout, picture_t *p_pic ) ); > VLC_EXPORT( void, vout_EnableFilter, ( vout_thread_t *, char *,bool , bool ) ); > > > diff --git a/src/libvlccore.sym b/src/libvlccore.sym > index ee2028a..be15e35 100644 > --- a/src/libvlccore.sym > +++ b/src/libvlccore.sym > @@ -540,7 +540,6 @@ __vout_Request > vout_RequestWindow > vout_ShowTextAbsolute > vout_ShowTextRelative > -vout_Snapshot > vout_UnlinkPicture > vout_vaControlDefault > __xml_Create > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > This could be a usefull facility for modules that want to take a snapshot of the video with custom image data. From d3ck0r at gmail.com Sun Feb 22 04:09:39 2009 From: d3ck0r at gmail.com (J Decker) Date: Sat, 21 Feb 2009 19:09:39 -0800 Subject: [vlc-devel] [PATCH] FIX: Dshow "none" device open (#2201). Some cleaning In-Reply-To: <9d98edc70902211115r14ac92d5ybec38a62fe6139c4@mail.gmail.com> References: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> <200902111756.18051.rem@videolan.org> <9d98edc70902120605p4579d2c5rfe7aa3be2da4626e@mail.gmail.com> <9d98edc70902141233w234da439x63d2067e6a679357@mail.gmail.com> <9d98edc70902170451s3b821d7etcab9ee4b50a49e89@mail.gmail.com> <20090217130017.GA26865@via.ecp.fr> <9d98edc70902211115r14ac92d5ybec38a62fe6139c4@mail.gmail.com> Message-ID: <8596d02a0902211909w511e6edcyb7fb14e510aaf08d@mail.gmail.com> > > Possibly you have right on this. The interface should not add the > quotes. But anyway does it hurt to dequote string input options? It is > a heterogenous infastructure ( parsing is done in various places ) so > this is a workaround.. And this bug is distributed. Parsing is done in > qt4 module and parameters are used in dshow. All the parsing code > should be in one place (for me) . > > My long term suggestion would be to parse input options at one place > (input thread create() ?) and fill input parameters from there. But > for now this should do the trick. This sounds like a very very good idea. All parsers I write for command line options remove the quotes and keep it as one null terminated sequence of characters otherwise. This is consistant for input from shells like bash and well written command line programs for windows. And, the parsing of the single line of options is absolutely the correct place for removing the quotes, not at an upper level plugin. > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > From git at videolan.org Sun Feb 22 08:45:38 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 08:45:38 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_HTTPd_unused_parameter_warnin?= =?utf-8?q?gs_=28on_some_compilers=29_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090222074538.71D982FA48@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 09:43:25 2009 +0200| [b651213de77f80c8db34822521de0b37fe07154f] | committer: R?mi Denis-Courmont Fix HTTPd unused parameter warnings (on some compilers) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b651213de77f80c8db34822521de0b37fe07154f --- src/missing.c | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+), 0 deletions(-) diff --git a/src/missing.c b/src/missing.c index 44495be..9b41d23 100644 --- a/src/missing.c +++ b/src/missing.c @@ -34,21 +34,25 @@ char *httpd_ClientIP (const httpd_client_t *cl, char *psz_ip) { + (void) cl; (void) psz_ip; assert (0); } void httpd_ClientModeBidir (httpd_client_t *cl) { + (void) cl; assert (0); } void httpd_ClientModeStream (httpd_client_t *cl) { + (void) cl; assert (0); } httpd_file_sys_t *httpd_FileDelete (httpd_file_t *file) { + (void) file; assert (0); } @@ -58,11 +62,16 @@ httpd_file_t *httpd_FileNew (httpd_host_t *host, const vlc_acl_t *acl, httpd_file_callback_t cb, httpd_file_sys_t *data) { + (void) host; + (void) url; (void) content_type; + (void) login; (void) password; (void) acl; + (void) cb; (void) data; assert (0); } httpd_handler_sys_t *httpd_HandlerDelete (httpd_handler_t *handler) { + (void) handler; assert (0); } @@ -72,11 +81,15 @@ httpd_handler_t *httpd_HandlerNew (httpd_host_t *host, const char *url, httpd_handler_callback_t cb, httpd_handler_sys_t *data) { + (void) host; (void) url; (void) content_type; + (void) login; (void) password; (void) acl; + (void) cb; (void) data; assert (0); } void httpd_HostDelete (httpd_host_t *h) { + (void) h; assert (0); } @@ -87,37 +100,44 @@ httpd_host_t *httpd_HostNew (vlc_object_t *obj, const char *host, int port) void httpd_MsgAdd (httpd_message_t *m, const char *name, const char *fmt, ...) { + (void) m; (void) name; (void) fmt; assert (0); } const char *httpd_MsgGet (const httpd_message_t *m, const char *name) { + (void) m; (void) name; assert (0); } void httpd_RedirectDelete (httpd_redirect_t *r) { + (void) r; assert (0); } httpd_redirect_t *httpd_RedirectNew (httpd_host_t *host, const char *dst, const char *src) { + (void) host; (void) dst; (void) src; assert (0); } char *httpd_ServerIP (const httpd_client_t *client, char *ip) { + (void) client; (void) ip; assert (0); } void httpd_StreamDelete (httpd_stream_t *stream) { + (void) stream; assert (0); } int httpd_StreamHeader (httpd_stream_t *stream, uint8_t *data, int count) { + (void) stream; (void) data; (void) count; assert (0); } @@ -126,11 +146,14 @@ httpd_stream_t *httpd_StreamNew (httpd_host_t *host, const char *login, const char *password, const vlc_acl_t *acl) { + (void) host; (void) url; (void) content_type; + (void) login; (void) password; (void) acl; assert (0); } int httpd_StreamSend (httpd_stream_t *stream, uint8_t *data, int count) { + (void) stream; (void) data; (void) count; assert (0); } @@ -138,6 +161,8 @@ httpd_host_t *httpd_TLSHostNew (vlc_object_t *obj, const char *host, int port, const char *cert, const char *key, const char *ca, const char *crl) { + (void) host; (void) port; + (void) cert; (void) key; (void) ca; (void) crl; msg_Err (obj, "VLC httpd support not compiled-in!"); return NULL; } @@ -145,11 +170,13 @@ httpd_host_t *httpd_TLSHostNew (vlc_object_t *obj, const char *host, int port, int httpd_UrlCatch (httpd_url_t *url, int request, httpd_callback_t cb, httpd_callback_sys_t *data) { + (void) url; (void) request; (void) cb; (void) data; assert (0); } void httpd_UrlDelete (httpd_url_t *url) { + (void) url; assert (0); } @@ -157,6 +184,7 @@ httpd_url_t *httpd_UrlNew (httpd_host_t *host, const char *url, const char *login, const char *password, const vlc_acl_t *acl) { + (void) host; (void) url; (void) login; (void) password; (void) acl; assert (0); } @@ -164,6 +192,7 @@ httpd_url_t *httpd_UrlNewUnique (httpd_host_t *host, const char *url, const char *login, const char *password, const vlc_acl_t *acl) { + (void) host; (void) url; (void) login; (void) password; (void) acl; assert (0); } #endif /* !ENABLE_HTTPD */ From finlayson at live555.com Sun Feb 22 09:27:41 2009 From: finlayson at live555.com (Ross Finlayson) Date: Sun, 22 Feb 2009 00:27:41 -0800 Subject: [vlc-devel] [RFC] VLC RTSP trickplay support In-Reply-To: <58909A1972DA06479F516447E272A2C801A12D24@CPEXBE-EML19.kpnsp.local> References: <58909A1972DA06479F516447E272A2C801A12D24@CPEXBE-EML19.kpnsp.local> Message-ID: >I cooked up a patch for live555 to export a method (hasScale()) >which tells if the RTSP server supports scale. The patch is to >illustrate a possible approach. Maybe Ross can comment on this >approach and share his thoughts on how to best handle this issue. No patch to the "LIVE555 Streaming Media" code should be needed; the existing code can be used to do what you want - I think. After you call "RTSPClient::playMediaSession()", simply call "scale()" on the "MediaSession" parameter; this tells you the scale factor - if any - that the server returned. If "scale()" returns a value other than 1.0, then you know that the server supports scaling (and that the stream will be at the given scale). If, however, "scale()" returns 1.0, then you know that the server does not support scaling (or else you didn't request it). -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Sun Feb 22 09:56:58 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 09:56:58 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Documentation_=28_R=C3=A9mi_Denis?= =?utf-8?q?-Courmont_=29?= Message-ID: <20090222085658.244C62FA16@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 10:05:46 2009 +0200| [247431e0c9a01d71c6b3a6eb941b6e4cec32a98a] | committer: R?mi Denis-Courmont Documentation > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=247431e0c9a01d71c6b3a6eb941b6e4cec32a98a --- bindings/cil/src/marshal.cs | 9 +++++++-- bindings/cil/src/ustring.cs | 4 ++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/bindings/cil/src/marshal.cs b/bindings/cil/src/marshal.cs index 2135aca..439d849 100644 --- a/bindings/cil/src/marshal.cs +++ b/bindings/cil/src/marshal.cs @@ -67,10 +67,10 @@ namespace VideoLAN.LibVLC }; /** - * @brief BaseObject: generic wrapper around a safe handle. + * @brief BaseObject: generic wrapper around a safe LibVLC handle. * @ingroup Internals * This is the baseline for all managed LibVLC objects which wrap - * an unmanaged LibVLC pointer. + * an unmanaged LibVLC pointer, and provides exception handling. */ public class BaseObject : IDisposable { @@ -101,6 +101,11 @@ namespace VideoLAN.LibVLC GC.SuppressFinalize (this); } + /** + * Releases unmanaged resources associated with the object. + * @param disposing true if the disposing the object explicitly, + * false if finalizing the object inside the GC. + */ protected virtual void Dispose (bool disposing) { if (disposing) diff --git a/bindings/cil/src/ustring.cs b/bindings/cil/src/ustring.cs index d6ad65a..f70eb2b 100644 --- a/bindings/cil/src/ustring.cs +++ b/bindings/cil/src/ustring.cs @@ -114,6 +114,10 @@ namespace VideoLAN.LibVLC return U8String.FromNative (handle); } + /** + * Converts the buffer (as in ToString()) and release it. + * @return managed string representation of the buffer + */ public string Transform () { string value = ToString (); From git at videolan.org Sun Feb 22 09:56:58 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 09:56:58 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Separate_MemoryHandle_and_StringH?= =?utf-8?q?andle_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090222085658.3493B2FB32@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 10:06:15 2009 +0200| [987437599c1e284b11f647e45b6688518909b834] | committer: R?mi Denis-Courmont Separate MemoryHandle and StringHandle > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=987437599c1e284b11f647e45b6688518909b834 --- bindings/cil/src/libvlc.cs | 2 +- bindings/cil/src/media.cs | 2 +- bindings/cil/src/ustring.cs | 14 +++++++++++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs index 570d189..3fcfe59 100644 --- a/bindings/cil/src/libvlc.cs +++ b/bindings/cil/src/libvlc.cs @@ -98,7 +98,7 @@ namespace VideoLAN.LibVLC [DllImport ("libvlc.dll", EntryPoint="libvlc_media_get_mrl")] public static extern - MemoryHandle MediaGetMRL (MediaHandle media, NativeException ex); + StringHandle MediaGetMRL (MediaHandle media, NativeException ex); [DllImport ("libvlc.dll", EntryPoint="libvlc_media_duplicate")] public static extern diff --git a/bindings/cil/src/media.cs b/bindings/cil/src/media.cs index 39f0290..a6ed833 100644 --- a/bindings/cil/src/media.cs +++ b/bindings/cil/src/media.cs @@ -102,7 +102,7 @@ namespace VideoLAN.LibVLC { get { - MemoryHandle str = LibVLC.MediaGetMRL (Handle, ex); + StringHandle str = LibVLC.MediaGetMRL (Handle, ex); Raise (); return str.Transform (); } diff --git a/bindings/cil/src/ustring.cs b/bindings/cil/src/ustring.cs index f70eb2b..e55c425 100644 --- a/bindings/cil/src/ustring.cs +++ b/bindings/cil/src/ustring.cs @@ -96,7 +96,7 @@ namespace VideoLAN.LibVLC * @brief MemoryHandle: heap allocation by the C run-time * @ingroup Internals */ - internal sealed class MemoryHandle : NonNullHandle + internal class MemoryHandle : NonNullHandle { [DllImport ("libvlc.dll", EntryPoint="libvlc_free")] private static extern void Free (IntPtr ptr); @@ -108,7 +108,19 @@ namespace VideoLAN.LibVLC { Free (handle); } + }; + /** + * @brief StringHandle: heap-allocated characters array + * @ingroup Internals + */ + internal sealed class StringHandle : MemoryHandle + { + /** + * Converts an heap-allocated nul-terminated UTF-8 characters array + * into a managed string. + * @return the resulting managed string. + */ public override string ToString () { return U8String.FromNative (handle); From git at videolan.org Sun Feb 22 09:56:58 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 09:56:58 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Do_not_leak_native_exception_thro?= =?utf-8?q?ugh_our_API_users=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090222085658.47CF32FB1F@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 10:06:47 2009 +0200| [f21526f2bfec92043ccc36047152995c750ff6ff] | committer: R?mi Denis-Courmont Do not leak native exception through our API users. Native exception are not completely safe, mostly because the memory is managed but not the content. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f21526f2bfec92043ccc36047152995c750ff6ff --- bindings/cil/src/marshal.cs | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bindings/cil/src/marshal.cs b/bindings/cil/src/marshal.cs index 439d849..dfb8180 100644 --- a/bindings/cil/src/marshal.cs +++ b/bindings/cil/src/marshal.cs @@ -74,8 +74,8 @@ namespace VideoLAN.LibVLC */ public class BaseObject : IDisposable { - protected NativeException ex; /**< buffer for LibVLC exceptions */ - protected SafeHandle handle; /**< wrapped safe handle */ + internal NativeException ex; /**< buffer for LibVLC exceptions */ + internal SafeHandle handle; /**< wrapped safe handle */ internal BaseObject () { @@ -87,7 +87,7 @@ namespace VideoLAN.LibVLC * Checks if the LibVLC run-time raised an exception * If so, raises a CIL exception. */ - protected void Raise () + internal void Raise () { ex.Raise (); } From git at videolan.org Sun Feb 22 09:56:58 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 09:56:58 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Add_a_main_page_to_the_documentat?= =?utf-8?q?ion_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090222085658.5B5FF2FB36@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 10:56:42 2009 +0200| [97bda2d0ab1e3d00aa00fe801531b0e1a570c57d] | committer: R?mi Denis-Courmont Add a main page to the documentation > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=97bda2d0ab1e3d00aa00fe801531b0e1a570c57d --- bindings/cil/src/instance.cs | 83 +++++++++++++++++++++++++++++++++++++++++- bindings/cil/src/marshal.cs | 7 +++- 2 files changed, 87 insertions(+), 3 deletions(-) diff --git a/bindings/cil/src/instance.cs b/bindings/cil/src/instance.cs index 6970082..6692a7e 100644 --- a/bindings/cil/src/instance.cs +++ b/bindings/cil/src/instance.cs @@ -1,9 +1,10 @@ /** * @file instance.cs - * @brief Bindings to LibVLC for the .NET Common Intermediate Language + * @brief LibVLC instance class * @ingroup API * * @defgroup API Managed interface to LibVLC + * * This is the primary class library for .NET applications * to embed and control LibVLC. */ @@ -28,6 +29,13 @@ using System; using System.Runtime.InteropServices; +/** + * @brief VideoLAN.LibVLC: VideoLAN project's LibVLC .Net bindings + * @ingroup API + * + * This namespace provides a set of managed APIs around the native LibVLC + * for the .Net Common Language Runtime. + */ namespace VideoLAN.LibVLC { /** @@ -149,3 +157,76 @@ namespace VideoLAN.LibVLC } }; }; + +/** + * @mainpage libvlc-cil documentation + * + * @section Introduction + * + * libvlc-cil is a thin API layer around LibVLC, + * the VideoLAN's project media framework C library. + * LibVLC comes built-in the VLC media player. + * + * With libvlc-cil, you can use LibVLC + * from within the .Net Common Language Runtime, + * with the CIL programming language of your preference. + * However, libvlc-cil and the code sample in this documentation + * are written is C#. + * + * @section Installation + * + * libvlc-cil does not include the underlying LibVLC by default. + * Make sure VLC, or at least LibVLC and the relevant VLC plugins are present. + * The LibVLC runtime library needs to be in the library search path for the + * Common Language Runtime. Check the documentation for your CLR for details. + * + * On Windows, libvlc.dll needs to be in the current directory, the DLL path + * of the running process, or the system search path (but the latter is + * uncommon and not supported by the official LibVLC installer). + * + * On Linux, libvlc.so should be in /usr/lib; if it is in another directory, + * such as /usr/local/lib, you might need to add that directory to the + * LD_LIBRARY_PATH environment variable. + * + * @section Usage + * + * First, you need to create a VLC instance. This will load and setup the + * native VLC runtime, the VLC configuration, the list of available plugins, + * the platform adaptation and the VLC log messages and objects subsystems + * (see \ref VideoLAN::LibVLC::VLC for details). + * + * @code + * using System; + * using VideoLAN.LibVLC; + * ... + * + * try { + * Console.WriteLine("Running on VLC version {0}", VLC.Version); + * } + * catch (Exception e) { + * Console.WriteLine("VLC is not available on your system."); + * throw e; + * } + * + * string[] args = new string[]{ "-v", "--ignore-config" }; + * VLC vlc = new VLC(args); + * @endcode + * + * To play media, you need a media and a player. + * See the \ref VideoLAN::LibVLC::Media + * and \ref VideoLAN::LibVLC::Player classes for details. + * @code + * Media media = new Media(vlc, "http://www.example.com/video.ogv"); + * Player player = new Player(media); + * player.Play(); + * @endcode + * + * All these objects use unmanaged resources. + * They all implement the IDisposeable interface. + * You should dispose them when you do not need them anymore: + * @code + * player.Dispose(); + * media.Dispose(); + * vlc.Dispose(); + * @endcode + */ diff --git a/bindings/cil/src/marshal.cs b/bindings/cil/src/marshal.cs index dfb8180..51558ec 100644 --- a/bindings/cil/src/marshal.cs +++ b/bindings/cil/src/marshal.cs @@ -69,8 +69,11 @@ namespace VideoLAN.LibVLC /** * @brief BaseObject: generic wrapper around a safe LibVLC handle. * @ingroup Internals - * This is the baseline for all managed LibVLC objects which wrap - * an unmanaged LibVLC pointer, and provides exception handling. + * + * This is the baseline for all managed LibVLC objects. It wraps: + * - an unmanaged LibVLC pointer, + * - a native exception structure, and + * - the object's native event manager. */ public class BaseObject : IDisposable { From git at videolan.org Sun Feb 22 10:54:36 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 10:54:36 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Add_media_and_player_state_suppor?= =?utf-8?q?t_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090222095436.861D12FA65@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 11:54:23 2009 +0200| [60a842695c2a896fabc16dac503210a0f36f7a36] | committer: R?mi Denis-Courmont Add media and player state support > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=60a842695c2a896fabc16dac503210a0f36f7a36 --- bindings/cil/src/libvlc.cs | 9 ++++----- bindings/cil/src/media.cs | 31 +++++++++++++++++++++++++++++++ bindings/cil/src/player.cs | 13 +++++++++++++ bindings/cil/tests/testvlc.cs | 5 +++-- include/vlc/libvlc_structures.h | 3 ++- 5 files changed, 53 insertions(+), 8 deletions(-) diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs index 3fcfe59..df676e1 100644 --- a/bindings/cil/src/libvlc.cs +++ b/bindings/cil/src/libvlc.cs @@ -109,9 +109,9 @@ namespace VideoLAN.LibVLC MediaHandle MediaDuplicate (MediaHandle media, int type, NativeException ex);*/ - /*[DllImport ("libvlc.dll", EntryPoint="libvlc_media_get_state")] + [DllImport ("libvlc.dll", EntryPoint="libvlc_media_get_state")] public static extern - int MediaGetState (MediaHandle media, NativeException ex);*/ + State MediaGetState (MediaHandle media, NativeException ex); /*[DllImport ("libvlc.dll", EntryPoint="libvlc_media_subitems")] public static extern @@ -301,11 +301,10 @@ namespace VideoLAN.LibVLC void PlayerSetRate (PlayerHandle player, float rate, NativeException ex); - /*[DllImport ("libvlc.dll", + [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_get_state")] public static extern - void PlayerSetState (PlayerHandle player, float rate, - NativeException ex); */ + State PlayerGetState (PlayerHandle player, NativeException ex); [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_get_fps")] diff --git a/bindings/cil/src/media.cs b/bindings/cil/src/media.cs index a6ed833..5c3b0cf 100644 --- a/bindings/cil/src/media.cs +++ b/bindings/cil/src/media.cs @@ -43,6 +43,24 @@ namespace VideoLAN.LibVLC }; /** + * @brief State: media/player state + * + * Media and Player objects are always in one of these state. + * @see Media::State and @see Player::State. + */ + public enum State + { + NothingSpecial, /**< Nothing going on */ + Opening, /**< Being opened */ + Buffering, /**< Buffering before play */ + Playing, /**< Playing */ + Paused, /**< Paused */ + Stopped, /**< Stopped */ + Ended, /**< Played until the end */ + Error, /**< Failed */ + }; + + /** * @brief Media: a source media * @ingroup API * Each media object represents an input media, such as a file or an URL. @@ -122,6 +140,19 @@ namespace VideoLAN.LibVLC } /** + * Current state of the media. + */ + public State State + { + get + { + State ret = LibVLC.MediaGetState (Handle, ex); + Raise (); + return ret; + } + } + + /** * Duration of the media in microseconds. The precision of the result * depends on the input stram protocol and file format. The value * might be incorrect and unknown (VLC usually returns 0 or -1 then). diff --git a/bindings/cil/src/player.cs b/bindings/cil/src/player.cs index 2e3d54b..431b9de 100644 --- a/bindings/cil/src/player.cs +++ b/bindings/cil/src/player.cs @@ -364,6 +364,19 @@ namespace VideoLAN.LibVLC } /** + * Current state of the player. + */ + public State State + { + get + { + State ret = LibVLC.PlayerGetState (Handle, ex); + Raise (); + return ret; + } + } + + /** * Frame rate in unit/seconds. */ public float FramePerSeconds diff --git a/bindings/cil/tests/testvlc.cs b/bindings/cil/tests/testvlc.cs index 3868cad..91c27ac 100644 --- a/bindings/cil/tests/testvlc.cs +++ b/bindings/cil/tests/testvlc.cs @@ -33,6 +33,7 @@ namespace VideoLAN.LibVLC.Test Console.WriteLine ("Media at {0}", m.Location); Console.WriteLine (" duration: {0}?s", m.Duration); Console.WriteLine (" preparsed: {0}", m.IsPreparsed); + Console.WriteLine (" state: {0}", m.State); } private static void DumpPlayer (Player p) @@ -41,8 +42,8 @@ namespace VideoLAN.LibVLC.Test return; int percent = (int)(p.Position * 100); - Console.Write ("{0} of {1} ms ({2}%)\r", p.Time, p.Length, - percent); + Console.Write ("{0}: {1} of {2} ms ({3}%)\r", p.State, + p.Time, p.Length, percent); } private static void Sleep (int msec) diff --git a/include/vlc/libvlc_structures.h b/include/vlc/libvlc_structures.h index bede67c..7ad8378 100644 --- a/include/vlc/libvlc_structures.h +++ b/include/vlc/libvlc_structures.h @@ -127,7 +127,8 @@ typedef struct libvlc_media_player_t libvlc_media_player_t; /** * Note the order of libvlc_state_t enum must match exactly the order of - * @see mediacontrol_PlayerStatus and @see input_state_e enums. + * @see mediacontrol_PlayerStatus, @see input_state_e enums, + * and VideoLAN.LibVLC.State (at bindings/cil/src/media.cs). * * Expected states by web plugins are: * IDLE/CLOSE=0, OPENING=1, BUFFERING=2, PLAYING=3, PAUSED=4, From git at videolan.org Sun Feb 22 11:02:45 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 11:02:45 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_xosd=3A_use_a_condition_variable_?= =?utf-8?q?instead_of_a_sleep=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090222100245.421442FA2E@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 22 10:53:18 2009 +0100| [b3bfa5ad8eedfd5919d62433c993a581a032a61b] | committer: R?mi Duraffort xosd: use a condition variable instead of a sleep. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b3bfa5ad8eedfd5919d62433c993a581a032a61b --- modules/misc/notify/xosd.c | 147 ++++++++++++++++++++++++-------------------- 1 files changed, 81 insertions(+), 66 deletions(-) diff --git a/modules/misc/notify/xosd.c b/modules/misc/notify/xosd.c index 09222bf..51f10c8 100644 --- a/modules/misc/notify/xosd.c +++ b/modules/misc/notify/xosd.c @@ -45,8 +45,10 @@ *****************************************************************************/ struct intf_sys_t { - xosd * p_osd; /* libxosd handle */ - bool b_need_update; /* Update display ? */ + xosd * p_osd; /* libxosd handle */ + bool b_need_update; /* Update display ? */ + vlc_mutex_t lock; /* lock for the condition variable */ + vlc_cond_t cond; /* condition variable to know when to update */ }; #define MAX_LINE_LENGTH 256 @@ -54,13 +56,13 @@ struct intf_sys_t /***************************************************************************** * Local prototypes. *****************************************************************************/ -static int Open ( vlc_object_t * ); -static void Close ( vlc_object_t * ); +static int Open ( vlc_object_t * ); +static void Close ( vlc_object_t * ); -static void Run ( intf_thread_t * ); +static void Run ( intf_thread_t * ); -static int PlaylistNext( vlc_object_t *p_this, const char *psz_variable, - vlc_value_t oval, vlc_value_t nval, void *param ); +static int PlaylistNext ( vlc_object_t *p_this, const char *psz_variable, + vlc_value_t oval, vlc_value_t nval, void *param ); /***************************************************************************** * Module descriptor @@ -111,7 +113,7 @@ static int Open( vlc_object_t *p_this ) char *psz_font, *psz_colour; /* Allocate instance and initialize some members */ - p_intf->p_sys = (intf_sys_t *)malloc( sizeof( intf_sys_t ) ); + p_intf->p_sys = malloc( sizeof( intf_sys_t ) ); if( p_intf->p_sys == NULL ) return VLC_ENOMEM; @@ -146,13 +148,16 @@ static int Open( vlc_object_t *p_this ) return VLC_EGENERIC; } - psz_colour = config_GetPsz( p_intf,"xosd-colour" ); + psz_colour = config_GetPsz( p_intf, "xosd-colour" ); xosd_set_colour( p_osd, psz_colour ); xosd_set_timeout( p_osd, 3 ); free( psz_colour ); #endif - + // Initialize mutex and condition variable before adding the callbacks + vlc_mutex_init( &p_intf->p_sys->lock ); + vlc_cond_init( &p_intf->p_sys->cond ); + // Add the callbacks playlist_t *p_playlist = pl_Hold( p_intf ); var_AddCallback( p_playlist, "item-current", PlaylistNext, p_this ); var_AddCallback( p_playlist, "item-change", PlaylistNext, p_this ); @@ -194,6 +199,7 @@ static int Open( vlc_object_t *p_this ) static void Close( vlc_object_t *p_this ) { intf_thread_t *p_intf = (intf_thread_t *)p_this; + playlist_t *p_playlist = pl_Hold( p_intf ); var_DelCallback( p_playlist, "item-current", PlaylistNext, p_this ); var_DelCallback( p_playlist, "item-change", PlaylistNext, p_this ); @@ -203,6 +209,8 @@ static void Close( vlc_object_t *p_this ) xosd_destroy( p_intf->p_sys->p_osd ); /* Destroy structure */ + vlc_cond_destroy( &p_intf->p_sys->cond ); + vlc_mutex_destroy( &p_intf->p_sys->lock ); free( p_intf->p_sys ); } @@ -216,86 +224,93 @@ static void Run( intf_thread_t *p_intf ) playlist_t *p_playlist; playlist_item_t *p_item = NULL; char *psz_display = NULL; + int cancel = vlc_savecancel(); - for( ;; ) + while( true ) { - int canc = vlc_savecancel(); - - if( p_intf->p_sys->b_need_update == true ) + // Wait for a signal + vlc_restorecancel( cancel ); + vlc_mutex_lock( &p_intf->p_sys->lock ); + mutex_cleanup_push( &p_intf->p_sys->lock ); + while( !p_intf->p_sys->b_need_update ) + vlc_cond_wait( &p_intf->p_sys->cond, &p_intf->p_sys->lock ); + p_intf->p_sys->b_need_update = false; + vlc_cleanup_run(); + + // Compute the signal + cancel = vlc_savecancel(); + p_playlist = pl_Hold( p_intf ); + PL_LOCK; + + // If the playlist is empty don't do anything + if( playlist_IsEmpty( p_playlist ) ) { - p_intf->p_sys->b_need_update = false; - p_playlist = pl_Hold( p_intf ); - PL_LOCK; + PL_UNLOCK; + pl_Release( p_intf ); + continue; + } - if( playlist_IsEmpty( p_playlist ) ) + free( psz_display ); + int i_status = playlist_Status( p_playlist ); + if( i_status == PLAYLIST_STOPPED ) + { + psz_display = strdup(_("Stop")); + PL_UNLOCK; + pl_Release( p_intf ); + } + else if( i_status == PLAYLIST_PAUSED ) + { + psz_display = strdup(_("Pause")); + PL_UNLOCK; + pl_Release( p_intf ); + } + else + { + p_item = playlist_CurrentPlayingItem( p_playlist ); + if( !p_item ) { PL_UNLOCK; pl_Release( p_intf ); - vlc_restorecancel( canc ); continue; } - free( psz_display ); + input_item_t *p_input = p_item->p_input; + vlc_gc_incref( p_input ); - int i_status = playlist_Status( p_playlist ); - if( i_status == PLAYLIST_STOPPED ) - { - psz_display = strdup(_("Stop")); - PL_UNLOCK; - pl_Release( p_intf ); - } - else if( i_status == PLAYLIST_PAUSED ) + PL_UNLOCK; + pl_Release( p_intf ); + + mtime_t i_duration = input_item_GetDuration( p_input ); + if( i_duration != -1 ) { - psz_display = strdup(_("Pause")); - PL_UNLOCK; - pl_Release( p_intf ); + char psz_durationstr[MSTRTIME_MAX_SIZE]; + secstotimestr( psz_durationstr, i_duration / 1000000 ); + if( asprintf( &psz_display, "%s (%s)", p_input->psz_name, psz_durationstr ) == -1 ) + psz_display = NULL; } else - { - p_item = playlist_CurrentPlayingItem( p_playlist ); - if( !p_item ) - { - PL_UNLOCK; - pl_Release( p_intf ); - vlc_restorecancel( canc ); - continue; - } - input_item_t *p_input = p_item->p_input; - vlc_gc_incref( p_input ); + psz_display = strdup( p_input->psz_name ); - PL_UNLOCK; - pl_Release( p_intf ); - - mtime_t i_duration = input_item_GetDuration( p_input ); - if( i_duration != -1 ) - { - char psz_durationstr[MSTRTIME_MAX_SIZE]; - secstotimestr( psz_durationstr, i_duration / 1000000 ); - if( asprintf( &psz_display, "%s (%s)", p_input->psz_name, psz_durationstr ) == -1 ) - psz_display = NULL; - } - else - psz_display = strdup( p_input->psz_name ); - - vlc_gc_decref( p_input ); - } - - /* Display */ - xosd_display( p_intf->p_sys->p_osd, - 0, /* first line */ - XOSD_string, - psz_display ); + vlc_gc_decref( p_input ); } - vlc_restorecancel( canc ); - msleep( INTF_IDLE_SLEEP ); + + /* Display */ + xosd_display( p_intf->p_sys->p_osd, 0, /* first line */ + XOSD_string, psz_display ); } } static int PlaylistNext( vlc_object_t *p_this, const char *psz_variable, vlc_value_t oval, vlc_value_t nval, void *param ) { + (void)p_this; (void)psz_variable; (void)oval; (void)nval; intf_thread_t *p_intf = (intf_thread_t *)param; + // Send the signal using the condition variable + vlc_mutex_lock( &p_intf->p_sys->lock ); p_intf->p_sys->b_need_update = true; + vlc_cond_signal( &p_intf->p_sys->cond ); + vlc_mutex_unlock( &p_intf->p_sys->lock ); + return VLC_SUCCESS; } From git at videolan.org Sun Feb 22 11:02:45 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 11:02:45 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_xosd=3A_simplification=2E_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090222100245.50DC62FA65@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 22 10:54:57 2009 +0100| [432bf4311c88b59601c5640aa9e118f087ace9d0] | committer: R?mi Duraffort xosd: simplification. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=432bf4311c88b59601c5640aa9e118f087ace9d0 --- modules/misc/notify/xosd.c | 7 ++----- 1 files changed, 2 insertions(+), 5 deletions(-) diff --git a/modules/misc/notify/xosd.c b/modules/misc/notify/xosd.c index 51f10c8..edaa724 100644 --- a/modules/misc/notify/xosd.c +++ b/modules/misc/notify/xosd.c @@ -274,10 +274,6 @@ static void Run( intf_thread_t *p_intf ) continue; } input_item_t *p_input = p_item->p_input; - vlc_gc_incref( p_input ); - - PL_UNLOCK; - pl_Release( p_intf ); mtime_t i_duration = input_item_GetDuration( p_input ); if( i_duration != -1 ) @@ -290,7 +286,8 @@ static void Run( intf_thread_t *p_intf ) else psz_display = strdup( p_input->psz_name ); - vlc_gc_decref( p_input ); + PL_UNLOCK; + pl_Release( p_intf ); } /* Display */ From git at videolan.org Sun Feb 22 11:21:37 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 11:21:37 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_rc=3A_factorisation_=28_R=C3=A9mi?= =?utf-8?q?_Duraffort_=29?= Message-ID: <20090222102137.EC25B2F9FB@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 22 11:18:38 2009 +0100| [3b954882ebc4f0be1b5a3a03e7f160cf6963e479] | committer: R?mi Duraffort rc: factorisation > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3b954882ebc4f0be1b5a3a03e7f160cf6963e479 --- modules/control/rc.c | 34 ++++++++++++++++------------------ 1 files changed, 16 insertions(+), 18 deletions(-) diff --git a/modules/control/rc.c b/modules/control/rc.c index 119ba0b..3f69001 100644 --- a/modules/control/rc.c +++ b/modules/control/rc.c @@ -552,25 +552,23 @@ static void Run( intf_thread_t *p_intf ) { PL_LOCK; int status = playlist_Status( p_playlist ); - if( (p_intf->p_sys->i_last_state != status) && - (status == PLAYLIST_STOPPED) ) + if( p_intf->p_sys->i_last_state != status ) { - p_intf->p_sys->i_last_state = PLAYLIST_STOPPED; - msg_rc( STATUS_CHANGE "( stop state: 5 )" ); - } - else if( - (p_intf->p_sys->i_last_state != status) && - (status == PLAYLIST_RUNNING) ) - { - p_intf->p_sys->i_last_state = PLAYLIST_RUNNING; - msg_rc( STATUS_CHANGE "( play state: 3 )" ); - } - else if( - (p_intf->p_sys->i_last_state != status) && - (status == PLAYLIST_PAUSED) ) - { - p_intf->p_sys->i_last_state = PLAYLIST_PAUSED; - msg_rc( STATUS_CHANGE "( pause state: 4 )" ); + if( status == PLAYLIST_STOPPED ) + { + p_intf->p_sys->i_last_state = PLAYLIST_STOPPED; + msg_rc( STATUS_CHANGE "( stop state: 5 )" ); + } + else if( status == PLAYLIST_RUNNING ) + { + p_intf->p_sys->i_last_state = PLAYLIST_RUNNING; + msg_rc( STATUS_CHANGE "( play state: 3 )" ); + } + else if( status == PLAYLIST_PAUSED ) + { + p_intf->p_sys->i_last_state = PLAYLIST_PAUSED; + msg_rc( STATUS_CHANGE "( pause state: 4 )" ); + } } PL_UNLOCK; } From git at videolan.org Sun Feb 22 11:58:27 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 11:58:27 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_cmml=3A_less_includes=2E_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090222105827.530662FB76@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Sun Feb 22 11:56:56 2009 +0100| [9fc5b801573e522f72e159ae707992a2929e174f] | committer: R?mi Duraffort cmml: less includes. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9fc5b801573e522f72e159ae707992a2929e174f --- modules/codec/cmml/intf.c | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/modules/codec/cmml/intf.c b/modules/codec/cmml/intf.c index 23647ff..18463d5 100644 --- a/modules/codec/cmml/intf.c +++ b/modules/codec/cmml/intf.c @@ -40,13 +40,11 @@ #endif #include -#include #include -#include #include #include -#include "vlc_keys.h" +#include #include "browser_open.h" #include "history.h" From git at videolan.org Sun Feb 22 12:24:58 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 12:24:58 +0100 (CET) Subject: [vlc-devel] commit: WinCE: add mingw32ce to the list of build systems ( Geoffroy Couprie ) Message-ID: <20090222112458.D06012F9E4@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Sun Feb 22 11:21:02 2009 +0100| [9ff3e13c0de009b56a9bf1ac7c9ce8d1a5252a0c] | committer: Geoffroy Couprie WinCE: add mingw32ce to the list of build systems > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9ff3e13c0de009b56a9bf1ac7c9ce8d1a5252a0c --- extras/contrib/bootstrap | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/extras/contrib/bootstrap b/extras/contrib/bootstrap index 9594145..4ae943d 100755 --- a/extras/contrib/bootstrap +++ b/extras/contrib/bootstrap @@ -247,6 +247,11 @@ case $HOST in fi cat src/Distributions/beos.mak >> distro.mak ;; + *mingw32ce) + echo "HAVE_WINCE = 1" >> config.mak + echo "PKG_CONFIG_PATH = \$(PREFIX)/lib/pkgconfig" >> config.mak + cat src/Distributions/wince.mak >> distro.mak + ;; *mingw32*) echo "HAVE_WIN32 = 1" >> config.mak echo "PKG_CONFIG_PATH = \$(PREFIX)/lib/pkgconfig" >> config.mak From git at videolan.org Sun Feb 22 15:32:30 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 15:32:30 +0100 (CET) Subject: [vlc-devel] commit: Qt: systray, don' t show the tooltip on right-click! we need menu at that time. ( Jean-Baptiste Kempf ) Message-ID: <20090222143230.2F6D22FA4C@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 22 15:30:20 2009 +0100| [99088673f9d9b4d172dbf6054542219b952be86b] | committer: Jean-Baptiste Kempf Qt: systray, don't show the tooltip on right-click! we need menu at that time. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=99088673f9d9b4d172dbf6054542219b952be86b --- modules/gui/qt4/main_interface.cpp | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index 42d9f69..a42f349 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -982,7 +982,6 @@ void MainInterface::handleSystrayClick( toggleUpdateSystrayMenu(); break; case QSystemTrayIcon::MiddleClick: - case QSystemTrayIcon::Context: sysTray->showMessage( qtr( "VLC media player" ), qtr( "Control menu for the player" ), QSystemTrayIcon::Information, 3000 ); From git at videolan.org Sun Feb 22 15:34:12 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 15:34:12 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Use_=40see_instead_of_=40ref_=28_?= =?utf-8?q?R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090222143412.5539C2F5DB@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 11:57:15 2009 +0200| [8ebc7def16c41602c5462a1483026cc1a6550ba8] | committer: R?mi Denis-Courmont Use @see instead of @ref > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8ebc7def16c41602c5462a1483026cc1a6550ba8 --- bindings/cil/src/instance.cs | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) diff --git a/bindings/cil/src/instance.cs b/bindings/cil/src/instance.cs index 6692a7e..901c440 100644 --- a/bindings/cil/src/instance.cs +++ b/bindings/cil/src/instance.cs @@ -193,8 +193,6 @@ namespace VideoLAN.LibVLC * First, you need to create a VLC instance. This will load and setup the * native VLC runtime, the VLC configuration, the list of available plugins, * the platform adaptation and the VLC log messages and objects subsystems - * (see \ref VideoLAN::LibVLC::VLC for details). - * * @code * using System; * using VideoLAN.LibVLC; @@ -211,15 +209,15 @@ namespace VideoLAN.LibVLC * string[] args = new string[]{ "-v", "--ignore-config" }; * VLC vlc = new VLC(args); * @endcode + * @see VideoLAN::LibVLC::VLC * * To play media, you need a media and a player. - * See the \ref VideoLAN::LibVLC::Media - * and \ref VideoLAN::LibVLC::Player classes for details. * @code * Media media = new Media(vlc, "http://www.example.com/video.ogv"); * Player player = new Player(media); * player.Play(); * @endcode + * @see VideoLAN::LibVLC::Media @see VideoLAN::LibVLC::Player * * All these objects use unmanaged resources. * They all implement the IDisposeable interface. From git at videolan.org Sun Feb 22 15:34:12 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 15:34:12 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Version_informations_=28_R=C3=A9m?= =?utf-8?q?i_Denis-Courmont_=29?= Message-ID: <20090222143412.6512C2FA58@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 16:31:37 2009 +0200| [113488b7940795ab88d6c2e3d5ab0980ff4fe5af] | committer: R?mi Denis-Courmont Version informations > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=113488b7940795ab88d6c2e3d5ab0980ff4fe5af --- bindings/cil/src/instance.cs | 1 + bindings/cil/src/media.cs | 12 +++++++----- bindings/cil/src/player.cs | 11 +++++++++-- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/bindings/cil/src/instance.cs b/bindings/cil/src/instance.cs index 901c440..1a119a8 100644 --- a/bindings/cil/src/instance.cs +++ b/bindings/cil/src/instance.cs @@ -147,6 +147,7 @@ namespace VideoLAN.LibVLC /** * The unmanaged VLC-internal instance object. * Do not use this unless you really know what you are doing. + * @version VLC 1.0 */ public SafeHandle Object { diff --git a/bindings/cil/src/media.cs b/bindings/cil/src/media.cs index 5c3b0cf..60a61d9 100644 --- a/bindings/cil/src/media.cs +++ b/bindings/cil/src/media.cs @@ -91,16 +91,17 @@ namespace VideoLAN.LibVLC /** * Add VLC input item options to the media. - * @param options VLC options in VLC input item format - * (see example below) - * @param trusted whether the options are set by a trusted agent - * (e.g. the local computer configuration) or not - * (e.g. a downloaded file). * @code * Media m = new Media(vlc, "http://www.example.com/music.ogg"); * m.AddOptions(":http-user-agent=LibVLC.Net " * + ":http-proxy=proxy:8080", true); * @endcode + * @param options VLC options in VLC input item format + * (see example below) + * @param trusted whether the options are set by a trusted agent + * (e.g. the local computer configuration) or not + * (e.g. a downloaded file). + * @version VLC 0.9.9 if trusted is false */ public void AddOptions (string options, bool trusted) { @@ -115,6 +116,7 @@ namespace VideoLAN.LibVLC /** * The media location (file path, URL, ...). + * @version VLC 1.0 */ public string Location { diff --git a/bindings/cil/src/player.cs b/bindings/cil/src/player.cs index 431b9de..bfd622d 100644 --- a/bindings/cil/src/player.cs +++ b/bindings/cil/src/player.cs @@ -108,6 +108,7 @@ namespace VideoLAN.LibVLC /** * Whether the player is currently active. + * @version VLC 1.0 */ public bool IsPlaying { @@ -155,8 +156,8 @@ namespace VideoLAN.LibVLC * playback is not started or stopped; live reparenting might not * work. * - * Warning: - * If the identifier is invalid, Xlib might abort the process. + * @warning If the identifier is invalid, Xlib might abort the process. + * @version VLC 1.0 */ public int XWindow { @@ -178,6 +179,7 @@ namespace VideoLAN.LibVLC * supports one of DirectDraw, Direct3D, GDI or OpenGL/Win32. * Note that you should set/change/unset the window while playback is * not started or stopped; live reparenting might not work. + * @version VLC 1.0 */ public SafeHandle HWND { @@ -285,6 +287,7 @@ namespace VideoLAN.LibVLC /** * Gets the number of chapters within a given title. * @param title media title number + * @version VLC 1.0 */ public int GetChapterCountByTitle (int title) { @@ -295,6 +298,7 @@ namespace VideoLAN.LibVLC /** * Number of the current title. + * @version VLC 1.0 */ public int Title { @@ -313,6 +317,7 @@ namespace VideoLAN.LibVLC /** * Total number of titles. + * @version VLC 1.0 */ public int TitleCount { @@ -326,6 +331,7 @@ namespace VideoLAN.LibVLC /** * Skips to the beginning of the next chapter. + * @version VLC 1.0 */ public void NextChapter () { @@ -335,6 +341,7 @@ namespace VideoLAN.LibVLC /** * Rewinds to the previous chapter. + * @version VLC 1.0 */ public void PreviousChapter () { From git at videolan.org Sun Feb 22 15:34:12 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 15:34:12 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Low-level_support_for_events_atta?= =?utf-8?q?ching/detaching_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090222143412.777D32F5DB@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 16:33:10 2009 +0200| [d9bc2eda82bb3fc99a1fef77ccd6076a2625517b] | committer: R?mi Denis-Courmont Low-level support for events attaching/detaching > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d9bc2eda82bb3fc99a1fef77ccd6076a2625517b --- bindings/cil/src/libvlc.cs | 84 +++++++++++++++++++++++++++-- bindings/cil/src/marshal.cs | 125 +++++++++++++++++++++++++++++++++++++++++- bindings/cil/src/media.cs | 7 ++- bindings/cil/src/player.cs | 7 ++- 4 files changed, 212 insertions(+), 11 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=d9bc2eda82bb3fc99a1fef77ccd6076a2625517b From git at videolan.org Sun Feb 22 15:36:57 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 15:36:57 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Don=27t_use_repeat_the_same_adver?= =?utf-8?q?b_twice_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090222143657.663562FA4D@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 16:36:39 2009 +0200| [8030cf38e972aaa78380a5d116e9a4cb4a544b9d] | committer: R?mi Denis-Courmont Don't use repeat the same adverb twice > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8030cf38e972aaa78380a5d116e9a4cb4a544b9d --- bin/vlc.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/bin/vlc.c b/bin/vlc.c index f2d820f..ba3b040 100644 --- a/bin/vlc.c +++ b/bin/vlc.c @@ -56,7 +56,7 @@ int main( int i_argc, const char *ppsz_argv[] ) { fprintf (stderr, "VLC is not supposed to be run as root. Sorry.\n" "If you need to use real-time priorities and/or privileged TCP ports\n" - "you can use %s-wrapper (make sure it is Set-UID root first and\n" + "you can use %s-wrapper (make sure it is Set-UID root and\n" "cannot be run by non-trusted users first).\n", ppsz_argv[0]); return 1; } From sveinung84 at users.sourceforge.net Sun Feb 22 17:35:08 2009 From: sveinung84 at users.sourceforge.net (Sveinung Kvilhaugsvik) Date: Sun, 22 Feb 2009 17:35:08 +0100 Subject: [vlc-devel] Explain how to open a file starting with '-' from the command line Message-ID: Hello I have created a patch to add information to an error message. I have not been able to build the latest version from git on my system. (It fails during bootstrap while in modules/packetizer/Makefile.am) I could get 0.9.4 to compile, so I backported my patch to it and tested that it worked there. I'm not very experienced using C. Could anyone test it against the latest version and/or review it for me to see if I have made any mistakes? The patch will be a follow up to this message. -- Sincerly Sveinung From sveinung84 at users.sourceforge.net Sun Feb 22 17:38:27 2009 From: sveinung84 at users.sourceforge.net (Sveinung Kvilhaugsvik) Date: Sun, 22 Feb 2009 17:38:27 +0100 Subject: [vlc-devel] [PATCH] Explain how to open a file starting with '-' from the command line In-Reply-To: References: Message-ID: <1235320707-3749-1-git-send-email-sveinung84@users.sourceforge.net> When a user tries to open a file that has a name starting with '-' from the command line VLC will treat it as an option. Since the name of the file probably isn'n a valid option it will give an error message about options. It can be confusing for a user to be told about options when he tried to open a file. This patch will make VLC explain to the user how to open the file in addition to the information about options it gives today. --- src/config/cmdline.c | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletions(-) diff --git a/src/config/cmdline.c b/src/config/cmdline.c index c9fa3ce..9433aa7 100644 --- a/src/config/cmdline.c +++ b/src/config/cmdline.c @@ -55,7 +55,7 @@ int __config_LoadCmdLine( vlc_object_t *p_this, int *pi_argc, const char *ppsz_argv[], bool b_ignore_errors ) { - int i_cmd, i_index, i_opts, i_shortopts, flag, i_verbose = 0; + int i_cmd, i_example, i_index, i_opts, i_shortopts, flag, i_verbose = 0; module_t *p_parser; struct option *p_longopts; const char **argv_copy = NULL; @@ -378,6 +378,15 @@ int __config_LoadCmdLine( vlc_object_t *p_this, int *pi_argc, { fprintf( stderr, "`%s'\n", ppsz_argv[optind-1] ); } + + if ((!(optopt)) || (ppsz_argv[optind-1][0] == '-')) { + i_example = optind - 1; + } else { + i_example = optind; + } + fprintf( stderr, "To open a file named '%s' try 'vlc ./%s'\n", + ppsz_argv[i_example], ppsz_argv[i_example] ); + fputs( "Try `vlc --help' for more information.\n", stderr ); for( i_index = 0; p_longopts[i_index].name; i_index++ ) -- 1.5.6.3 From noxelia at gmail.com Sun Feb 22 17:40:27 2009 From: noxelia at gmail.com (basos g) Date: Sun, 22 Feb 2009 16:40:27 +0000 Subject: [vlc-devel] [PATCH] FIX: Dshow "none" device open (#2201). Some cleaning In-Reply-To: <8596d02a0902211909w511e6edcyb7fb14e510aaf08d@mail.gmail.com> References: <9d98edc70902110615t3820aee1qfa786466872f5bee@mail.gmail.com> <200902111756.18051.rem@videolan.org> <9d98edc70902120605p4579d2c5rfe7aa3be2da4626e@mail.gmail.com> <9d98edc70902141233w234da439x63d2067e6a679357@mail.gmail.com> <9d98edc70902170451s3b821d7etcab9ee4b50a49e89@mail.gmail.com> <20090217130017.GA26865@via.ecp.fr> <9d98edc70902211115r14ac92d5ybec38a62fe6139c4@mail.gmail.com> <8596d02a0902211909w511e6edcyb7fb14e510aaf08d@mail.gmail.com> Message-ID: <9d98edc70902220840m2195a154l56ddd02e4007bfc8@mail.gmail.com> 2009/2/22 J Decker : >> >> Possibly you have right on this. The interface should not add the >> quotes. But anyway does it hurt to dequote string input options? It is >> a heterogenous infastructure ( parsing is done in various places ) so >> this is a workaround.. And this bug is distributed. Parsing is done in >> qt4 module and parameters are used in dshow. All the parsing code >> should be in one place (for me) . >> >> My long term suggestion would be to parse input options at one place >> (input thread create() ?) and fill input parameters from there. But >> for now this should do the trick. > > This sounds like a very very good idea. All parsers I write for > command line options remove the quotes and keep it as one null > terminated sequence of characters otherwise. This is consistant for > input from shells like bash and well written command line programs for > windows. And, the parsing of the single line of options is absolutely > the correct place for removing the quotes, not at an upper level > plugin. > I'll investigate this another time... To sum up There are - command line options - input options - config options The 1st is parsed in the argv parser and assigned as inheritable variables on libvlc The 2nd is parsed on many places (qt4 iface, don't know from argv, some plugins) The 3rd is parsed from config_ChainParse inside each module A question: what are config chain options for ? Shouldn't the other two be enough (for general and input specific options respectively) ? After the investigation i'll propose a method to sum up the second (input options) For this special case there are 2 sols either integrate the patches as is or integrate only the dshow one and someone else let fix the qt4 parser to remove quotes... From git at videolan.org Sun Feb 22 17:55:38 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 17:55:38 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_I_wonder_why_use_a_libvlc=5Ftime?= =?utf-8?q?=5Ft_for_a_boolean_variable=2E=2E=2E_=28_R=C3=A9mi_Denis-Courmo?= =?utf-8?q?nt_=29?= Message-ID: <20090222165538.975042FA1D@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sun Feb 22 18:55:05 2009 +0200| [ee08622b536b912036678228307df89f60b4ae9a] | committer: R?mi Denis-Courmont I wonder why use a libvlc_time_t for a boolean variable... Who promised not to break libvlc now? > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ee08622b536b912036678228307df89f60b4ae9a --- include/vlc/libvlc_events.h | 14 ++------------ 1 files changed, 2 insertions(+), 12 deletions(-) diff --git a/include/vlc/libvlc_events.h b/include/vlc/libvlc_events.h index 5a0984a..1004989 100644 --- a/include/vlc/libvlc_events.h +++ b/include/vlc/libvlc_events.h @@ -145,11 +145,11 @@ typedef struct libvlc_event_t } media_player_title_changed; struct { - libvlc_time_t new_seekable; + uint64_t new_seekable; /* FIXME: that's a boolean! */ } media_player_seekable_changed; struct { - libvlc_time_t new_pausable; + uint64_t new_pausable; /* FIXME: that's a BOOL!!! */ } media_player_pausable_changed; /* media list */ @@ -196,16 +196,6 @@ typedef struct libvlc_event_t int index; } media_list_view_will_delete_item; - /* media discoverer */ - struct - { - void * unused; - } media_media_discoverer_started; - struct - { - void * unused; - } media_media_discoverer_ended; - /* snapshot taken */ struct { From rem at videolan.org Sun Feb 22 18:21:46 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sun, 22 Feb 2009 19:21:46 +0200 Subject: [vlc-devel] =?utf-8?q?commit=3A_I_wonder_why_use_a_libvlc=5Ftime?= =?utf-8?q?=5Ft_for_a_boolean_variable=2E=2E=2E_=28_R=C3=A9mi_Denis?= =?utf-8?q?-Courmont_=29?= In-Reply-To: <20090222165538.975042FA1D@skanda.videolan.org> References: <20090222165538.975042FA1D@skanda.videolan.org> Message-ID: <200902221921.47161.rem@videolan.org> Le dimanche 22 f?vrier 2009 18:55:38 git version control, vous avez ?crit?: > vlc | branch: master | R?mi Denis-Courmont | Sun > Feb 22 18:55:05 2009 +0200| [ee08622b536b912036678228307df89f60b4ae9a] | > committer: R?mi Denis-Courmont > > I wonder why use a libvlc_time_t for a boolean variable... > > Who promised not to break libvlc now? That's the last straw. There is really too much legacy crap. I'm going to clean up this mess, remove the obsoleted functions and by the way, break the libvlc ABI in VLC 1.1. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From rem at videolan.org Sun Feb 22 18:22:12 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Sun, 22 Feb 2009 19:22:12 +0200 Subject: [vlc-devel] Explain how to open a file starting with '-' from the command line In-Reply-To: References: Message-ID: <200902221922.12732.rem@videolan.org> Hello, Le dimanche 22 f?vrier 2009 18:35:08 Sveinung Kvilhaugsvik, vous avez ?crit?: > I have created a patch to add information to an error message. I have > not been able to build the latest version from git on my system. (It > fails during bootstrap while in modules/packetizer/Makefile.am) I > could get 0.9.4 to compile, so I backported my patch to it and tested > that it worked there. I'm not very experienced using C. Could anyone > test it against the latest version and/or review it for me to see if I > have made any mistakes? The patch will be a follow up to this message. From the POSIX Utility Syntax Guidelines (POSIX.2008 ?12.2), and consistent with the IEEE 1003.1-2001 standard: | Guideline 10: | The argument -- should be accepted as a delimiter indicating the end of | options. Any following arguments should be treated as operands, even if | they begin with the '-' character. The -- argument should not be used as | an option or as an operand. As an example: # vlc -v --aout alsa -- -filename-starting-with-a-dash Best regards, -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Sun Feb 22 19:21:32 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 19:21:32 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_libxml=3A_ugly_fix_for_plugin_re-?= =?utf-8?q?entrancy_-_refs_=232541_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090222182132.BF5EB2F773@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Fri Feb 20 18:52:47 2009 +0200| [0fc400924a5bd1165ca78803db8989e377d1abd1] | committer: R?mi Denis-Courmont libxml: ugly fix for plugin re-entrancy - refs #2541 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0fc400924a5bd1165ca78803db8989e377d1abd1 --- modules/misc/xml/libxml.c | 39 +++++++++++++++++++++++++++++++++++++-- 1 files changed, 37 insertions(+), 2 deletions(-) diff --git a/modules/misc/xml/libxml.c b/modules/misc/xml/libxml.c index 1b25a82..e5de2f1 100644 --- a/modules/misc/xml/libxml.c +++ b/modules/misc/xml/libxml.c @@ -67,6 +67,31 @@ static void CatalogLoad( xml_t *, const char * ); static void CatalogAdd( xml_t *, const char *, const char *, const char * ); static int StreamRead( void *p_context, char *p_buffer, int i_buffer ); +static unsigned refs = 0; +#if defined (LIBVLC_USE_PTHREAD) +static vlc_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; +#elif defined (WIN32) +BOOL WINAPI DllMain (HINSTANCE hinstDll, DWORD fdwReason, LPVOID lpvReserved) +{ + (void) hinstDll; + (void) lpvReserved; + + switch (fdwReason) + { + case DLL_PROCESS_ATTACH: + vlc_mutex_init (&lock); + break; + + case DLL_PROCESS_DETACH: + vlc_mutex_destroy (&lock); + break; + } + return TRUE; +} +#else +# error FIXME +#endif + /***************************************************************************** * Module initialization *****************************************************************************/ @@ -74,7 +99,13 @@ static int Open( vlc_object_t *p_this ) { xml_t *p_xml = (xml_t *)p_this; - xmlInitParser(); + if( !xmlHasFeature( XML_WITH_THREAD ) ) + return VLC_EGENERIC; + + vlc_mutex_lock( &lock ); + if( refs++ == 0 ) + xmlInitParser(); + vlc_mutex_unlock( &lock ); p_xml->pf_reader_create = ReaderCreate; p_xml->pf_reader_delete = ReaderDelete; @@ -90,7 +121,11 @@ static int Open( vlc_object_t *p_this ) *****************************************************************************/ static void Close( vlc_object_t *p_this ) { - xmlCleanupParser(); + vlc_mutex_lock( &lock ); + if( --refs == 0 ) + xmlCleanupParser(); + vlc_mutex_unlock( &lock ); + VLC_UNUSED(p_this); return; } From git at videolan.org Sun Feb 22 20:51:25 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 20:51:25 +0100 (CET) Subject: [vlc-devel] commit: Remove access-filter timeshift from OSX open dialog. ( Derk-Jan Hartman ) Message-ID: <20090222195125.67DDD2FBB9@skanda.videolan.org> vlc | branch: master | Derk-Jan Hartman | Sun Feb 22 20:50:51 2009 +0100| [87bbbc4566297bba76f2692f855d099dd52f6027] | committer: Derk-Jan Hartman Remove access-filter timeshift from OSX open dialog. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=87bbbc4566297bba76f2692f855d099dd52f6027 --- .../Resources/English.lproj/Open.nib/classes.nib | 748 ++++++++++++++------ .../Resources/English.lproj/Open.nib/info.nib | 17 +- .../English.lproj/Open.nib/keyedobjects.nib | Bin 75219 -> 75273 bytes modules/gui/macosx/open.h | 1 - modules/gui/macosx/open.m | 6 - 5 files changed, 538 insertions(+), 234 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=87bbbc4566297bba76f2692f855d099dd52f6027 From git at videolan.org Sun Feb 22 21:00:21 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 21:00:21 +0100 (CET) Subject: [vlc-devel] commit: set stream aspect-ratio to video aspect-ratio, as ffmpeg checks that (Ilkka Ollakka ) Message-ID: <20090222200021.747072FBB9@skanda.videolan.org> vlc | branch: 0.9-bugfix | Ilkka Ollakka | Fri Dec 5 15:28:47 2008 +0200| [813d5bf114c7154976556bdac9f3a761074fe03d] | committer: Jean-Baptiste Kempf set stream aspect-ratio to video aspect-ratio, as ffmpeg checks that from r15367 onward and refuses to mux without them matching. Should fix flv-muxing. (cherry picked from commit 0a778174db0192075a3194fb05b06a034ad940d2) Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=813d5bf114c7154976556bdac9f3a761074fe03d --- modules/demux/avformat/mux.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/demux/avformat/mux.c b/modules/demux/avformat/mux.c index 5853db7..9f8cde1 100644 --- a/modules/demux/avformat/mux.c +++ b/modules/demux/avformat/mux.c @@ -252,6 +252,8 @@ static int AddStream( sout_mux_t *p_mux, sout_input_t *p_input ) &codec->sample_aspect_ratio.den, i_aspect_num * (int64_t)codec->height, i_aspect_den * (int64_t)codec->width, 1 << 30 ); + stream->sample_aspect_ratio.num = codec->sample_aspect_ratio.num; + stream->sample_aspect_ratio.den = codec->sample_aspect_ratio.den; codec->time_base.den = p_input->p_fmt->video.i_frame_rate; codec->time_base.num = p_input->p_fmt->video.i_frame_rate_base; break; From rem at videolan.org Sun Feb 22 21:02:38 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sun, 22 Feb 2009 22:02:38 +0200 Subject: [vlc-devel] [RFC] Fix wrong initialization of 'mp2v' encoder profile. Message-ID: <200902222202.39003.rem@videolan.org> Hello, This patch has not been merged, and I do not recall any meaningful conclusion: http://article.gmane.org/gmane.comp.video.videolan.vlc.devel/50997 I however do remember people complaining about MPEG2 encoder failure (that is to say, _not_ with Debian/Ubuntu crippled avcodec). -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From sveinung84 at users.sourceforge.net Sun Feb 22 21:05:28 2009 From: sveinung84 at users.sourceforge.net (Sveinung Kvilhaugsvik) Date: Sun, 22 Feb 2009 21:05:28 +0100 Subject: [vlc-devel] [PATCH] Explain how to open a file starting with a dash from the command line In-Reply-To: References: Message-ID: <1235333128-10341-1-git-send-email-sveinung84@users.sourceforge.net> When a user tries to open a file that has a name starting with '-' from the command line VLC will treat it as an option. Since the name of the file probably isn't a valid option it will give an error message about options. It can be confusing for a user to be told about options when he tried to open a file. This patch will make VLC show to the user how to open the file the correct way in addition to the information about options it gives today. --- src/config/cmdline.c | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletions(-) diff --git a/src/config/cmdline.c b/src/config/cmdline.c index c9fa3ce..d1bee9a 100644 --- a/src/config/cmdline.c +++ b/src/config/cmdline.c @@ -55,7 +55,7 @@ int __config_LoadCmdLine( vlc_object_t *p_this, int *pi_argc, const char *ppsz_argv[], bool b_ignore_errors ) { - int i_cmd, i_index, i_opts, i_shortopts, flag, i_verbose = 0; + int i_cmd, i_example, i_index, i_opts, i_shortopts, flag, i_verbose = 0; module_t *p_parser; struct option *p_longopts; const char **argv_copy = NULL; @@ -378,6 +378,15 @@ int __config_LoadCmdLine( vlc_object_t *p_this, int *pi_argc, { fprintf( stderr, "`%s'\n", ppsz_argv[optind-1] ); } + + if ((!(optopt)) || (ppsz_argv[optind-1][0] == '-')) { + i_example = optind - 1; + } else { + i_example = optind; + } + fprintf( stderr, "To play a file named '%s' try 'vlc -- %s'\n", + ppsz_argv[i_example], ppsz_argv[i_example] ); + fputs( "Try `vlc --help' for more information.\n", stderr ); for( i_index = 0; p_longopts[i_index].name; i_index++ ) -- 1.5.6.3 From sveinung84 at users.sourceforge.net Sun Feb 22 21:17:35 2009 From: sveinung84 at users.sourceforge.net (Sveinung Kvilhaugsvik) Date: Sun, 22 Feb 2009 21:17:35 +0100 Subject: [vlc-devel] Explain how to open a file starting with '-' from the command line In-Reply-To: <200902221922.12732.rem@videolan.org> References: <200902221922.12732.rem@videolan.org> Message-ID: Thank you! > From the POSIX Utility Syntax Guidelines (POSIX.2008 ?12.2), and consistent > with the IEEE 1003.1-2001 standard: > > | Guideline 10: > | The argument -- should be accepted as a delimiter indicating the end of > | options. Any following arguments should be treated as operands, even if > | they begin with the '-' character. The -- argument should not be used as > | an option or as an operand. > > As an example: > > # vlc -v --aout alsa -- -filename-starting-with-a-dash > I have now updated it to recommend the use of -- instead. -- Sincerly Sveinung From public at hansmi.ch Sun Feb 22 21:54:11 2009 From: public at hansmi.ch (Michael Hanselmann) Date: Sun, 22 Feb 2009 21:54:11 +0100 Subject: [vlc-devel] [PATCH 1/8] Add library functions for HTTP client authentication In-Reply-To: <69d54a130901100838w5c21fda2i9a52ef0722b01799@mail.gmail.com> References: <1231544813-6526-1-git-send-email-public@hansmi.ch> <1231544813-6526-2-git-send-email-public@hansmi.ch> <20090110152623.GA9300@chewa.net> <69d54a130901100838w5c21fda2i9a52ef0722b01799@mail.gmail.com> Message-ID: <69d54a130902221254x366f7f1u401a6e1fdc91dea4@mail.gmail.com> On Sat, Jan 10, 2009 at 5:38 PM, Michael Hanselmann wrote: > On Sat, Jan 10, 2009 at 4:26 PM, Antoine Cellerier wrote: >> On Sat, Jan 10, 2009, Michael Hanselmann wrote: >>> Most of the code is taken from modules/access/http.c, although it >>> includes modifications to make it work as library functions and to >>> fix some issues. The HTTP access module can be converted at a >>> later point, but there's still some stuff needing cleanup first. >> >> I'd really like to have the HTTP access module converted to use this so >> that we don't have duplicate code. If it's not done now I doubt that it >> will ever get done. > > It's on my todo list, but I wanted to finish the RAOP stuff first. I > also want to change the auth code a bit to make it more robust. Finally I've found the time to work on this again. access/http.c is now also using the shared code. Should I resend my patches right now or should I wait until 1.0.0 is out? These patches are only for 1.1 or whatever the next version will be. Regards, Michael -- http://hansmi.ch/ From git at videolan.org Sun Feb 22 22:19:11 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 22:19:11 +0100 (CET) Subject: [vlc-devel] commit: Qt: provide a way to jump forward and backward programatically without going through hotkeys . (Jean-Baptiste Kempf ) Message-ID: <20090222211911.0CB772F900@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 22 17:27:53 2009 +0100| [8d5ee287550bd1bca53358d31f436a0200b8a18c] | committer: Jean-Baptiste Kempf Qt: provide a way to jump forward and backward programatically without going through hotkeys. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8d5ee287550bd1bca53358d31f436a0200b8a18c --- modules/gui/qt4/input_manager.cpp | 22 ++++++++++++++++++++++ modules/gui/qt4/input_manager.hpp | 3 +++ 2 files changed, 25 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 9067b76..a38807e 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -791,6 +791,28 @@ void InputManager::setRate( int new_rate ) var_SetInteger( p_input, "rate", new_rate ); } +void InputManager::jumpFwd() +{ + int i_interval = config_GetInt( p_input, "short-jump-size" ); + if( i_interval > 0 ) + { + vlc_value_t val; + val.i_time = (mtime_t)(i_interval) * 1000000L; + var_Set( p_input, "time-offset", val ); + } +} + +void InputManager::jumpBwd() +{ + int i_interval = config_GetInt( p_input, "short-jump-size" ); + if( i_interval > 0 ) + { + vlc_value_t val; + val.i_time = -1 *(mtime_t)(i_interval) * 1000000L; + var_Set( p_input, "time-offset", val ); + } +} + void InputManager::setAtoB() { if( !timeA ) diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp index 2560045..19af8ac 100644 --- a/modules/gui/qt4/input_manager.hpp +++ b/modules/gui/qt4/input_manager.hpp @@ -147,6 +147,9 @@ public slots: void faster(); void normalRate(); void setRate( int ); + /* Jumping */ + void jumpFwd(); + void jumpBwd(); /* Menus */ void sectionNext(); void sectionPrev(); From git at videolan.org Sun Feb 22 22:19:11 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 22:19:11 +0100 (CET) Subject: [vlc-devel] commit: Qt, menus: various changes, speedups and addition to approach mac menus. (Jean-Baptiste Kempf ) Message-ID: <20090222211911.1C81F2FC83@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 22 20:46:04 2009 +0100| [9f0375cd8d66f314f46dc6e720d23b6451b8d6fc] | committer: Jean-Baptiste Kempf Qt, menus: various changes, speedups and addition to approach mac menus. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9f0375cd8d66f314f46dc6e720d23b6451b8d6fc --- modules/gui/qt4/main_interface.cpp | 5 +- modules/gui/qt4/menus.cpp | 368 +++++++++++++++++------------------- modules/gui/qt4/menus.hpp | 27 ++- 3 files changed, 196 insertions(+), 204 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=9f0375cd8d66f314f46dc6e720d23b6451b8d6fc From git at videolan.org Sun Feb 22 22:19:11 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 22:19:11 +0100 (CET) Subject: [vlc-devel] commit: Qt, menus: improve the NavigMenu entries. (Jean-Baptiste Kempf ) Message-ID: <20090222211911.2DF452FC97@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 22 22:16:59 2009 +0100| [1a2be0db9d4bdb7b43112f8e9e1caf3b791d3780] | committer: Jean-Baptiste Kempf Qt, menus: improve the NavigMenu entries. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1a2be0db9d4bdb7b43112f8e9e1caf3b791d3780 --- modules/gui/qt4/menus.cpp | 69 ++++++++++++++++++++++++++++----------------- 1 files changed, 43 insertions(+), 26 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 47066fb..4ce0e6f 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -119,15 +119,17 @@ void addMIMStaticEntry( intf_thread_t *p_intf, const char *icon, const char *member ) { + QAction *action; if( strlen( icon ) > 0 ) { - QAction *action = menu->addAction( text, THEMIM, member ); + action = menu->addAction( text, THEMIM, member ); action->setIcon( QIcon( icon ) ); } else { menu->addAction( text, THEMIM, member ); } + action->setData( "ignore" ); } /** @@ -141,9 +143,9 @@ void EnableStaticEntries( QMenu *menu, bool enable = true ) QList< QAction* > actions = menu->actions(); for( int i = 0; i < actions.size(); ++i ) { - actions[i]->setEnabled( enable && + actions[i]->setEnabled( actions[i]->data().toString() == "ignore" || /* Be careful here, because data("string").toBool is true */ - (actions[i]->data().toString() == "true" ) ); + ( enable && (actions[i]->data().toString() == "true" ) ) ); } } @@ -321,7 +323,6 @@ QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf, QWidget *parent ) recentsMenu = new QMenu( qtr( "&Recent Media" ), menu ); updateRecents( p_intf ); menu->addMenu( recentsMenu ); - menu->addSeparator(); menu->addMenu( SDMenu( p_intf, menu ) ); menu->addSeparator(); @@ -496,8 +497,8 @@ QMenu *QVLCMenu::AudioMenu( intf_thread_t *p_intf, QMenu * current ) if( p_input ) vlc_object_hold( p_input ); p_aout = THEMIM->getAout(); - AudioAutoMenuBuilder( p_aout, p_input, objects, varnames ); EnableStaticEntries( current, ( p_aout != NULL ) ); + AudioAutoMenuBuilder( p_aout, p_input, objects, varnames ); if( p_aout ) { vlc_object_release( p_aout ); @@ -560,11 +561,10 @@ QMenu *QVLCMenu::VideoMenu( intf_thread_t *p_intf, QMenu *current ) p_vout = THEMIM->getVout(); VideoAutoMenuBuilder( p_vout, p_input, objects, varnames ); - EnableStaticEntries( current, ( p_vout != NULL ) ); + if( p_vout ) - { vlc_object_release( p_vout ); - } + if( p_input ) vlc_object_release( p_input ); @@ -597,8 +597,8 @@ QMenu *QVLCMenu::NavigMenu( intf_thread_t *p_intf, QMenu *menu ) ACT_ADDMENU( menu, "program", qtr( "&Program" ) ); menu->addSeparator(); - PopupMenuControlEntries( menu, p_intf );//, THEMIM->getInput() ); PopupMenuPlaylistControlEntries( menu, p_intf ); + PopupMenuControlEntries( menu, p_intf ); return menu; } @@ -628,6 +628,7 @@ QMenu *QVLCMenu::RebuildNavigMenu( intf_thread_t *p_intf, QMenu *menu ) if( p_object ) vlc_object_release( p_object ); + EnableStaticEntries( menu, (p_object != NULL ) ); return Populate( p_intf, menu, varnames, objects ); } @@ -643,6 +644,7 @@ QMenu *QVLCMenu::SDMenu( intf_thread_t *p_intf, QWidget *parent ) { QMenu *menu = new QMenu( parent ); menu->setTitle( qtr( I_PL_SD ) ); + char **ppsz_longnames; char **ppsz_names = vlc_sd_GetNames( &ppsz_longnames ); if( !ppsz_names ) @@ -655,10 +657,11 @@ QMenu *QVLCMenu::SDMenu( intf_thread_t *p_intf, QWidget *parent ) a->setCheckable( true ); if( playlist_IsServicesDiscoveryLoaded( THEPL, *ppsz_name ) ) a->setChecked( true ); - CONNECT( a , triggered(), THEDP->SDMapper, map() ); + CONNECT( a, triggered(), THEDP->SDMapper, map() ); THEDP->SDMapper->setMapping( a, QString( *ppsz_name ) ); menu->addAction( a ); + /* Special case for podcast */ if( !strcmp( *ppsz_name, "podcast" ) ) { QAction *b = new QAction( qtr( "Configure podcasts..." ), menu ); @@ -723,47 +726,58 @@ void QVLCMenu::PopupPlayEntries( QMenu *menu, } else { - addMIMStaticEntry( p_intf, menu, qtr( "Pause" ), + addMIMStaticEntry( p_intf, menu, qtr( "Pause" ), ":/pause", SLOT( togglePlayPause() ) ); } - } void QVLCMenu::PopupMenuControlEntries( QMenu *menu, intf_thread_t *p_intf ) { QAction *action; - /* Stop */ - addMIMStaticEntry( p_intf, menu, qtr( "Stop" ), ":/stop", SLOT( stop() ) ); /* Faster/Slower */ - action = menu->addAction( qtr( "Faster" ), THEMIM->getIM(), SLOT( faster() ) ); + action = menu->addAction( qtr( "Faster" ), THEMIM->getIM(), + SLOT( faster() ) ); action->setIcon( QIcon( ":/faster") ); - menu->addAction( qtr( "Normal Speed" ), THEMIM->getIM(), SLOT( normalRate() ) ); - action = menu->addAction( qtr( "Slower" ), THEMIM->getIM(), SLOT( slower() ) ); + action->setData( true ); + + action = menu->addAction( qtr( "Normal Speed" ), THEMIM->getIM(), + SLOT( normalRate() ) ); + action->setData( true ); + + action = menu->addAction( qtr( "Slower" ), THEMIM->getIM(), + SLOT( slower() ) ); action->setIcon( QIcon( ":/slower") ); + action->setData( true ); menu->addSeparator(); + action = menu->addAction( qtr( "Jump Forward" ), THEMIM->getIM(), SLOT( jumpFwd() ) ); action->setIcon( QIcon( ":/skip_fw") ); + action->setData( true ); + action = menu->addAction( qtr( "Jump Backward" ), THEMIM->getIM(), SLOT( jumpBwd() ) ); action->setIcon( QIcon( ":/skip_back") ); + action->setData( true ); + addDPStaticEntry( menu, qtr( I_MENU_GOTOTIME ),"", + SLOT( gotoTimeDialog() ), "Ctrl+T" ); + menu->addSeparator(); } void QVLCMenu::PopupMenuPlaylistControlEntries( QMenu *menu, - intf_thread_t *p_intf ) + intf_thread_t *p_intf ) { - addDPStaticEntry( menu, qtr( I_MENU_GOTOTIME ),"", - SLOT( gotoTimeDialog() ), "Ctrl+T" ); - menu->addSeparator(); + addMIMStaticEntry( p_intf, menu, qtr( "Stop" ), ":/stop", SLOT( stop() ) ); /* Next / Previous */ addMIMStaticEntry( p_intf, menu, qtr( "Previous" ), ":/previous", SLOT( prev() ) ); addMIMStaticEntry( p_intf, menu, qtr( "Next" ), ":/next", SLOT( next() ) ); + menu->addSeparator(); } void QVLCMenu::PopupMenuStaticEntries( QMenu *menu ) @@ -845,10 +859,11 @@ void QVLCMenu::MiscPopupMenu( intf_thread_t *p_intf ) Populate( p_intf, menu, varnames, objects ); menu->addSeparator(); - PopupMenuControlEntries( menu, p_intf ); //, p_input ); + PopupPlayEntries( menu, p_intf, p_input ); + PopupMenuPlaylistControlEntries( menu, p_intf); menu->addSeparator(); - PopupMenuPlaylistControlEntries( menu, p_intf); //, p_input ); + PopupMenuControlEntries( menu, p_intf ); menu->addSeparator(); PopupMenuStaticEntries( menu ); @@ -882,7 +897,8 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show ) POPUP_BOILERPLATE; - PopupMenuControlEntries( menu, p_intf ); //, p_input ); + PopupPlayEntries( menu, p_intf, p_input ); + PopupMenuPlaylistControlEntries( menu, p_intf ); menu->addSeparator(); if( p_input ) @@ -1003,8 +1019,9 @@ void QVLCMenu::updateSystrayMenu( MainInterface *mi, } sysMenu->addSeparator(); - PopupMenuControlEntries( sysMenu, p_intf);//, p_input ); - PopupMenuPlaylistControlEntries( sysMenu, p_intf);//, p_input ); + PopupPlayEntries( sysMenu, p_intf, p_input ); + PopupMenuPlaylistControlEntries( sysMenu, p_intf); + PopupMenuControlEntries( sysMenu, p_intf); sysMenu->addSeparator(); addDPStaticEntry( sysMenu, qtr( "&Open Media" ), From git at videolan.org Sun Feb 22 22:29:42 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 22:29:42 +0100 (CET) Subject: [vlc-devel] commit: Fix compile on machine with older avformat. (Jean-Baptiste Kempf ) Message-ID: <20090222212942.0FB1D2FC97@skanda.videolan.org> vlc | branch: 0.9-bugfix | Jean-Baptiste Kempf | Sun Feb 22 22:24:02 2009 +0100| [e7fdb2d30666699c544223fe1e48712f267db850] | committer: Jean-Baptiste Kempf Fix compile on machine with older avformat. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e7fdb2d30666699c544223fe1e48712f267db850 --- modules/demux/avformat/mux.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/demux/avformat/mux.c b/modules/demux/avformat/mux.c index 9f8cde1..90d72ef 100644 --- a/modules/demux/avformat/mux.c +++ b/modules/demux/avformat/mux.c @@ -252,8 +252,10 @@ static int AddStream( sout_mux_t *p_mux, sout_input_t *p_input ) &codec->sample_aspect_ratio.den, i_aspect_num * (int64_t)codec->height, i_aspect_den * (int64_t)codec->width, 1 << 30 ); +#if LIBAVFORMAT_VERSION_INT >= ((52<<16)+(21<<8)+0) stream->sample_aspect_ratio.num = codec->sample_aspect_ratio.num; stream->sample_aspect_ratio.den = codec->sample_aspect_ratio.den; +#endif codec->time_base.den = p_input->p_fmt->video.i_frame_rate; codec->time_base.num = p_input->p_fmt->video.i_frame_rate_base; break; From git at videolan.org Sun Feb 22 23:08:57 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 23:08:57 +0100 (CET) Subject: [vlc-devel] commit: Default transcoding profiles. (Jean-Baptiste Kempf ) Message-ID: <20090222220857.8D9012FC85@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 22 23:04:16 2009 +0100| [3eaf01d29351ad0f23e94dd58b16cd517c6e981e] | committer: Jean-Baptiste Kempf Default transcoding profiles. "H.264 + AAC", "Dirac + AAC", "Theora + Vorbis", "Theora + Flac", "MPEG-4 + AAC", "MPEG-2 + MPGA", "WMV + WMA", "DIV3 + MP3", "Vorbis", "MP3", "AAC", "FLAC". Please modify or add iPhone or any other profiles... > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3eaf01d29351ad0f23e94dd58b16cd517c6e981e --- .../gui/qt4/components/sout/profile_selector.cpp | 32 ++++++++++++++++++++ modules/gui/qt4/components/sout/profiles.hpp | 32 ++++++++++++++++++++ 2 files changed, 64 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/components/sout/profile_selector.cpp b/modules/gui/qt4/components/sout/profile_selector.cpp index 4893c17..f84f809 100644 --- a/modules/gui/qt4/components/sout/profile_selector.cpp +++ b/modules/gui/qt4/components/sout/profile_selector.cpp @@ -1,5 +1,29 @@ +/***************************************************************************** + * profile_selector.cpp : A small profile selector and editor + **************************************************************************** + * Copyright (C) 2009 the VideoLAN team + * $Id$ + * + * Authors: Jean-Baptiste Kempf + * + * 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 + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. + *****************************************************************************/ + #include "components/sout/profile_selector.hpp" +#include "components/sout/profiles.hpp" #include "dialogs/sout.hpp" #include @@ -62,6 +86,14 @@ inline void VLCProfileSelector::fillProfilesCombo() profileBox->addItem( settings.value( "Profile-Name" ).toString(), settings.value( "Profile-Value" ) ); } + if( i_size == 0 ) + { + for( int i = 0; i < NB_PROFILE; i++ ) + { + profileBox->addItem( video_profile_name_list[i], + video_profile_value_list[i] ); + } + } settings.endArray(); } diff --git a/modules/gui/qt4/components/sout/profiles.hpp b/modules/gui/qt4/components/sout/profiles.hpp new file mode 100644 index 0000000..030530e --- /dev/null +++ b/modules/gui/qt4/components/sout/profiles.hpp @@ -0,0 +1,32 @@ +#define NB_PROFILE 12 + +static const char *const video_profile_name_list[] = { + "Video - H.264 + AAC", + "Video - Dirac + AAC", + "Video - Theora + Vorbis", + "Video - Theora + Flac", + "Video - MPEG-4 + AAC", + "Video - MPEG-2 + MPGA", + "Video - WMV + WMA", + "Video - DIV3 + MP3", + "Audio - Vorbis", + "Audio - MP3", + "Audio - AAC", + "Audio - FLAC", +}; +static const char *const video_profile_value_list[] = { + "ts;1;1;0;h264;800;1;0;0;0;mp4a;128;2;44100;0;0", + "ts;1;1;0;drac;800;1;0;0;0;mp4a;128;2;44100;0;0", + "ogg;1;1;0;theo;800;1;0;0;0;vorb;128;2;44100;0;0", + "ogg;1;1;0;theo;800;1;0;0;0;flac;128;2;44100;0;0", + "mp4;1;1;0;mp4v;800;1;0;0;0;mp4a;128;2;44100;0;0", + "ts;1;1;0;mp2v;800;1;0;0;0;mpga;128;2;44100;0;0", + "asf;1;1;0;WMV2;800;1;0;0;0;wma;128;2;44100;0;0", + "asf;1;1;0;DIV3;800;1;0;0;0;mp3;128;2;44100;0;0", + "ogg;0;1;0;0;800;1;0;0;0;vorb;128;2;44100;0;0", + "raw;0;1;0;0;800;1;0;0;0;mp3;128;2;44100;0;0", + "mp4;0;1;0;0;800;1;0;0;0;mp4a;128;2;44100;0;0", + "raw;0;1;0;0;800;1;0;0;0;flac;128;2;44100;0;0", +}; + + From git at videolan.org Sun Feb 22 23:26:05 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 23:26:05 +0100 (CET) Subject: [vlc-devel] commit: Qt menus: many new accelerators. (Jean-Baptiste Kempf ) Message-ID: <20090222222605.1BCEA2FBB9@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 22 23:24:43 2009 +0100| [eec6200bbb28c4b809a966f4bf7a1e57b2afd841] | committer: Jean-Baptiste Kempf Qt menus: many new accelerators. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=eec6200bbb28c4b809a966f4bf7a1e57b2afd841 --- modules/gui/qt4/menus.cpp | 18 +++++++++--------- 1 files changed, 9 insertions(+), 9 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 4ce0e6f..0c2d09a 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -736,28 +736,28 @@ void QVLCMenu::PopupMenuControlEntries( QMenu *menu, intf_thread_t *p_intf ) QAction *action; /* Faster/Slower */ - action = menu->addAction( qtr( "Faster" ), THEMIM->getIM(), + action = menu->addAction( qtr( "&Faster" ), THEMIM->getIM(), SLOT( faster() ) ); action->setIcon( QIcon( ":/faster") ); action->setData( true ); - action = menu->addAction( qtr( "Normal Speed" ), THEMIM->getIM(), + action = menu->addAction( qtr( "N&ormal Speed" ), THEMIM->getIM(), SLOT( normalRate() ) ); action->setData( true ); - action = menu->addAction( qtr( "Slower" ), THEMIM->getIM(), + action = menu->addAction( qtr( "Slo&wer" ), THEMIM->getIM(), SLOT( slower() ) ); action->setIcon( QIcon( ":/slower") ); action->setData( true ); menu->addSeparator(); - action = menu->addAction( qtr( "Jump Forward" ), THEMIM->getIM(), + action = menu->addAction( qtr( "&Jump Forward" ), THEMIM->getIM(), SLOT( jumpFwd() ) ); action->setIcon( QIcon( ":/skip_fw") ); action->setData( true ); - action = menu->addAction( qtr( "Jump Backward" ), THEMIM->getIM(), + action = menu->addAction( qtr( "Jump Bac&kward" ), THEMIM->getIM(), SLOT( jumpBwd() ) ); action->setIcon( QIcon( ":/skip_back") ); action->setData( true ); @@ -770,15 +770,15 @@ void QVLCMenu::PopupMenuControlEntries( QMenu *menu, intf_thread_t *p_intf ) void QVLCMenu::PopupMenuPlaylistControlEntries( QMenu *menu, intf_thread_t *p_intf ) { - addMIMStaticEntry( p_intf, menu, qtr( "Stop" ), ":/stop", SLOT( stop() ) ); + addMIMStaticEntry( p_intf, menu, qtr( "&Stop" ), ":/stop", SLOT( stop() ) ); /* Next / Previous */ - addMIMStaticEntry( p_intf, menu, qtr( "Previous" ), + addMIMStaticEntry( p_intf, menu, qtr( "Pre&vious" ), ":/previous", SLOT( prev() ) ); - addMIMStaticEntry( p_intf, menu, qtr( "Next" ), + addMIMStaticEntry( p_intf, menu, qtr( "Ne&xt" ), ":/next", SLOT( next() ) ); menu->addSeparator(); -} + void QVLCMenu::PopupMenuStaticEntries( QMenu *menu ) { From kvilhaugsvik at gmail.com Sun Feb 22 21:04:59 2009 From: kvilhaugsvik at gmail.com (Sveinung Kvilhaugsvik) Date: Sun, 22 Feb 2009 21:04:59 +0100 Subject: [vlc-devel] Explain how to open a file starting with '-' from the command line In-Reply-To: <200902221922.12732.rem@videolan.org> References: <200902221922.12732.rem@videolan.org> Message-ID: Thank you > From the POSIX Utility Syntax Guidelines (POSIX.2008 ?12.2), and consistent > with the IEEE 1003.1-2001 standard: > > | Guideline 10: > | The argument -- should be accepted as a delimiter indicating the end of > | options. Any following arguments should be treated as operands, even if > | they begin with the '-' character. The -- argument should not be used as > | an option or as an operand. > > As an example: > > # vlc -v --aout alsa -- -filename-starting-with-a-dash > I have now updated it to recommend the use of -- instead. -- Sincerly Sveinung From git at videolan.org Sun Feb 22 23:30:59 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 23:30:59 +0100 (CET) Subject: [vlc-devel] commit: Qt: Fix error in previous commit . (Jean-Baptiste Kempf ) Message-ID: <20090222223059.4A44B2FC59@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 22 23:29:49 2009 +0100| [a1e6d3b1a9b1a819b24307cebbd85f12715797b3] | committer: Jean-Baptiste Kempf Qt: Fix error in previous commit . > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a1e6d3b1a9b1a819b24307cebbd85f12715797b3 --- modules/gui/qt4/menus.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 0c2d09a..ccc34a0 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -778,7 +778,7 @@ void QVLCMenu::PopupMenuPlaylistControlEntries( QMenu *menu, addMIMStaticEntry( p_intf, menu, qtr( "Ne&xt" ), ":/next", SLOT( next() ) ); menu->addSeparator(); - +} void QVLCMenu::PopupMenuStaticEntries( QMenu *menu ) { From git at videolan.org Sun Feb 22 23:32:34 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 23:32:34 +0100 (CET) Subject: [vlc-devel] commit: corrects no dtd found when changing skins (Joseph Tulou ) Message-ID: <20090222223234.214A02FCA2@skanda.videolan.org> vlc | branch: master | Joseph Tulou | Sat Feb 21 14:22:52 2009 +0100| [09679e2b945f2d13c0ab4503f9cd92b7a1d7b49d] | committer: Jean-Baptiste Kempf corrects no dtd found when changing skins Signed-off-by: Jean-Baptiste Kempf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=09679e2b945f2d13c0ab4503f9cd92b7a1d7b49d --- modules/gui/skins2/parser/xmlparser.cpp | 14 ++++++++------ 1 files changed, 8 insertions(+), 6 deletions(-) diff --git a/modules/gui/skins2/parser/xmlparser.cpp b/modules/gui/skins2/parser/xmlparser.cpp index 9c650be..dd7279b 100644 --- a/modules/gui/skins2/parser/xmlparser.cpp +++ b/modules/gui/skins2/parser/xmlparser.cpp @@ -45,12 +45,14 @@ XMLParser::XMLParser( intf_thread_t *pIntf, const string &rFileName, return; } - // Avoid duplicate initialization (mutex needed ?) - if( !m_initialized ) - { - LoadCatalog(); - m_initialized = true; - } + // Avoid duplicate initialization (mutex needed ?) -> doesn't work + // Reinitialization required for a new XMLParser + // if( !m_initialized ) + // { + // LoadCatalog(); + // m_initialized = true; + // } + LoadCatalog(); m_pStream = stream_UrlNew( pIntf, rFileName.c_str() ); if( !m_pStream ) From jb at videolan.org Sun Feb 22 23:33:07 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 22 Feb 2009 23:33:07 +0100 Subject: [vlc-devel] RE : [PATCH] -- some more skins2 corrections In-Reply-To: <003001c99449$1b71dc20$1742fac1@CCCC> References: <20090220185421.GA4794@videolan.org> <003001c99449$1b71dc20$1742fac1@CCCC> Message-ID: <20090222223307.GA7267@videolan.org> On Sat, Feb 21, 2009 at 06:23:10PM +0100, brezhoneg1 wrote : > Two more patches to correct problems found with skins2 Applied. Thanks, once again! Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Sun Feb 22 23:42:04 2009 From: git at videolan.org (git version control) Date: Sun, 22 Feb 2009 23:42:04 +0100 (CET) Subject: [vlc-devel] commit: Win32: remember to package skin.dtd and the skin.catalog ( Jean-Baptiste Kempf ) Message-ID: <20090222224204.730962FCE1@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sun Feb 22 23:40:51 2009 +0100| [e74e198b6948b589da65ddd00bf13a20ef36c5c2] | committer: Jean-Baptiste Kempf Win32: remember to package skin.dtd and the skin.catalog > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e74e198b6948b589da65ddd00bf13a20ef36c5c2 --- Makefile.am | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/Makefile.am b/Makefile.am index 0e81341..f8ca27f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -868,6 +868,8 @@ if BUILD_SKINS for i in $(top_builddir)/share/skins2/*.*; do \ cp -- "$$i" $(win32_destdir)/skins/ || true ; \ done + cp -- $(srcdir)/share/skins2/skin.catalog $(win32_destdir)/skins/ || true ; + cp -- $(srcdir)/share/skins2/skin.dtd $(win32_destdir)/skins/ || true ; endif if BUILD_OSDMENU From jb at videolan.org Sun Feb 22 23:47:47 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sun, 22 Feb 2009 23:47:47 +0100 Subject: [vlc-devel] RE : [PATCH] -- corrects two skins2 crashes In-Reply-To: <001601c9935b$6a60b700$8e55fac1@CCCC> References: <20090220085139.GA12068@videolan.org> <001601c9935b$6a60b700$8e55fac1@CCCC> Message-ID: <20090222224747.GA11021@videolan.org> On Fri, Feb 20, 2009 at 02:01:56PM +0100, brezhoneg1 wrote : > In the 2009-02-11 build, skin.dtd and skin.catalog were missing. I had This should be fixed now. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Mon Feb 23 00:40:02 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 00:40:02 +0100 (CET) Subject: [vlc-devel] commit: Qt: fix the weird size of the open dialog. (Jean-Baptiste Kempf ) Message-ID: <20090222234002.905792FA13@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 00:38:21 2009 +0100| [01e557cb91df82859ce133fa27df71a318d979d3] | committer: Jean-Baptiste Kempf Qt: fix the weird size of the open dialog. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=01e557cb91df82859ce133fa27df71a318d979d3 --- modules/gui/qt4/dialogs/open.cpp | 11 ++++++----- modules/gui/qt4/ui/open_capture.ui | 4 ++-- modules/gui/qt4/ui/open_file.ui | 6 +++--- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/modules/gui/qt4/dialogs/open.cpp b/modules/gui/qt4/dialogs/open.cpp index 89cad1f..003700a 100644 --- a/modules/gui/qt4/dialogs/open.cpp +++ b/modules/gui/qt4/dialogs/open.cpp @@ -88,10 +88,10 @@ OpenDialog::OpenDialog( QWidget *parent, setWindowTitle( qtr( "Open a Media" ) ); /* Tab definition and creation */ - fileOpenPanel = new FileOpenPanel( ui.Tab, p_intf ); - discOpenPanel = new DiscOpenPanel( ui.Tab, p_intf ); - netOpenPanel = new NetOpenPanel( ui.Tab, p_intf ); - captureOpenPanel = new CaptureOpenPanel( ui.Tab, p_intf ); + fileOpenPanel = new FileOpenPanel( this, p_intf ); + discOpenPanel = new DiscOpenPanel( this, p_intf ); + netOpenPanel = new NetOpenPanel( this, p_intf ); + captureOpenPanel = new CaptureOpenPanel( this, p_intf ); /* Insert the tabs */ ui.Tab->insertTab( OPEN_FILE_TAB, fileOpenPanel, qtr( "&File" ) ); @@ -179,7 +179,8 @@ OpenDialog::OpenDialog( QWidget *parent, storedMethod = ""; newCachingMethod( "file-caching" ); - resize( getSettings()->value( "opendialog-size", QSize( 400, 490 ) ).toSize() ); + setMinimumSize( sizeHint() ); + resize( getSettings()->value( "opendialog-size", QSize( 500, 490 ) ).toSize() ); } OpenDialog::~OpenDialog() diff --git a/modules/gui/qt4/ui/open_capture.ui b/modules/gui/qt4/ui/open_capture.ui index 37b433e..a8a0a37 100644 --- a/modules/gui/qt4/ui/open_capture.ui +++ b/modules/gui/qt4/ui/open_capture.ui @@ -6,8 +6,8 @@ 0 0 - 365 - 129 + 392 + 134 diff --git a/modules/gui/qt4/ui/open_file.ui b/modules/gui/qt4/ui/open_file.ui index c7faba3..769e980 100644 --- a/modules/gui/qt4/ui/open_file.ui +++ b/modules/gui/qt4/ui/open_file.ui @@ -6,12 +6,12 @@ 0 0 - 519 - 282 + 571 + 271 - + 0 0 From git at videolan.org Mon Feb 23 00:59:02 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 00:59:02 +0100 (CET) Subject: [vlc-devel] commit: Qt: try to fix the arrow on the open dialog. (Jean-Baptiste Kempf ) Message-ID: <20090222235902.E2A302FB89@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 00:57:15 2009 +0100| [955947a8b1b7c0da9d2273b9e1b73919fccb7a8d] | committer: Jean-Baptiste Kempf Qt: try to fix the arrow on the open dialog. Close #2508/ > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=955947a8b1b7c0da9d2273b9e1b73919fccb7a8d --- modules/gui/qt4/dialogs/open.cpp | 1 + modules/gui/qt4/ui/open.ui | 13 ++++++++----- modules/gui/qt4/ui/open_disk.ui | 7 +------ 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/modules/gui/qt4/dialogs/open.cpp b/modules/gui/qt4/dialogs/open.cpp index 003700a..e8db45e 100644 --- a/modules/gui/qt4/dialogs/open.cpp +++ b/modules/gui/qt4/dialogs/open.cpp @@ -127,6 +127,7 @@ OpenDialog::OpenDialog( QWidget *parent, QKeySequence( "Alt+C" ) ); ui.menuButton->setMenu( openButtonMenu ); + ui.menuButton->setIcon( QIcon( ":/down_arrow" ) ); /* Add the three Buttons */ ui.buttonsBox->addButton( selectButton, QDialogButtonBox::AcceptRole ); diff --git a/modules/gui/qt4/ui/open.ui b/modules/gui/qt4/ui/open.ui index fd596ae..32c9565 100644 --- a/modules/gui/qt4/ui/open.ui +++ b/modules/gui/qt4/ui/open.ui @@ -207,7 +207,7 @@ - + 0 @@ -216,19 +216,22 @@ - 20 + 16 16777215 Qt::ClickFocus - - Qt::NoContextMenu - _("Select play mode") + + QToolButton::InstantPopup + + + Qt::NoArrow + diff --git a/modules/gui/qt4/ui/open_disk.ui b/modules/gui/qt4/ui/open_disk.ui index b313a08..ac42eaf 100644 --- a/modules/gui/qt4/ui/open_disk.ui +++ b/modules/gui/qt4/ui/open_disk.ui @@ -7,7 +7,7 @@ 0 0 500 - 311 + 319 @@ -351,11 +351,6 @@ - subtitlesLabel - subtitlesSpin - audioLabel - audioSpin - diskGroupBox From jb at videolan.org Mon Feb 23 01:00:35 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Mon, 23 Feb 2009 01:00:35 +0100 Subject: [vlc-devel] commit: Qt: fix the weird size of the open dialog. (Jean-Baptiste Kempf ) In-Reply-To: <20090222234002.905792FA13@skanda.videolan.org> References: <20090222234002.905792FA13@skanda.videolan.org> Message-ID: <20090223000035.GA24927@videolan.org> On Mon, Feb 23, 2009 at 12:40:02AM +0100, git version control wrote : > vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 00:38:21 2009 +0100| [01e557cb91df82859ce133fa27df71a318d979d3] | committer: Jean-Baptiste Kempf > > Qt: fix the weird size of the open dialog. Close #2481. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Mon Feb 23 09:25:18 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 09:25:18 +0100 (CET) Subject: [vlc-devel] commit: Directory: ignore .ini files. (Jean-Baptiste Kempf ) Message-ID: <20090223082518.B289F2FB7A@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 09:24:05 2009 +0100| [3fa2f02d415c943d122f4cd93455cfc23f149c8e] | committer: Jean-Baptiste Kempf Directory: ignore .ini files. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3fa2f02d415c943d122f4cd93455cfc23f149c8e --- modules/access/directory.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/access/directory.c b/modules/access/directory.c index ff4309c..00d792e 100644 --- a/modules/access/directory.c +++ b/modules/access/directory.c @@ -90,7 +90,7 @@ vlc_module_begin () add_string( "recursive", "expand" , NULL, RECURSIVE_TEXT, RECURSIVE_LONGTEXT, false ) change_string_list( psz_recursive_list, psz_recursive_list_text, 0 ) - add_string( "ignore-filetypes", "m3u,db,nfo,jpg,jpeg,ljpg,gif,png,pgm,pgmyuv,pbm,pam,tga,bmp,pnm,xpm,xcf,pcx,tif,tiff,lbm,sfv,txt,sub,idx,srt,cue,ssa", + add_string( "ignore-filetypes", "m3u,db,nfo,ini,jpg,jpeg,ljpg,gif,png,pgm,pgmyuv,pbm,pam,tga,bmp,pnm,xpm,xcf,pcx,tif,tiff,lbm,sfv,txt,sub,idx,srt,cue,ssa", NULL, IGNORE_TEXT, IGNORE_LONGTEXT, false ) set_callbacks( Open, Close ) vlc_module_end () From guru.video at gmail.com Mon Feb 23 09:59:54 2009 From: guru.video at gmail.com (Video Guru) Date: Mon, 23 Feb 2009 14:29:54 +0530 Subject: [vlc-devel] RE : VLC as a frame-server : some problems remains. In-Reply-To: <002a01c99295$41e13370$8252fac1@CCCC> References: <002a01c99295$41e13370$8252fac1@CCCC> Message-ID: As per your suggestions, I created an avencoder dll (based on the dummy encoder.c), but I am unable to figure out how to put it into the sout chain, and how to specify the width/height/chroma/audio format. I just want RV32 video and 2 channel 48khz audio. Can you please guide by giving a simple argv string, my encoder is called avmem. On Thu, Feb 19, 2009 at 6:53 PM, brezhoneg1 wrote: > Just as a thought, > > Why not modify vmem to make it a fake video encoder instead of a vout > plugin and use it in a sout chain. > From what I recall, when just transcoding in vlc (no display at all), > the speed limit is removed ..... > > Erwan10 > >> -----Message d'origine----- >> De : vlc-devel-bounces at videolan.org [mailto:vlc-devel- >> bounces at videolan.org] De la part de Video Guru >> Envoy? : jeudi 19 f?vrier 2009 13:04 >> ? : Mailing list for VLC media player developers >> Objet : Re: [vlc-devel] VLC as a frame-server : some problems remains. >> >> Thanks Remi for the reply. >> >> On vmem's lock callback, I immediately give a pointer from my >> applications managed buffers, and returns. After vmem's unlock I mark >> that buffer as filled for the display use. I have 100 such buffers. >> But vmem lock callback is arriving at the media's fps, i.e., 25 Hz. >> >> So the callback rate is being limited by the VLC, may be for the A/V >> sync etc. But I am managing my own A/V sync based on the dates so I >> want the max speed which disk io/codec/vlc can reach. >> >> Please guide. >> >> >> On Thu, Feb 19, 2009 at 5:17 PM, R?mi Denis-Courmont >> wrote: >> > >> > On Thu, 19 Feb 2009 17:06:21 +0530, Video Guru > >> > wrote: >> >> libvlc is limiting the delivery rate to vmem based on the fps of > the >> >> media. I dont want that. I want to get frames as fast as possible > to >> >> fill my buffer, when my buffer is near full, I will either pause > vlc, >> >> or hold the vmem lock (with of course, --no-drop-frames). >> > >> > I suspect that the vmem plugin supports only one frame buffer, and > that >> > would be the issue. VLC has to wait until there is one buffer > available. >> > >> > -- >> > R?mi Denis-Courmont >> > >> > _______________________________________________ >> > vlc-devel mailing list >> > To unsubscribe or modify your subscription options: >> > http://mailman.videolan.org/listinfo/vlc-devel >> > >> >> >> >> -- >> --------------------------------------------------------------------- >> >> Electricity is actually made up of extremely tiny particles called >> electrons, that you cannot see with the naked eye unless you have been >> drinking. >> >> - Dave Barry >> _______________________________________________ >> vlc-devel mailing list >> To unsubscribe or modify your subscription options: >> http://mailman.videolan.org/listinfo/vlc-devel > > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > -- --------------------------------------------------------------------- Electricity is actually made up of extremely tiny particles called electrons, that you cannot see with the naked eye unless you have been drinking. - Dave Barry From git at videolan.org Mon Feb 23 10:25:38 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 10:25:38 +0100 (CET) Subject: [vlc-devel] commit: Qt: rename skip to step to match macos (Jean-Baptiste Kempf ) Message-ID: <20090223092538.25D3C2FCAF@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 10:24:23 2009 +0100| [344560c70e6e186897acdab8e06c84844fca5b7f] | committer: Jean-Baptiste Kempf Qt: rename skip to step to match macos > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=344560c70e6e186897acdab8e06c84844fca5b7f --- modules/gui/qt4/components/controller.hpp | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/components/controller.hpp b/modules/gui/qt4/components/controller.hpp index 4a6b73e..a4de91c 100644 --- a/modules/gui/qt4/components/controller.hpp +++ b/modules/gui/qt4/components/controller.hpp @@ -101,7 +101,7 @@ typedef enum buttonType_e static const QString nameL[BUTTON_MAX] = { "Play", "Stop", "Open", "Previous", "Next", "Slower", "Faster", "Fullscreen", "De-Fullscreen", "Extended panel", "Playlist", "Snapshot", "Record", "A->B Loop", - "Frame By Frame", "Trickplay Reverse", "Skip backward" , "Skip forward", + "Frame By Frame", "Trickplay Reverse", "Step backward" , "Step forward", "Quit" }; static const QString tooltipL[BUTTON_MAX] = { I_PLAY_TOOLTIP, _("Stop playback"), _("Open a media"), @@ -110,7 +110,7 @@ static const QString tooltipL[BUTTON_MAX] = { I_PLAY_TOOLTIP, _("Toggle the video in fullscreen"), _("Toggle the video out fullscreen"), _("Show extended settings" ), _( "Show playlist" ), _( "Take a snapshot" ), _( "Record" ), _( "Loop from point A to point B continuously." ), - _("Frame by frame"), _("Reverse"), _("Skip backward"), _("Skip forward"), + _("Frame by frame"), _("Reverse"), _("Step backward"), _("Step forward"), _("Quit") }; static const QString iconL[BUTTON_MAX] ={ ":/play_b", ":/stop_b", ":/eject", ":/previous_b", ":/next_b", ":/slower", ":/faster", ":/fullscreen", From abethke at oamk.fi Mon Feb 23 11:15:33 2009 From: abethke at oamk.fi (Alexander Bethke) Date: Mon, 23 Feb 2009 12:15:33 +0200 Subject: [vlc-devel] jvlc: Getting any response from VLM In-Reply-To: <499997EF.1030200@carone.org> References: <20090110235458.093B82D203@skanda.videolan.org> <49995BC2.7000509@oamk.fi> <499997EF.1030200@carone.org> Message-ID: <49A27745.50806@oamk.fi> Heippa, Ok, with latest HEAD from git it works better. I got exceptions forwarded from VLM class now. The tests from VLMTest run for broadcasts, but when running the VOD tests in sequence, it throws an Exception about not being able to create the vod media. If you run the vod tests one-by-one, it works though. So there seems to be something leaking with destructing the vlm instances? In addition I debugged the showMedia method, libvlc throws an exception every time that is called. I digged into the c code, and it turns out that this function has been crippled in the public libvlc_vlm api. There seems to have been a refactoring step within VLM's internal API that does not directly expose the show command any more. There's some few newer functions that allow to ask for position and length, but that does not provide a lot of information. There's some struct stub commented out in vlm.c that seems to be intended to carry extensive status information for a media... I gonna write a mail with a different subject to the list to see if someone VLM-involved can give me a hint on how that's supposed to go. Anyway, I try to refactor the jvlc-VLM class as much as it is possible to reflect the latest changes in VLM, to get things a bit more compelling. Gonna report back with a patch as soon as I am satisfied with how it works. Regards, Alex Filippo Carone wrote: > Alexander Bethke ha scritto: > >> Hi everybody, >> >> I am trying to implement a live transcoding controller that wraps VLM >> via jvlc. Sending a command to VLM works fine, but it seems there is no >> way to get information back from jvlc. I understand that there is no >> fancy playback event handling with jvlc>VLM like when using jvlc as a >> player with MediaDescriptor. But what I don't understand is why no VLM >> method throws a VLCException. showMedia has return type void and I don't >> get any console logging from any VLM command (apart from actual VLC >> logging, when VLM triggered it right). >> Am I getting something wrong? Or is that just unimplemented? >> >> > > Hi Alexander, > VLM methods in JVLC should throw exceptions just like other JVLC > methods. The current implementation throws exceptions away, but if you > need exceptions now you may consider using > org.videolan.jvlc.internal.LibVlc.libvlc_vlm_* methods which fill the > libvlc_exception_t class correctly. > > The best would be to check the status of the libvlc_exception_t class in > VLM.java and throw the VLCException accordingly. Any patch will be > kindly accepted ;) > > Cheers, > Filippo > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > > From linkfanel at yahoo.fr Mon Feb 23 12:06:11 2009 From: linkfanel at yahoo.fr (Pierre Ynard) Date: Mon, 23 Feb 2009 12:06:11 +0100 Subject: [vlc-devel] [PATCH] Fix inexistant argument Message-ID: <20090223110611.GA23742@via.ecp.fr> diff --git a/src/missing.c b/src/missing.c index 9b41d23..3e678cf 100644 --- a/src/missing.c +++ b/src/missing.c @@ -81,7 +81,7 @@ httpd_handler_t *httpd_HandlerNew (httpd_host_t *host, const char *url, httpd_handler_callback_t cb, httpd_handler_sys_t *data) { - (void) host; (void) url; (void) content_type; + (void) host; (void) url; (void) login; (void) password; (void) acl; (void) cb; (void) data; assert (0); Regards, -- Pierre Ynard "Une ?me dans un corps, c'est comme un dessin sur une feuille de papier." From sebastien-devel at celeos.eu Mon Feb 23 12:21:17 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Mon, 23 Feb 2009 12:21:17 +0100 Subject: [vlc-devel] Stream read algorithm (input/stream.c) Message-ID: <1235388077.49a286ad8b638@imp.celeos.eu> Hi There may be a problem in stream reading. I noticed that I had some delay when I was reading a network stream. Then I looked at stream reading in src/intput/stream.c and I noticed that VLC wasn't reading at the end of the stream cache. It was ok at the beginning, but it was shifting more and more. I think the problem is with these lines in AStreamReadStream: line 1104 in stream.c why is this needed ? : if( p_sys->stream.i_used < i_read - i_data ) p_sys->stream.i_used = __MIN( i_read - i_data, STREAM_READ_ATONCE * 10 ); If we are in this case, AStreamRefillStream will read (i_read - i_data) instead of (i_copy = i_data). And we are in a loop : while( i_data < i_read ), so it will read again i_data-i_read just after (because this is what is left to read). Finally we refilled (i_read - i_data)*2 but we really read less. Here is the shift in this cache. With these two lines I had like 30 secs of delay after several hours of network stream reading. When I commented these lines, no delay anymore. My second question is : why do we refill the cache when we have enough unread data in it ? The issue above would be ok if we didn't. Unless this should *never* happen ? Regards. From abethke at oamk.fi Mon Feb 23 13:37:51 2009 From: abethke at oamk.fi (Alexander Bethke) Date: Mon, 23 Feb 2009 14:37:51 +0200 Subject: [vlc-devel] [Videolan-devel] RTMP output for hire? In-Reply-To: <7330e614a785e50e8fc60726d8311991@chewa.net> References: <7330e614a785e50e8fc60726d8311991@chewa.net> Message-ID: <49A2989F.6080806@oamk.fi> Hi Darin, Adobe has announced to open up the RTMP specs in the first half of this year: http://www.adobe.com/aboutadobe/pressroom/pressreleases/200901/012009RTMP.html This is where they say they will put them: http://www.adobe.com/devnet/rtmp/ It would perhaps be smart to consider that in any implementation schedule. ;) Regards, Alex R?mi Denis-Courmont wrote: > On Thu, 10 Apr 2008 15:41:45 -0400, "Darin Chambers" > wrote: > >> My company has an interest in a developer getting VLC to output into >> Flash Media Interactive Server (RTMP protocol). From what I've seen >> RTMP output is not being worked on. Are there any qualified individuals >> interested in a possible contract to get VLC to output to FMS? >> > > vlc-devel at videolan.org is probably a better audience. > > From abethke at oamk.fi Mon Feb 23 13:47:26 2009 From: abethke at oamk.fi (Alexander Bethke) Date: Mon, 23 Feb 2009 14:47:26 +0200 Subject: [vlc-devel] VLM public API: Querying media information Message-ID: <49A29ADE.4030609@oamk.fi> Hi, I'm trying to get the Java bindings for VLM a bit up to date / in shape and came across some questions regarding the VLM API. At the moment there is no way to get information back from vlm. The libvlc_vlm_show_media has obviously been crippled (it seems to have been left out in an API refactoring step). Those libvlc_vlm_get_media_instance_something functions don't really provide enough information to do something much with it. I tried of course to fix the libvlc_vlm_show_media to return some representation of what is given out on the telnet interface. But of course this is not really the way to go, nor did I succeed in fixing it. (That heavy pointer-usage in vlm maxes out my C-knowledge quickly.) There is some struct definition commented out in input/vlm.c that looks like the start of something that I would be looking for. So what was the idea about that one? Or how is information to be query from vlm via public libvlc api? Regards, Alex From git at videolan.org Mon Feb 23 14:33:18 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 14:33:18 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_macosx=3A_display_the_remaining_t?= =?utf-8?q?ime_if_the_field_was_clicked_once_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090223133318.EBE592FC94@skanda.videolan.org> vlc | branch: master | Felix Paul K?hne | Mon Feb 23 13:25:46 2009 +0100| [c3ce15c7c94fabcb37911641d32c977c60f64a03] | committer: Felix Paul K?hne macosx: display the remaining time if the field was clicked once > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c3ce15c7c94fabcb37911641d32c977c60f64a03 --- .../English.lproj/MainMenu.nib/classes.nib | 1 + .../Resources/English.lproj/MainMenu.nib/info.nib | 2 + .../English.lproj/MainMenu.nib/keyedobjects.nib | Bin 120713 -> 120930 bytes modules/gui/macosx/controls.m | 2 + modules/gui/macosx/intf.h | 20 +++++++++------- modules/gui/macosx/intf.m | 23 ++++++++++++++++++- 6 files changed, 37 insertions(+), 11 deletions(-) diff --git a/extras/package/macosx/Resources/English.lproj/MainMenu.nib/classes.nib b/extras/package/macosx/Resources/English.lproj/MainMenu.nib/classes.nib index 5300ea1..9d7fe85 100644 --- a/extras/package/macosx/Resources/English.lproj/MainMenu.nib/classes.nib +++ b/extras/package/macosx/Resources/English.lproj/MainMenu.nib/classes.nib @@ -172,6 +172,7 @@ showMessagesPanel = id; showVLM = id; showWizard = id; + timeFieldWasClicked = id; timesliderUpdate = id; togglePlaylist = id; viewAbout = id; diff --git a/extras/package/macosx/Resources/English.lproj/MainMenu.nib/info.nib b/extras/package/macosx/Resources/English.lproj/MainMenu.nib/info.nib index d73eefb..10c0949 100644 --- a/extras/package/macosx/Resources/English.lproj/MainMenu.nib/info.nib +++ b/extras/package/macosx/Resources/English.lproj/MainMenu.nib/info.nib @@ -21,6 +21,8 @@ 4 IBOpenObjects + 21 + 2416 3568 29 diff --git a/extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib b/extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib index 97feeb1..84dda51 100644 Binary files a/extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib and b/extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib differ diff --git a/modules/gui/macosx/controls.m b/modules/gui/macosx/controls.m index 4164e3d..b2a0e5f 100644 --- a/modules/gui/macosx/controls.m +++ b/modules/gui/macosx/controls.m @@ -1180,5 +1180,7 @@ { if( [ourEvent clickCount] > 1 ) [[[VLCMain sharedInstance] getControls] goToSpecificTime: nil]; + else + [[VLCMain sharedInstance] timeFieldWasClicked: self]; } @end diff --git a/modules/gui/macosx/intf.h b/modules/gui/macosx/intf.h index 3c65afe..d27fb28 100644 --- a/modules/gui/macosx/intf.h +++ b/modules/gui/macosx/intf.h @@ -123,15 +123,16 @@ static void MsgCallback( msg_cb_data_t *, msg_item_t *, unsigned ); BOOL nib_info_loaded; /* information panel nibfile */ BOOL nib_vlm_loaded; /* VLM Panel nibfile */ - IBOutlet VLControllerWindow * o_window; /* main window */ - IBOutlet NSView * o_playlist_view;/* playlist view */ - IBOutlet id o_scrollfield; /* info field */ - IBOutlet NSTextField * o_timefield; /* time field */ - IBOutlet NSSlider * o_timeslider; /* time slider */ - IBOutlet VLCEmbeddedWindow * o_embedded_window; /* Embedded Vout Window */ - float f_slider; /* slider value */ - float f_slider_old; /* old slider val */ - IBOutlet NSSlider * o_volumeslider; /* volume slider */ + IBOutlet VLControllerWindow * o_window; /* main window */ + IBOutlet NSView * o_playlist_view; /* playlist view */ + IBOutlet id o_scrollfield; /* info field */ + IBOutlet NSTextField * o_timefield; /* time field */ + IBOutlet NSSlider * o_timeslider; /* time slider */ + BOOL b_time_remaining; /* show remaining time or playtime ? */ + IBOutlet VLCEmbeddedWindow * o_embedded_window; /* Embedded Vout Window */ + float f_slider; /* slider value */ + float f_slider_old; /* old slider val */ + IBOutlet NSSlider * o_volumeslider; /* volume slider */ IBOutlet NSView * toolbarMediaControl; /* view with the controls */ @@ -378,6 +379,7 @@ static void MsgCallback( msg_cb_data_t *, msg_item_t *, unsigned ); - (void)setSubmenusEnabled:(BOOL)b_enabled; - (void)manageVolumeSlider; - (IBAction)timesliderUpdate:(id)sender; +- (IBAction)timeFieldWasClicked:(id)sender; - (IBAction)clearRecentItems:(id)sender; - (void)openRecentItem:(id)sender; diff --git a/modules/gui/macosx/intf.m b/modules/gui/macosx/intf.m index 01bdef0..48d2a8c 100644 --- a/modules/gui/macosx/intf.m +++ b/modules/gui/macosx/intf.m @@ -1672,7 +1672,13 @@ static void * manage_cleanup( void * args ) var_Get( p_input, "time", &time ); - o_time = [NSString stringWithUTF8String: secstotimestr( psz_time, (time.i_time / 1000000) )]; + mtime_t dur = input_item_GetDuration( input_GetItem( p_input ) ); + if( b_time_remaining && dur != -1 ) + { + o_time = [NSString stringWithFormat: @"-%s", secstotimestr( psz_time, ((dur - time.i_time) / 1000000))]; + } + else + o_time = [NSString stringWithUTF8String: secstotimestr( psz_time, (time.i_time / 1000000) )]; [o_timefield setStringValue: o_time]; [[[self getControls] getFSPanel] setStreamPos: f_updated andTime: o_time]; @@ -1950,7 +1956,14 @@ end: var_Get( p_input, "time", &time ); - o_time = [NSString stringWithUTF8String: secstotimestr( psz_time, (time.i_time / 1000000) )]; + mtime_t dur = input_item_GetDuration( input_GetItem( p_input ) ); + if( b_time_remaining && dur != -1 ) + { + o_time = [NSString stringWithFormat: @"-%s", secstotimestr( psz_time, ((dur - time.i_time) / 1000000) )]; + } + else + o_time = [NSString stringWithUTF8String: secstotimestr( psz_time, (time.i_time / 1000000) )]; + [o_timefield setStringValue: o_time]; [[[self getControls] getFSPanel] setStreamPos: f_updated andTime: o_time]; [o_embedded_window setTime: o_time position: f_updated]; @@ -1959,6 +1972,12 @@ end: pl_Release( p_intf ); } +- (IBAction)timeFieldWasClicked:(id)sender +{ + b_time_remaining = !b_time_remaining; +} + + #pragma mark - #pragma mark Recent Items From git at videolan.org Mon Feb 23 14:47:45 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 14:47:45 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_contribs=3A_update_the_script_to_?= =?utf-8?q?master=27s_version_=28_Felix_Paul_K=C3=BChne_=29?= Message-ID: <20090223134745.A644B2F821@skanda.videolan.org> vlc | branch: 0.9-bugfix | Felix Paul K?hne | Mon Feb 23 14:47:25 2009 +0100| [dac1378737528da4eb920571f2524fccf3c8ceb2] | committer: Felix Paul K?hne contribs: update the script to master's version > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dac1378737528da4eb920571f2524fccf3c8ceb2 --- extras/contrib/change_prefix.sh | 33 ++++++++++++++++++++------------- 1 files changed, 20 insertions(+), 13 deletions(-) diff --git a/extras/contrib/change_prefix.sh b/extras/contrib/change_prefix.sh index 9a30789..c97b238 100755 --- a/extras/contrib/change_prefix.sh +++ b/extras/contrib/change_prefix.sh @@ -2,7 +2,7 @@ # *************************************************************************** # change_prefix.sh : allow to transfer a contrib dir # *************************************************************************** -# Copyright (C) 2003 the VideoLAN team +# Copyright (C) 2003, 2009 the VideoLAN team # $Id$ # # Authors: Christophe Massiot @@ -45,30 +45,37 @@ fi cd $top_dir pwd files=`find . -type f` -for file in $files; do - if test ".`file $file | grep Mach-O`" != "." ; then +for file in $files; do + if test ".`file $file | grep Mach-O`" != "." ; then + echo "Changing prefixes of '$file'" + islib=n + if test ".`file $file | grep 'Mach-O dynamically'`" != "." ; then + islib=y + fi libs=`otool -L $file 2>/dev/null | grep $prefix | cut -d\ -f 1` - echo $libs + first=y for i in "" $libs; do - echo $i if ! test -z $i; then - install_name_tool -change $i \ - `echo $i | sed -e "s,$prefix,$new_prefix,"` \ - $file + if test $islib = y -a $first = y; then + install_name_tool -id `echo $i | sed -e "s,$prefix,$new_prefix,"` $file + first=n + else + install_name_tool -change $i `echo $i | sed -e "s,$prefix,$new_prefix,"` $file + fi fi done elif test ".`file $file | grep \"text\|shell\"`" != "." ; then - + echo "Fixing up shell/text file "$file"" + cp $file $file.tmp sed -e "s,$prefix,$new_prefix,g" < $file > $file.tmp mv -f $file.tmp $file fi done -cd $new_prefix2/lib/ -pwd -files=` ls -1 *.la` +files=`find . -name *.la` for file in $files; do - echo $file + echo "Fixing up .la $file" + cp $file $file.tmp sed -e "s,$prefix,$new_prefix,g" < $file > $file.tmp mv -f $file.tmp $file done From fkuehne.videolan at googlemail.com Mon Feb 23 16:01:57 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Mon, 23 Feb 2009 16:01:57 +0100 Subject: [vlc-devel] Pre-release of VLC 0.9.9 for Mac Message-ID: <4BE58586-C493-484A-B41B-58770D3B0662@gmail.com> Dear users and co-devs, feel free to download a pre-release build of VLC 0.9.9 for Mac from the following address: These builds are based upon the latest stable source, which includes various improvements on the playback speed, which should be tested by a broader group of people before the release. A Universal Binary will be made available again for the actual release. Please give feedback to this list or directly to me off-list. Note that VLC 0.9.x will be the last release series to support Mac OS X 10.4.x, so we want something really stable... Best regards, Felix -- VideoLAN Felix Paul K?hne Co-Developer of VLC's Mac OS X port http://www.videolan.org/vlc From git at videolan.org Mon Feb 23 17:33:54 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 17:33:54 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Copy_IPv4_multicast_TTL_from_RTP_?= =?utf-8?q?to_RTCP=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090223163354.CB3D82F524@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Mon Feb 23 18:24:58 2009 +0200| [19c943dc3b2883d09f490e25c36e19ff8d814d37] | committer: R?mi Denis-Courmont Copy IPv4 multicast TTL from RTP to RTCP. We were sending RTCP with TTL=1 all the time... (cherry picked from commit 7da51390659d29b3022c748b6e8491ad3e37f5e6) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=19c943dc3b2883d09f490e25c36e19ff8d814d37 --- modules/stream_out/rtcp.c | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/modules/stream_out/rtcp.c b/modules/stream_out/rtcp.c index cbc3dad..3c1780e 100644 --- a/modules/stream_out/rtcp.c +++ b/modules/stream_out/rtcp.c @@ -99,6 +99,16 @@ rtcp_sender_t *OpenRTCP (vlc_object_t *obj, int rtp_fd, int proto, dport++; fd = net_OpenDgram (obj, src, sport, dst, dport, AF_UNSPEC, proto); + + /* Copy the multicast IPv4 TTL value (useless for IPv6) */ + if (fd != -1) + { + int ttl; + socklen_t len = sizeof (ttl); + + if (!getsockopt (rtp_fd, SOL_IP, IP_MULTICAST_TTL, &ttl, &len)) + setsockopt (fd, SOL_IP, IP_MULTICAST_TTL, &ttl, len); + } } if (fd == -1) From git at videolan.org Mon Feb 23 19:05:47 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 19:05:47 +0100 (CET) Subject: [vlc-devel] commit: Add a forgotten file to Modules.am (Jean-Baptiste Kempf ) Message-ID: <20090223180547.BDE012F8EC@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 18:02:41 2009 +0100| [a13f27ece416447d39c34178346380c53b65201e] | committer: Jean-Baptiste Kempf Add a forgotten file to Modules.am > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a13f27ece416447d39c34178346380c53b65201e --- modules/gui/qt4/Modules.am | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/Modules.am b/modules/gui/qt4/Modules.am index dea66d6..7835630 100644 --- a/modules/gui/qt4/Modules.am +++ b/modules/gui/qt4/Modules.am @@ -268,6 +268,7 @@ noinst_HEADERS = \ components/playlist/selector.hpp \ components/playlist/sorting.h \ components/sout/profile_selector.hpp \ + components/sout/profiles.hpp \ util/input_slider.hpp \ util/customwidgets.hpp \ util/qvlcframe.hpp \ From georg.seifert at gmx.de Mon Feb 23 19:36:21 2009 From: georg.seifert at gmx.de (Georg Seifert) Date: Mon, 23 Feb 2009 19:36:21 +0100 Subject: [vlc-devel] Leopard: setContentBorderThickness In-Reply-To: References: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> Message-ID: <25824ACE-E82D-436A-99E3-0A4F9D50A18B@gmx.de> hello, how about my first question. Is it possible that someone makes the changes in VLCEmbeddedWindow.m > @implementation VLCEmbeddedWindow > > - (id)initWithContentRect:(NSRect)contentRect styleMask: > (NSUInteger)windowStyle backing:(NSBackingStoreType)bufferingType > defer:(BOOL)deferCreation > { > windowStyle ^= NSTexturedBackgroundWindowMask; // this is to have > textured Window in IB > self = [super initWithContentRect:contentRect styleMask:windowStyle > backing:bufferingType defer:deferCreation]; > [self setContentBorderThickness:29.0 forEdge:NSMinYEdge]; > return self; > } > Thanks Georg From git at videolan.org Mon Feb 23 20:13:39 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 20:13:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_GetVLCInstance_must_return_an_non?= =?utf-8?q?-abstract_typed_object_=2E=2E=2E_=28_R=C3=A9mi_Denis-Courmont_?= =?utf-8?q?=29?= Message-ID: <20090223191339.9C0082FA48@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 23 19:34:59 2009 +0200| [2c3c94bd0b1cb1ce2bb0beb4bf76c7c895d75da1] | committer: R?mi Denis-Courmont GetVLCInstance must return an non-abstract typed object ... > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2c3c94bd0b1cb1ce2bb0beb4bf76c7c895d75da1 --- bindings/cil/src/instance.cs | 2 +- bindings/cil/src/libvlc.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/cil/src/instance.cs b/bindings/cil/src/instance.cs index 1a119a8..f40862c 100644 --- a/bindings/cil/src/instance.cs +++ b/bindings/cil/src/instance.cs @@ -149,7 +149,7 @@ namespace VideoLAN.LibVLC * Do not use this unless you really know what you are doing. * @version VLC 1.0 */ - public SafeHandle Object + public IntPtr Object { get { diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs index 45003c4..16a8815 100644 --- a/bindings/cil/src/libvlc.cs +++ b/bindings/cil/src/libvlc.cs @@ -68,7 +68,7 @@ namespace VideoLAN.LibVLC [DllImport ("libvlc.dll", EntryPoint="libvlc_get_vlc_instance")] public static extern - SafeHandle GetVLCInstance (InstanceHandle h); + IntPtr GetVLCInstance (InstanceHandle h); /* media.c */ [DllImport ("libvlc.dll", EntryPoint="libvlc_media_new")] From git at videolan.org Mon Feb 23 20:13:39 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 20:13:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Centralize_run-time_library_name/?= =?utf-8?q?path_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090223191339.AE6C42FD62@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 23 19:55:47 2009 +0200| [c68490b39829d0f456733d6c7af709db9f3ba412] | committer: R?mi Denis-Courmont Centralize run-time library name/path > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c68490b39829d0f456733d6c7af709db9f3ba412 --- bindings/cil/src/exception.cs | 11 +--- bindings/cil/src/libvlc.cs | 136 ++++++++++++++++++++++------------------ bindings/cil/src/ustring.cs | 5 +- 3 files changed, 79 insertions(+), 73 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=c68490b39829d0f456733d6c7af709db9f3ba412 From git at videolan.org Mon Feb 23 20:13:39 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 20:13:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Simpler_and_safer_event_callbacks?= =?utf-8?q?_handling_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090223191339.C1FD52F6B6@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 23 20:00:52 2009 +0200| [d14f8d432c2dfaea7365e728a61ec37c3cdcf837] | committer: R?mi Denis-Courmont Simpler and safer event callbacks handling > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d14f8d432c2dfaea7365e728a61ec37c3cdcf837 --- bindings/cil/src/marshal.cs | 50 ++++++++++++------------------------------- 1 files changed, 14 insertions(+), 36 deletions(-) diff --git a/bindings/cil/src/marshal.cs b/bindings/cil/src/marshal.cs index 166b90d..3a427f8 100644 --- a/bindings/cil/src/marshal.cs +++ b/bindings/cil/src/marshal.cs @@ -139,30 +139,12 @@ namespace VideoLAN.LibVLC */ public abstract class EventingObject : BaseObject { - /** - * @brief Managed to unmanaged event handler mapping - * @ingroup Internals - * - * The CLR cannot do reference counting for unmanaged callbacks. - * We keep track of handled events here instead. - */ - private class Event - { - public EventCallback managed; - public IntPtr unmanaged; - - public Event (EventCallback managed, IntPtr unmanaged) - { - this.managed = managed; - this.unmanaged = unmanaged; - } - }; - private Dictionary events; + private Dictionary events; /**< references to our unmanaged function pointers */ internal EventingObject () : base () { - events = new Dictionary (); + events = new Dictionary (); } /** @@ -187,19 +169,20 @@ namespace VideoLAN.LibVLC * @param callback callback to invoke when the event occurs * * @note - * For simplicity, we only allow one handler per type. - * Multicasting can be implemented higher up with managed code. + * For simplicity, we require distinct callbacks for each event type. + * This is hardly an issue since most events have different formats. */ - internal void Attach (EventType type, EventCallback callback) + internal void Attach (EventType type, Delegate callback) { EventManagerHandle manager; IntPtr cb = Marshal.GetFunctionPointerForDelegate (callback); - Event ev = new Event (callback, cb); bool unref = false; - if (events.ContainsKey (type)) - throw new ArgumentException ("Duplicate event"); - + /* If things go wrong, we will leak the callback thunk... until + * this object is destroyed anyway. If we added the thunk _after_ + * the critical section, the native code could try to jump to a + * non-existent address, which is much worse. */ + events.Add (callback, cb); try { handle.DangerousAddRef (ref unref); @@ -212,19 +195,19 @@ namespace VideoLAN.LibVLC handle.DangerousRelease (); } Raise (); - events.Add (type, ev); } - private void Detach (EventType type, IntPtr callback) + internal void Detach (EventType type, Delegate callback) { EventManagerHandle manager; + IntPtr cb = events[callback]; bool unref = false; try { handle.DangerousAddRef (ref unref); manager = GetManager (); - LibVLC.EventDetach (manager, type, callback, IntPtr.Zero, ex); + LibVLC.EventDetach (manager, type, cb, IntPtr.Zero, ex); } finally { @@ -232,12 +215,7 @@ namespace VideoLAN.LibVLC handle.DangerousRelease (); } Raise (); - events.Remove (type); - } - - internal void Detach (EventType type) - { - Detach(type, events[type].unmanaged); + events.Remove (callback); } }; }; From git at videolan.org Mon Feb 23 20:13:39 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 20:13:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Media_event_handling_=28_R=C3=A9m?= =?utf-8?q?i_Denis-Courmont_=29?= Message-ID: <20090223191339.F0B7A2FD48@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 23 20:50:27 2009 +0200| [45dbbcc4b8ada235bf3ff6b50c3a180fea3ffdaf] | committer: R?mi Denis-Courmont Media event handling > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=45dbbcc4b8ada235bf3ff6b50c3a180fea3ffdaf --- bindings/cil/src/media.cs | 128 +++++++++++++++++++++++++++++++++++++--- bindings/cil/tests/testvlc.cs | 13 +++- 2 files changed, 127 insertions(+), 14 deletions(-) diff --git a/bindings/cil/src/media.cs b/bindings/cil/src/media.cs index 575e4c8..1edf093 100644 --- a/bindings/cil/src/media.cs +++ b/bindings/cil/src/media.cs @@ -43,6 +43,30 @@ namespace VideoLAN.LibVLC }; /** + * @brief MetaType: type of a media meta-information entry + */ + public enum MetaType + { + Title, + Artist, + Genre, + Copyright, + Album, + TrackNumber, + Description, + Rating, + Date, + Setting, + URL, + Language, + NowPlaying, + Publisher, + EncodedBy, + ArtworkURL, + TrackID, + }; + + /** * @brief State: media/player state * * Media and Player objects are always in one of these state. @@ -60,6 +84,45 @@ namespace VideoLAN.LibVLC Error, /**< Failed */ }; + /* Media events */ + [StructLayout (LayoutKind.Sequential)] + internal sealed class MediaMetaEvent : GenericEvent + { + public MetaType metaType; + }; + internal delegate void MediaMetaCallback (MediaMetaEvent e, IntPtr d); + + /*[StructLayout (LayoutKind.Sequential)] + internal sealed class MediaSubitemEvent : GenericEvent + { + public IntPtr child; -- MediaHandle + };*/ + + [StructLayout (LayoutKind.Sequential)] + internal sealed class MediaDurationEvent : GenericEvent + { + public long duration; + }; + internal delegate void MediaDurationCallback (MediaDurationEvent e, + IntPtr d); + + [StructLayout (LayoutKind.Sequential)] + internal sealed class MediaPreparseEvent : GenericEvent + { + public int status; + }; + internal delegate void MediaPreparseCallback (MediaPreparseEvent e, + IntPtr d); + + /* media_freed -> bad idea w.r.t. the GC */ + + [StructLayout (LayoutKind.Sequential)] + internal sealed class MediaStateEvent : GenericEvent + { + public State state; + }; + internal delegate void MediaStateCallback (MediaStateEvent e, IntPtr d); + /** * @brief Media: a source media * @ingroup API @@ -87,6 +150,35 @@ namespace VideoLAN.LibVLC handle = LibVLC.MediaCreate (instance.Handle, umrl, ex); Raise (); + Attach (); + } + + private Media (MediaHandle handle) + { + this.handle = handle; + Attach (); + } + + /** + * Duplicates a media object. + */ + public object Clone () + { + return new Media (LibVLC.MediaDuplicate (Handle)); + } + + private void Attach () + { + Attach (EventType.MediaMetaChanged, + new MediaMetaCallback (MetaCallback)); + //Attach (EventType.MediaSubItemAdded, SubItemAdded); + Attach (EventType.MediaDurationChanged, + new MediaDurationCallback (DurationCallback)); + /*Attach (EventType.MediaPreparsedChanged, + new MediaPreparseCallback (PreparseCallback));*/ + /* MediaFreed: better not... */ + Attach (EventType.MediaStateChanged, + new MediaStateCallback (StateCallback)); } /** @@ -128,17 +220,9 @@ namespace VideoLAN.LibVLC } } - private Media (MediaHandle handle) + public override string ToString () { - this.handle = handle; - } - - /** - * Duplicates a media object. - */ - public object Clone () - { - return new Media (LibVLC.MediaDuplicate (Handle)); + return Location; } /** @@ -154,6 +238,14 @@ namespace VideoLAN.LibVLC } } + public delegate void StateChange (Media media, State state); + public event StateChange StateChanged; + private void StateCallback (MediaStateEvent ev, IntPtr data) + { + if (StateChanged != null) + StateChanged (this, ev.state); + } + internal override EventManagerHandle GetManager () { return LibVLC.MediaEventManager (Handle, null); @@ -174,6 +266,14 @@ namespace VideoLAN.LibVLC } } + public delegate void DurationChange (Media media, long duration); + public event DurationChange DurationChanged; + private void DurationCallback (MediaDurationEvent ev, IntPtr data) + { + if (DurationChanged != null) + DurationChanged (this, ev.duration); + } + /** * Whether the media was "preparsed". If true, the meta-infos were * extracted, even before the media was played. This is normally only @@ -188,5 +288,13 @@ namespace VideoLAN.LibVLC return preparsed != 0; } } + + public delegate void PreparseChange (Media media, bool preparsed); + public event PreparseChange PreparseChanged; + private void PreparseCallback (MediaPreparseEvent ev, IntPtr data) + { + if (PreparseChanged != null) + PreparseChanged (this, ev.status != 0); + } }; }; diff --git a/bindings/cil/tests/testvlc.cs b/bindings/cil/tests/testvlc.cs index 91c27ac..1d4786c 100644 --- a/bindings/cil/tests/testvlc.cs +++ b/bindings/cil/tests/testvlc.cs @@ -30,10 +30,14 @@ namespace VideoLAN.LibVLC.Test { private static void DumpMedia (Media m) { - Console.WriteLine ("Media at {0}", m.Location); - Console.WriteLine (" duration: {0}?s", m.Duration); - Console.WriteLine (" preparsed: {0}", m.IsPreparsed); - Console.WriteLine (" state: {0}", m.State); + Console.WriteLine ("Media: {0} {1} (duration: {2}, {3}preparsed)", + m.State, m.Location, m.Duration, + m.IsPreparsed ? "" : "not "); + } + + private static void WriteMediaState (Media m, State s) + { + Console.WriteLine (" -> {0}", s); } private static void DumpPlayer (Player p) @@ -69,6 +73,7 @@ namespace VideoLAN.LibVLC.Test DumpMedia (media); DumpMedia ((Media)media.Clone ()); + media.StateChanged += WriteMediaState; player.Play (); do From git at videolan.org Mon Feb 23 20:13:40 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 20:13:40 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Media_meta_data_support_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090223191340.0E74F2FD87@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 23 21:12:22 2009 +0200| [fec4fde41014892402d3ce3fa9139f5d58a15d63] | committer: R?mi Denis-Courmont Media meta data support This seems to trigger a pseudo-random native failure. Most likely a critical bug in the VLC meta support. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fec4fde41014892402d3ce3fa9139f5d58a15d63 --- bindings/cil/src/libvlc.cs | 6 +++--- bindings/cil/src/media.cs | 19 +++++++++++++++++++ bindings/cil/tests/testvlc.cs | 7 +++++++ 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs index 4cf488e..bacaf78 100644 --- a/bindings/cil/src/libvlc.cs +++ b/bindings/cil/src/libvlc.cs @@ -118,10 +118,10 @@ namespace VideoLAN.LibVLC public static extern MediaHandle MediaDuplicate (MediaHandle media); - /*[DllImport (lib, EntryPoint="libvlc_media_read_meta")] + [DllImport (lib, EntryPoint="libvlc_media_get_meta")] public static extern - MediaHandle MediaDuplicate (MediaHandle media, int type, - NativeException ex);*/ + StringHandle MediaGetMeta (MediaHandle media, MetaType type, + NativeException ex); [DllImport (lib, EntryPoint="libvlc_media_get_state")] public static extern diff --git a/bindings/cil/src/media.cs b/bindings/cil/src/media.cs index 1edf093..a18a936 100644 --- a/bindings/cil/src/media.cs +++ b/bindings/cil/src/media.cs @@ -226,6 +226,25 @@ namespace VideoLAN.LibVLC } /** + * @param type meta data type + * @return the meta data value, or @a null if unknown + */ + public string GetMeta (MetaType type) + { + StringHandle str = LibVLC.MediaGetMeta (Handle, type, ex); + Raise (); + return str.Transform (); + } + + public delegate void MetaChange (Media media, MetaType type); + public event MetaChange MetaChanged; + private void MetaCallback (MediaMetaEvent ev, IntPtr data) + { + if (MetaChanged != null) + MetaChanged (this, ev.metaType); + } + + /** * Current state of the media. */ public State State diff --git a/bindings/cil/tests/testvlc.cs b/bindings/cil/tests/testvlc.cs index 1d4786c..9ea8a31 100644 --- a/bindings/cil/tests/testvlc.cs +++ b/bindings/cil/tests/testvlc.cs @@ -75,6 +75,13 @@ namespace VideoLAN.LibVLC.Test DumpMedia ((Media)media.Clone ()); media.StateChanged += WriteMediaState; + /*foreach (MetaType type in Enum.GetValues (typeof (MetaType))) + { + string meta = media.GetMeta (type); + if (meta != null) + Console.WriteLine (" {0}: {1}", type, meta); + }*/ + player.Play (); do { From git at videolan.org Mon Feb 23 20:13:39 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 20:13:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Move_events_to_a_separate_file_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090223191339.D97CF2FD85@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Mon Feb 23 20:34:04 2009 +0200| [c05739b1259c0f827038880e3f3e4b41f455283e] | committer: R?mi Denis-Courmont Move events to a separate file > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c05739b1259c0f827038880e3f3e4b41f455283e --- bindings/cil/src/Makefile.am | 1 + bindings/cil/src/event.cs | 120 ++++++++++++++++++++++++++++++++++++++++++ bindings/cil/src/libvlc.cs | 54 ------------------- 3 files changed, 121 insertions(+), 54 deletions(-) diff --git a/bindings/cil/src/Makefile.am b/bindings/cil/src/Makefile.am index 280d6d3..8392f3a 100644 --- a/bindings/cil/src/Makefile.am +++ b/bindings/cil/src/Makefile.am @@ -6,6 +6,7 @@ pkglib_SCRIPTS = VideoLAN.LibVLC.dll SOURCES_dll = \ ustring.cs \ exception.cs \ + event.cs \ marshal.cs \ instance.cs \ media.cs \ diff --git a/bindings/cil/src/event.cs b/bindings/cil/src/event.cs new file mode 100644 index 0000000..e549c11 --- /dev/null +++ b/bindings/cil/src/event.cs @@ -0,0 +1,120 @@ +/** + * @file event.cs + * @brief Unmanaged LibVLC events + * @ingroup Internals + */ + +/********************************************************************** + * Copyright (C) 2009 R?mi Denis-Courmont. * + * This program is free software; you can redistribute and/or modify * + * it under the terms of the GNU General Public License as published * + * by the Free Software Foundation; version 2 of the license, or (at * + * your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * + * See the GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, you can get it from: * + * http://www.gnu.org/copyleft/gpl.html * + **********************************************************************/ + +using System; +using System.Runtime.InteropServices; + +namespace VideoLAN.LibVLC +{ + /** + * @ingroup Internals + * @{ + */ + + /** + * @brief EventType: LibVLC event types + */ + internal enum EventType + { + MediaMetaChanged, + MediaSubItemAdded, + MediaDurationChanged, + MediaPreparsedChanged, + MediaFreed, + MediaStateChanged, + + PlayerNothingSpecial, + PlayerOpening, + PlayerBuffering, + PlayerPlaying, + PlayerPaused, + PlayerStopped, + PlayerForward, + PlayerBackward, + PlayerEndReached, + PlayerEncounteredError, + PlayerTimeChanged, + PlayerPositionChanged, + PlayerSeekableChanged, + PlayerPausableChanged, + + ListItemAdded, + ListWillAddItem, + ListItemDeleted, + ListWillDeleteItem, + + ListViewItemAdded, + ListViewWillAddItem, + ListViewItemDeleted, + ListViewWillDeleteItem, + + ListPlayerPlayed, + ListPlayerNextItemSet, + ListPlayerStopped, + + DiscovererStarted, + DiscovererEnded, + + PlayerTitleChanged, + }; + + [StructLayout (LayoutKind.Sequential)] + internal class GenericEvent + { + public EventType type; + public IntPtr obj; + }; + internal delegate void GenericCallback (GenericEvent e, IntPtr d); + + /* Player events */ + [StructLayout (LayoutKind.Sequential)] + internal sealed class PlayerPositionEvent : GenericEvent + { + float position; + }; + + [StructLayout (LayoutKind.Sequential)] + internal sealed class PlayerTimeEvent : GenericEvent + { + long time; + }; + + [StructLayout (LayoutKind.Sequential)] + internal sealed class PlayerTitleEvent : GenericEvent + { + int title; + }; + + [StructLayout (LayoutKind.Sequential)] + internal sealed class PlayerSeekableEvent : GenericEvent + { + long seekable; + }; + + [StructLayout (LayoutKind.Sequential)] + internal sealed class PlayerPausableChangedEvent : GenericEvent + { + long pausable; + }; + /** @} */ +}; \ No newline at end of file diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs index 5e81f84..4cf488e 100644 --- a/bindings/cil/src/libvlc.cs +++ b/bindings/cil/src/libvlc.cs @@ -359,58 +359,4 @@ namespace VideoLAN.LibVLC /* libvlc_event_type_name */ }; - - /** - * @brief EventCallback: LibVLC event handler - * @ingroup Internals - */ - internal delegate void EventCallback (IntPtr ev, IntPtr data); - - /** - * @brief EventType: LibVLC event types - * @ingroup Internals - */ - internal enum EventType - { - MediaMetaChanged, - MediaSubItemAdded, - MediaDurationChanged, - MediaPreparsedChanged, - MediaFreed, - MediaStateChanged, - - PlayerNothingSpecial, - PlayerOpening, - PlayerBuffering, - PlayerPlaying, - PlayerPaused, - PlayerStopped, - PlayerForward, - PlayerBackward, - PlayerEndReached, - PlayerEncounteredError, - PlayerTimeChanged, - PlayerPositionChanged, - PlayerSeekableChanged, - PlayerPausableChanged, - - ListItemAdded, - ListWillAddItem, - ListItemDeleted, - ListWillDeleteItem, - - ListViewItemAdded, - ListViewWillAddItem, - ListViewItemDeleted, - ListViewWillDeleteItem, - - ListPlayerPlayed, - ListPlayerNextItemSet, - ListPlayerStopped, - - DiscovererStarted, - DiscovererEnded, - - PlayerTitleChanged, - }; }; From d3ck0r at gmail.com Mon Feb 23 20:38:43 2009 From: d3ck0r at gmail.com (J Decker) Date: Mon, 23 Feb 2009 11:38:43 -0800 Subject: [vlc-devel] How to repeat a file... Message-ID: <8596d02a0902231138q1e25fbf1u690c2bbb2bcf9247@mail.gmail.com> I'm using libvlc (under windows) to play some videos. I want this video to repeat smoothly... but even the vlc player itself seems to stop, recreate its surface, and re-play. Without loading 2 surfaces and swapping them back and forth, I want to smoothly repeat a single clip. Creating the libvlc instance with "--repeat" and/or "--loop" does not help. Any suggestions? From rem at videolan.org Mon Feb 23 20:57:55 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Mon, 23 Feb 2009 21:57:55 +0200 Subject: [vlc-devel] How to repeat a file... In-Reply-To: <8596d02a0902231138q1e25fbf1u690c2bbb2bcf9247@mail.gmail.com> References: <8596d02a0902231138q1e25fbf1u690c2bbb2bcf9247@mail.gmail.com> Message-ID: <200902232157.56618.rem@videolan.org> Le lundi 23 f?vrier 2009 21:38:43 J Decker, vous avez ?crit?: > I'm using libvlc (under windows) to play some videos. I want this > video to repeat smoothly... but even the vlc player itself seems to > stop, recreate its surface, and re-play. Without loading 2 surfaces > and swapping them back and forth, I want to smoothly repeat a single > clip. > > Any suggestions? Use VLC 1.0.0. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From georg.seifert at gmx.de Mon Feb 23 21:08:47 2009 From: georg.seifert at gmx.de (Georg Seifert) Date: Mon, 23 Feb 2009 21:08:47 +0100 Subject: [vlc-devel] Leopard: setContentBorderThickness In-Reply-To: <25824ACE-E82D-436A-99E3-0A4F9D50A18B@gmx.de> References: <4C30DEFD-EB5F-461C-BA11-1AAA34547B71@gmx.de> <25824ACE-E82D-436A-99E3-0A4F9D50A18B@gmx.de> Message-ID: ANd I keep getting the error for libx264.a. I just did a clean git clone. Georg From git at videolan.org Mon Feb 23 21:48:00 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 21:48:00 +0100 (CET) Subject: [vlc-devel] commit: Hotkeys: configurability of mousewheel action to stop people complaining. ( Jean-Baptiste Kempf ) Message-ID: <20090223204800.B1DB82FD88@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 21:35:36 2009 +0100| [7ac20417252287374fe36df6bed54494656f05a1] | committer: Jean-Baptiste Kempf Hotkeys: configurability of mousewheel action to stop people complaining. 3 options: - Mousewheel x -> volume && y -> position - Mousewheel x -> position && y -> volume - Mousewheel ignored See http://forum.videolan.org/viewtopic.php?f=14&t=49194 and #1864. I think this is not optimal, but it should do it for the VLC 1.0.0-release, after that, we will see with the multiple-hotkeys development... > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7ac20417252287374fe36df6bed54494656f05a1 --- modules/control/hotkeys.c | 51 ++++++++++++++++++++++++++++++-------------- 1 files changed, 35 insertions(+), 16 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 45ff51a..026293a 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -47,6 +47,7 @@ #define VOLUME_WIDGET_CHAN p_intf->p_sys->p_channels[ 1 ] #define POSITION_TEXT_CHAN p_intf->p_sys->p_channels[ 2 ] #define POSITION_WIDGET_CHAN p_intf->p_sys->p_channels[ 3 ] + /***************************************************************************** * intf_sys_t: description and status of FB interface *****************************************************************************/ @@ -61,6 +62,7 @@ struct intf_sys_t vout_thread_t * p_vout; /* pointer to vout object */ vlc_mutex_t lock; /* callback lock */ vlc_cond_t wait; /* callback event */ + int i_mousewheel_mode; }; /***************************************************************************** @@ -83,23 +85,31 @@ static void ClearChannels ( intf_thread_t *, vout_thread_t * ); /***************************************************************************** * Module descriptor *****************************************************************************/ -#define BOOKMARK1_TEXT N_("Playlist bookmark 1") -#define BOOKMARK2_TEXT N_("Playlist bookmark 2") -#define BOOKMARK3_TEXT N_("Playlist bookmark 3") -#define BOOKMARK4_TEXT N_("Playlist bookmark 4") -#define BOOKMARK5_TEXT N_("Playlist bookmark 5") -#define BOOKMARK6_TEXT N_("Playlist bookmark 6") -#define BOOKMARK7_TEXT N_("Playlist bookmark 7") -#define BOOKMARK8_TEXT N_("Playlist bookmark 8") -#define BOOKMARK9_TEXT N_("Playlist bookmark 9") -#define BOOKMARK10_TEXT N_("Playlist bookmark 10") -#define BOOKMARK_LONGTEXT N_("Define playlist bookmarks.") + +enum{ + MOUSEWHEEL_VOLUME, + MOUSEWHEEL_POSITION, + NO_MOUSEWHEEL, +}; + +static const int i_mode_list[] = + { MOUSEWHEEL_VOLUME, MOUSEWHEEL_POSITION, NO_MOUSEWHEEL }; + +static const char *const psz_mode_list_text[] = + { N_("Volume Control"), N_("Position Control"), N_("Ignore") }; vlc_module_begin () set_shortname( N_("Hotkeys") ) set_description( N_("Hotkeys management interface") ) set_capability( "interface", 0 ) set_callbacks( Open, Close ) + + add_integer( "hotkeys-mousewheel-mode", MOUSEWHEEL_VOLUME, NULL, + N_("MouseWheel x-axe Control"), + N_("MouseWheel x-axe can control volume, position or" + "mousewheel event can be ignored"), false ) + change_integer_list( i_mode_list, psz_mode_list_text, NULL ) + vlc_module_end () /***************************************************************************** @@ -119,6 +129,8 @@ static int Open( vlc_object_t *p_this ) p_sys->i_size = 0; vlc_mutex_init( &p_sys->lock ); vlc_cond_init( &p_sys->wait ); + p_intf->p_sys->i_mousewheel_mode = + config_GetInt( p_intf, "hotkeys-mousewheel-mode" ); var_AddCallback( p_intf->p_libvlc, "key-pressed", SpecialKeyEvent, p_intf ); var_AddCallback( p_intf->p_libvlc, "key-action", ActionEvent, p_intf ); @@ -947,23 +959,28 @@ static int SpecialKeyEvent( vlc_object_t *libvlc, char const *psz_var, (void)psz_var; (void)oldval; + int i_mode = p_intf->p_sys->i_mousewheel_mode; + /* Special action for mouse event */ - /* FIXME: This should probably be configurable */ /* FIXME: rework hotkeys handling to allow more than 1 event * to trigger one same action */ switch (newval.i_int & KEY_SPECIAL) { case KEY_MOUSEWHEELUP: - i_action = ACTIONID_VOL_UP; + i_action = (i_mode == MOUSEWHEEL_VOLUME ) ? ACTIONID_VOL_UP + : ACTIONID_JUMP_FORWARD_EXTRASHORT; break; case KEY_MOUSEWHEELDOWN: - i_action = ACTIONID_VOL_DOWN; + i_action = (i_mode == MOUSEWHEEL_VOLUME ) ? ACTIONID_VOL_DOWN + : ACTIONID_JUMP_BACKWARD_EXTRASHORT; break; case KEY_MOUSEWHEELLEFT: - i_action = ACTIONID_JUMP_BACKWARD_EXTRASHORT; + i_action = (i_mode == MOUSEWHEEL_VOLUME ) ? + ACTIONID_JUMP_BACKWARD_EXTRASHORT : ACTIONID_VOL_DOWN; break; case KEY_MOUSEWHEELRIGHT: - i_action = ACTIONID_JUMP_FORWARD_EXTRASHORT; + i_action = (i_mode == MOUSEWHEEL_VOLUME ) ? + ACTIONID_JUMP_FORWARD_EXTRASHORT : ACTIONID_VOL_UP; break; case KEY_MENU: var_SetBool( libvlc, "intf-popupmenu", true ); @@ -972,6 +989,8 @@ static int SpecialKeyEvent( vlc_object_t *libvlc, char const *psz_var, return VLC_SUCCESS; } + if( i_mode == NO_MOUSEWHEEL ) return VLC_SUCCESS; + if( i_action ) return PutAction( p_intf, i_action ); return VLC_SUCCESS; From git at videolan.org Mon Feb 23 21:48:00 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 21:48:00 +0100 (CET) Subject: [vlc-devel] commit: Qt: Add the hotkeys-mousewheel configuration to simple preferences. (Jean-Baptiste Kempf ) Message-ID: <20090223204800.C0E362FDA9@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 21:39:47 2009 +0100| [0f0e2e4db97b945967b204018c88a55bc0665a32] | committer: Jean-Baptiste Kempf Qt: Add the hotkeys-mousewheel configuration to simple preferences. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0f0e2e4db97b945967b204018c88a55bc0665a32 --- modules/gui/qt4/components/preferences_widgets.cpp | 2 +- modules/gui/qt4/components/simple_preferences.cpp | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/components/preferences_widgets.cpp b/modules/gui/qt4/components/preferences_widgets.cpp index 1adcb1c..036ecc9 100644 --- a/modules/gui/qt4/components/preferences_widgets.cpp +++ b/modules/gui/qt4/components/preferences_widgets.cpp @@ -1164,7 +1164,7 @@ KeySelectorControl::KeySelectorControl( vlc_object_t *_p_this, gLayout->addWidget( shortcutValue, 3, 1, 1, 2 ); gLayout->addWidget( setButton, 3, 3, 1, 1 ); - l->addWidget( keyContainer, line, 0, 1, 2 ); + l->addWidget( keyContainer, line, 0, 1, -1 ); CONNECT( clearButton, clicked(), shortcutValue, clear() ); CONNECT( clearButton, clicked(), this, setTheKey() ); diff --git a/modules/gui/qt4/components/simple_preferences.cpp b/modules/gui/qt4/components/simple_preferences.cpp index f8e4a17..9281a64 100644 --- a/modules/gui/qt4/components/simple_preferences.cpp +++ b/modules/gui/qt4/components/simple_preferences.cpp @@ -552,10 +552,15 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, panel->setLayout( gLayout ); int line = 0; + panel_label->setText( qtr( "Configure Hotkeys" ) ); control = new KeySelectorControl( VLC_OBJECT(p_intf), p_config , this, gLayout, line ); + controls.append( control ); - panel_label->setText( qtr( "Configure Hotkeys" ) ); + line++; + p_config = config_FindConfig( VLC_OBJECT(p_intf), "hotkeys-mousewheel-mode" ); + control = new IntegerListConfigControl( VLC_OBJECT(p_intf), + p_config, false, this, gLayout, line ); controls.append( control ); break; From git at videolan.org Mon Feb 23 21:48:00 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 21:48:00 +0100 (CET) Subject: [vlc-devel] commit: Remove one vlc_object_find usage. (Jean-Baptiste Kempf ) Message-ID: <20090223204800.D74992FDC5@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 21:42:25 2009 +0100| [bb2ce27e431e13f1bdf0f51ef1b574ad5ec6e202] | committer: Jean-Baptiste Kempf Remove one vlc_object_find usage. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bb2ce27e431e13f1bdf0f51ef1b574ad5ec6e202 --- modules/control/hotkeys.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 026293a..4f4ca9f 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -192,7 +192,7 @@ static void Run( intf_thread_t *p_intf ) /* Update the vout */ p_last_vout = p_vout; - p_vout = vlc_object_find( p_intf, VLC_OBJECT_VOUT, FIND_ANYWHERE ); + p_vout = input_GetVout( p_input ); /* Register OSD channels */ if( p_vout && p_vout != p_last_vout ) From git at videolan.org Mon Feb 23 21:49:55 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 21:49:55 +0100 (CET) Subject: [vlc-devel] commit: Forgotten ' ' space in longhelp. (Jean-Baptiste Kempf ) Message-ID: <20090223204955.CF8562FDD1@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 21:48:39 2009 +0100| [213731a8dce21d01892eb362f5c08b6e250c3eca] | committer: Jean-Baptiste Kempf Forgotten ' ' space in longhelp. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=213731a8dce21d01892eb362f5c08b6e250c3eca --- modules/control/hotkeys.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 4f4ca9f..476d36d 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -106,7 +106,7 @@ vlc_module_begin () add_integer( "hotkeys-mousewheel-mode", MOUSEWHEEL_VOLUME, NULL, N_("MouseWheel x-axe Control"), - N_("MouseWheel x-axe can control volume, position or" + N_("MouseWheel x-axe can control volume, position or " "mousewheel event can be ignored"), false ) change_integer_list( i_mode_list, psz_mode_list_text, NULL ) From git at videolan.org Mon Feb 23 22:02:42 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 22:02:42 +0100 (CET) Subject: [vlc-devel] commit: axe -> axis (Derk-Jan Hartman ) Message-ID: <20090223210242.7CD092FDDD@skanda.videolan.org> vlc | branch: master | Derk-Jan Hartman | Mon Feb 23 22:01:33 2009 +0100| [c3cf2591de4e1def7e70f2fee6d793a4fd09685f] | committer: Derk-Jan Hartman axe -> axis > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c3cf2591de4e1def7e70f2fee6d793a4fd09685f --- modules/control/hotkeys.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 476d36d..9b2ca8f 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -105,8 +105,8 @@ vlc_module_begin () set_callbacks( Open, Close ) add_integer( "hotkeys-mousewheel-mode", MOUSEWHEEL_VOLUME, NULL, - N_("MouseWheel x-axe Control"), - N_("MouseWheel x-axe can control volume, position or " + N_("MouseWheel x-axis Control"), + N_("MouseWheel x-axis can control volume, position or " "mousewheel event can be ignored"), false ) change_integer_list( i_mode_list, psz_mode_list_text, NULL ) From git at videolan.org Mon Feb 23 22:35:52 2009 From: git at videolan.org (git version control) Date: Mon, 23 Feb 2009 22:35:52 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_ncurses=3A_repare_some_of_the_loc?= =?utf-8?q?king_problem_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090223213552.086532FDEA@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Mon Feb 23 22:21:16 2009 +0100| [f67c6080cbb010127ce982630465f3daa92c06a4] | committer: R?mi Duraffort ncurses: repare some of the locking problem (still a big problem with callbacks that execute an action directly) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f67c6080cbb010127ce982630465f3daa92c06a4 --- modules/gui/ncurses.c | 63 ++++++++++++++++++++++++++++++------------------ 1 files changed, 39 insertions(+), 24 deletions(-) diff --git a/modules/gui/ncurses.c b/modules/gui/ncurses.c index 382fe51..e0e1820 100644 --- a/modules/gui/ncurses.c +++ b/modules/gui/ncurses.c @@ -101,9 +101,8 @@ static void PlaylistAddNode( intf_thread_t *, playlist_item_t *, int, const char static void PlaylistDestroy( intf_thread_t * ); static int PlaylistChanged( vlc_object_t *, const char *, vlc_value_t, vlc_value_t, void * ); -static inline bool PlaylistIsPlaying( intf_thread_t *, - playlist_item_t * ); -static void FindIndex ( intf_thread_t * ); +static inline bool PlaylistIsPlaying( playlist_t *, playlist_item_t * ); +static void FindIndex ( intf_thread_t *, playlist_t * ); static void SearchPlaylist ( intf_thread_t *, char * ); static int SubSearchPlaylist( intf_thread_t *, char *, int, int ); @@ -240,7 +239,6 @@ static int Open( vlc_object_t *p_this ) { intf_thread_t *p_intf = (intf_thread_t *)p_this; intf_sys_t *p_sys; - vlc_value_t val; /* Allocate instance and initialize some members */ p_sys = p_intf->p_sys = malloc( sizeof( intf_sys_t ) ); @@ -405,10 +403,14 @@ static void Run( intf_thread_t *p_intf ) p_sys->b_box_cleared = false; } + PL_LOCK; if( p_sys->b_box_plidx_follow && playlist_CurrentPlayingItem(p_playlist) ) { - FindIndex( p_intf ); + PL_UNLOCK; + FindIndex( p_intf, p_playlist ); } + else + PL_UNLOCK; while( ( i_key = wgetch( p_sys->w ) ) != -1 ) { @@ -619,7 +621,7 @@ static int HandleKey( intf_thread_t *p_intf, int i_key ) /* Playlist navigation */ case 'g': - FindIndex( p_intf ); + FindIndex( p_intf, p_playlist ); break; case KEY_HOME: p_sys->i_box_plidx = 0; @@ -714,9 +716,12 @@ static int HandleKey( intf_thread_t *p_intf, int i_key ) int i_max = p_sys->i_plist_entries; if( p_sys->i_box_plidx >= i_max ) p_sys->i_box_plidx = i_max - 1; if( p_sys->i_box_plidx < 0 ) p_sys->i_box_plidx = 0; - if( PlaylistIsPlaying( p_intf, - p_sys->pp_plist[p_sys->i_box_plidx]->p_item ) ) + + PL_LOCK; + if( PlaylistIsPlaying( p_playlist, + p_sys->pp_plist[p_sys->i_box_plidx]->p_item ) ) b_box_plidx_follow = true; + PL_UNLOCK; p_sys->b_box_plidx_follow = b_box_plidx_follow; ReturnTrue; } @@ -766,9 +771,13 @@ static int HandleKey( intf_thread_t *p_intf, int i_key ) playlist_item_t *p_parent = p_sys->p_node; if( !p_parent ) - p_parent = playlist_CurrentPlayingItem(p_playlist) ? playlist_CurrentPlayingItem(p_playlist)->p_parent : NULL; - if( !p_parent ) - p_parent = p_playlist->p_local_onelevel; + { + PL_LOCK; + p_parent = playlist_CurrentPlayingItem(p_playlist) ? playlist_CurrentPlayingItem(p_playlist)->p_parent : NULL; + PL_UNLOCK; + if( !p_parent ) + p_parent = p_playlist->p_local_onelevel; + } while( p_parent->p_parent && p_parent->p_parent->p_parent ) p_parent = p_parent->p_parent; @@ -2110,7 +2119,7 @@ static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh ) } if( p_sys->b_box_plidx_follow ) { - FindIndex( p_intf ); + FindIndex( p_intf, p_playlist ); } if( p_sys->i_box_plidx < 0 ) p_sys->i_box_plidx = 0; @@ -2147,13 +2156,17 @@ static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh ) playlist_item_t *p_item = p_sys->pp_plist[i_item]->p_item; playlist_item_t *p_node = p_sys->p_node; int c = ' '; + input_thread_t *p_input2 = playlist_CurrentInput( p_playlist ); + + PL_LOCK; if( ( p_node && p_item->p_input == p_node->p_input ) || - ( !p_node && playlist_CurrentInput( p_playlist ) && + ( !p_node && p_input2 && p_item->p_input == playlist_CurrentPlayingItem(p_playlist)->p_input ) ) c = '*'; else if( p_item == p_node || ( p_item != p_node && - PlaylistIsPlaying( p_intf, p_item ) ) ) + PlaylistIsPlaying( p_playlist, p_item ) ) ) c = '>'; + PL_UNLOCK; if( y >= y_end ) break; if( b_selected ) @@ -2318,18 +2331,17 @@ static int PlaylistChanged( vlc_object_t *p_this, const char *psz_variable, } /* Playlist suxx */ -static inline bool PlaylistIsPlaying( intf_thread_t *p_intf, - playlist_item_t *p_item ) +/* This function have to be called with the playlist locked */ +static inline bool PlaylistIsPlaying( playlist_t *p_playlist, + playlist_item_t *p_item ) { - playlist_t *p_playlist = pl_Hold( p_intf ); - playlist_item_t *p_played_item = playlist_CurrentPlayingItem(p_playlist); - vlc_object_release( p_playlist ); + playlist_item_t *p_played_item = playlist_CurrentPlayingItem( p_playlist ); return( p_item != NULL && p_played_item != NULL && p_item->p_input != NULL && p_played_item->p_input != NULL && p_item->p_input->i_id == p_played_item->p_input->i_id ); } -static void FindIndex( intf_thread_t *p_intf ) +static void FindIndex( intf_thread_t *p_intf, playlist_t *p_playlist ) { intf_sys_t *p_sys = p_intf->p_sys; int i; @@ -2337,21 +2349,26 @@ static void FindIndex( intf_thread_t *p_intf ) if( p_sys->i_box_plidx < p_sys->i_plist_entries && p_sys->i_box_plidx >= 0 ) { playlist_item_t *p_item = p_sys->pp_plist[p_sys->i_box_plidx]->p_item; + PL_LOCK; if( ( p_item->i_children == 0 && p_item == p_sys->p_node ) || - PlaylistIsPlaying( p_intf, p_item ) ) + PlaylistIsPlaying( p_playlist, p_item ) ) + { + PL_UNLOCK; return; + } } for( i = 0; i < p_sys->i_plist_entries; i++ ) { playlist_item_t *p_item = p_sys->pp_plist[i]->p_item; if( ( p_item->i_children == 0 && p_item == p_sys->p_node ) || - PlaylistIsPlaying( p_intf, p_sys->pp_plist[i]->p_item ) ) + PlaylistIsPlaying( p_playlist, p_sys->pp_plist[i]->p_item ) ) { p_sys->i_box_plidx = i; break; } } + PL_UNLOCK; } static void PlaylistDestroy( intf_thread_t *p_intf ) @@ -2524,8 +2541,6 @@ static void ReadDir( intf_thread_t *p_intf ) struct stat stat_data; #endif struct dir_entry_t *p_dir_entry; - int i_size_entry = strlen( p_sys->psz_current_dir ) + - strlen( psz_entry ) + 2; char *psz_uri; if( p_sys->b_show_hidden_files == false && From git at videolan.org Tue Feb 24 01:39:31 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 01:39:31 +0100 (CET) Subject: [vlc-devel] commit: build: fix outoftree builds - dont use relative paths for source ( David Flynn ) Message-ID: <20090224003931.E72D72F872@skanda.videolan.org> vlc | branch: master | David Flynn | Thu Feb 19 13:44:06 2009 +0000| [f2ab0091400e0c5d7d8570635a9c5918bb3d629c] | committer: Christophe Mutricy build: fix outoftree builds - dont use relative paths for source - Use \\\${top_srcdir} and \\\${top_builddir} Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f2ab0091400e0c5d7d8570635a9c5918bb3d629c --- configure.ac | 22 +++++++++++----------- 1 files changed, 11 insertions(+), 11 deletions(-) diff --git a/configure.ac b/configure.ac index 867edcf..7bf13d8 100644 --- a/configure.ac +++ b/configure.ac @@ -890,8 +890,8 @@ then MINIZIP_LIBS="-lminizip -lz" ], [ have_minizip=no - MINIZIP_CFLAGS="-I../../../@top_srcdir@//libs/unzip" - MINIZIP_LIBS="../../../libs/unzip/libunzip.la" + MINIZIP_CFLAGS="-I\\\${top_srcdir}/libs/unzip" + MINIZIP_LIBS="\\\${top_builddir}/libs/unzip/libunzip.la" ]) ]) VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) @@ -5472,14 +5472,14 @@ AC_ARG_ENABLE(loader, AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"]) AS_IF([test "${enable_loader}" = "yes"], [ VLC_ADD_PLUGIN([dmo]) - VLC_ADD_CPPFLAGS([dmo],[-I../../../@top_srcdir@/libs/loader]) - VLC_ADD_LIBS([dmo],[../../../libs/loader/libloader.la -lpthread]) - VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/libs/loader]) - VLC_ADD_LIBS([quicktime],[../../libs/loader/libloader.la -lpthread]) - VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/libs/loader -DLOADER]) - VLC_ADD_LIBS([realaudio],[../../libs/loader/libloader.la]) - VLC_ADD_CPPFLAGS([realvideo],[-I../../@top_srcdir@/libs/loader -DLOADER]) - VLC_ADD_LIBS([realvideo],[../../libs/loader/libloader.la]) + VLC_ADD_CPPFLAGS([dmo],[-I\\\${top_srcdir}/libs/loader]) + VLC_ADD_LIBS([dmo],[\\\${top_builddir}/libs/loader/libloader.la -lpthread]) + VLC_ADD_CPPFLAGS([quicktime],[-I\\\${top_srcdir}/libs/loader]) + VLC_ADD_LIBS([quicktime],[\\\${top_builddir}/libs/loader/libloader.la -lpthread]) + VLC_ADD_CPPFLAGS([realaudio],[-I\\\${top_srcdir}/libs/loader -DLOADER]) + VLC_ADD_LIBS([realaudio],[\\\${top_builddir}/libs/loader/libloader.la]) + VLC_ADD_CPPFLAGS([realvideo],[-I\\\${top_srcdir}/libs/loader -DLOADER]) + VLC_ADD_LIBS([realvideo],[\\\${top_builddir}/libs/loader/libloader.la]) ]) AC_ARG_WITH(,[Components:]) @@ -5852,7 +5852,7 @@ AC_SUBST(VERSION_EXTRA_RC) dnl dnl Handle substvars that use $(top_srcdir) dnl -VLC_CONFIG="top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config" +VLC_CONFIG="top_srcdir=\"\$(top_srcdir)\" top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config" AC_SUBST(VLC_CONFIG) CPPFLAGS_save="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS_save}" From git at videolan.org Tue Feb 24 01:39:31 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 01:39:31 +0100 (CET) Subject: [vlc-devel] commit: Changelogs: we are in 2009 (Christophe Mutricy ) Message-ID: <20090224003932.0378F2FD8A@skanda.videolan.org> vlc | branch: master | Christophe Mutricy | Tue Feb 24 00:30:13 2009 +0000| [df01ece21fbff81a29fe14fa4627243b69df0577] | committer: Christophe Mutricy Changelogs: we are in 2009 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=df01ece21fbff81a29fe14fa4627243b69df0577 --- Makefile.am | 2 +- doc/Makefile.am | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Makefile.am b/Makefile.am index f8ca27f..c2f09b5 100644 --- a/Makefile.am +++ b/Makefile.am @@ -86,7 +86,7 @@ AUTOMAKE_OPTIONS = \ ChangeLog: Makefile.am rm -f -- "$@" cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs - ln -sf doc/ChangeLog-2008 "$@" + ln -sf doc/ChangeLog-2009 "$@" ############################################################################### # MacOS X project diff --git a/doc/Makefile.am b/doc/Makefile.am index 676dbb2..3f69c3b 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -18,6 +18,7 @@ CHANGELOGS = \ ChangeLog-2006 \ ChangeLog-2007 \ ChangeLog-2008 \ + ChangeLog-2009 \ $(NULL) man1_MANS = \ @@ -68,7 +69,7 @@ $(CHANGELOGS): Makefile.am fi # This one needs to be rebuilt all the time :) -.PHONY: ChangeLog-2008 changelogs doc +.PHONY: ChangeLog-2009 changelogs doc changelogs: $(CHANGELOGS) From git at videolan.org Tue Feb 24 08:28:39 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 08:28:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_notify=3A_use_asprintf_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090224072839.1E9852F7A4@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Tue Feb 24 08:24:36 2009 +0100| [2724ab87118a259287d564a7c51c92f9601ae58c] | committer: R?mi Duraffort notify: use asprintf > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2724ab87118a259287d564a7c51c92f9601ae58c --- modules/misc/notify/notify.c | 15 ++++++++------- 1 files changed, 8 insertions(+), 7 deletions(-) diff --git a/modules/misc/notify/notify.c b/modules/misc/notify/notify.c index 7345744..dbe933a 100644 --- a/modules/misc/notify/notify.c +++ b/modules/misc/notify/notify.c @@ -1,7 +1,7 @@ /***************************************************************************** * notify.c : libnotify notification plugin ***************************************************************************** - * Copyright (C) 2006-2007 the VideoLAN team + * Copyright (C) 2006-2009 the VideoLAN team * $Id$ * * Authors: Christophe Mutricy @@ -70,7 +70,7 @@ vlc_module_begin () set_shortname( N_( "Notify" ) ) set_description( N_("LibNotify Notification Plugin") ) - add_integer( "notify-timeout", 4000,NULL, + add_integer( "notify-timeout", 4000, NULL, TIMEOUT_TEXT, TIMEOUT_LONGTEXT, true ) set_capability( "interface", 0 ) @@ -215,11 +215,12 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, } else /* else we show state-of-the art logo */ { - const char *data_path = config_GetDataDir (); - char buf[strlen (data_path) + sizeof ("/vlc48x48.png")]; - - snprintf (buf, sizeof (buf), "%s/vlc48x48.png", data_path); - pix = gdk_pixbuf_new_from_file( buf, &p_error ); + char *psz_pixbuf; + if( asprintf( &psz_pixbuf, "%s/vlc48x48.png", config_GetDataDir() ) >= 0 ) + { + pix = gdk_pixbuf_new_from_file( psz_pixbuf, &p_error ); + free( psz_pixbuf ); + } } /* we need to replace '&' with '&' because '&' is a keyword of From git at videolan.org Tue Feb 24 08:28:39 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 08:28:39 +0100 (CET) Subject: [vlc-devel] commit: Fix inexistant argument (Pierre Ynard ) Message-ID: <20090224072839.2E92A2F897@skanda.videolan.org> vlc | branch: master | Pierre Ynard | Mon Feb 23 12:06:11 2009 +0100| [36ed9b07993314c3bc04cd6ab4076b4a7b8a2176] | committer: R?mi Duraffort Fix inexistant argument Signed-off-by: R?mi Duraffort > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=36ed9b07993314c3bc04cd6ab4076b4a7b8a2176 --- src/missing.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/missing.c b/src/missing.c index 9b41d23..3e678cf 100644 --- a/src/missing.c +++ b/src/missing.c @@ -81,7 +81,7 @@ httpd_handler_t *httpd_HandlerNew (httpd_host_t *host, const char *url, httpd_handler_callback_t cb, httpd_handler_sys_t *data) { - (void) host; (void) url; (void) content_type; + (void) host; (void) url; (void) login; (void) password; (void) acl; (void) cb; (void) data; assert (0); From ivoire at via.ecp.fr Tue Feb 24 08:31:30 2009 From: ivoire at via.ecp.fr (=?iso-8859-1?Q?R=E9mi?= Duraffort) Date: Tue, 24 Feb 2009 08:31:30 +0100 Subject: [vlc-devel] [PATCH] Fix inexistant argument In-Reply-To: <20090223110611.GA23742@via.ecp.fr> References: <20090223110611.GA23742@via.ecp.fr> Message-ID: <20090224073130.GA12755@via.ecp.fr> Applied thanks. -- ivoire | R?mi Duraffort From xxcv07 at gmail.com Tue Feb 24 09:21:22 2009 From: xxcv07 at gmail.com (xxcv) Date: Tue, 24 Feb 2009 19:21:22 +1100 Subject: [vlc-devel] [PATCH] realvideo bug fix and document In-Reply-To: <20090211011344.GB17667@videolan.org> References: <1233727120-5510-1-git-send-email-silencewang@msn.com> <20090205193138.GA21011@via.ecp.fr> <20090211011344.GB17667@videolan.org> Message-ID: <49A3AE02.2020204@gmail.com> Jean-Baptiste Kempf wrote: > Wang, any updates? > > On Thu, Feb 05, 2009 at 08:31:38PM +0100, Laurent Aimar wrote : > >> Hi, >> >> It seems to me that your patch should be splitted in two: >> 1. Correction to make the plugin work after the demuxer changes >> 2. The dll/so path changes. >> >> I would prefer it as it is easier to review/comments and then eases >> regression searches. >> >> (Some of the following comments apply to the code that you may not have >> been responsible for.) >> >> >>> diff --git a/modules/codec/realvideo.c b/modules/codec/realvideo.c >>> index 6e5c512..92e9da1 100644 >>> --- a/modules/codec/realvideo.c >>> +++ b/modules/codec/realvideo.c >>> @@ -31,6 +31,8 @@ >>> #include >>> #include >>> >>> +#include >>> + >>> #ifdef LOADER >>> /* Need the w32dll loader from mplayer */ >>> # include >>> @@ -89,9 +91,9 @@ struct rv_init_t >>> short h; >>> short unk3; >>> int unk2; >>> - unsigned int * subformat; >>> + int subformat; >>> int unk5; >>> - unsigned int * format; >>> + int format; >>> } rv_init_t; >>> >>> struct decoder_sys_t >>> @@ -241,19 +243,85 @@ static int InitVideo(decoder_t *p_dec) >>> init_data.h = p_dec->fmt_in.video.i_height ; >>> init_data.unk3 = 0; >>> init_data.unk2 = 0; >>> - init_data.subformat = (unsigned int*)p_vide[0]; >>> + init_data.subformat = ntohl( p_vide[0] ); >>> init_data.unk5 = 1; >>> - init_data.format = (unsigned int*)p_vide[1]; >>> + init_data.format = ntohl( p_vide[1]); >>> >> Using GetDWBE would be better and would avoid vlc_network.h inclusion. >> You have to use it directky on p_dec->fmt_in.p_extra and compute yourself the >> offset (it would also remove the implicit ugly unsigned int * cast). >> >> >>> /* first try to load linux dlls, if failed and we're supporting win32 dlls, >>> then try to load the windows ones */ >>> - bool b_so_opened = false; >>> + >>> + p_sys->rv_handle = NULL; >>> >>> #ifdef WIN32 >>> - g_decode_path="plugins\\drv43260.dll"; >>> >>> - if( (p_sys->rv_handle = load_syms(p_dec, g_decode_path)) ) >>> - b_so_opened = true; >>> + const char psz_paths[MAX_PATH*3] ; >>> >> The const should be removed as you modify it. >> Now using an array would be really better, like >> char ppsz_path[3][MAX_PATH+1] >> as it would simplify a lot the code. >> >> >>> + { >>> + HKEY h_key; >>> + DWORD i_type, i_data = MAX_PATH + 1; >>> >>> + char psz_codecs[MAX_PATH+1]; >>> + char * p_data ; >>> + char * p_end = psz_paths; >>> >> With char ppsz_path[3][MAX_PATH+1] they can be removed I think. >> >>> + >>> + p_data = psz_codecs; >>> + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, >>> + _T("Software\\RealNetworks\\Preferences\\DT_Codecs"), >>> + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) >>> + { >>> + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, >>> + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS >>> + && i_type == REG_SZ ) >>> + { >>> + int i_len = strlen( p_data ); >>> + if ( i_len && p_data[i_len-1] == '\\' ) >>> + p_data[i_len - 1] = '\0'; >>> + memcpy( p_end, p_data, strlen( p_data) + 1 ); >>> + p_end += strlen( p_data ) + 1; >>> + } >>> + RegCloseKey( h_key ); >>> + } >>> + >>> + p_data = psz_codecs; >>> + if ( RegOpenKeyEx( HKEY_CLASSES_ROOT, >>> + _T("Helix\\HelixSDK\\10.0\\Preferences\\DT_Codecs"), >>> + 0, KEY_READ, &h_key ) == ERROR_SUCCESS ) >>> + { >>> + if ( RegQueryValueEx( h_key, _T(""), 0, &i_type, >>> + (LPBYTE) p_data, &i_data ) == ERROR_SUCCESS >>> + && i_type == REG_SZ ) >>> + { >>> + int i_len = strlen( p_data ); >>> + if ( i_len && p_data[i_len-1] == '\\' ) >>> + p_data[i_len - 1] = '\0'; >>> + memcpy( p_end, p_data, strlen( p_data) + 1 ); >>> + p_end += strlen( p_data ) + 1; >>> + } >>> + RegCloseKey( h_key ); >>> + } >>> + >>> + memcpy( p_end, ".\0codecs\0plugins\0\0\0", 20 ); >>> + } >>> + >>> + for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) >>> + { >>> + if( asprintf( &g_decode_path, "%s/drv4.dll", psz_paths + i ) != -1 ) >>> + { >>> + p_sys->rv_handle = load_syms(p_dec, g_decode_path); >>> + free( g_decode_path ); >>> + } >>> + if( p_sys->rv_handle ) >>> + break; >>> + >>> + if( asprintf( &g_decode_path, "%s/drv43260.dll", psz_paths + i ) != -1 ) >>> + { >>> + p_sys->rv_handle = load_syms(p_dec, g_decode_path); >>> + free( g_decode_path ); >>> + } >>> + if( p_sys->rv_handle ) >>> + break; >>> + >>> + /*msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path);*/ >>> + } >>> #else >>> static const char psz_paths[] = >>> { >>> @@ -272,7 +340,10 @@ static int InitVideo(decoder_t *p_dec) >>> "/usr/lib64/RealPlayer10/codecs\0" >>> "/usr/lib64/RealPlayer10GOLD/codecs\0" >>> "/usr/local/lib/codecs\0" >>> - "\0" >>> + ".\0" >>> + "codecs\0" >>> + "plugins\0" >>> + "\0\0" >>> }; >>> >> Same here (array). >> >>> >>> for( size_t i = 0; psz_paths[i]; i += strlen( psz_paths + i ) + 1 ) >>> @@ -283,10 +354,7 @@ static int InitVideo(decoder_t *p_dec) >>> free( g_decode_path ); >>> } >>> if( p_sys->rv_handle ) >>> - { >>> - b_so_opened = true; >>> break; >>> - } >>> >>> if( asprintf( &g_decode_path, "%s/drv3.so.6.0", psz_paths + i ) != -1 ) >>> { >>> @@ -294,16 +362,13 @@ static int InitVideo(decoder_t *p_dec) >>> free( g_decode_path ); >>> } >>> if( p_sys->rv_handle ) >>> - { >>> - b_so_opened = true; >>> break; >>> - } >>> >>> - msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path); >>> + /*msg_Dbg( p_dec, "Cannot load real decoder library: %s", g_decode_path);*/ >>> } >>> #endif >>> >>> - if(!b_so_opened ) >>> + if( p_sys->rv_handle == NULL ) >>> { >>> msg_Err( p_dec, "Cannot any real decoder library" ); >>> free( p_sys ); >>> @@ -321,24 +386,27 @@ static int InitVideo(decoder_t *p_dec) >>> result=(*rvyuv_init)(&init_data, &p_sys->handle); >>> if (result) >>> { >>> - msg_Err( p_dec, "Cannot Init real decoder library: %s", g_decode_path); >>> + msg_Err( p_dec, "Cannot Init real decoder, error code: %X", result ); >>> free( p_sys ); >>> return VLC_EGENERIC; >>> } >>> >>> + msg_Dbg( p_dec, "codec id: 0x%8X subid: 0x%8X\n", ntohl(p_vide[1]), ntohl(p_vide[0]) ); >>> + >>> /* setup rv30 codec (codec sub-type and image dimensions): */ >>> /*if ( p_dec->fmt_in.i_codec == VLC_FOURCC('R','V','3','0') )*/ >>> - if (p_vide[1]>=0x20200002) >>> + if ( ntohl( p_vide[1])>=0x20200002) >>> >> Why not storing the ntohl( p_vide[1]) (same with p_vide[0]) values in a local variables ? >> >> >>> { >>> - int i, cmsg_cnt; >>> + int cmsg_cnt; >>> + unsigned char * p_extrahdr = (unsigned char *) p_vide ; >>> >> uint8_t >> >> >>> uint32_t cmsg24[16]={p_dec->fmt_in.video.i_width,p_dec->fmt_in.video.i_height}; >>> - cmsg_data_t cmsg_data={0x24,1+(p_vide[1]&7), &cmsg24[0]}; >>> - cmsg_cnt = (p_vide[1]&7)*2; >>> + cmsg_data_t cmsg_data={0x24,1+(p_extrahdr[1]&7), &cmsg24[0]}; >>> + cmsg_cnt = (p_extrahdr[1]&7)*2; >>> if (i_vide - 8 < cmsg_cnt) { >>> cmsg_cnt = i_vide - 8; >>> } >>> - for (i = 0; i < cmsg_cnt; i++) >>> - cmsg24[2+i] = p_vide[8+i]*4; >>> + for (int i = 0; i < cmsg_cnt; i++) >>> + cmsg24[2+i] = p_extrahdr[8+i]*4; >>> #ifdef WIN32 >>> if (dll_type == 1) >>> (*wrvyuv_custom_message)(&cmsg_data,p_sys->handle); >>> @@ -349,7 +417,7 @@ static int InitVideo(decoder_t *p_dec) >>> /* >>> es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','V','1','2' )); >>> es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','U','Y','2' )); >>> - */ >>> + */ >>> es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'I', '4', '2', '0')); >>> >>> p_dec->fmt_out.video.i_width = p_dec->fmt_in.video.i_width; >>> @@ -467,25 +535,20 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) >>> if ( p_pic ) >>> { >>> unsigned int transform_out[5]; >>> - dp_hdr_t dp_hdr; >>> transform_in_t transform_in; >>> - uint32_t pkg_len = ((uint32_t*)p_block->p_buffer)[0]; >>> - unsigned char* dp_data=((unsigned char*)p_block->p_buffer)+8; >>> - uint32_t* extra=(uint32_t*)(((char*)p_block->p_buffer)+8+pkg_len); >>> - uint32_t img_size; >>> - >>> >>> - dp_hdr.len = pkg_len; >>> - dp_hdr.chunktab = 8 + pkg_len; >>> - dp_hdr.chunks = ((uint32_t*)p_block->p_buffer)[1]-1; >>> - dp_hdr.timestamp = i_pts; >>> + uint8_t i_chunks = p_block->p_buffer[0]; >>> + uint32_t pkg_len = p_block->i_buffer - 2*4*(i_chunks + 1) - 1; >>> >> i_ prefix. >> >> >>> + unsigned char* dp_data=p_block->p_buffer + 2*4*(i_chunks+1) + 1; >>> >> uint8_t >> >> >>> + uint32_t* extra=(uint32_t*)(p_block->p_buffer + 1); >>> >> pi_ prefix. >> >>> + uint32_t img_size; >>> >>> memset(&transform_in, 0, sizeof(transform_in_t)); >>> >>> - transform_in.len = dp_hdr.len; >>> + transform_in.len = pkg_len; >>> transform_in.extra = extra; >>> >> You can simply avoid the need of a local extra variable. >> >> >>> - transform_in.chunks = dp_hdr.chunks; >>> - transform_in.timestamp = dp_hdr.timestamp; >>> + transform_in.chunks = i_chunks; >>> + transform_in.timestamp = i_pts; >>> >>> memset (p_sys->plane, 0, p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height *3/2 ); >>> >>> @@ -496,17 +559,7 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) >>> #endif >>> result=(*rvyuv_transform)(dp_data, p_sys->plane, &transform_in, transform_out, p_sys->handle); >>> >>> - /* msg_Warn(p_dec, "Real Size %d X %d", transform_out[3], >>> - transform_out[4]); */ >>> - /* some bug rm file will print the messages : >>> - [00000551] realvideo decoder warning: Real Size 320 X 240 >>> - [00000551] realvideo decoder warning: Real Size 480 X 272 >>> - [00000551] realvideo decoder warning: Real Size 320 X 240 >>> - [00000551] realvideo decoder warning: Real Size 320 X 240 >>> - ... >>> - so it needs fixing! >>> - */ >>> - if ( p_sys->inited == 0 ) >>> + if ( result == 0 && p_sys->inited == 0 ) >>> { >>> /* fix and get the correct image size! */ >>> if ( p_dec->fmt_in.video.i_width != transform_out[3] >>> @@ -540,16 +593,19 @@ static picture_t *DecodeVideo( decoder_t *p_dec, block_t **pp_block ) >>> p_sys->inited = 1; >>> } >>> >>> - img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; >>> - memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); >>> - memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); >>> - memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); >>> - p_pic->date = i_pts ; >>> + if ( result == 0 ) >>> + { >>> + img_size = p_dec->fmt_in.video.i_width * p_dec->fmt_in.video.i_height; >>> + memcpy( p_pic->p[0].p_pixels, p_sys->plane, img_size); >>> + memcpy( p_pic->p[1].p_pixels, p_sys->plane + img_size, img_size/4); >>> + memcpy( p_pic->p[2].p_pixels, p_sys->plane + img_size * 5/4, img_size/4); >>> + p_pic->date = i_pts ; >>> >> Using vlc_memcpy here would probably be faster. >> >> >>> >>> /* real video frame is small( frame and frame's time-shift is short), >>> so it will become late picture easier (when render-time changed)and >>> droped by video-output.*/ >>> - p_pic->b_force = 1; >>> + p_pic->b_force = 1; >>> >> Using true is prefered. >> >>> + } >>> } >>> >>> vlc_mutex_unlock( &rm_mutex ); >>> >> Regards, >> >> -- >> fenrir >> >> _______________________________________________ >> vlc-devel mailing list >> To unsubscribe or modify your subscription options: >> http://mailman.videolan.org/listinfo/vlc-devel >> > > Someone hurry up and commit this code already ... what's the wait about ??? -------------- next part -------------- An HTML attachment was scrubbed... URL: From jb at videolan.org Tue Feb 24 09:38:53 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 24 Feb 2009 09:38:53 +0100 Subject: [vlc-devel] [PATCH] realvideo bug fix and document In-Reply-To: <49A3AE02.2020204@gmail.com> References: <1233727120-5510-1-git-send-email-silencewang@msn.com> <20090205193138.GA21011@via.ecp.fr> <20090211011344.GB17667@videolan.org> <49A3AE02.2020204@gmail.com> Message-ID: <20090224083853.GA20271@videolan.org> On Tue, Feb 24, 2009 at 07:21:22PM +1100, xxcv wrote : > >>It seems to me that your patch should be splitted in two: > >>1. Correction to make the plugin work after the demuxer changes > >>2. The dll/so path changes. > Someone hurry up and commit this code already ... what's the wait about ??? Well, the compliance to the request of patch-splitting wasn't done. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From sebastien-devel at celeos.eu Tue Feb 24 10:19:24 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Tue, 24 Feb 2009 10:19:24 +0100 Subject: [vlc-devel] [PATCH] add events to VLM Message-ID: <1235467164.49a3bb9cb4e51@imp.celeos.eu> Hi A while ago, I asked how I could add events to vlm medias and Pierre gave me some advices : http://mailman.videolan.org/pipermail/vlc-devel/2008-June/044751.html I finally did it, here are the patches. It sends libvlc events when a media is started or stopped. Regards. -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Put-a-libvlc-event-manager-in-VLM.patch Type: text/x-diff Size: 10618 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-Put-a-vlc-event-manager-in-VLM-medias.patch Type: text/x-diff Size: 3758 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0003-Handle-vlm-medias-event-in-libvlc.patch Type: text/x-diff Size: 6445 bytes Desc: not available URL: From git at videolan.org Tue Feb 24 11:18:43 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 11:18:43 +0100 (CET) Subject: [vlc-devel] commit: Qt, prefs, global hotkeys configuration, step 1. ( Jean-Baptiste Kempf ) Message-ID: <20090224101843.20D3C2F9CA@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Mon Feb 23 22:15:44 2009 +0100| [b7923c3eaff47badd6272b126d267ea14fa13320] | committer: Jean-Baptiste Kempf Qt, prefs, global hotkeys configuration, step 1. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b7923c3eaff47badd6272b126d267ea14fa13320 --- modules/gui/qt4/components/preferences_widgets.cpp | 22 +++++++++++++++++-- 1 files changed, 19 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/components/preferences_widgets.cpp b/modules/gui/qt4/components/preferences_widgets.cpp index 036ecc9..6c49762 100644 --- a/modules/gui/qt4/components/preferences_widgets.cpp +++ b/modules/gui/qt4/components/preferences_widgets.cpp @@ -1143,9 +1143,11 @@ KeySelectorControl::KeySelectorControl( vlc_object_t *_p_this, QLineEdit *actionSearch = new QLineEdit;*/ table = new QTreeWidget; - table->setColumnCount(2); + table->setColumnCount(3); table->headerItem()->setText( 0, qtr( "Action" ) ); table->headerItem()->setText( 1, qtr( "Shortcut" ) ); + table->headerItem()->setText( 2, qtr( "Global" ) ); + table->setAlternatingRowColors( true ); shortcutValue = new KeyShortcutEdit; shortcutValue->setReadOnly(true); @@ -1177,8 +1179,6 @@ void KeySelectorControl::finish() label->setToolTip( formatTooltip( qtr( p_item->psz_longtext ) ) ); /* Fill the table */ - table->setColumnCount( 2 ); - table->setAlternatingRowColors( true ); /* Get the main Module */ module_t *p_main = module_get_main(); @@ -1197,6 +1197,7 @@ void KeySelectorControl::finish() /* If we are a key option not empty */ if( p_item->i_type & CONFIG_ITEM && p_item->psz_name && strstr( p_item->psz_name , "key-" ) + && !strstr( p_item->psz_name , "global-key" ) && !EMPTY_STR( p_item->psz_text ) ) { /* @@ -1213,6 +1214,21 @@ void KeySelectorControl::finish() treeItem->setText( 1, VLCKeyToString( p_item->value.i ) ); treeItem->setData( 1, Qt::UserRole, QVariant( p_item->value.i ) ); table->addTopLevelItem( treeItem ); + continue; + } + + if( p_item->i_type & CONFIG_ITEM && p_item->psz_name + && strstr( p_item->psz_name , "global-key" ) + && !EMPTY_STR( p_item->psz_text ) ) + { + QList list = + table->findItems( qtr( p_item->psz_text ), Qt::MatchExactly ); + if( list.count() > 1 ) + { + list[0]->setText( 2, VLCKeyToString( p_item->value.i ) ); + list[0]->setData( 2, Qt::UserRole, + QVariant( p_item->value.i ) ); + } } } module_config_free (p_config); From git at videolan.org Tue Feb 24 11:18:43 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 11:18:43 +0100 (CET) Subject: [vlc-devel] commit: Qt: Reset the Open List on acceptance (Jean-Baptiste Kempf ) Message-ID: <20090224101843.2F9CF2FDB4@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Tue Feb 24 11:14:44 2009 +0100| [c3eb103253eb95f152f38a4a0601f7ac9081707e] | committer: Jean-Baptiste Kempf Qt: Reset the Open List on acceptance > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c3eb103253eb95f152f38a4a0601f7ac9081707e --- modules/gui/qt4/components/open_panels.cpp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/components/open_panels.cpp b/modules/gui/qt4/components/open_panels.cpp index 2b6f73e..f73ac4c 100644 --- a/modules/gui/qt4/components/open_panels.cpp +++ b/modules/gui/qt4/components/open_panels.cpp @@ -210,6 +210,7 @@ void FileOpenPanel::accept() { //FIXME // p_intf->p_sys->psz_filepath = qtu( dialogBox->directory().absolutePath() ); + ui.fileListWidg->clear(); } /* Function called by Open Dialog when clicked on cancel */ From git at videolan.org Tue Feb 24 11:18:43 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 11:18:43 +0100 (CET) Subject: [vlc-devel] commit: Qt: add a new 'lock' icon. (Jean-Baptiste Kempf ) Message-ID: <20090224101843.3EB9C2FDD0@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Tue Feb 24 11:15:14 2009 +0100| [10f1c32dbd8552e3cfe824aae2b861871252a09d] | committer: Jean-Baptiste Kempf Qt: add a new 'lock' icon. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=10f1c32dbd8552e3cfe824aae2b861871252a09d --- modules/gui/qt4/Modules.am | 3 ++- modules/gui/qt4/pixmaps/lock.png | Bin 0 -> 396 bytes modules/gui/qt4/vlc.qrc | 1 + 3 files changed, 3 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/Modules.am b/modules/gui/qt4/Modules.am index 7835630..ba008fe 100644 --- a/modules/gui/qt4/Modules.am +++ b/modules/gui/qt4/Modules.am @@ -166,7 +166,8 @@ DEPS_res = \ pixmaps/types/type_node.png \ pixmaps/types/type_playlist.png \ pixmaps/types/type_unknown.xpm \ - pixmaps/update.png + pixmaps/update.png \ + pixmaps/lock.png BUILT_SOURCES += $(nodist_SOURCES_qt4) diff --git a/modules/gui/qt4/pixmaps/lock.png b/modules/gui/qt4/pixmaps/lock.png new file mode 100644 index 0000000..9b9bbc8 Binary files /dev/null and b/modules/gui/qt4/pixmaps/lock.png differ diff --git a/modules/gui/qt4/vlc.qrc b/modules/gui/qt4/vlc.qrc index 9a3c2e3..0e5aef3 100644 --- a/modules/gui/qt4/vlc.qrc +++ b/modules/gui/qt4/vlc.qrc @@ -90,5 +90,6 @@ pixmaps/space.png pixmaps/go-next.png pixmaps/profile_new.png + pixmaps/lock.png From git at videolan.org Tue Feb 24 11:18:43 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 11:18:43 +0100 (CET) Subject: [vlc-devel] commit: Merge branch 'master' of git@git.videolan.org:vlc ( Jean-Baptiste Kempf ) Message-ID: <20090224101843.5A3862FDD1@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Tue Feb 24 11:15:50 2009 +0100| [4362a469b5203cc57a17d4acb9354e8d03925478] | committer: Jean-Baptiste Kempf Merge branch 'master' of git at git.videolan.org:vlc > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4362a469b5203cc57a17d4acb9354e8d03925478 --- From git at videolan.org Tue Feb 24 11:19:50 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 11:19:50 +0100 (CET) Subject: [vlc-devel] commit: Qt: use the new lock icon. (Jean-Baptiste Kempf ) Message-ID: <20090224101950.B0B5A2FDB4@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Tue Feb 24 11:18:43 2009 +0100| [4edd7a90d72802e126c4e6429081541debf2a351] | committer: Jean-Baptiste Kempf Qt: use the new lock icon. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4edd7a90d72802e126c4e6429081541debf2a351 --- modules/gui/qt4/main_interface.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index bd24163..f1d490e 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -359,7 +359,7 @@ void MainInterface::showCryptedLabel( bool ) if( cryptedLabel == NULL ) { cryptedLabel = new QLabel; - cryptedLabel->setPixmap( QPixmap( ":/eject" ) ); + cryptedLabel->setPixmap( QPixmap( ":/lock" ) ); statusBar()->addWidget( cryptedLabel ); } From xxcv07 at gmail.com Tue Feb 24 11:49:47 2009 From: xxcv07 at gmail.com (xxcv) Date: Tue, 24 Feb 2009 21:49:47 +1100 Subject: [vlc-devel] commit: Qt reverse for trickplay: show the button by default, and show it only when trickplay is possible. (Jean-Baptiste Kempf ) In-Reply-To: <20090221104903.6C1002FB19@skanda.videolan.org> References: <20090221104903.6C1002FB19@skanda.videolan.org> Message-ID: <49A3D0CB.6090705@gmail.com> git version control wrote: > vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 21 11:46:09 2009 +0100| [e6072d0d9ce86621feadde64471f749671f15b8b] | committer: Jean-Baptiste Kempf > > Qt reverse for trickplay: show the button by default, and show it only when trickplay is possible. > > It is based on the "can-rewind" variable. This may be wrong, if so, tell me so and I'll revert this. > > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e6072d0d9ce86621feadde64471f749671f15b8b >> > --- > > modules/gui/qt4/components/controller.cpp | 5 ++++- > modules/gui/qt4/components/controller.hpp | 3 ++- > 2 files changed, 6 insertions(+), 2 deletions(-) > > diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp > index 3cb2d23..e1aaad1 100644 > --- a/modules/gui/qt4/components/controller.cpp > +++ b/modules/gui/qt4/components/controller.cpp > @@ -79,6 +79,9 @@ void AbstractController::setStatus( int status ) > > emit inputIsRecordable( b_hasInput && > var_GetBool( THEMIM->getInput(), "can-record" ) ); > + > + emit inputIsTrickPlayable( b_hasInput && > + var_GetBool( THEMIM->getInput(), "can-rewind" ) ); > } > > /* Generic button setup */ > @@ -383,7 +386,7 @@ QWidget *AbstractController::createWidget( buttonType_e button, int options ) > reverseButton->setCheckable( true ); > /* You should, of COURSE change this to the correct event, > when/if we have one, that tells us if trickplay is possible . */ > - CONNECT( this, inputExists( bool ), reverseButton, setVisible( bool ) ); > + CONNECT( this, inputIsTrickPlayable( bool ), reverseButton, setVisible( bool ) ); > reverseButton->setVisible( false ); > widget = reverseButton; > } > diff --git a/modules/gui/qt4/components/controller.hpp b/modules/gui/qt4/components/controller.hpp > index 43ae9be..4a6b73e 100644 > --- a/modules/gui/qt4/components/controller.hpp > +++ b/modules/gui/qt4/components/controller.hpp > @@ -38,7 +38,7 @@ > #define MAIN_TB1_DEFAULT "64;39;64;38;65" > #define MAIN_TB2_DEFAULT "0-2;64;3;1;4;64;7;10;9;64-4;37;65;35-4" > #define ADV_TB_DEFAULT "12;11;13;14" > -#define INPT_TB_DEFAULT "5-1;33;6-1" > +#define INPT_TB_DEFAULT "5-1;15-1;33;6-1" > #define FSC_TB_DEFAULT "0-2;64;3;1;4;64;37;64;38;64;8;65;35-4;34" > > > @@ -162,6 +162,7 @@ signals: > void inputExists( bool ); /// This might be usefull in the IM ? > void inputPlaying( bool ); /// This might be usefull in the IM ? > void inputIsRecordable( bool ); /// same ? > + void inputIsTrickPlayable( bool ); /// same ? > }; > > /* Advanced Button Bar */ > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > > Yesterday I tried it by adding reverse play into the interface and FSC but it always got added to behind the volume and it doesn't show up at all. -------------- next part -------------- An HTML attachment was scrubbed... URL: From linkfanel at yahoo.fr Tue Feb 24 12:08:18 2009 From: linkfanel at yahoo.fr (Pierre Ynard) Date: Tue, 24 Feb 2009 12:08:18 +0100 Subject: [vlc-devel] [RFC] Wrapper to work around %z limitation on Windows Message-ID: <20090224110818.GA8232@via.ecp.fr> This patch works around unsupported %z modifiers, by using a wrapper that patches the format string on the fly. The format string is duplicated, and "%z"'s are replaced by "%l"'s. diff --git a/include/vlc_fixups.h b/include/vlc_fixups.h index 87626e8..c35d2fc 100644 --- a/include/vlc_fixups.h +++ b/include/vlc_fixups.h @@ -38,6 +38,34 @@ static inline char *strdup (const char *str) } #endif +#ifdef WIN32 +/* Windows' printf doesn't support %z modifiers, thus we need to rewrite + * the format string in a wrapper. */ +# include +# include +# include +# include +static inline int vlc_vsnprintf(char *str, size_t size, const char *format, va_list ap) +{ + if (strstr(format, "%z")) + { + char *fmt = strdup(format), *f; + while ((f = strstr(fmt, "%z")) != NULL) + { + f[1] = 'l'; + } + int r = vsnprintf(str, size, fmt, ap); + free(fmt); + return r; + } + else + { + return vsnprintf(str, size, format, ap); + } +} +#define vsnprintf(str, size, format, ap) vlc_vsnprintf(str, size, format, ap) +#endif + #ifndef HAVE_VASPRINTF # include # include Regards, -- Pierre Ynard "Une ?me dans un corps, c'est comme un dessin sur une feuille de papier." From jb at videolan.org Tue Feb 24 12:15:21 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 24 Feb 2009 12:15:21 +0100 Subject: [vlc-devel] commit: Qt reverse for trickplay: show the button by default, and show it only when trickplay is possible. (Jean-Baptiste Kempf ) In-Reply-To: <49A3D0CB.6090705@gmail.com> References: <20090221104903.6C1002FB19@skanda.videolan.org> <49A3D0CB.6090705@gmail.com> Message-ID: <20090224111521.GA18491@videolan.org> On Tue, Feb 24, 2009 at 09:49:47PM +1100, xxcv wrote : > Yesterday I tried it by adding reverse play into the interface and FSC > but it always got added to behind the volume and it doesn't show up at all. Do you have a trickplay RTSP server? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From xxcv07 at gmail.com Tue Feb 24 12:33:44 2009 From: xxcv07 at gmail.com (xxcv) Date: Tue, 24 Feb 2009 22:33:44 +1100 Subject: [vlc-devel] commit: Qt reverse for trickplay: show the button by default, and show it only when trickplay is possible. (Jean-Baptiste Kempf ) In-Reply-To: <20090224111521.GA18491@videolan.org> References: <20090221104903.6C1002FB19@skanda.videolan.org> <49A3D0CB.6090705@gmail.com> <20090224111521.GA18491@videolan.org> Message-ID: <49A3DB18.3010107@gmail.com> Jean-Baptiste Kempf wrote: > On Tue, Feb 24, 2009 at 09:49:47PM +1100, xxcv wrote : > >> Yesterday I tried it by adding reverse play into the interface and FSC >> but it always got added to behind the volume and it doesn't show up at all. >> > > Do you have a trickplay RTSP server? > > Best Regards, > > No. is that why it doesn't show up? I thought that reverse play is for normal video files, by trickplay RTSP server do you mean vlc + live555 lib (patched trickplay)? -------------- next part -------------- An HTML attachment was scrubbed... URL: From jb at videolan.org Tue Feb 24 12:35:20 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 24 Feb 2009 12:35:20 +0100 Subject: [vlc-devel] commit: Qt reverse for trickplay: show the button by default, and show it only when trickplay is possible. (Jean-Baptiste Kempf ) In-Reply-To: <49A3DB18.3010107@gmail.com> References: <20090221104903.6C1002FB19@skanda.videolan.org> <49A3D0CB.6090705@gmail.com> <20090224111521.GA18491@videolan.org> <49A3DB18.3010107@gmail.com> Message-ID: <20090224113520.GA22177@videolan.org> On Tue, Feb 24, 2009 at 10:33:44PM +1100, xxcv wrote : > No. is that why it doesn't show up? I thought that reverse play is for > normal video files, by trickplay RTSP server > do you mean vlc + live555 lib (patched trickplay)? Yes, this is why, this is only to control RTSP servers that have TrickPlay support. I don't think you need to patch live555, but maybe. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Tue Feb 24 12:37:35 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 24 Feb 2009 12:37:35 +0100 Subject: [vlc-devel] [RFC] Fix wrong initialization of 'mp2v' encoder profile. In-Reply-To: <200902222202.39003.rem@videolan.org> References: <200902222202.39003.rem@videolan.org> Message-ID: <20090224113735.GA22907@videolan.org> On Sun, Feb 22, 2009 at 10:02:38PM +0200, R?mi Denis-Courmont wrote : > This patch has not been merged, and I do not recall any meaningful conclusion: > http://article.gmane.org/gmane.comp.video.videolan.vlc.devel/50997 > > I however do remember people complaining about MPEG2 encoder failure (that is > to say, _not_ with Debian/Ubuntu crippled avcodec). Meuuh, sam, are you reading? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From rdenis at simphalempin.com Tue Feb 24 12:47:28 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Tue, 24 Feb 2009 12:47:28 +0100 Subject: [vlc-devel] [RFC] Wrapper to work around %z limitation on Windows In-Reply-To: <20090224110818.GA8232@via.ecp.fr> References: <20090224110818.GA8232@via.ecp.fr> Message-ID: On Tue, 24 Feb 2009 12:08:18 +0100, Pierre Ynard wrote: > This patch works around unsupported %z modifiers, by using a wrapper > that patches the format string on the fly. The format string is > duplicated, and "%z"'s are replaced by "%l"'s. I fancy the high-level idea - but isn't long shorter than size_t on Win64? -- R?mi Denis-Courmont From jb at videolan.org Tue Feb 24 12:52:15 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Tue, 24 Feb 2009 12:52:15 +0100 Subject: [vlc-devel] [RFC] Wrapper to work around %z limitation on Windows In-Reply-To: References: <20090224110818.GA8232@via.ecp.fr> Message-ID: <20090224115215.GA25438@videolan.org> On Tue, Feb 24, 2009 at 12:47:28PM +0100, R?mi Denis-Courmont wrote : > On Tue, 24 Feb 2009 12:08:18 +0100, Pierre Ynard > wrote: > > This patch works around unsupported %z modifiers, by using a wrapper > > that patches the format string on the fly. The format string is > > duplicated, and "%z"'s are replaced by "%l"'s. > > I fancy the high-level idea - but isn't long shorter than size_t on Win64? IIRC, on LLP64 long is 32 bit and size_t is 64bit, IIRC. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jpd at m2x.nl Tue Feb 24 15:51:17 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Tue, 24 Feb 2009 15:51:17 +0100 (CET) Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_PulseAudio_cannot_be_unloade?= =?iso-8859-1?q?d_-_fixes__=232538_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <7c8d5df8bc321d886ea34bd179053ef9@chewa.net> References: <20090219161302.EAFB32F9D4@skanda.videolan.org> <7c8d5df8bc321d886ea34bd179053ef9@chewa.net> Message-ID: <4c33bd397f8aef89fe43e021e34e24c8.squirrel@m2x.nl> On Fri, February 20, 2009 09:34, R??mi Denis-Courmont wrote: > On Thu, 19 Feb 2009 17:13:02 +0100 (CET), git at videolan.org (git version > control) wrote: >> vlc | branch: master | R??mi Denis-Courmont | >> Thu Feb 19 18:12:08 2009 +0200| [8b40fb0f0bfb71913fe5dd22402ecfa479d80b6d] | >> committer: R??mi Denis-Courmont >> >> PulseAudio cannot be unloaded - fixes #2538 >> >> (I would not be surprised if the bug were in the VLC plugin though) > > Someone should really look at this closer. Unfortunately the bug report is > not very content-rich (and I don't use PulseAudio). I'll try and reproduce it again and see if this fixes it soonish, but for the moment I've forcibly removed pulseaudio completely from the fedora 10 box used for testing. From git at videolan.org Tue Feb 24 18:01:09 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 18:01:09 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_static_const_=28_R=C3=A9mi_Denis-?= =?utf-8?q?Courmont_=29?= Message-ID: <20090224170109.9F77A2F8CA@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 24 19:00:47 2009 +0200| [39863326be73832277af40324bbc3f18c46bd23f] | committer: R?mi Denis-Courmont static const > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=39863326be73832277af40324bbc3f18c46bd23f --- modules/video_output/x11/glx.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/modules/video_output/x11/glx.c b/modules/video_output/x11/glx.c index 6ad4158..b2553ca 100644 --- a/modules/video_output/x11/glx.c +++ b/modules/video_output/x11/glx.c @@ -236,9 +236,10 @@ int InitGLX13( vout_thread_t *p_vout ) int i_nbelem; GLXFBConfig *p_fbconfs, fbconf; XVisualInfo *p_vi; - int p_attr[] = { GLX_RED_SIZE, 5, GLX_GREEN_SIZE, 5, - GLX_BLUE_SIZE, 5, GLX_DOUBLEBUFFER, True, - GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT, None, }; + static const int p_attr[] = { + GLX_RED_SIZE, 5, GLX_GREEN_SIZE, 5, GLX_BLUE_SIZE, 5, + GLX_DOUBLEBUFFER, True, GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT, None, + }; /* Get the FB configuration */ p_fbconfs = glXChooseFBConfig( p_sys->p_display, 0, p_attr, &i_nbelem ); From git at videolan.org Tue Feb 24 18:51:50 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 18:51:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Don=27t_handle_impossible_error_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090224175150.201A72F9C4@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 24 19:06:37 2009 +0200| [ef48f9b6ff12a989e7b90573d2261a3be128e6a3] | committer: R?mi Denis-Courmont Don't handle impossible error glXChooseFBConfig always return NULL if there are no adequate configs. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ef48f9b6ff12a989e7b90573d2261a3be128e6a3 --- modules/video_output/x11/glx.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/modules/video_output/x11/glx.c b/modules/video_output/x11/glx.c index b2553ca..919fa40 100644 --- a/modules/video_output/x11/glx.c +++ b/modules/video_output/x11/glx.c @@ -243,10 +243,9 @@ int InitGLX13( vout_thread_t *p_vout ) /* Get the FB configuration */ p_fbconfs = glXChooseFBConfig( p_sys->p_display, 0, p_attr, &i_nbelem ); - if( !p_fbconfs || (i_nbelem <= 0) ) + if( p_fbconfs == NULL ) { msg_Err( p_vout, "Cannot get FB configurations"); - if( p_fbconfs ) XFree( p_fbconfs ); return VLC_EGENERIC; } fbconf = p_fbconfs[0]; From git at videolan.org Tue Feb 24 18:51:50 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 18:51:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Require_a_visual_since_we_need_on?= =?utf-8?q?e_at_the_next_API_call_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090224175150.3027E2FE58@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 24 19:23:37 2009 +0200| [c6d7fc8b29900c18116fc16f5aad1756b3a9db22] | committer: R?mi Denis-Courmont Require a visual since we need one at the next API call > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c6d7fc8b29900c18116fc16f5aad1756b3a9db22 --- modules/video_output/x11/glx.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/modules/video_output/x11/glx.c b/modules/video_output/x11/glx.c index 919fa40..2f9e1cc 100644 --- a/modules/video_output/x11/glx.c +++ b/modules/video_output/x11/glx.c @@ -238,7 +238,9 @@ int InitGLX13( vout_thread_t *p_vout ) XVisualInfo *p_vi; static const int p_attr[] = { GLX_RED_SIZE, 5, GLX_GREEN_SIZE, 5, GLX_BLUE_SIZE, 5, - GLX_DOUBLEBUFFER, True, GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT, None, + GLX_DOUBLEBUFFER, True, GLX_X_RENDERABLE, True, + GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT, + None, }; /* Get the FB configuration */ From git at videolan.org Tue Feb 24 18:51:50 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 18:51:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Get_configurations_for_the_screen?= =?utf-8?q?_we_do_use=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090224175150.48CE62F9C4@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 24 19:39:40 2009 +0200| [a39cf798c25f9bfd9395bdd334cbb603b850e001] | committer: R?mi Denis-Courmont Get configurations for the screen we do use. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a39cf798c25f9bfd9395bdd334cbb603b850e001 --- modules/video_output/x11/glx.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/video_output/x11/glx.c b/modules/video_output/x11/glx.c index 2f9e1cc..a138fec 100644 --- a/modules/video_output/x11/glx.c +++ b/modules/video_output/x11/glx.c @@ -244,7 +244,7 @@ int InitGLX13( vout_thread_t *p_vout ) }; /* Get the FB configuration */ - p_fbconfs = glXChooseFBConfig( p_sys->p_display, 0, p_attr, &i_nbelem ); + p_fbconfs = glXChooseFBConfig( p_sys->p_display, p_sys->i_screen, p_attr, &i_nbelem ); if( p_fbconfs == NULL ) { msg_Err( p_vout, "Cannot get FB configurations"); From git at videolan.org Tue Feb 24 18:51:50 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 18:51:50 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A__Use_a_framebuffer_whose_visual_m?= =?utf-8?q?atches_that_of_the_window_-_refs_=231672_=28_R=C3=A9mi_Denis-Co?= =?utf-8?q?urmont_=29?= Message-ID: <20090224175150.688C52FE39@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Tue Feb 24 19:50:13 2009 +0200| [5dca2e339ed999d8d71182f50f5aa1d1927df0c9] | committer: R?mi Denis-Courmont Use a framebuffer whose visual matches that of the window - refs #1672 This might fix the X_GLXCreateWindow BadMatch error. I cannot reproduce it, so I cannot confirm this. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5dca2e339ed999d8d71182f50f5aa1d1927df0c9 --- modules/video_output/x11/glx.c | 50 ++++++++++++++++++++++++--------------- 1 files changed, 31 insertions(+), 19 deletions(-) diff --git a/modules/video_output/x11/glx.c b/modules/video_output/x11/glx.c index a138fec..eb51ba6 100644 --- a/modules/video_output/x11/glx.c +++ b/modules/video_output/x11/glx.c @@ -233,9 +233,9 @@ int InitGLX12( vout_thread_t *p_vout ) int InitGLX13( vout_thread_t *p_vout ) { vout_sys_t *p_sys = p_vout->p_sys; - int i_nbelem; - GLXFBConfig *p_fbconfs, fbconf; - XVisualInfo *p_vi; + int i_nb, ret = VLC_EGENERIC; + GLXFBConfig *p_fbconfs = NULL, fbconf; + XWindowAttributes att; static const int p_attr[] = { GLX_RED_SIZE, 5, GLX_GREEN_SIZE, 5, GLX_BLUE_SIZE, 5, GLX_DOUBLEBUFFER, True, GLX_X_RENDERABLE, True, @@ -244,23 +244,36 @@ int InitGLX13( vout_thread_t *p_vout ) }; /* Get the FB configuration */ - p_fbconfs = glXChooseFBConfig( p_sys->p_display, p_sys->i_screen, p_attr, &i_nbelem ); + p_fbconfs = glXChooseFBConfig( p_sys->p_display, p_sys->i_screen, p_attr, &i_nb ); if( p_fbconfs == NULL ) { msg_Err( p_vout, "Cannot get FB configurations"); return VLC_EGENERIC; } - fbconf = p_fbconfs[0]; - /* Get the X11 visual */ - p_vi = glXGetVisualFromFBConfig( p_sys->p_display, fbconf ); - if( !p_vi ) + /* We should really create the window _after_ the frame buffer + * configuration was chosen, instead of selecting the frame buffer from + * the window. That requires reworking xcommon.c though. + * -- Courmisch */ + XGetWindowAttributes( p_sys->p_display, p_sys->p_win->video_window, &att ); + for( int i = 0; i < i_nb && !fbconf; i++ ) { - msg_Err( p_vout, "Cannot get X11 visual" ); - XFree( p_fbconfs ); - return VLC_EGENERIC; + XVisualInfo *p_vi; + + /* Get the X11 visual */ + p_vi = glXGetVisualFromFBConfig( p_sys->p_display, p_fbconfs[i] ); + if( !p_vi ) + continue; /* OoM? */ + + if( p_vi->visualid == att.visual->visualid ) + fbconf = p_fbconfs[i]; + XFree( p_vi ); + } + if( !fbconf ) + { + msg_Err( p_vout, "Cannot find matching frame buffer" ); + goto out; } - XFree( p_vi ); /* Create the GLX window */ p_sys->gwnd = glXCreateWindow( p_sys->p_display, fbconf, @@ -268,21 +281,20 @@ int InitGLX13( vout_thread_t *p_vout ) if( p_sys->gwnd == None ) { msg_Err( p_vout, "Cannot create GLX window" ); - XFree( p_fbconfs ); - return VLC_EGENERIC; + goto out; } /* Create an OpenGL context */ p_sys->gwctx = glXCreateNewContext( p_sys->p_display, fbconf, GLX_RGBA_TYPE, NULL, True ); - XFree( p_fbconfs ); if( !p_sys->gwctx ) - { msg_Err( p_vout, "Cannot create OpenGL context"); - return VLC_EGENERIC; - } + else + ret = VLC_SUCCESS; - return VLC_SUCCESS; +out: + XFree( p_fbconfs ); + return ret; } /***************************************************************************** From git at videolan.org Tue Feb 24 22:37:46 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 22:37:46 +0100 (CET) Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) Message-ID: <20090224213746.D41D52F77A@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Tue Feb 24 21:37:29 2009 +0100| [2114aaa9b0badfcbb840d4f1325e2add71e0e3aa] | committer: Geoffroy Couprie Win32: send crash reports to ftp://crash.videolan.org/crashs/ > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2114aaa9b0badfcbb840d4f1325e2add71e0e3aa --- bin/Makefile.am | 2 +- bin/winvlc.c | 71 ++++++++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 63 insertions(+), 10 deletions(-) diff --git a/bin/Makefile.am b/bin/Makefile.am index eb92663..aa404a2 100644 --- a/bin/Makefile.am +++ b/bin/Makefile.am @@ -35,7 +35,7 @@ vlc_static_LDADD = $(vlc_LDADD) vlc_static_LDFLAGS = $(vlc_LDFLAGS) -no-install -static if HAVE_WIN32 -vlc_LDADD += vlc_win32_rc.$(OBJEXT) +vlc_LDADD += -lwininet vlc_win32_rc.$(OBJEXT) vlc_DEPENDENCIES += vlc_win32_rc.$(OBJEXT) endif diff --git a/bin/winvlc.c b/bin/winvlc.c index de9a8d1..ca64458 100644 --- a/bin/winvlc.c +++ b/bin/winvlc.c @@ -39,6 +39,8 @@ # define _WIN32_IE 0x500 # include # include +# include +static void check_crashdump(); LONG WINAPI vlc_exception_filter(struct _EXCEPTION_POINTERS *lpExceptionInfo); #endif @@ -136,6 +138,7 @@ int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, libvlc_exception_init (&dummy); #if !defined( UNDER_CE ) && defined ( NDEBUG ) + check_crashdump(); SetUnhandledExceptionFilter(vlc_exception_filter); #endif @@ -162,26 +165,76 @@ int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, } #if !defined( UNDER_CE ) && defined ( NDEBUG ) + +static void get_crashdump_path(wchar_t * wdir) +{ + if( S_OK != SHGetFolderPathW( NULL, + CSIDL_APPDATA | CSIDL_FLAG_CREATE, + NULL, SHGFP_TYPE_CURRENT, wdir ) ) + fprintf( stderr, "Can't open the vlc conf PATH\n" ); + + swprintf( wdir+wcslen( wdir ), L"%s", L"\\vlc\\crashdump" ); +} + +static void check_crashdump() +{ + wchar_t * wdir = (wchar_t *)malloc(sizeof(wchar_t)*MAX_PATH); + get_crashdump_path(wdir); + + FILE * fd = _wfopen ( wdir, L"r, ccs=UTF-8" ); + if( fd ) + { + fclose( fd ); + int answer = MessageBox( NULL, L"VLC media player just crashed." \ + " Do you want to send a bug report to the developers team?", + L"VLC crash reporting", MB_YESNO); + + if(answer == IDYES) + { + HINTERNET Hint = InternetOpen(L"VLC Crash Reporter", INTERNET_OPEN_TYPE_PRECONFIG, NULL,NULL,0); + if(Hint) + { + HINTERNET ftp = InternetConnect(Hint, L"crash.videolan.org", INTERNET_DEFAULT_FTP_PORT, + NULL, NULL, INTERNET_SERVICE_FTP, 0, 0); + if(ftp) + { + SYSTEMTIME now; + GetSystemTime(&now); + wchar_t remote_file[MAX_PATH]; + swprintf( remote_file, L"/crashs/%04d%02d%02d%02d%02d%02d",now.wYear, + now.wMonth, now.wDay, now.wHour, now.wMinute, now.wSecond ); + + FtpPutFile( ftp, wdir, remote_file, FTP_TRANSFER_TYPE_BINARY, 0); + InternetCloseHandle(ftp); + } + else + fprintf(stderr,"Can't connect to FTP server%d\n",GetLastError()); + InternetCloseHandle(Hint); + } + } + + _wremove(wdir); + } + free((void *)wdir); +} + /***************************************************************************** * vlc_exception_filter: handles unhandled exceptions, like segfaults *****************************************************************************/ LONG WINAPI vlc_exception_filter(struct _EXCEPTION_POINTERS *lpExceptionInfo) { - wchar_t wdir[MAX_PATH]; - fprintf( stderr, "unhandled vlc exception\n" ); - if( S_OK != SHGetFolderPathW( NULL, - CSIDL_APPDATA | CSIDL_FLAG_CREATE, - NULL, SHGFP_TYPE_CURRENT, wdir ) ) - fprintf( stderr, "Can't open the vlc conf PATH\n" ); - - swprintf( wdir+wcslen( wdir ), L"%s", L"\\vlc\\crashdump" ); - + wchar_t * wdir = (wchar_t *)malloc(sizeof(wchar_t)*MAX_PATH); + get_crashdump_path(wdir); FILE * fd = _wfopen ( wdir, L"w, ccs=UTF-8" ); + free((void *)wdir); if( !fd ) + { fprintf( stderr, "\nerror while opening file" ); + exit( 1 ); + } OSVERSIONINFO osvi; ZeroMemory( &osvi, sizeof(OSVERSIONINFO) ); From git at videolan.org Tue Feb 24 22:37:46 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 22:37:46 +0100 (CET) Subject: [vlc-devel] commit: WinCE: add more libs to contribs (Geoffroy Couprie ) Message-ID: <20090224213746.E45FC2FE59@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Tue Feb 24 21:45:26 2009 +0100| [8793ceff6280a7c7a8330ad459a7855ebcb90bbd] | committer: Geoffroy Couprie WinCE: add more libs to contribs > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8793ceff6280a7c7a8330ad459a7855ebcb90bbd --- extras/contrib/src/Distributions/wince.mak | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/extras/contrib/src/Distributions/wince.mak b/extras/contrib/src/Distributions/wince.mak index 6904bdd..e3707bf 100644 --- a/extras/contrib/src/Distributions/wince.mak +++ b/extras/contrib/src/Distributions/wince.mak @@ -1,3 +1,4 @@ # WinCE rules -all: .dvbpsi .zlib .ffmpeg .ogg .tremor .faad +all: .dvbpsi .zlib .ffmpeg .ogg \ + .tremor .faad .vorbis .lame .a52 .mpeg2 .theora From git at videolan.org Tue Feb 24 22:37:47 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 22:37:47 +0100 (CET) Subject: [vlc-devel] commit: WinCE: make buildbot happy for now. (Geoffroy Couprie ) Message-ID: <20090224213747.058A82FE7C@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Tue Feb 24 22:33:07 2009 +0100| [fd6d55865e330899af00e6349942ecccf738fe17] | committer: Geoffroy Couprie WinCE: make buildbot happy for now. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fd6d55865e330899af00e6349942ecccf738fe17 --- modules/gui/wince/menus.cpp | 17 ++++++----------- 1 files changed, 6 insertions(+), 11 deletions(-) diff --git a/modules/gui/wince/menus.cpp b/modules/gui/wince/menus.cpp index d801de5..3cebdc7 100644 --- a/modules/gui/wince/menus.cpp +++ b/modules/gui/wince/menus.cpp @@ -186,14 +186,6 @@ void PopupMenu( intf_thread_t *p_intf, HWND p_parent, POINT point ) if( i != i_last_separator ) ppsz_varnames[i++] = NULL; /* Separator */ i_last_separator = i; - /* vlc_object_find is needed because of the dialogs provider case */ - p_object = (vlc_object_t *)vlc_object_find( p_intf, VLC_OBJECT_INTF, - FIND_PARENT ); - if( p_object != NULL ) - { - /* Nothing for now */ - vlc_object_release( p_object ); - } /* Build menu */ vector popup_menu; @@ -438,14 +430,17 @@ void RefreshSettingsMenu( intf_thread_t *p_intf, HMENU hMenu ) AppendMenu( hMenu, MF_STRING, ID_PREFERENCES, _T("&Preferences...") ); - p_object = (vlc_object_t *) - vlc_object_find( p_intf, VLC_OBJECT_INTF, FIND_PARENT ); + /* Other interfaces */ + /*FIXME: copy the Qt way of mapping menus and objects */ + /*p_object = (vlc_object_t *) NULL; + //vlc_object_find_name( p_intf, "wince", FIND_PARENT ); if( p_object != NULL ) { ppsz_varnames[i] = "intf-add"; pi_objects[i++] = p_object; vlc_object_release( p_object ); - } + }*/ + /* Build menu */ RefreshMenu( p_intf, p_intf->p_sys->p_settings_menu, hMenu, i, From rushiextreme at gmail.com Tue Feb 24 16:06:12 2009 From: rushiextreme at gmail.com (Rushikesh Kshirsagar) Date: Tue, 24 Feb 2009 20:36:12 +0530 Subject: [vlc-devel] Tranlsation of VLC to Marathi (Indian syllabic/Devnagri language) Message-ID: <9790c42c0902240706o8e9b58ftbc0ef9ff379a4f17@mail.gmail.com> Sir/Madam, I wish to translate VLC into Marathi language which is a syllabic language having 'Devnagri Script'. It's one of the standard languages in India. It is similar to Hindi in which VLC is already translated. Will you please guid me how to make this translation? >From where can I get the .po file? Please help me to do this. -- Regards, Rushikesh. -------------- next part -------------- An HTML attachment was scrubbed... URL: From danwood76 at gmail.com Tue Feb 24 23:25:31 2009 From: danwood76 at gmail.com (Danny Wood) Date: Tue, 24 Feb 2009 22:25:31 +0000 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_PulseAudio_cannot_be_unloade?= =?iso-8859-1?q?d_-_fixes__=232538_=28_R=E9mi_Denis-Courmont_=29?= In-Reply-To: <4c33bd397f8aef89fe43e021e34e24c8.squirrel@m2x.nl> References: <20090219161302.EAFB32F9D4@skanda.videolan.org> <7c8d5df8bc321d886ea34bd179053ef9@chewa.net> <4c33bd397f8aef89fe43e021e34e24c8.squirrel@m2x.nl> Message-ID: <49A473DB.6060507@gmail.com> Just as a note. I noticed audio breakups when using VLC plus flash in firefox on my x64 ubuntu intrepid box. With my small update to the pulse plugin (not yet in the official version but in git) these breakups were gone, I think this was due to both pulseaudio and VLC not re-sampling the output (converting to PCM as opposed to float output) which reduces latency. Mind you I would blame the flash firefox plugin as its always a bit buggy at best. I've not found any lock ups or anything when using VLC and killing pulseaudio. Nor do I see VLC reload the pulse libs after they exit. I run pulseaudio and VLC all the time and have had no problems/lockups or breakups for a couple of months now. You bug report is a little sparse so I'm not quite sure what/why you did. It could be a bug with pulse in fedora though. jpd at m2x.nl wrote: > On Fri, February 20, 2009 09:34, R??mi Denis-Courmont wrote: > >> On Thu, 19 Feb 2009 17:13:02 +0100 (CET), git at videolan.org (git version >> control) wrote: >> >>> vlc | branch: master | R??mi Denis-Courmont | >>> Thu Feb 19 18:12:08 2009 +0200| [8b40fb0f0bfb71913fe5dd22402ecfa479d80b6d] | >>> committer: R??mi Denis-Courmont >>> >>> PulseAudio cannot be unloaded - fixes #2538 >>> >>> (I would not be surprised if the bug were in the VLC plugin though) >>> >> Someone should really look at this closer. Unfortunately the bug report is >> not very content-rich (and I don't use PulseAudio). >> > > I'll try and reproduce it again and see if this fixes it soonish, but for > the moment I've forcibly removed pulseaudio completely from the fedora 10 > box used for testing. > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From git at videolan.org Tue Feb 24 23:44:56 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:44:56 +0100 (CET) Subject: [vlc-devel] commit: Fixed a small memleak in cdda/vcd code. (Laurent Aimar ) Message-ID: <20090224224456.A9A512F990@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 24 22:51:22 2009 +0100| [93eaf1bcd713cd8c84cab81f7695aeee01b2df02] | committer: Laurent Aimar Fixed a small memleak in cdda/vcd code. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=93eaf1bcd713cd8c84cab81f7695aeee01b2df02 --- modules/access/vcd/cdrom.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/access/vcd/cdrom.c b/modules/access/vcd/cdrom.c index 5ece996..b48e8a2 100644 --- a/modules/access/vcd/cdrom.c +++ b/modules/access/vcd/cdrom.c @@ -184,6 +184,7 @@ void ioctl_Close( vlc_object_t * p_this, vcddev_t *p_vcddev ) if( p_vcddev->i_device_handle != -1 ) close( p_vcddev->i_device_handle ); #endif + free( p_vcddev ); } /***************************************************************************** From git at videolan.org Tue Feb 24 23:44:56 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:44:56 +0100 (CET) Subject: [vlc-devel] commit: Cosmetics. (Laurent Aimar ) Message-ID: <20090224224456.B85742FEAA@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 24 22:51:50 2009 +0100| [0d80d151a547239d8cd779bad2656f958e66978d] | committer: Laurent Aimar Cosmetics. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0d80d151a547239d8cd779bad2656f958e66978d --- modules/access/vcd/cdrom.c | 29 ++++++++++++++++------------- 1 files changed, 16 insertions(+), 13 deletions(-) diff --git a/modules/access/vcd/cdrom.c b/modules/access/vcd/cdrom.c index b48e8a2..715b0df 100644 --- a/modules/access/vcd/cdrom.c +++ b/modules/access/vcd/cdrom.c @@ -94,7 +94,7 @@ vcddev_t *ioctl_Open( vlc_object_t *p_this, const char *psz_dev ) /* * Initialize structure with default values */ - p_vcddev = (vcddev_t *)malloc( sizeof(vcddev_t) ); + p_vcddev = malloc( sizeof(*p_vcddev) ); if( p_vcddev == NULL ) return NULL; p_vcddev->i_vcdimage_handle = -1; @@ -207,11 +207,11 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, if( pp_sectors ) { - *pp_sectors = malloc( (i_tracks + 1) * sizeof(int) ); + *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) return 0; memcpy( *pp_sectors, p_vcddev->p_sectors, - (i_tracks + 1) * sizeof(int) ); + (i_tracks + 1) * sizeof(**pp_sectors) ); } return i_tracks; @@ -243,7 +243,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, CDTOCDescriptor *pTrackDescriptors; u_char track; - *pp_sectors = malloc( (i_tracks + 1) * sizeof(int) ); + *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) { darwin_freeTOC( pTOC ); @@ -348,7 +348,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, ((unsigned int)p_tocheader[1] << 8); p_fulltoc = malloc( i_toclength ); - *pp_sectors = malloc( (i_tracks + 1) * sizeof(int) ); + *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); if( *pp_sectors == NULL || p_fulltoc == NULL ) { @@ -414,7 +414,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, { int i; - *pp_sectors = malloc( (i_tracks + 1) * sizeof(int) ); + *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) return 0; @@ -447,7 +447,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, { int i; - *pp_sectors = malloc( (i_tracks + 1) * sizeof(int) ); + *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) return 0; @@ -502,7 +502,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, { int i; - *pp_sectors = malloc( (i_tracks + 1) * sizeof(int) ); + *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) return 0; @@ -539,8 +539,10 @@ int ioctl_ReadSectors( vlc_object_t *p_this, const vcddev_t *p_vcddev, uint8_t *p_block; int i; - if( i_type == VCD_TYPE ) p_block = malloc( VCD_SECTOR_SIZE * i_nb ); - else p_block = p_buffer; + if( i_type == VCD_TYPE ) + p_block = malloc( VCD_SECTOR_SIZE * i_nb ); + else + p_block = p_buffer; if( p_vcddev->i_vcdimage_handle != -1 ) { @@ -933,7 +935,7 @@ static int OpenVCDImage( vlc_object_t * p_this, const char *psz_dev, p_sectors = buf; p_sectors[i_tracks] = MSF_TO_LBA(i_min, i_sec, i_frame); msg_Dbg( p_this, "vcd track %i begins at sector:%i", - i_tracks, p_sectors[i_tracks] ); + (int)i_tracks, (int)p_sectors[i_tracks] ); i_tracks++; break; } @@ -947,7 +949,7 @@ static int OpenVCDImage( vlc_object_t * p_this, const char *psz_dev, p_sectors[i_tracks] = lseek(p_vcddev->i_vcdimage_handle, 0, SEEK_END) / VCD_SECTOR_SIZE; msg_Dbg( p_this, "vcd track %i, begins at sector:%i", - i_tracks, p_sectors[i_tracks] ); + (int)i_tracks, (int)p_sectors[i_tracks] ); p_vcddev->i_tracks = ++i_tracks; p_vcddev->p_sectors = p_sectors; i_ret = 0; @@ -966,6 +968,7 @@ error: ****************************************************************************/ static void CloseVCDImage( vlc_object_t * p_this, vcddev_t *p_vcddev ) { + VLC_UNUSED( p_this ); if( p_vcddev->i_vcdimage_handle != -1 ) close( p_vcddev->i_vcdimage_handle ); else @@ -1060,7 +1063,7 @@ static CDTOC *darwin_getTOC( vlc_object_t * p_this, const vcddev_t *p_vcddev ) buf_len = CFDataGetLength( data ) + 1; range = CFRangeMake( 0, buf_len ); - if( ( pTOC = (CDTOC *)malloc( buf_len ) ) != NULL ) + if( ( pTOC = malloc( buf_len ) ) != NULL ) { CFDataGetBytes( data, range, (u_char *)pTOC ); } From git at videolan.org Tue Feb 24 23:44:56 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:44:56 +0100 (CET) Subject: [vlc-devel] commit: Added ioctl_GetCdText to our cdrom wrapper for linux and win32. ( Laurent Aimar ) Message-ID: <20090224224456.CBE312F990@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 24 23:02:34 2009 +0100| [875135115a32de14936fa39f2f86129d6681a87a] | committer: Laurent Aimar Added ioctl_GetCdText to our cdrom wrapper for linux and win32. It is not yet used, but will allow CD-TEXT info support. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=875135115a32de14936fa39f2f86129d6681a87a --- modules/access/vcd/cdrom.c | 273 ++++++++++++++++++++++++++++++++++ modules/access/vcd/cdrom.h | 5 + modules/access/vcd/cdrom_internals.h | 14 ++ 3 files changed, 292 insertions(+), 0 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=875135115a32de14936fa39f2f86129d6681a87a From git at videolan.org Tue Feb 24 23:44:56 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:44:56 +0100 (CET) Subject: [vlc-devel] commit: Prepare GetTracks for CD-TEXT (cdda). (Laurent Aimar ) Message-ID: <20090224224456.F3FD02FEBA@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 24 23:29:34 2009 +0100| [fdef07da7c3c505ac400ae5e4a48c31ae236fef4] | committer: Laurent Aimar Prepare GetTracks for CD-TEXT (cdda). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fdef07da7c3c505ac400ae5e4a48c31ae236fef4 --- modules/access/cdda.c | 110 ++++++++++++++++++++++++++++++++----------------- 1 files changed, 72 insertions(+), 38 deletions(-) diff --git a/modules/access/cdda.c b/modules/access/cdda.c index 80e5ee4..1d615ed 100644 --- a/modules/access/cdda.c +++ b/modules/access/cdda.c @@ -392,36 +392,35 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) input_item_SetName( p_current, "Audio CD" ); -#ifdef HAVE_LIBCDDB - cddb_disc_t *p_disc = GetCDDBInfo( p_access, i_titles, p_sys->p_sectors ); const char *psz_album = NULL; const char *psz_year = NULL; const char *psz_genre = NULL; + const char *psz_artist = NULL; + const char *psz_description = NULL; char psz_year_buffer[4+1]; +/* Return true if the given string is not NULL and not empty */ +#define NONEMPTY( psz ) ( (psz) && *(psz) ) +/* If the given string is NULL or empty, fill it by the return value of 'code' */ +#define ON_EMPTY( psz, code ) do { if( !NONEMPTY( psz) ) { (psz) = code; } } while(0) + + /* Retreive CDDB informations */ +#ifdef HAVE_LIBCDDB + cddb_disc_t *p_disc = GetCDDBInfo( p_access, i_titles, p_sys->p_sectors ); if( p_disc ) { psz_album = cddb_disc_get_title( p_disc ); - if( psz_album && *psz_album ) - { - input_item_SetName( p_current, psz_album ); - input_item_SetAlbum( p_current, psz_album ); - } + psz_genre = cddb_disc_get_genre( p_disc ); + /* */ const unsigned i_year = cddb_disc_get_year( p_disc ); if( i_year > 0 ) { psz_year = psz_year_buffer; snprintf( psz_year_buffer, sizeof(psz_year_buffer), "%u", i_year ); - input_item_SetDate( p_current, psz_year ); } - psz_genre = cddb_disc_get_genre( p_disc ); - if( psz_genre && *psz_genre ) - input_item_SetGenre( p_current, psz_genre ); - /* Set artist only if unique */ - const char *psz_artist = NULL; for( int i = 0; i < i_titles; i++ ) { cddb_track_t *t = cddb_disc_get_track( p_disc, i ); @@ -436,15 +435,31 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) } psz_artist = psz_track_artist; } - if( psz_artist && *psz_artist ) - input_item_SetArtist( p_current, psz_artist ); - - const mtime_t i_duration = (int64_t)( p_sys->p_sectors[i_titles] - p_sys->p_sectors[0] ) * - CDDA_DATA_SIZE * 1000000 / 44100 / 2 / 2; - input_item_SetDuration( p_current, i_duration ); } #endif + if( NONEMPTY( psz_album ) ) + { + input_item_SetName( p_current, psz_album ); + input_item_SetAlbum( p_current, psz_album ); + } + + if( NONEMPTY( psz_genre ) ) + input_item_SetGenre( p_current, psz_genre ); + + if( NONEMPTY( psz_artist ) ) + input_item_SetArtist( p_current, psz_artist ); + + if( NONEMPTY( psz_year ) ) + input_item_SetDate( p_current, psz_year ); + + if( NONEMPTY( psz_description ) ) + input_item_SetDescription( p_current, psz_description ); + + const mtime_t i_duration = (int64_t)( p_sys->p_sectors[i_titles] - p_sys->p_sectors[0] ) * + CDDA_DATA_SIZE * 1000000 / 44100 / 2 / 2; + input_item_SetDuration( p_current, i_duration ); + /* Build title table */ for( int i = 0; i < i_titles; i++ ) { @@ -480,35 +495,51 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) input_item_AddOption( p_input_item, psz_last, VLC_INPUT_OPTION_TRUSTED ); input_item_AddOption( p_input_item, psz_opt, VLC_INPUT_OPTION_TRUSTED ); + const char *psz_track_title = NULL; + const char *psz_track_artist = NULL; + const char *psz_track_genre = NULL; + const char *psz_track_description = NULL; + #ifdef HAVE_LIBCDDB - /* If we have CDDB info, change the name */ + /* Retreive CDDB informations */ if( p_disc ) { cddb_track_t *t = cddb_disc_get_track( p_disc, i ); if( t != NULL ) { - const char *psz_title = cddb_track_get_title( t ); - const char *psz_artist = cddb_track_get_artist( t ); - - if( psz_title ) - { - input_item_SetName( p_input_item, psz_title ); - input_item_SetTitle( p_input_item, psz_title ); - } - if( psz_artist ) - input_item_SetArtist( p_input_item, psz_artist ); + psz_track_title = cddb_track_get_title( t ); + psz_track_artist = cddb_track_get_artist( t ); } + } +#endif - if( psz_album && *psz_album ) - input_item_SetAlbum( p_input_item, psz_album ); - - if( psz_year ) - input_item_SetDate( p_input_item, psz_year ); + /* */ + ON_EMPTY( psz_track_artist, psz_artist ); + ON_EMPTY( psz_track_genre, psz_genre ); + ON_EMPTY( psz_track_description, psz_description ); - if( psz_genre && *psz_genre ) - input_item_SetGenre( p_input_item, psz_genre ); + /* */ + if( NONEMPTY( psz_track_title ) ) + { + input_item_SetName( p_input_item, psz_track_title ); + input_item_SetTitle( p_input_item, psz_track_title ); } -#endif + + if( NONEMPTY( psz_track_artist ) ) + input_item_SetArtist( p_input_item, psz_track_artist ); + + if( NONEMPTY( psz_track_genre ) ) + input_item_SetGenre( p_input_item, psz_track_genre ); + + if( NONEMPTY( psz_track_description ) ) + input_item_SetDescription( p_input_item, psz_track_description ); + + if( NONEMPTY( psz_album ) ) + input_item_SetAlbum( p_input_item, psz_album ); + + if( NONEMPTY( psz_year ) ) + input_item_SetDate( p_input_item, psz_year ); + char psz_num[3+1]; snprintf( psz_num, sizeof(psz_num), "%d", 1+i ); input_item_SetTrackNum( p_input_item, psz_num ); @@ -518,6 +549,9 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) free( psz_uri ); free( psz_opt ); free( psz_name ); free( psz_first ); free( psz_last ); } +#undef ON_EMPTY +#undef NONEMPTY + #ifdef HAVE_LIBCDDB if( p_disc ) From git at videolan.org Tue Feb 24 23:44:57 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:44:57 +0100 (CET) Subject: [vlc-devel] commit: Fixed a segfault in hotkeys. (Laurent Aimar ) Message-ID: <20090224224457.175892FEC2@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 24 23:40:59 2009 +0100| [9fd326a0f6eea08df982f77c6f4ef7e30ba4005b] | committer: Laurent Aimar Fixed a segfault in hotkeys. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9fd326a0f6eea08df982f77c6f4ef7e30ba4005b --- modules/control/hotkeys.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 9b2ca8f..c900435 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -192,7 +192,7 @@ static void Run( intf_thread_t *p_intf ) /* Update the vout */ p_last_vout = p_vout; - p_vout = input_GetVout( p_input ); + p_vout = p_input ? input_GetVout( p_input ) : NULL; /* Register OSD channels */ if( p_vout && p_vout != p_last_vout ) From git at videolan.org Tue Feb 24 23:44:57 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:44:57 +0100 (CET) Subject: [vlc-devel] commit: Added CD-TEXT support to our cdda module (linux/win32). ( Laurent Aimar ) Message-ID: <20090224224457.38CC72F987@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 24 23:42:29 2009 +0100| [f4ad83ef27011fed81df3a72f81c09887ec8c088] | committer: Laurent Aimar Added CD-TEXT support to our cdda module (linux/win32). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f4ad83ef27011fed81df3a72f81c09887ec8c088 --- modules/access/cdda.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 42 insertions(+), 0 deletions(-) diff --git a/modules/access/cdda.c b/modules/access/cdda.c index 1d615ed..979cada 100644 --- a/modules/access/cdda.c +++ b/modules/access/cdda.c @@ -390,6 +390,7 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) return VLC_EGENERIC;; } + /* */ input_item_SetName( p_current, "Audio CD" ); const char *psz_album = NULL; @@ -438,6 +439,27 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) } #endif + /* */ + vlc_meta_t **pp_cd_text; + int i_cd_text; + + if( ioctl_GetCdText( VLC_OBJECT(p_access), p_sys->vcddev, &pp_cd_text, &i_cd_text ) ) + { + msg_Dbg( p_access, "CD-TEXT information missing" ); + i_cd_text = 0; + pp_cd_text = NULL; + } + + /* Retreive CD-TEXT informations but prefer CDDB */ + if( i_cd_text > 0 && pp_cd_text[0] ) + { + const vlc_meta_t *p_disc = pp_cd_text[0]; + ON_EMPTY( psz_album, vlc_meta_Get( p_disc, vlc_meta_Album ) ); + ON_EMPTY( psz_genre, vlc_meta_Get( p_disc, vlc_meta_Genre ) ); + ON_EMPTY( psz_artist, vlc_meta_Get( p_disc, vlc_meta_Artist ) ); + ON_EMPTY( psz_description, vlc_meta_Get( p_disc, vlc_meta_Description ) ); + } + if( NONEMPTY( psz_album ) ) { input_item_SetName( p_current, psz_album ); @@ -513,6 +535,17 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) } #endif + /* Retreive CD-TEXT informations but prefer CDDB */ + if( i+1 < i_cd_text && pp_cd_text[i+1] ) + { + const vlc_meta_t *t = pp_cd_text[i+1]; + + ON_EMPTY( psz_track_title, vlc_meta_Get( t, vlc_meta_Title ) ); + ON_EMPTY( psz_track_artist, vlc_meta_Get( t, vlc_meta_Artist ) ); + ON_EMPTY( psz_track_genre, vlc_meta_Get( t, vlc_meta_Genre ) ); + ON_EMPTY( psz_track_description, vlc_meta_Get( t, vlc_meta_Description ) ); + } + /* */ ON_EMPTY( psz_track_artist, psz_artist ); ON_EMPTY( psz_track_genre, psz_genre ); @@ -552,6 +585,15 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) #undef ON_EMPTY #undef NONEMPTY + /* */ + for( int i = 0; i < i_cd_text; i++ ) + { + vlc_meta_t *p_meta = pp_cd_text[i]; + if( !p_meta ) + continue; + vlc_meta_Delete( p_meta ); + } + free( pp_cd_text ); #ifdef HAVE_LIBCDDB if( p_disc ) From git at videolan.org Tue Feb 24 23:44:56 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:44:56 +0100 (CET) Subject: [vlc-devel] commit: Clean up/Fix memleak in CDDB code for our cdda access. ( Laurent Aimar ) Message-ID: <20090224224456.E3DA92FEBC@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 24 23:15:59 2009 +0100| [a127a08986b5d20e942875be3261a775aced1f20] | committer: Laurent Aimar Clean up/Fix memleak in CDDB code for our cdda access. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a127a08986b5d20e942875be3261a775aced1f20 --- modules/access/cdda.c | 97 ++++++++++++++++++++++++++----------------------- 1 files changed, 52 insertions(+), 45 deletions(-) diff --git a/modules/access/cdda.c b/modules/access/cdda.c index b416dd9..80e5ee4 100644 --- a/modules/access/cdda.c +++ b/modules/access/cdda.c @@ -117,10 +117,6 @@ struct access_sys_t int i_track; int i_first_sector; int i_last_sector; - -#ifdef HAVE_LIBCDDB - cddb_disc_t *p_disc; -#endif }; static block_t *Block( access_t * ); @@ -130,7 +126,7 @@ static int Control( access_t *, int, va_list ); static int GetTracks( access_t *p_access, input_item_t *p_current ); #ifdef HAVE_LIBCDDB -static void GetCDDBInfo( access_t *p_access, int i_titles, int *p_sectors ); +static cddb_disc_t *GetCDDBInfo( access_t *p_access, int i_titles, int *p_sectors ); #endif /***************************************************************************** @@ -397,22 +393,22 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) input_item_SetName( p_current, "Audio CD" ); #ifdef HAVE_LIBCDDB - GetCDDBInfo( p_access, i_titles, p_sys->p_sectors ); + cddb_disc_t *p_disc = GetCDDBInfo( p_access, i_titles, p_sys->p_sectors ); const char *psz_album = NULL; const char *psz_year = NULL; const char *psz_genre = NULL; char psz_year_buffer[4+1]; - if( p_sys->p_disc ) + if( p_disc ) { - psz_album = cddb_disc_get_title( p_sys->p_disc ); + psz_album = cddb_disc_get_title( p_disc ); if( psz_album && *psz_album ) { input_item_SetName( p_current, psz_album ); input_item_SetAlbum( p_current, psz_album ); } - const unsigned i_year = cddb_disc_get_year( p_sys->p_disc ); + const unsigned i_year = cddb_disc_get_year( p_disc ); if( i_year > 0 ) { psz_year = psz_year_buffer; @@ -420,7 +416,7 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) input_item_SetDate( p_current, psz_year ); } - psz_genre = cddb_disc_get_genre( p_sys->p_disc ); + psz_genre = cddb_disc_get_genre( p_disc ); if( psz_genre && *psz_genre ) input_item_SetGenre( p_current, psz_genre ); @@ -428,7 +424,7 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) const char *psz_artist = NULL; for( int i = 0; i < i_titles; i++ ) { - cddb_track_t *t = cddb_disc_get_track( p_sys->p_disc, i ); + cddb_track_t *t = cddb_disc_get_track( p_disc, i ); if( !t ) continue; const char *psz_track_artist = cddb_track_get_artist( t ); @@ -486,9 +482,9 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) #ifdef HAVE_LIBCDDB /* If we have CDDB info, change the name */ - if( p_sys->p_disc ) + if( p_disc ) { - cddb_track_t *t = cddb_disc_get_track( p_sys->p_disc, i ); + cddb_track_t *t = cddb_disc_get_track( p_disc, i ); if( t != NULL ) { const char *psz_title = cddb_track_get_title( t ); @@ -522,28 +518,34 @@ static int GetTracks( access_t *p_access, input_item_t *p_current ) free( psz_uri ); free( psz_opt ); free( psz_name ); free( psz_first ); free( psz_last ); } + +#ifdef HAVE_LIBCDDB + if( p_disc ) + cddb_disc_destroy( p_disc ); +#endif return VLC_SUCCESS; } #ifdef HAVE_LIBCDDB -static void GetCDDBInfo( access_t *p_access, int i_titles, int *p_sectors ) +static cddb_disc_t *GetCDDBInfo( access_t *p_access, int i_titles, int *p_sectors ) { - int i, i_matches; - int64_t i_length = 0, i_size = 0; - cddb_conn_t *p_cddb = cddb_new(); - + /* */ + cddb_conn_t *p_cddb = cddb_new(); if( !p_cddb ) { msg_Warn( p_access, "unable to use CDDB" ); - goto cddb_destroy; + return NULL; } - char* psz_tmp = config_GetPsz( p_access, "cddb-server" ); - cddb_set_email_address( p_cddb, "vlc at videolan.org" ); + /* */ + char *psz_tmp = config_GetPsz( p_access, "cddb-server" ); cddb_set_server_name( p_cddb, psz_tmp ); - cddb_set_server_port( p_cddb, config_GetInt( p_access, "cddb-port" ) ); free( psz_tmp ); + cddb_set_server_port( p_cddb, config_GetInt( p_access, "cddb-port" ) ); + + cddb_set_email_address( p_cddb, "vlc at videolan.org" ); + /// \todo cddb_cache_disable( p_cddb ); @@ -556,47 +558,52 @@ static void GetCDDBInfo( access_t *p_access, int i_titles, int *p_sectors ) /// \todo cddb_http_disable( p_cddb); - p_access->p_sys->p_disc = cddb_disc_new(); - - if(! p_access->p_sys->p_disc ) + /* */ + cddb_disc_t *p_disc = cddb_disc_new(); + if( !p_disc ) { msg_Err( p_access, "unable to create CDDB disc structure." ); - goto cddb_end; + goto error; } - for(i = 0; i < i_titles ; i++ ) + int64_t i_length = 0; + for( int i = 0; i < i_titles; i++ ) { cddb_track_t *t = cddb_track_new(); - cddb_track_set_frame_offset(t, p_sectors[i] ); - cddb_disc_add_track( p_access->p_sys->p_disc, t ); - i_size = ( p_sectors[i+1] - p_sectors[i] ) * - (int64_t)CDDA_DATA_SIZE; + cddb_track_set_frame_offset( t, p_sectors[i] ); + cddb_disc_add_track( p_disc, t ); + const int64_t i_size = ( p_sectors[i+1] - p_sectors[i] ) * + (int64_t)CDDA_DATA_SIZE; i_length += INT64_C(1000000) * i_size / 44100 / 4 ; } - cddb_disc_set_length( p_access->p_sys->p_disc, (int)(i_length/1000000) ); + cddb_disc_set_length( p_disc, (int)(i_length/1000000) ); - if (!cddb_disc_calc_discid(p_access->p_sys->p_disc )) + if( !cddb_disc_calc_discid( p_disc ) ) { msg_Err( p_access, "CDDB disc ID calculation failed" ); - goto cddb_destroy; + goto error; } - i_matches = cddb_query( p_cddb, p_access->p_sys->p_disc); - - if (i_matches > 0) + const int i_matches = cddb_query( p_cddb, p_disc ); + if( i_matches <= 0 ) { - if (i_matches > 1) - msg_Warn( p_access, "found %d matches in CDDB. Using first one.", - i_matches); - cddb_read( p_cddb, p_access->p_sys->p_disc ); - } - else msg_Warn( p_access, "CDDB error: %s", cddb_error_str(errno)); + goto error; + } + + if( i_matches > 1 ) + msg_Warn( p_access, "found %d matches in CDDB. Using first one.", i_matches ); + cddb_read( p_cddb, p_disc ); -cddb_destroy: cddb_destroy( p_cddb); + return p_disc; -cddb_end: ; +error: + if( p_disc ) + cddb_disc_destroy( p_disc ); + cddb_destroy( p_cddb ); + return NULL; } #endif /*HAVE_LIBCDDB*/ + From git at videolan.org Tue Feb 24 23:47:01 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:47:01 +0100 (CET) Subject: [vlc-devel] commit: Improved a bit SRT support. (Laurent Aimar ) Message-ID: <20090224224701.8828F2FE4F@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Mon Feb 23 21:08:35 2009 +0100| [5c7ef93f15cddd8fbc8104f3899543d447c90de1] | committer: Laurent Aimar Improved a bit SRT support. Added missings realloc/malloc checks. Added support for not closed html tags (only if missing at the end). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5c7ef93f15cddd8fbc8104f3899543d447c90de1 --- modules/codec/subtitles/subsdec.c | 85 +++++++++++++++++++++++++----------- 1 files changed, 59 insertions(+), 26 deletions(-) diff --git a/modules/codec/subtitles/subsdec.c b/modules/codec/subtitles/subsdec.c index d7c6dd6..e0db173 100644 --- a/modules/codec/subtitles/subsdec.c +++ b/modules/codec/subtitles/subsdec.c @@ -598,24 +598,26 @@ static void HtmlCopy( char **ppsz_html, char **ppsz_subtitle, const char *psz_te static char *CreateHtmlSubtitle( int *pi_align, char *psz_subtitle ) { - char *psz_tag = malloc( ( strlen( psz_subtitle ) / 3 ) + 1 ); - if( !psz_tag ) return NULL; - size_t i_buf_size = strlen( psz_subtitle ) + 100; - char *psz_html_start = malloc( i_buf_size ); - bool b_has_align = false; - + /* */ + char *psz_tag = malloc( ( strlen( psz_subtitle ) / 3 ) + 1 ); + if( !psz_tag ) + return NULL; psz_tag[ 0 ] = '\0'; + /* */ + size_t i_buf_size = strlen( psz_subtitle ) + 100; + char *psz_html_start = malloc( i_buf_size ); + char *psz_html = psz_html_start; if( psz_html_start == NULL ) { free( psz_tag ); return NULL; } - - char *psz_html = psz_html_start; + psz_html[0] = '\0'; - strcpy( psz_html, "" ); - psz_html += 6; + bool b_has_align = false; + + HtmlPut( &psz_html, "" ); /* */ while( *psz_subtitle ) @@ -877,27 +879,58 @@ static char *CreateHtmlSubtitle( int *pi_align, char *psz_subtitle ) if( ( size_t )( psz_html - psz_html_start ) > i_buf_size - 50 ) { - int i_len = psz_html - psz_html_start; + const int i_len = psz_html - psz_html_start; i_buf_size += 200; - psz_html_start = realloc( psz_html_start, i_buf_size ); - psz_html = psz_html_start + i_len; - *psz_html = '\0'; + char *psz_new = realloc( psz_html_start, i_buf_size ); + if( !psz_new ) + break; + psz_html_start = psz_new; + psz_html = &psz_new[i_len]; } } - strcpy( psz_html, "" ); - psz_html += 7; - - if( psz_tag[ 0 ] != '\0' ) + if( psz_html_start ) { - /* Not well formed -- kill everything */ - free( psz_html_start ); - psz_html_start = NULL; - } - else if( psz_html_start ) - { - /* Shrink the memory requirements */ - psz_html_start = realloc( psz_html_start, psz_html - psz_html_start + 1 ); + static const char *psz_text_close = ""; + static const char *psz_tag_long = "/font>"; + + /* Realloc for closing tags and shrink memory */ + const size_t i_length = (size_t)( psz_html - psz_html_start ); + + const size_t i_size = i_length + strlen(psz_tag_long) * strlen(psz_tag) + strlen(psz_text_close) + 1; + char *psz_new = realloc( psz_html_start, i_size ); + if( psz_new ) + { + psz_html_start = psz_new; + psz_html = &psz_new[i_length]; + + /* Close not well formed subtitle */ + while( *psz_tag ) + { + /* */ + char *psz_last = &psz_tag[strlen(psz_tag)-1]; + switch( *psz_last ) + { + case 'b': + HtmlPut( &psz_html, "" ); + break; + case 'i': + HtmlPut( &psz_html, "" ); + break; + case 'u': + HtmlPut( &psz_html, "" ); + break; + case 'f': + HtmlPut( &psz_html, "/font>" ); + break; + case 'I': + break; + } + + *psz_last = '\0'; + } + HtmlPut( &psz_html, psz_text_close ); + } } free( psz_tag ); From git at videolan.org Tue Feb 24 23:47:01 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:47:01 +0100 (CET) Subject: [vlc-devel] commit: Set dummy decoder output format. (Laurent Aimar ) Message-ID: <20090224224701.95DAC2FEB5@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 24 20:28:03 2009 +0100| [b272e1a1180ca1b24161a9239812aacbc02d840b] | committer: Laurent Aimar Set dummy decoder output format. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b272e1a1180ca1b24161a9239812aacbc02d840b --- modules/misc/dummy/decoder.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/misc/dummy/decoder.c b/modules/misc/dummy/decoder.c index 6f09676..06b1644 100644 --- a/modules/misc/dummy/decoder.c +++ b/modules/misc/dummy/decoder.c @@ -117,6 +117,8 @@ static int OpenDecoderCommon( vlc_object_t *p_this, bool b_force_dump ) p_dec->pf_decode_sub = (subpicture_t *(*)(decoder_t *, block_t **)) DecodeBlock; + es_format_Copy( &p_dec->fmt_out, &p_dec->fmt_in ); + return VLC_SUCCESS; } From git at videolan.org Tue Feb 24 23:57:33 2009 From: git at videolan.org (git version control) Date: Tue, 24 Feb 2009 23:57:33 +0100 (CET) Subject: [vlc-devel] commit: Added missing EnsureUTF8 for CD-TEXT. (Laurent Aimar ) Message-ID: <20090224225733.769E72F9C4@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Tue Feb 24 23:56:55 2009 +0100| [76daa01762824d225c785be408883112b78e1201] | committer: Laurent Aimar Added missing EnsureUTF8 for CD-TEXT. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=76daa01762824d225c785be408883112b78e1201 --- modules/access/vcd/cdrom.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/modules/access/vcd/cdrom.c b/modules/access/vcd/cdrom.c index c132288..bf5b03f 100644 --- a/modules/access/vcd/cdrom.c +++ b/modules/access/vcd/cdrom.c @@ -1326,9 +1326,13 @@ static int CdTextParse( vlc_meta_t ***ppp_tracks, int *pi_tracks, for( int j = 0; j < 0x10; j++ ) { - const char *psz_default = pppsz_info[0][j]; for( int i = 0; i <= i_track_last; i++ ) { + /* */ + EnsureUTF8( pppsz_info[i][j] ); + + /* */ + const char *psz_default = pppsz_info[0][j]; const char *psz_value = pppsz_info[i][j]; if( !psz_value && !psz_default ) From xtophe at chewa.net Wed Feb 25 00:33:54 2009 From: xtophe at chewa.net (Christophe Mutricy) Date: Wed, 25 Feb 2009 00:33:54 +0100 Subject: [vlc-devel] Tranlsation of VLC to Marathi (Indian syllabic/Devnagri language) In-Reply-To: <9790c42c0902240706o8e9b58ftbc0ef9ff379a4f17@mail.gmail.com> References: <9790c42c0902240706o8e9b58ftbc0ef9ff379a4f17@mail.gmail.com> Message-ID: <20090224233354.GV2353@chewa.net> Hello On Tue, Feb 24, 09 at 20:36 +0530, Rushikesh Kshirsagar wrote: > I wish to translate VLC into Marathi language which is a syllabic > language having 'Devnagri Script'. It's one of the standard languages in > India. It is similar to Hindi in which VLC is already translated. > Will you please guid me how to make this translation? > From where can I get the .po file? You can find the file there: http://people.videolan.org/~xtophe/l10n/mr.po You can use poEdit or Lokalize ((or a simple text editor to translate)). Make sure that you use UTF-8 as encoding. The Hindi localisation is not very complete but you can download it at http://git.videolan.org/?p=vlc.git;a=blob_plain;f=po/hi.po;hb=0.9-bugfix if it helps. We don't really have a detailled documentation on the localisation process. If you have question you can ask them on irc #videolan on irc.freenode.net or on the mailing-list vlc-devel at videolan.org When you have done a part of it you can send it to me or put it online and send us the link. There is a mailing list dedicated to translators. you can subscribe at http://mailman.videolan.org/listinfo/translators Thanks -- Xtophe From jb at videolan.org Wed Feb 25 01:18:08 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 25 Feb 2009 01:18:08 +0100 Subject: [vlc-devel] commit: Added CD-TEXT support to our cdda module (linux/win32). ( Laurent Aimar ) In-Reply-To: <20090224224457.38CC72F987@skanda.videolan.org> References: <20090224224457.38CC72F987@skanda.videolan.org> Message-ID: <20090225001808.GA10827@videolan.org> On Tue, Feb 24, 2009 at 11:44:57PM +0100, git version control wrote : > vlc | branch: master | Laurent Aimar | Tue Feb 24 23:42:29 2009 +0100| [f4ad83ef27011fed81df3a72f81c09887ec8c088] | committer: Laurent Aimar > > Added CD-TEXT support to our cdda module (linux/win32). One less advantage on the use of cddax. best jb From jpountz at videolan.org Wed Feb 25 05:20:23 2009 From: jpountz at videolan.org (Adrien Grand) Date: Wed, 25 Feb 2009 05:20:23 +0100 Subject: [vlc-devel] [PATCH] Fix infinite loop in the telnet interface Message-ID: <49A4C707.70300@videolan.org> Hello, When I close the telnet session client-side (by killing the telnet process for example), VLC (0.9.x and 1.0.0-git) goes into an infinite loop. It seems to be because recv() instantly returns 0 and errno is set to EAGAIN, which is not handled by the if clause which tries to detect the telnet client connections to drop. The attached patch if a fix proposal for this issue. Best regards, -- jpountz -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Avoid-infinite-loop-when-the-telnet-session-is-close.patch Type: text/x-diff Size: 831 bytes Desc: not available URL: From rdenis at simphalempin.com Wed Feb 25 08:44:43 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 08:44:43 +0100 Subject: [vlc-devel] commit: Cosmetics. (Laurent Aimar ) In-Reply-To: <20090224224456.B85742FEAA@skanda.videolan.org> References: <20090224224456.B85742FEAA@skanda.videolan.org> Message-ID: <7a61cff2b79a407da8930d71409260cc@chewa.net> On Tue, 24 Feb 2009 23:44:56 +0100 (CET), git at videolan.org (git version control) wrote: > - *pp_sectors = malloc( (i_tracks + 1) * sizeof(int) ); > + *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) > ); > if( *pp_sectors == NULL ) > return 0; > memcpy( *pp_sectors, p_vcddev->p_sectors, > - (i_tracks + 1) * sizeof(int) ); > + (i_tracks + 1) * sizeof(**pp_sectors) ); How big can i_tracks be, and can we read it from a disk image? It looks like an integer overflow, but then again not if i_tracks is 16 bits. -- R?mi Denis-Courmont From rdenis at simphalempin.com Wed Feb 25 08:45:30 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 08:45:30 +0100 Subject: [vlc-devel] commit: Added CD-TEXT support to our cdda module (linux/win32). ( Laurent Aimar ) In-Reply-To: <20090225001808.GA10827@videolan.org> References: <20090224224457.38CC72F987@skanda.videolan.org> <20090225001808.GA10827@videolan.org> Message-ID: <74d7f6fa4b244b7e00b7aaf5d87d09f4@chewa.net> On Wed, 25 Feb 2009 01:18:08 +0100, Jean-Baptiste Kempf wrote: > On Tue, Feb 24, 2009 at 11:44:57PM +0100, git version control wrote : >> vlc | branch: master | Laurent Aimar | Tue Feb 24 > 23:42:29 2009 +0100| [f4ad83ef27011fed81df3a72f81c09887ec8c088] | > committer: Laurent Aimar >> >> Added CD-TEXT support to our cdda module (linux/win32). > > One less advantage on the use of cddax. I assume that was the point of the commit anyway... -- R?mi Denis-Courmont From rdenis at simphalempin.com Wed Feb 25 08:46:40 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 08:46:40 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A__Use_a_framebuffer_whose_visual_m?= =?utf-8?q?atches_that_of_the_window_-_refs_=231672_=28_R=C3=A9mi_Denis-Co?= =?utf-8?q?urmont_=29?= In-Reply-To: <20090224175150.688C52FE39@skanda.videolan.org> References: <20090224175150.688C52FE39@skanda.videolan.org> Message-ID: On Tue, 24 Feb 2009 18:51:50 +0100 (CET), git at videolan.org (git version control) wrote: > vlc | branch: master | R?mi Denis-Courmont | Tue > Feb 24 19:50:13 2009 +0200| [5dca2e339ed999d8d71182f50f5aa1d1927df0c9] | > committer: R?mi Denis-Courmont > > Use a framebuffer whose visual matches that of the window - refs #1672 > > This might fix the X_GLXCreateWindow BadMatch error. I cannot reproduce > it, so I cannot confirm this. I'd like those who had OpenGL crash to retry... If it still does not work, please provide your xdpyinfo and glxinfo -t. -- R?mi Denis-Courmont From xxcv07 at gmail.com Wed Feb 25 08:57:00 2009 From: xxcv07 at gmail.com (xxcv) Date: Wed, 25 Feb 2009 18:57:00 +1100 Subject: [vlc-devel] =?utf-8?q?commit=3A_Copy_IPv4_multicast_TTL_from_RTP_?= =?utf-8?q?to_RTCP=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <20090223163354.CB3D82F524@skanda.videolan.org> References: <20090223163354.CB3D82F524@skanda.videolan.org> Message-ID: <49A4F9CC.9060905@gmail.com> git version control wrote: > vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Mon Feb 23 18:24:58 2009 +0200| [19c943dc3b2883d09f490e25c36e19ff8d814d37] | committer: R?mi Denis-Courmont > > Copy IPv4 multicast TTL from RTP to RTCP. > > We were sending RTCP with TTL=1 all the time... > (cherry picked from commit 7da51390659d29b3022c748b6e8491ad3e37f5e6) > Due to that not all systems have SOL_IP, compile fix. diff --git a/include/vlc_network.h b/include/vlc_network.h index 0cd5029..cefad4a 100644 --- a/include/vlc_network.h +++ b/include/vlc_network.h @@ -32,6 +32,10 @@ * This file defines interface to communicate with network plug-ins */ +#ifndef SOL_IP +#define SOL_IP IPPROTO_IP +#endif + #if defined( WIN32 ) # if !defined(UNDER_CE) # define _NO_OLDNAMES 1 From fenrir at via.ecp.fr Wed Feb 25 09:16:45 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Wed, 25 Feb 2009 09:16:45 +0100 Subject: [vlc-devel] commit: Cosmetics. (Laurent Aimar ) In-Reply-To: <7a61cff2b79a407da8930d71409260cc@chewa.net> References: <20090224224456.B85742FEAA@skanda.videolan.org> <7a61cff2b79a407da8930d71409260cc@chewa.net> Message-ID: <20090225081645.GA27339@via.ecp.fr> On Wed, Feb 25, 2009, R?mi Denis-Courmont wrote: > > On Tue, 24 Feb 2009 23:44:56 +0100 (CET), git at videolan.org (git version > control) wrote: > > - *pp_sectors = malloc( (i_tracks + 1) * sizeof(int) ); > > + *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) > > ); > > if( *pp_sectors == NULL ) > > return 0; > > memcpy( *pp_sectors, p_vcddev->p_sectors, > > - (i_tracks + 1) * sizeof(int) ); > > + (i_tracks + 1) * sizeof(**pp_sectors) ); > > How big can i_tracks be, and can we read it from a disk image? It looks > like an integer overflow, but then again not if i_tracks is 16 bits. Mmh, i_tracks is probably limited to 99 (cd-audio) but I will verify. Besides a calloc here make more sense (I will do it and any needed checks). -- fenrir From xxcv07 at gmail.com Wed Feb 25 10:54:25 2009 From: xxcv07 at gmail.com (xxcv) Date: Wed, 25 Feb 2009 20:54:25 +1100 Subject: [vlc-devel] =?utf-8?q?commit=3A_Copy_IPv4_multicast_TTL_from_RTP_?= =?utf-8?q?to_RTCP=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <20090223163354.CB3D82F524@skanda.videolan.org> References: <20090223163354.CB3D82F524@skanda.videolan.org> Message-ID: <49A51551.2000502@gmail.com> git version control wrote: > vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Mon Feb 23 18:24:58 2009 +0200| [19c943dc3b2883d09f490e25c36e19ff8d814d37] | committer: R?mi Denis-Courmont > > Copy IPv4 multicast TTL from RTP to RTCP. > > We were sending RTCP with TTL=1 all the time... > (cherry picked from commit 7da51390659d29b3022c748b6e8491ad3e37f5e6) > > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=19c943dc3b2883d09f490e25c36e19ff8d814d37 >> > --- > > modules/stream_out/rtcp.c | 10 ++++++++++ > 1 files changed, 10 insertions(+), 0 deletions(-) > > diff --git a/modules/stream_out/rtcp.c b/modules/stream_out/rtcp.c > index cbc3dad..3c1780e 100644 > --- a/modules/stream_out/rtcp.c > +++ b/modules/stream_out/rtcp.c > @@ -99,6 +99,16 @@ rtcp_sender_t *OpenRTCP (vlc_object_t *obj, int rtp_fd, int proto, > dport++; > > fd = net_OpenDgram (obj, src, sport, dst, dport, AF_UNSPEC, proto); > + > + /* Copy the multicast IPv4 TTL value (useless for IPv6) */ > + if (fd != -1) > + { > + int ttl; > + socklen_t len = sizeof (ttl); > + > + if (!getsockopt (rtp_fd, SOL_IP, IP_MULTICAST_TTL, &ttl, &len)) > + setsockopt (fd, SOL_IP, IP_MULTICAST_TTL, &ttl, len); > + } > BTW this also apply to 1.0.0-git just because I didn't receive a branch master commit log, since you cherry picked it. This fails to compile with mingw32. Regards, -------------- next part -------------- An HTML attachment was scrubbed... URL: From jb at videolan.org Wed Feb 25 11:45:20 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 25 Feb 2009 11:45:20 +0100 Subject: [vlc-devel] commit: Added CD-TEXT support to our cdda module (linux/win32). ( Laurent Aimar ) In-Reply-To: <74d7f6fa4b244b7e00b7aaf5d87d09f4@chewa.net> References: <20090224224457.38CC72F987@skanda.videolan.org> <20090225001808.GA10827@videolan.org> <74d7f6fa4b244b7e00b7aaf5d87d09f4@chewa.net> Message-ID: <20090225104520.GD25217@videolan.org> On Wed, Feb 25, 2009 at 08:45:30AM +0100, R?mi Denis-Courmont wrote : > I assume that was the point of the commit anyway... Yeah, I just wanted to emphasize this for people who read this ml too fast. -- Jean-Baptiste Kempf http://www.jbkempf.com/ From fkuehne.videolan at googlemail.com Wed Feb 25 12:31:53 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Wed, 25 Feb 2009 12:31:53 +0100 Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) In-Reply-To: <20090224213746.D41D52F77A@skanda.videolan.org> References: <20090224213746.D41D52F77A@skanda.videolan.org> Message-ID: <02460211-E98C-408F-8F9C-AEAE2B9B3EA7@gmail.com> Am 24.02.2009 um 22:37 schrieb git version control: > vlc | branch: master | Geoffroy Couprie | > Tue Feb 24 21:37:29 2009 +0100| > [2114aaa9b0badfcbb840d4f1325e2add71e0e3aa] | committer: Geoffroy > Couprie > > Win32: send crash reports to ftp://crash.videolan.org/crashs/ ehm, why don't you want to adapt the php script we are using for the OS X crash reports. It sorts the reports a bit and post them to a mailing list, so through a good mail reader (even the Google Mail web interface) will show you the most important issues with the most crash reports. With your current approach, you'll end up with tens of thousands of log files nobody is able to process. Or do I miss something? Best regards, Felix From jb at videolan.org Wed Feb 25 12:33:15 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Wed, 25 Feb 2009 12:33:15 +0100 Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) In-Reply-To: <02460211-E98C-408F-8F9C-AEAE2B9B3EA7@gmail.com> References: <20090224213746.D41D52F77A@skanda.videolan.org> <02460211-E98C-408F-8F9C-AEAE2B9B3EA7@gmail.com> Message-ID: <20090225113315.GB9367@videolan.org> On Wed, Feb 25, 2009 at 12:31:53PM +0100, Felix Paul K?hne wrote : > Am 24.02.2009 um 22:37 schrieb git version control: > > > vlc | branch: master | Geoffroy Couprie | > > Tue Feb 24 21:37:29 2009 +0100| > > [2114aaa9b0badfcbb840d4f1325e2add71e0e3aa] | committer: Geoffroy > > Couprie > > > > Win32: send crash reports to ftp://crash.videolan.org/crashs/ > > ehm, why don't you want to adapt the php script we are using for the > OS X crash reports. It sorts the reports a bit and post them to a > mailing list, so through a good mail reader (even the Google Mail web > interface) will show you the most important issues with the most crash > reports. With your current approach, you'll end up with tens of > thousands of log files nobody is able to process. > Or do I miss something? How do you send the report to that script? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From geo.couprie at gmail.com Wed Feb 25 12:38:40 2009 From: geo.couprie at gmail.com (Geoffroy Couprie) Date: Wed, 25 Feb 2009 12:38:40 +0100 Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) In-Reply-To: <20090225113315.GB9367@videolan.org> References: <20090224213746.D41D52F77A@skanda.videolan.org> <02460211-E98C-408F-8F9C-AEAE2B9B3EA7@gmail.com> <20090225113315.GB9367@videolan.org> Message-ID: On Wed, Feb 25, 2009 at 12:33 PM, Jean-Baptiste Kempf wrote: > On Wed, Feb 25, 2009 at 12:31:53PM +0100, Felix Paul K?hne wrote : >> Am 24.02.2009 um 22:37 schrieb git version control: >> >> > vlc | branch: master | Geoffroy Couprie | >> > Tue Feb 24 21:37:29 2009 +0100| >> > [2114aaa9b0badfcbb840d4f1325e2add71e0e3aa] | committer: Geoffroy >> > Couprie >> > >> > Win32: send crash reports to ftp://crash.videolan.org/crashs/ >> >> ehm, why don't you want to adapt the php script we are using for the >> OS X crash reports. It sorts the reports a bit and post them to a >> mailing list, so through a good mail reader (even the Google Mail web >> interface) will show you the most important issues with the most crash >> reports. With your current approach, you'll end up with tens of >> thousands of log files nobody is able to process. >> Or do I miss something? > > How do you send the report to that script? > I had worked on something like that. I endded up with an really really really long GET url :) I'll use another script to sort the crash report that will be sent. But I don't know where I should send the results: on a mailing list, on a web interface? From fkuehne.videolan at googlemail.com Wed Feb 25 12:42:21 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Wed, 25 Feb 2009 12:42:21 +0100 Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) In-Reply-To: <20090225113315.GB9367@videolan.org> References: <20090224213746.D41D52F77A@skanda.videolan.org> <02460211-E98C-408F-8F9C-AEAE2B9B3EA7@gmail.com> <20090225113315.GB9367@videolan.org> Message-ID: <4A69E87E-B153-44B4-9ECE-082AD1D93449@gmail.com> Am 25.02.2009 um 12:33 schrieb Jean-Baptiste Kempf: > How do you send the report to that script? By sending it to ***.videolan.org/crashlog/sendcrashreport.php with "CrashLog=%@&Comment=%@&Email=%@\r\n" as HTTP Body. (see intf.m lines 2203 et sqq.) (%@ being similar to %s) Best regards, Felix From rdenis at simphalempin.com Wed Feb 25 13:10:14 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 13:10:14 +0100 Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) In-Reply-To: <20090224213746.D41D52F77A@skanda.videolan.org> References: <20090224213746.D41D52F77A@skanda.videolan.org> Message-ID: <468e05ba6589922f6ca8995c7eddd351@chewa.net> On Tue, 24 Feb 2009 22:37:46 +0100 (CET), git at videolan.org (git version control) wrote: > vlc | branch: master | Geoffroy Couprie | Tue Feb > 24 21:37:29 2009 +0100| [2114aaa9b0badfcbb840d4f1325e2add71e0e3aa] | > committer: Geoffroy Couprie > > Win32: send crash reports to ftp://crash.videolan.org/crashs/ How automated is this? I don't need to mention that core dumps contain privacy-sensitive informations. -- R?mi Denis-Courmont From geo.couprie at gmail.com Wed Feb 25 13:17:07 2009 From: geo.couprie at gmail.com (Geoffroy Couprie) Date: Wed, 25 Feb 2009 13:17:07 +0100 Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) In-Reply-To: <468e05ba6589922f6ca8995c7eddd351@chewa.net> References: <20090224213746.D41D52F77A@skanda.videolan.org> <468e05ba6589922f6ca8995c7eddd351@chewa.net> Message-ID: On Wed, Feb 25, 2009 at 1:10 PM, R?mi Denis-Courmont wrote: > > On Tue, 24 Feb 2009 22:37:46 +0100 (CET), git at videolan.org (git version > control) wrote: >> vlc | branch: master | Geoffroy Couprie | Tue Feb >> 24 21:37:29 2009 +0100| [2114aaa9b0badfcbb840d4f1325e2add71e0e3aa] | >> committer: Geoffroy Couprie >> >> Win32: send crash reports to ftp://crash.videolan.org/crashs/ > > How automated is this? > > I don't need to mention that core dumps contain privacy-sensitive > informations. > I don't know for Mac, but the windows crash reports don't contain sensitive information: OS version, VLC version, exception type, content of the registers at the time of crash, and a stacktrace with the list of DLLs corresponding to code adresses. The only private information would be in a DLL path, but I can modify the code to send only the DLL name, not the full path. From git at videolan.org Wed Feb 25 14:14:49 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 14:14:49 +0100 (CET) Subject: [vlc-devel] commit: Win32: fix crash reporting version string (Geoffroy Couprie ) Message-ID: <20090225131449.B5FFA2F45E@skanda.videolan.org> vlc | branch: master | Geoffroy Couprie | Wed Feb 25 14:10:43 2009 +0100| [d282bd2d015d247babd65da6df4370c29ebb4cab] | committer: Geoffroy Couprie Win32: fix crash reporting version string > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d282bd2d015d247babd65da6df4370c29ebb4cab --- bin/winvlc.c | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff --git a/bin/winvlc.c b/bin/winvlc.c index ca64458..0b046ec 100644 --- a/bin/winvlc.c +++ b/bin/winvlc.c @@ -241,12 +241,11 @@ LONG WINAPI vlc_exception_filter(struct _EXCEPTION_POINTERS *lpExceptionInfo) osvi.dwOSVersionInfoSize = sizeof( OSVERSIONINFO ); GetVersionEx( &osvi ); - fwprintf( fd, L"[Version]\n0S=%d.%d.%d.%d.%s\nVLC=%s", osvi.dwMajorVersion, + fwprintf( fd, L"[Version]\nOS=%d.%d.%d.%d.%s\nVLC=" VERSION_MESSAGE, osvi.dwMajorVersion, osvi.dwMinorVersion, osvi.dwBuildNumber, osvi.dwPlatformId, - osvi.szCSDVersion, - VERSION_MESSAGE); + osvi.szCSDVersion); const CONTEXT *const pContext = (const CONTEXT *)lpExceptionInfo->ContextRecord; const EXCEPTION_RECORD *const pException = (const EXCEPTION_RECORD *)lpExceptionInfo->ExceptionRecord; From rdenis at simphalempin.com Wed Feb 25 14:24:30 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 14:24:30 +0100 Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) In-Reply-To: References: <20090224213746.D41D52F77A@skanda.videolan.org> <468e05ba6589922f6ca8995c7eddd351@chewa.net> Message-ID: <73e9dc120c432b232ebb646be606cf7b@chewa.net> On Wed, 25 Feb 2009 13:17:07 +0100, Geoffroy Couprie wrote: > I don't know for Mac, but the windows crash reports don't contain > sensitive information: OS version, VLC version, exception type, > content of the registers at the time of crash, and a stacktrace with > the list of DLLs corresponding to code adresses. The only private > information would be in a DLL path, but I can modify the code to send > only the DLL name, not the full path. If it has a stacktrace, it is sensitive. Media name or location is sensitive (and not only if you are a pirate). -- R?mi Denis-Courmont From geo.couprie at gmail.com Wed Feb 25 14:32:53 2009 From: geo.couprie at gmail.com (Geoffroy Couprie) Date: Wed, 25 Feb 2009 14:32:53 +0100 Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) In-Reply-To: <73e9dc120c432b232ebb646be606cf7b@chewa.net> References: <20090224213746.D41D52F77A@skanda.videolan.org> <468e05ba6589922f6ca8995c7eddd351@chewa.net> <73e9dc120c432b232ebb646be606cf7b@chewa.net> Message-ID: On Wed, Feb 25, 2009 at 2:24 PM, R?mi Denis-Courmont wrote: > > On Wed, 25 Feb 2009 13:17:07 +0100, Geoffroy Couprie > wrote: >> I don't know for Mac, but the windows crash reports don't contain >> sensitive information: OS version, VLC version, exception type, >> content of the registers at the time of crash, and a stacktrace with >> the list of DLLs corresponding to code adresses. The only private >> information would be in a DLL path, but I can modify the code to send >> only the DLL name, not the full path. > > If it has a stacktrace, it is sensitive. Media name or location is > sensitive (and not only if you are a pirate). > This is the type of stacktrace you get: [STACKTRACE] #EIP|base|module 00401d08|00400000|c:\Users\geo\Documents\dev\vlc\win2\vlc-1.0.0-git\vlc.exe 0040124b|00400000|c:\Users\geo\Documents\dev\vlc\win2\vlc-1.0.0-git\vlc.exe 004012b8|00400000|c:\Users\geo\Documents\dev\vlc\win2\vlc-1.0.0-git\vlc.exe 75b04911|75ac0000|C:\Windows\system32\kernel32.dll 7722e4b6|771f0000|C:\Windows\system32\ntdll.dll 7722e489|771f0000|C:\Windows\system32\ntdll.dll There's nothing more than the execution path. From pdherbemont at free.fr Wed Feb 25 14:54:33 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Wed, 25 Feb 2009 14:54:33 +0100 Subject: [vlc-devel] commit: Win32: send crash reports to ftp://crash.videolan.org/crashs/ ( Geoffroy Couprie ) In-Reply-To: <468e05ba6589922f6ca8995c7eddd351@chewa.net> References: <20090224213746.D41D52F77A@skanda.videolan.org> <468e05ba6589922f6ca8995c7eddd351@chewa.net> Message-ID: On Wed, Feb 25, 2009 at 1:10 PM, R?mi Denis-Courmont wrote: > > On Tue, 24 Feb 2009 22:37:46 +0100 (CET), git at videolan.org (git version > control) wrote: >> vlc | branch: master | Geoffroy Couprie | Tue Feb >> 24 21:37:29 2009 +0100| [2114aaa9b0badfcbb840d4f1325e2add71e0e3aa] | >> committer: Geoffroy Couprie >> >> Win32: send crash reports to ftp://crash.videolan.org/crashs/ > > How automated is this? > > I don't need to mention that core dumps contain privacy-sensitive > informations. > On OS X user is asked whether or not user wants to send the crash report. Pierre. From jpd at m2x.nl Wed Feb 25 15:06:19 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Wed, 25 Feb 2009 15:06:19 +0100 (CET) Subject: [vlc-devel] [patch] Fix spelling of ``intantiating'' in the python bindings Message-ID: Fix spelling of the word ``instantiating'' in the python bindings. -------------- next part -------------- A non-text attachment was scrubbed... Name: 0002-Fix-spelling-of-the-word-instantiating.patch Type: text/x-patch Size: 3021 bytes Desc: not available URL: From git at videolan.org Wed Feb 25 17:14:57 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 17:14:57 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Use_IPPROTO=5FIP_if_SOL=5FIP_is_m?= =?utf-8?q?issing_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090225161457.1EB4D2F7E7@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Wed Feb 25 18:13:47 2009 +0200| [ad96fd239ddd9edd0eb9896127e33574eed861b2] | committer: R?mi Denis-Courmont Use IPPROTO_IP if SOL_IP is missing (cherry picked from commit 71289a77408c0447ae938a77659b13710949c84e) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ad96fd239ddd9edd0eb9896127e33574eed861b2 --- modules/stream_out/rtcp.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/modules/stream_out/rtcp.c b/modules/stream_out/rtcp.c index 3c1780e..39091a4 100644 --- a/modules/stream_out/rtcp.c +++ b/modules/stream_out/rtcp.c @@ -36,6 +36,10 @@ #include +#ifndef SOL_IP +# define SOL_IP IPPROTO_IP +#endif + /* * NOTE on RTCP implementation: * - there is a single sender (us), no conferencing here! => n = sender = 1, From git at videolan.org Wed Feb 25 17:18:29 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 17:18:29 +0100 (CET) Subject: [vlc-devel] commit: Fix spelling of the word ``instantiating''. (JP Dinger ) Message-ID: <20090225161829.A79372F488@skanda.videolan.org> vlc | branch: 0.9-bugfix | JP Dinger | Wed Feb 25 14:19:48 2009 +0100| [a646b5b5453e8a175fe869fb6537d8c0621dd6a1] | committer: R?mi Denis-Courmont Fix spelling of the word ``instantiating''. Signed-off-by: R?mi Denis-Courmont (cherry picked from commit 9563b714723b40c3c2020e51c1c6a2474e3cf548) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a646b5b5453e8a175fe869fb6537d8c0621dd6a1 --- bindings/python/vlc_instance.c | 2 +- bindings/python/vlc_media.c | 2 +- bindings/python/vlc_mediacontrol.c | 2 +- bindings/python/vlc_mediaplayer.c | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bindings/python/vlc_instance.c b/bindings/python/vlc_instance.c index 3e5462a..0c26c5d 100644 --- a/bindings/python/vlc_instance.c +++ b/bindings/python/vlc_instance.c @@ -80,7 +80,7 @@ vlcInstance_new( PyTypeObject *type, PyObject *args, PyObject *kwds ) char** ppsz_args = NULL; int i_size = 0; - fprintf(stderr, "Instancianting\n"); + fprintf(stderr, "Instantiating\n"); if( PyArg_ParseTuple( args, "|O", &py_list ) ) { i_size = pyoptions_to_args( py_list, &ppsz_args ); diff --git a/bindings/python/vlc_media.c b/bindings/python/vlc_media.c index 280e68b..066fcf6 100644 --- a/bindings/python/vlc_media.c +++ b/bindings/python/vlc_media.c @@ -30,7 +30,7 @@ static PyObject * vlcMedia_new( PyTypeObject *type, PyObject *args, PyObject *kwds ) { fprintf(stderr, "vlcMedia_new called\n"); - PyErr_SetString( PyExc_TypeError, "vlc.Media can be instanciated by itself. You should use vlc.Instance().media_new(mrl)." ); + PyErr_SetString( PyExc_TypeError, "vlc.Media can be instantiated by itself. You should use vlc.Instance().media_new(mrl)." ); return NULL; } diff --git a/bindings/python/vlc_mediacontrol.c b/bindings/python/vlc_mediacontrol.c index b5b51ff..7c4759b 100644 --- a/bindings/python/vlc_mediacontrol.c +++ b/bindings/python/vlc_mediacontrol.c @@ -40,7 +40,7 @@ MediaControl_new( PyTypeObject *type, PyObject *args, PyObject *kwds ) self = PyObject_New( MediaControl, &MediaControl_Type ); - fprintf (stderr, "Instanciating mediacontrol\n"); + fprintf (stderr, "Instantiating mediacontrol\n"); if( PyArg_ParseTuple( args, "O", &py_param ) ) { if( PyObject_TypeCheck( py_param, &vlcInstance_Type ) == 1 ) diff --git a/bindings/python/vlc_mediaplayer.c b/bindings/python/vlc_mediaplayer.c index f01cb3d..b2e775d 100644 --- a/bindings/python/vlc_mediaplayer.c +++ b/bindings/python/vlc_mediaplayer.c @@ -632,7 +632,7 @@ static PyTypeObject vlcMediaPlayer_Type = 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /*tp_flags*/ - "vlc.MediaPlayer object\n\nIt cannot be instanciated standalone, it must be obtained from an existing vlc.Instance object", /* tp_doc */ + "vlc.MediaPlayer object\n\nIt cannot be instantiated standalone, it must be obtained from an existing vlc.Instance object", /* tp_doc */ 0, /* tp_traverse */ 0, /* tp_clear */ 0, /* tp_richcompare */ From rem at videolan.org Wed Feb 25 17:18:39 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 18:18:39 +0200 Subject: [vlc-devel] [patch] Fix spelling of ``intantiating'' in the python bindings In-Reply-To: References: Message-ID: <200902251818.40475.rem@videolan.org> Le mercredi 25 f?vrier 2009 16:06:19 jpd at m2x.nl, vous avez ?crit?: > Fix spelling of the word ``instantiating'' in the python bindings. merged, thanks. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 25 17:31:39 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 17:31:39 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Avoid_infinite_loop_when_the_teln?= =?utf-8?q?et_session_is_closed_client-side=2E__=28_R=C3=A9mi_Denis-Courmo?= =?utf-8?q?nt_=29?= Message-ID: <20090225163139.C20AA2F93B@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Wed Feb 25 18:31:21 2009 +0200| [94d47acb83e4546ec3580afc8da62a9ba5e86cb7] | committer: R?mi Denis-Courmont Avoid infinite loop when the telnet session is closed client-side. Signed-off-by: R?mi Denis-Courmont (cherry picked from commit 51d3696e9db7df2a1cabade28f058d8183b6d1ed) Conflicts: modules/control/telnet.c > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=94d47acb83e4546ec3580afc8da62a9ba5e86cb7 --- modules/control/telnet.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/control/telnet.c b/modules/control/telnet.c index 643defd..f7ce883 100644 --- a/modules/control/telnet.c +++ b/modules/control/telnet.c @@ -382,7 +382,7 @@ static void Run( intf_thread_t *p_intf ) } #endif - if (i_recv <= 0 && ( end || errno != EAGAIN ) ) + if( i_recv == 0 || ( i_recv == -1 && ( end || errno != EAGAIN ) ) ) goto drop; } } From rem at videolan.org Wed Feb 25 17:31:49 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 18:31:49 +0200 Subject: [vlc-devel] [PATCH] Fix infinite loop in the telnet interface In-Reply-To: <49A4C707.70300@videolan.org> References: <49A4C707.70300@videolan.org> Message-ID: <200902251831.49930.rem@videolan.org> Le mercredi 25 f?vrier 2009 06:20:23 Adrien Grand, vous avez ?crit?: > The attached patch if a fix proposal for this issue. > > Best regards, Merged, thanks. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 25 17:36:41 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 17:36:41 +0100 (CET) Subject: [vlc-devel] commit: Do not notifications actions if the server does not support it ( Cody Russell ) Message-ID: <20090225163641.715D52F598@skanda.videolan.org> vlc | branch: 0.9-bugfix | Cody Russell | Wed Feb 25 18:35:36 2009 +0200| [dbc1d7a69163e430f8452efeb8f7206c8ef2d7ba] | committer: R?mi Denis-Courmont Do not notifications actions if the server does not support it Signed-off-by: R?mi Denis-Courmont (cherry picked from commit b632da4ef211e214f3a1044d40bb43bf7b666b12) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dbc1d7a69163e430f8452efeb8f7206c8ef2d7ba --- modules/misc/notify/notify.c | 41 ++++++++++++++++++++++++++++++++++++----- 1 files changed, 36 insertions(+), 5 deletions(-) diff --git a/modules/misc/notify/notify.c b/modules/misc/notify/notify.c index ccfb05a..63f918f 100644 --- a/modules/misc/notify/notify.c +++ b/modules/misc/notify/notify.c @@ -272,6 +272,35 @@ static void Prev( NotifyNotification *notification, gchar *psz, gpointer p ) pl_Release( ((vlc_object_t*) p) ); } +static gboolean +can_support_actions () +{ + static gboolean supports_actions = FALSE; + static gboolean have_checked = FALSE; + + if( !have_checked ) { + GList *caps = NULL; + GList *c; + + have_checked = TRUE; + + caps = notify_get_server_caps (); + if( caps != NULL ) { + for( c = caps; c != NULL; c = c->next ) { + if( strcmp( (char*)c->data, "actions" ) == 0 ) { + supports_actions = TRUE; + break; + } + } + } + + g_list_foreach( caps, (GFunc)g_free, NULL ); + g_list_free( caps ); + } + + return supports_actions; +} + static int Notify( vlc_object_t *p_this, const char *psz_temp, GdkPixbuf *pix, intf_thread_t *p_intf ) { @@ -296,11 +325,13 @@ static int Notify( vlc_object_t *p_this, const char *psz_temp, GdkPixbuf *pix, gdk_pixbuf_unref( pix ); } - /* Adds previous and next buttons in the notification */ - notify_notification_add_action( notification, "previous", _("Previous"), Prev, - (gpointer*) p_intf, NULL ); - notify_notification_add_action( notification, "next", _("Next"), Next, - (gpointer*) p_intf, NULL ); + /* Adds previous and next buttons in the notification if actions are supported. */ + if( can_support_actions() ) { + notify_notification_add_action( notification, "previous", _("Previous"), Prev, + (gpointer*) p_intf, NULL ); + notify_notification_add_action( notification, "next", _("Next"), Next, + (gpointer*) p_intf, NULL ); + } notify_notification_show( notification, NULL); From fenrir at via.ecp.fr Wed Feb 25 17:41:28 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Wed, 25 Feb 2009 17:41:28 +0100 Subject: [vlc-devel] commit: Do not notifications actions if the server does not support it ( Cody Russell ) In-Reply-To: <20090225163641.715D52F598@skanda.videolan.org> References: <20090225163641.715D52F598@skanda.videolan.org> Message-ID: <20090225164128.GA9346@via.ecp.fr> Hi, > +static gboolean > +can_support_actions () > +{ > + static gboolean supports_actions = FALSE; > + static gboolean have_checked = FALSE; > + > + if( !have_checked ) { > + GList *caps = NULL; > + GList *c; > + > + have_checked = TRUE; > + > + caps = notify_get_server_caps (); > + if( caps != NULL ) { > + for( c = caps; c != NULL; c = c->next ) { > + if( strcmp( (char*)c->data, "actions" ) == 0 ) { > + supports_actions = TRUE; > + break; > + } > + } > + } This is not thread safe (unless I missed a global lock somewhere). It would probably be better to store it inside p_intf->p_sys instead. -- fenrir From rem at videolan.org Wed Feb 25 18:05:00 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 19:05:00 +0200 Subject: [vlc-devel] =?iso-8859-1?q?commit=3A_Do_not_notifications_actions?= =?iso-8859-1?q?_if_the_server=09does_not_support_it_=28_Cody_Russe?= =?iso-8859-1?q?ll_=29?= In-Reply-To: <20090225164128.GA9346@via.ecp.fr> References: <20090225163641.715D52F598@skanda.videolan.org> <20090225164128.GA9346@via.ecp.fr> Message-ID: <200902251905.00876.rem@videolan.org> Le mercredi 25 f?vrier 2009 18:41:28 Laurent Aimar, vous avez ?crit?: > This is not thread safe (unless I missed a global lock somewhere). > It would probably be better to store it inside p_intf->p_sys instead. It is called with the lock, but indeed it's not global. That would be a problem if we have more than one notify plugin instance in the process. That seems to not be supported by libnotify anyhow. I don't really know though. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 25 18:38:36 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 18:38:36 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_media=5Flist_test_is_safe_to_run_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090225173836.9AEEC2F9C4@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 25 19:38:21 2009 +0200| [099bacb29a8e70ec553ea16c4c4a09099a165b2a] | committer: R?mi Denis-Courmont media_list test is safe to run > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=099bacb29a8e70ec553ea16c4c4a09099a165b2a --- test/Makefile.am | 2 +- test/libvlc/media_list.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/Makefile.am b/test/Makefile.am index 96ace3f..e1d30cb 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -10,9 +10,9 @@ AUTOMAKE_OPTIONS = subdir-objects check_PROGRAMS = \ test_libvlc_core \ test_libvlc_events \ + test_libvlc_media_list \ $(NULL) EXTRA_PROGRAMS = \ - test_libvlc_media_list \ test_libvlc_media_list_player \ test_libvlc_media_player \ test_libvlc_meta \ diff --git a/test/libvlc/media_list.c b/test/libvlc/media_list.c index db8c9e2..fb17697 100644 --- a/test/libvlc/media_list.c +++ b/test/libvlc/media_list.c @@ -115,7 +115,7 @@ static void test_media_list (const char ** argv, int argc) p_non_exist = libvlc_media_list_item_at_index (ml, -1, &ex); assert (have_exception ()); - md4 = libvlc_media_new (vlc, "/dev/dsp", &ex); + md4 = libvlc_media_new (vlc, "/dev/null", &ex); catch (); /* try to find non inserted item */ From git at videolan.org Wed Feb 25 19:07:03 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:07:03 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Provide_a_dummy_=28empty=29_but_v?= =?utf-8?q?alid_sample_file_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090225180703.A23AE2F405@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 25 20:06:05 2009 +0200| [97a25c1e1dad85be8bdb14c4b7e308d1eebf5c38] | committer: R?mi Denis-Courmont Provide a dummy (empty) but valid sample file > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=97a25c1e1dad85be8bdb14c4b7e308d1eebf5c38 --- test/Makefile.am | 3 ++- test/libvlc/test.h | 3 ++- test/samples/empty.voc | Bin 0 -> 26 bytes 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/test/Makefile.am b/test/Makefile.am index e1d30cb..fa70e4c 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -18,6 +18,7 @@ EXTRA_PROGRAMS = \ test_libvlc_meta \ $(NULL) #check_DATA = samples/test.sample samples/meta.sample +EXTRA_DIST = samples/empty.voc check_HEADERS = libvlc/test.h @@ -36,7 +37,7 @@ samples/meta.sample: mkdir -p `dirname $@` curl $(SAMPLES_SERVER)/metadata/id3tag/Wesh-Bonneville.mp3 > $@ -CFLAGS_tests = `$(VLC_CONFIG) --cflags libvlc` +CFLAGS_tests = `$(VLC_CONFIG) --cflags libvlc` -DSRCDIR=\"$(srcdir)\" test_libvlc_core_SOURCES = libvlc/core.c test_libvlc_core_LDADD = $(top_builddir)/src/libvlc.la diff --git a/test/libvlc/test.h b/test/libvlc/test.h index 947caa9..388a465 100644 --- a/test/libvlc/test.h +++ b/test/libvlc/test.h @@ -62,7 +62,8 @@ static const char * test_defaults_args[] = { static const int test_defaults_nargs = sizeof (test_defaults_args) / sizeof (test_defaults_args[0]); -static const char * test_default_sample = "samples/test.sample"; +/*static const char test_default_sample[] = "samples/test.sample";*/ +static const char test_default_sample[] = SRCDIR"/samples/empty.voc"; /********************************************************************* diff --git a/test/samples/empty.voc b/test/samples/empty.voc new file mode 100644 index 0000000..ae564ba Binary files /dev/null and b/test/samples/empty.voc differ From git at videolan.org Wed Feb 25 19:07:03 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:07:03 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_media=5Flist=5Fplayer_test_now_wo?= =?utf-8?q?rks_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090225180703.DF7AE2F3ED@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 25 20:06:31 2009 +0200| [76edeee9b7ae4066c74495b384f67f9e6e2279da] | committer: R?mi Denis-Courmont media_list_player test now works > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=76edeee9b7ae4066c74495b384f67f9e6e2279da --- test/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/test/Makefile.am b/test/Makefile.am index fa70e4c..11fc906 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -11,9 +11,9 @@ check_PROGRAMS = \ test_libvlc_core \ test_libvlc_events \ test_libvlc_media_list \ + test_libvlc_media_list_player \ $(NULL) EXTRA_PROGRAMS = \ - test_libvlc_media_list_player \ test_libvlc_media_player \ test_libvlc_meta \ $(NULL) From git at videolan.org Wed Feb 25 19:07:03 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:07:03 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Convenience_target_to_run_also_th?= =?utf-8?q?e_broken_tests_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090225180704.0114F2FA4F@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Wed Feb 25 20:06:43 2009 +0200| [82b4611cba108abf3a142437d40c1b93b8cd992e] | committer: R?mi Denis-Courmont Convenience target to run also the broken tests > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=82b4611cba108abf3a142437d40c1b93b8cd992e --- test/Makefile.am | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/test/Makefile.am b/test/Makefile.am index 11fc906..73c65b9 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -63,6 +63,8 @@ test_libvlc_meta_SOURCES = libvlc/meta.c test_libvlc_meta_LDADD = $(top_builddir)/src/libvlc.la test_libvlc_meta_CFLAGS = $(CFLAGS_tests) +checkall: + $(MAKE) check_PROGRAMS="$(check_PROGRAMS) $(EXTRA_PROGRAMS)" check FORCE: @echo "Generated source cannot be phony. Go away." >&2 From rem at videolan.org Wed Feb 25 19:08:31 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 20:08:31 +0200 Subject: [vlc-devel] =?utf-8?q?commit=3A_Copy_IPv4_multicast_TTL_from_RTP_?= =?utf-8?q?to_RTCP=2E_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <49A4F9CC.9060905@gmail.com> References: <20090223163354.CB3D82F524@skanda.videolan.org> <49A4F9CC.9060905@gmail.com> Message-ID: <200902252008.31653.rem@videolan.org> Le mercredi 25 f?vrier 2009 09:57:00 xxcv, vous avez ?crit?: > git version control wrote: > > vlc | branch: 0.9-bugfix | R?mi Denis-Courmont > > | Mon Feb 23 18:24:58 2009 +0200| > > [19c943dc3b2883d09f490e25c36e19ff8d814d37] | committer: R?mi > > Denis-Courmont > > > > Copy IPv4 multicast TTL from RTP to RTCP. > > > > We were sending RTCP with TTL=1 all the time... > > (cherry picked from commit 7da51390659d29b3022c748b6e8491ad3e37f5e6) > > Due to that not all systems have SOL_IP, compile fix. Fixed thanks. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 25 19:47:51 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:51 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_notify=3A_less_includes=2E_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090225184751.2AAB42FA06@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 13:22:32 2009 +0100| [441e26094df4feb354cb2c9aaf63d5a5ce90cef3] | committer: R?mi Duraffort notify: less includes. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=441e26094df4feb354cb2c9aaf63d5a5ce90cef3 --- modules/misc/notify/notify.c | 2 -- modules/misc/notify/telepathy.c | 10 ++++------ 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/modules/misc/notify/notify.c b/modules/misc/notify/notify.c index a94911c..643b55b 100644 --- a/modules/misc/notify/notify.c +++ b/modules/misc/notify/notify.c @@ -32,9 +32,7 @@ #include #include #include -#include -#include #include #include diff --git a/modules/misc/notify/telepathy.c b/modules/misc/notify/telepathy.c index f2fff32..a18687e 100644 --- a/modules/misc/notify/telepathy.c +++ b/modules/misc/notify/telepathy.c @@ -1,7 +1,7 @@ /***************************************************************************** * telepathy.c : changes Telepathy Presence information using MissionControl ***************************************************************************** - * Copyright ? 2007 the VideoLAN team + * Copyright ? 2007-2009 the VideoLAN team * $Id$ * * Author: Rafa?l Carr? @@ -32,9 +32,9 @@ #include #include #include -#include #include #include + #include /***************************************************************************** @@ -94,7 +94,6 @@ static int Open( vlc_object_t *p_this ) { intf_thread_t *p_intf = (intf_thread_t *)p_this; playlist_t *p_playlist; - DBusConnection *p_conn; DBusError error; p_intf->p_sys = malloc( sizeof( intf_sys_t ) ); @@ -103,8 +102,8 @@ static int Open( vlc_object_t *p_this ) /* connect to the session bus */ dbus_error_init( &error ); - p_conn = dbus_bus_get( DBUS_BUS_SESSION, &error ); - if( !p_conn ) + p_intf->p_sys->p_conn = dbus_bus_get( DBUS_BUS_SESSION, &error ); + if( !p_intf->p_sys->p_conn ) { msg_Err( p_this, "Failed to connect to the DBus session daemon: %s", error.message ); @@ -112,7 +111,6 @@ static int Open( vlc_object_t *p_this ) free( p_intf->p_sys ); return VLC_EGENERIC; } - p_intf->p_sys->p_conn = p_conn; p_intf->p_sys->psz_format = config_GetPsz( p_intf, "telepathy-format" ); if( !p_intf->p_sys->psz_format ) From git at videolan.org Wed Feb 25 19:47:51 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:51 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_telepathy=3A_compute_test_only_on?= =?utf-8?q?e_time_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090225184751.3ACED2FB11@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 13:25:29 2009 +0100| [bb37f1c4a1164f0d993d2bb890ceb8763552948a] | committer: R?mi Duraffort telepathy: compute test only one time (and strlen("item-current") == 12) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bb37f1c4a1164f0d993d2bb890ceb8763552948a --- modules/misc/notify/telepathy.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/misc/notify/telepathy.c b/modules/misc/notify/telepathy.c index a18687e..d3e407c 100644 --- a/modules/misc/notify/telepathy.c +++ b/modules/misc/notify/telepathy.c @@ -173,9 +173,10 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, playlist_t* p_playlist = (playlist_t*) p_this; char *psz_buf = NULL; input_thread_t *p_input; + bool b_is_item_current = !strncmp( "item-current", psz_var, 12 ); /* Don't update Telepathy presence each time an item has been preparsed */ - if( !strncmp( "item-current", psz_var, 16 ) ) + if( b_is_item_current ) { /* stores the current input item id */ p_intf->p_sys->i_id = newval.i_int; p_intf->p_sys->i_item_changes = 0; @@ -209,7 +210,7 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, } } - if( !strncmp( "item-current", psz_var, 16 ) ) + if( b_is_item_current ) var_AddCallback( p_input, "state", StateChange, p_intf ); /* We format the string to be displayed */ From git at videolan.org Wed Feb 25 19:47:51 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:51 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_unused_variable=2E_=28_R=C3=A9mi_?= =?utf-8?q?Duraffort_=29?= Message-ID: <20090225184751.4CF6D2FA06@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 13:33:17 2009 +0100| [e902925f9792c77a456a4d7009d2636c7a3b120d] | committer: R?mi Duraffort unused variable. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e902925f9792c77a456a4d7009d2636c7a3b120d --- modules/misc/dummy/input.c | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff --git a/modules/misc/dummy/input.c b/modules/misc/dummy/input.c index 19e430f..886cea3 100644 --- a/modules/misc/dummy/input.c +++ b/modules/misc/dummy/input.c @@ -47,9 +47,8 @@ static ssize_t AccessRead( access_t *p_access, uint8_t *p, size_t i_size ) } static int AccessControl( access_t *p_access, int i_query, va_list args ) { - bool *pb_bool; - int *pi_int; - int64_t *pi_64; + bool *pb_bool; + int64_t *pi_64; switch( i_query ) { From git at videolan.org Wed Feb 25 19:47:51 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:51 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_osd=3A_use_calloc_and_a_bit_of_cl?= =?utf-8?b?ZWFuaW5nLiAoIFLDqW1pIER1cmFmZm9ydCAp?= Message-ID: <20090225184751.7DD9E2FB13@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 13:46:16 2009 +0100| [27a40f30d6bbd0190a122dc7f9e042dac320f73b] | committer: R?mi Duraffort osd: use calloc and a bit of cleaning. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=27a40f30d6bbd0190a122dc7f9e042dac320f73b --- modules/misc/osd/osd_menu.c | 18 +++++------------- 1 files changed, 5 insertions(+), 13 deletions(-) diff --git a/modules/misc/osd/osd_menu.c b/modules/misc/osd/osd_menu.c index e855354..f5d8704 100644 --- a/modules/misc/osd/osd_menu.c +++ b/modules/misc/osd/osd_menu.c @@ -49,16 +49,11 @@ osd_menu_t *osd_MenuNew( osd_menu_t *p_menu, const char *psz_path, { if( !p_menu ) return NULL; - p_menu->p_state = (osd_menu_state_t *) malloc( sizeof( osd_menu_state_t ) ); + p_menu->p_state = calloc( 1, sizeof( osd_menu_state_t ) ); if( !p_menu->p_state ) return NULL; - memset(p_menu->p_state, 0, sizeof(osd_menu_state_t)); - if( psz_path != NULL ) - p_menu->psz_path = strdup( psz_path ); - else - p_menu->psz_path = NULL; - + p_menu->psz_path = psz_path ? strdup( psz_path ) : NULL; p_menu->i_x = i_x; p_menu->i_y = i_y; p_menu->i_style = OSD_MENU_STYLE_SIMPLE; @@ -89,11 +84,10 @@ void osd_MenuFree( osd_menu_t *p_menu ) osd_button_t *osd_ButtonNew( const char *psz_action, int i_x, int i_y ) { osd_button_t *p_button = NULL; - p_button = (osd_button_t*) malloc( sizeof(osd_button_t) ); + p_button = calloc( 1, sizeof(osd_button_t) ); if( !p_button ) return NULL; - memset( p_button, 0, sizeof(osd_button_t) ); p_button->psz_action = strdup(psz_action); p_button->psz_action_down = NULL; p_button->p_feedback = NULL; @@ -186,7 +180,6 @@ void osd_ButtonFree( osd_menu_t *p_menu, osd_button_t *p_button ) osd_StatesFree( p_menu, p_button->p_states ); free( p_button ); - p_button = NULL; } } @@ -199,11 +192,10 @@ osd_state_t *osd_StateNew( osd_menu_t *p_menu, const char *psz_file, osd_state_t *p_state = NULL; video_format_t fmt_in, fmt_out; - p_state = (osd_state_t*) malloc( sizeof(osd_state_t) ); + p_state = calloc( 1, sizeof(osd_state_t) ); if( !p_state ) return NULL; - memset( p_state, 0, sizeof(osd_state_t) ); memset( &fmt_in, 0, sizeof(video_format_t) ); memset( &fmt_out, 0, sizeof(video_format_t) ); @@ -282,6 +274,6 @@ void osd_StatesFree( osd_menu_t *p_menu, osd_state_t *p_states ) } free( p_state->psz_state ); free( p_states ); - p_states = NULL; } } + From git at videolan.org Wed Feb 25 19:47:51 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:51 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_osd=3A_less_includes=2E_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090225184751.9DB882FB75@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 13:53:23 2009 +0100| [483c5ced94d21a01d759792451d26a5a9ad2b423] | committer: R?mi Duraffort osd: less includes. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=483c5ced94d21a01d759792451d26a5a9ad2b423 --- modules/misc/osd/parser.c | 6 ------ modules/misc/osd/simple.c | 5 ----- modules/misc/osd/xml.c | 7 ------- 3 files changed, 0 insertions(+), 18 deletions(-) diff --git a/modules/misc/osd/parser.c b/modules/misc/osd/parser.c index 48d21c0..5978b1b 100644 --- a/modules/misc/osd/parser.c +++ b/modules/misc/osd/parser.c @@ -30,13 +30,7 @@ #include #include -#include -#include - -#include -#include #include -#include #include "osd_menu.h" diff --git a/modules/misc/osd/simple.c b/modules/misc/osd/simple.c index 88bd3ab..992efe9 100644 --- a/modules/misc/osd/simple.c +++ b/modules/misc/osd/simple.c @@ -30,11 +30,6 @@ #endif #include -#include -#include - -#include -#include #include #include diff --git a/modules/misc/osd/xml.c b/modules/misc/osd/xml.c index 0b24500..a8dba96 100644 --- a/modules/misc/osd/xml.c +++ b/modules/misc/osd/xml.c @@ -30,13 +30,6 @@ #endif #include -#include -#include - -#include -#include -#include -#include #include "osd_menu.h" From git at videolan.org Wed Feb 25 19:47:53 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:53 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_playlist_export=3A_unify_module_d?= =?utf-8?q?escription=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090225184753.08C9D2FA06@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 13:56:46 2009 +0100| [277ae701fb6cb331e52eba19956b50e081551eaa] | committer: R?mi Duraffort playlist export: unify module description. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=277ae701fb6cb331e52eba19956b50e081551eaa --- modules/misc/playlist/export.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/misc/playlist/export.c b/modules/misc/playlist/export.c index 7ca77f0..4c236cb 100644 --- a/modules/misc/playlist/export.c +++ b/modules/misc/playlist/export.c @@ -1,7 +1,7 @@ /***************************************************************************** * export.c : Playlist export module ***************************************************************************** - * Copyright (C) 2004 the VideoLAN team + * Copyright (C) 2004-2009 the VideoLAN team * $Id$ * * Authors: Cl?ment Stenac @@ -47,13 +47,13 @@ vlc_module_begin () set_category( CAT_PLAYLIST ) set_subcategory( SUBCAT_PLAYLIST_EXPORT ) add_submodule () - set_description( N_("M3U playlist exporter") ) + set_description( N_("M3U playlist export") ) add_shortcut( "export-m3u" ) set_capability( "playlist export" , 0 ) set_callbacks( Export_M3U , NULL ) add_submodule () - set_description( N_("Old playlist exporter") ) + set_description( N_("Old playlist export") ) add_shortcut( "export-old" ) set_capability( "playlist export" , 0 ) set_callbacks( Export_Old , NULL ) From git at videolan.org Wed Feb 25 19:47:53 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:53 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_plyalist=5Fexport=3A_less_include?= =?utf-8?q?s=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090225184753.6C8842FB18@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 14:08:14 2009 +0100| [93067a2e334bbc6d30bf53c58ca013ed43f21cbd] | committer: R?mi Duraffort plyalist_export: less includes. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=93067a2e334bbc6d30bf53c58ca013ed43f21cbd --- modules/misc/playlist/html.c | 3 +-- modules/misc/playlist/m3u.c | 7 ++----- modules/misc/playlist/old.c | 4 +--- modules/misc/playlist/xspf.c | 5 +---- 4 files changed, 5 insertions(+), 14 deletions(-) diff --git a/modules/misc/playlist/html.c b/modules/misc/playlist/html.c index a0926f9..802214a 100644 --- a/modules/misc/playlist/html.c +++ b/modules/misc/playlist/html.c @@ -1,7 +1,7 @@ /***************************************************************************** * html.c : HTML playlist export module ***************************************************************************** - * Copyright (C) 2008 the VideoLAN team + * Copyright (C) 2008-2009 the VideoLAN team * $Id$ * * Authors: R?mi Duraffort @@ -28,7 +28,6 @@ #include #include #include -#include #include #include diff --git a/modules/misc/playlist/m3u.c b/modules/misc/playlist/m3u.c index 4cc4a1d..d3564d3 100644 --- a/modules/misc/playlist/m3u.c +++ b/modules/misc/playlist/m3u.c @@ -1,7 +1,7 @@ /***************************************************************************** - * m3u.c : M3U playlist export module + * m3u.c : M3U playlist export module ***************************************************************************** - * Copyright (C) 2004 the VideoLAN team + * Copyright (C) 2004-2009 the VideoLAN team * $Id$ * * Authors: Cl?ment Stenac @@ -30,13 +30,10 @@ #endif #include -#include #include #include #include -#include /* ENOMEM */ - #include /***************************************************************************** diff --git a/modules/misc/playlist/old.c b/modules/misc/playlist/old.c index 6de9648..2819cac 100644 --- a/modules/misc/playlist/old.c +++ b/modules/misc/playlist/old.c @@ -1,7 +1,7 @@ /***************************************************************************** * old.c : Old playlist format import/export ***************************************************************************** - * Copyright (C) 2004 the VideoLAN team + * Copyright (C) 2004-2009 the VideoLAN team * $Id$ * * Authors: Cl?ment Stenac @@ -30,12 +30,10 @@ #endif #include -#include #include #include #include -#include /* ENOMEM */ #define PLAYLIST_FILE_HEADER "# vlc playlist file version 0.5" diff --git a/modules/misc/playlist/xspf.c b/modules/misc/playlist/xspf.c index 9bdfa43..9b7ef96 100644 --- a/modules/misc/playlist/xspf.c +++ b/modules/misc/playlist/xspf.c @@ -1,7 +1,7 @@ /****************************************************************************** * xspf.c : XSPF playlist export functions ****************************************************************************** - * Copyright (C) 2006 the VideoLAN team + * Copyright (C) 2006-2009 the VideoLAN team * $Id$ * * Authors: Daniel Str?nger @@ -31,12 +31,9 @@ #endif #include -#include #include #include -#include #include -#include #include #include "xspf.h" From git at videolan.org Wed Feb 25 19:47:53 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:53 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_stats=3A_consistence_declaration?= =?utf-8?b?LiAoIFLDqW1pIER1cmFmZm9ydCAp?= Message-ID: <20090225184753.8218A2FB94@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 14:14:13 2009 +0100| [df993d1ce79295a84960624dc30c90e0e9bafedd] | committer: R?mi Duraffort stats: consistence declaration. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=df993d1ce79295a84960624dc30c90e0e9bafedd --- modules/misc/stats/encoder.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/misc/stats/encoder.c b/modules/misc/stats/encoder.c index 2cf9c6d..74858ac 100644 --- a/modules/misc/stats/encoder.c +++ b/modules/misc/stats/encoder.c @@ -46,7 +46,7 @@ struct encoder_sys_t * Local prototypes *****************************************************************************/ static block_t *EncodeVideo( encoder_t *p_enc, picture_t *p_pict ); -static block_t *EncodeAudio( encoder_t *p_enc, picture_t *p_pict ); +static block_t *EncodeAudio( encoder_t *p_enc, aout_buffer_t *p_abuff ); /***************************************************************************** * OpenDecoder: open the dummy encoder. @@ -91,9 +91,9 @@ static block_t *EncodeVideo( encoder_t *p_enc, picture_t *p_pict ) /**************************************************************************** * EncodeVideo: the whole thing ****************************************************************************/ -static block_t *EncodeAudio( encoder_t *p_enc, picture_t *p_pict ) +static block_t *EncodeAudio( encoder_t *p_enc, aout_buffer_t *p_abuff ) { - (void)p_pict; + (void)p_abuff; (void)p_enc; return NULL; } From git at videolan.org Wed Feb 25 19:47:53 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:53 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_xtag=3A_comment_out_xtag=5Fsnprin?= =?utf-8?q?t_wich_is_never_used=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090225184753.ACAFA2F73E@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 14:18:40 2009 +0100| [fd80be2b14b55b096ccab05f9cc4ae77fb4f1b59] | committer: R?mi Duraffort xtag: comment out xtag_snprint wich is never used. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fd80be2b14b55b096ccab05f9cc4ae77fb4f1b59 --- modules/misc/xml/xtag.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/modules/misc/xml/xtag.c b/modules/misc/xml/xtag.c index 2c5a150..681be12 100644 --- a/modules/misc/xml/xtag.c +++ b/modules/misc/xml/xtag.c @@ -123,7 +123,9 @@ static char *xtag_get_attribute( XTag *, char * ); static XTag *xtag_first_child( XTag *, char * ); static XTag *xtag_next_child( XTag *, char * ); static void xtag_free( XTag * ); +#if 0 static int xtag_snprint( char *, int, XTag * ); +#endif /***************************************************************************** * Module initialization @@ -965,6 +967,7 @@ static XTag *xtag_next_child( XTag *xtag, char *name ) return NULL; } +#if 0 /* * This snprints function takes a variable list of char *, the last of * which must be NULL, and prints each in turn to buf. @@ -1066,4 +1069,5 @@ static int xtag_snprint( char *buf, int n, XTag *xtag ) return written; } +#endif From git at videolan.org Wed Feb 25 19:47:53 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:53 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_update_LIST=2E_=28_R=C3=A9mi_Dura?= =?utf-8?q?ffort_=29?= Message-ID: <20090225184753.C93D32F46E@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 14:23:25 2009 +0100| [c80d156ded76e3c5537568c96f24be1a0886787b] | committer: R?mi Duraffort update LIST. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c80d156ded76e3c5537568c96f24be1a0886787b --- modules/LIST | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/modules/LIST b/modules/LIST index e40c7a7..2c75355 100644 --- a/modules/LIST +++ b/modules/LIST @@ -19,6 +19,7 @@ $Id$ * access_jack: JACK audio input module * access_mmap: mmap file access * access_mms: MMS over TCP, UDP and HTTP access module + * access_mtp: MTP access module * access_oss: OSS access module * access_output_dummy: dummy access_output module * access_output_file: File access_output module @@ -200,6 +201,7 @@ $Id$ * mpgatofixed32: MPEG-1 & 2 audio layer I,II,III audio decoder using MAD * mpgv: MPEG-I/II Video demuxer * msn: announce currently playing stream to MSN + * mtp: MTP interface module * mux_asf: ASF muxer * mux_avi: AVI muxer * mux_dummy: dummy muxer @@ -278,6 +280,7 @@ $Id$ * screensaver: screensaver disabling module * sdl_image: SDL-based image decoder * sharpen: Sharpen video filter + * shine: MP3 encoder using Shine, a fixed point implementation * shout: Shoutcast services discovery * showintf: shows the main interface * signals: POSIX signals handling interface @@ -361,6 +364,7 @@ $Id$ * wince: Pocket PC interface * wingapi: Win CE video output * wingdi: WIN 32 / WIN CE GDI video output + * wma_fixed: wma decoder using integer decoder from Rockbox * x11: video output module using the X11 API * x264: H264 video decoder using X264 * xa: XA demuxer From git at videolan.org Wed Feb 25 19:47:51 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 19:47:51 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_osd=3A_less_includes=2E_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090225184751.6088C2FB04@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Wed Feb 25 13:40:13 2009 +0100| [c7d390748c73d178bc33ebe6cee311449a818b5b] | committer: R?mi Duraffort osd: less includes. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c7d390748c73d178bc33ebe6cee311449a818b5b --- modules/misc/osd/osd_menu.c | 5 ----- 1 files changed, 0 insertions(+), 5 deletions(-) diff --git a/modules/misc/osd/osd_menu.c b/modules/misc/osd/osd_menu.c index f85cfc0..e855354 100644 --- a/modules/misc/osd/osd_menu.c +++ b/modules/misc/osd/osd_menu.c @@ -30,13 +30,8 @@ #endif #include -#include -#include - -#include #include #include -#include #include "osd_menu.h" From rem at videolan.org Wed Feb 25 19:54:53 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Wed, 25 Feb 2009 20:54:53 +0200 Subject: [vlc-devel] =?utf-8?q?commit=3A_telepathy=3A_compute_test_only_on?= =?utf-8?q?e_time_=28_R=C3=A9mi_Duraffort_=29?= In-Reply-To: <20090225184751.3ACED2FB11@skanda.videolan.org> References: <20090225184751.3ACED2FB11@skanda.videolan.org> Message-ID: <200902252054.53799.rem@videolan.org> Le mercredi 25 f?vrier 2009 20:47:51 git version control, vous avez ?crit?: > vlc | branch: master | R?mi Duraffort | Wed Feb 25 > 13:25:29 2009 +0100| [bb37f1c4a1164f0d993d2bb890ceb8763552948a] | > committer: R?mi Duraffort > > telepathy: compute test only one time > (and strlen("item-current") == 12) Actually, you've changed the behavior, as the code was really equivalent to strcmp(), and not anymore (it won't compare the nul). I don't know what's right. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Wed Feb 25 21:23:12 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 21:23:12 +0100 (CET) Subject: [vlc-devel] commit: Cosmetics (notify) (Laurent Aimar ) Message-ID: <20090225202312.5E4492FB81@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 25 20:53:48 2009 +0100| [9b028f81d839b8d4835312a7c12122f9d5c17c58] | committer: Laurent Aimar Cosmetics (notify) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9b028f81d839b8d4835312a7c12122f9d5c17c58 --- modules/misc/notify/notify.c | 48 ++++++++++++++++++++--------------------- 1 files changed, 23 insertions(+), 25 deletions(-) diff --git a/modules/misc/notify/notify.c b/modules/misc/notify/notify.c index 643b55b..a79b0de 100644 --- a/modules/misc/notify/notify.c +++ b/modules/misc/notify/notify.c @@ -37,25 +37,10 @@ #include /***************************************************************************** - * Local prototypes - *****************************************************************************/ -static int Open ( vlc_object_t * ); -static void Close ( vlc_object_t * ); - -static int ItemChange( vlc_object_t *, const char *, - vlc_value_t, vlc_value_t, void * ); -static int Notify( vlc_object_t *, const char *, GdkPixbuf *, intf_thread_t * ); -#define MAX_LENGTH 256 - -struct intf_sys_t -{ - NotifyNotification *notification; - vlc_mutex_t lock; -}; - -/***************************************************************************** * Module descriptor ****************************************************************************/ +static int Open ( vlc_object_t * ); +static void Close ( vlc_object_t * ); #define APPLICATION_NAME "VLC media player" @@ -75,6 +60,21 @@ vlc_module_begin () set_callbacks( Open, Close ) vlc_module_end () + +/***************************************************************************** + * Local prototypes + *****************************************************************************/ +static int ItemChange( vlc_object_t *, const char *, + vlc_value_t, vlc_value_t, void * ); +static int Notify( vlc_object_t *, const char *, GdkPixbuf *, intf_thread_t * ); +#define MAX_LENGTH 256 + +struct intf_sys_t +{ + NotifyNotification *notification; + vlc_mutex_t lock; +}; + /***************************************************************************** * Open: initialize and create stuff *****************************************************************************/ @@ -82,7 +82,7 @@ static int Open( vlc_object_t *p_this ) { intf_thread_t *p_intf = (intf_thread_t *)p_this; playlist_t *p_playlist; - intf_sys_t *p_sys = malloc( sizeof( intf_sys_t ) ); + intf_sys_t *p_sys = malloc( sizeof( *p_sys ) ); if( !p_sys ) return VLC_ENOMEM; @@ -93,12 +93,10 @@ static int Open( vlc_object_t *p_this ) msg_Err( p_intf, "can't find notification daemon" ); return VLC_EGENERIC; } - - vlc_mutex_init( &p_sys->lock ); - p_intf->p_sys = p_sys; - p_intf->p_sys->notification = NULL; + vlc_mutex_init( &p_sys->lock ); + p_sys->notification = NULL; p_playlist = pl_Hold( p_intf ); var_AddCallback( p_playlist, "item-current", ItemChange, p_intf ); @@ -119,8 +117,8 @@ static void Close( vlc_object_t *p_this ) var_DelCallback( p_playlist, "item-current", ItemChange, p_this ); pl_Release( p_this ); - if( p_intf->p_sys->notification ) - g_object_unref( p_intf->p_sys->notification ); + if( p_sys->notification ) + g_object_unref( p_sys->notification ); vlc_mutex_destroy( &p_sys->lock ); free( p_sys ); @@ -142,7 +140,7 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, char *psz_arturl = NULL; input_thread_t *p_input = playlist_CurrentInput( (playlist_t*) p_this ); - intf_thread_t *p_intf = ( intf_thread_t* ) param; + intf_thread_t *p_intf = param; intf_sys_t *p_sys = p_intf->p_sys; if( !p_input ) return VLC_SUCCESS; From git at videolan.org Wed Feb 25 21:23:12 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 21:23:12 +0100 (CET) Subject: [vlc-devel] commit: Remove useless/wrong static non const variable (notify). ( Laurent Aimar ) Message-ID: <20090225202312.6CFE02FCE0@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 25 21:01:15 2009 +0100| [dcd782bd7936b73e50790494b827f3cbe52a7155] | committer: Laurent Aimar Remove useless/wrong static non const variable (notify). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dcd782bd7936b73e50790494b827f3cbe52a7155 --- modules/misc/notify/notify.c | 69 ++++++++++++++++++----------------------- 1 files changed, 30 insertions(+), 39 deletions(-) diff --git a/modules/misc/notify/notify.c b/modules/misc/notify/notify.c index a79b0de..766cb31 100644 --- a/modules/misc/notify/notify.c +++ b/modules/misc/notify/notify.c @@ -73,6 +73,7 @@ struct intf_sys_t { NotifyNotification *notification; vlc_mutex_t lock; + bool b_has_actions; }; /***************************************************************************** @@ -81,7 +82,6 @@ struct intf_sys_t static int Open( vlc_object_t *p_this ) { intf_thread_t *p_intf = (intf_thread_t *)p_this; - playlist_t *p_playlist; intf_sys_t *p_sys = malloc( sizeof( *p_sys ) ); if( !p_sys ) @@ -97,8 +97,25 @@ static int Open( vlc_object_t *p_this ) vlc_mutex_init( &p_sys->lock ); p_sys->notification = NULL; + p_sys->b_has_actions = false; - p_playlist = pl_Hold( p_intf ); + GList *p_caps = notify_get_server_caps (); + if( p_caps ) + { + for( GList *c = p_caps; c != NULL; c = c->next ) + { + if( !strcmp( (char*)c->data, "actions" ) ) + { + p_sys->b_has_actions = true; + break; + } + } + g_list_foreach( p_caps, (GFunc)g_free, NULL ); + g_list_free( p_caps ); + } + + /* */ + playlist_t *p_playlist = pl_Hold( p_intf ); var_AddCallback( p_playlist, "item-current", ItemChange, p_intf ); pl_Release( p_intf ); @@ -266,46 +283,19 @@ static void Prev( NotifyNotification *notification, gchar *psz, gpointer p ) pl_Release( ((vlc_object_t*) p) ); } -static gboolean -can_support_actions () -{ - static gboolean supports_actions = FALSE; - static gboolean have_checked = FALSE; - - if( !have_checked ) { - GList *caps = NULL; - GList *c; - - have_checked = TRUE; - - caps = notify_get_server_caps (); - if( caps != NULL ) { - for( c = caps; c != NULL; c = c->next ) { - if( strcmp( (char*)c->data, "actions" ) == 0 ) { - supports_actions = TRUE; - break; - } - } - } - - g_list_foreach( caps, (GFunc)g_free, NULL ); - g_list_free( caps ); - } - - return supports_actions; -} - static int Notify( vlc_object_t *p_this, const char *psz_temp, GdkPixbuf *pix, intf_thread_t *p_intf ) { + intf_sys_t *p_sys = p_intf->p_sys; + NotifyNotification * notification; - GError *p_error = NULL; /* Close previous notification if still active */ - if( p_intf->p_sys->notification ) + if( p_sys->notification ) { - notify_notification_close( p_intf->p_sys->notification, &p_error ); - g_object_unref( p_intf->p_sys->notification ); + GError *p_error = NULL; + notify_notification_close( p_sys->notification, &p_error ); + g_object_unref( p_sys->notification ); } notification = notify_notification_new( _("Now Playing"), @@ -320,17 +310,18 @@ static int Notify( vlc_object_t *p_this, const char *psz_temp, GdkPixbuf *pix, } /* Adds previous and next buttons in the notification if actions are supported. */ - if( can_support_actions() ) { + if( p_sys->b_has_actions ) + { notify_notification_add_action( notification, "previous", _("Previous"), Prev, - (gpointer*) p_intf, NULL ); + (gpointer*)p_intf, NULL ); notify_notification_add_action( notification, "next", _("Next"), Next, - (gpointer*) p_intf, NULL ); + (gpointer*)p_intf, NULL ); } notify_notification_show( notification, NULL); /* Stores the notification to be able to close it */ - p_intf->p_sys->notification = notification; + p_sys->notification = notification; return VLC_SUCCESS; } From git at videolan.org Wed Feb 25 21:23:12 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 21:23:12 +0100 (CET) Subject: [vlc-devel] commit: Cosmetics (notify) (Laurent Aimar ) Message-ID: <20090225202312.827432FD03@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 25 21:03:09 2009 +0100| [109c372a3a5d0cd7f4c1470b49e45cb1a51eff2e] | committer: Laurent Aimar Cosmetics (notify) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=109c372a3a5d0cd7f4c1470b49e45cb1a51eff2e --- modules/misc/notify/notify.c | 14 ++++++++------ 1 files changed, 8 insertions(+), 6 deletions(-) diff --git a/modules/misc/notify/notify.c b/modules/misc/notify/notify.c index 766cb31..a72b1d1 100644 --- a/modules/misc/notify/notify.c +++ b/modules/misc/notify/notify.c @@ -160,7 +160,8 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, intf_thread_t *p_intf = param; intf_sys_t *p_sys = p_intf->p_sys; - if( !p_input ) return VLC_SUCCESS; + if( !p_input ) + return VLC_SUCCESS; if( p_input->b_dead ) { @@ -172,13 +173,14 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, msleep( 1000*4 ); /* Playing something ... */ - psz_artist = input_item_GetArtist( input_GetItem( p_input ) ); - psz_album = input_item_GetAlbum( input_GetItem( p_input ) ) ; - psz_title = input_item_GetTitle( input_GetItem( p_input ) ); + input_item_t *p_input_item = input_GetItem( p_input ); + psz_artist = input_item_GetArtist( p_input_item ); + psz_album = input_item_GetAlbum( p_input_item ); + psz_title = input_item_GetTitle( p_input_item ); if( ( psz_title == NULL ) || EMPTY_STR( psz_title ) ) { free( psz_title ); - psz_title = input_item_GetName( input_GetItem( p_input ) ); + psz_title = input_item_GetName( p_input_item ); } if( ( psz_title == NULL ) || EMPTY_STR( psz_title ) ) { /* Not enough metadata ... */ @@ -217,7 +219,7 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, GdkPixbuf *pix = NULL; GError *p_error = NULL; - psz_arturl = input_item_GetArtURL( input_GetItem( p_input ) ); + psz_arturl = input_item_GetArtURL( p_input_item ); if( psz_arturl && !strncmp( psz_arturl, "file://", 7 ) && strlen( psz_arturl ) > 7 ) { /* scale the art to show it in notify popup */ From git at videolan.org Wed Feb 25 21:23:12 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 21:23:12 +0100 (CET) Subject: [vlc-devel] commit: Cosmetics (notify) (Laurent Aimar ) Message-ID: <20090225202312.C1FD22FCD8@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 25 21:12:51 2009 +0100| [f82668b3308298d4843b5517c6df2570de8ae8f8] | committer: Laurent Aimar Cosmetics (notify) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f82668b3308298d4843b5517c6df2570de8ae8f8 --- modules/misc/notify/notify.c | 46 +++++++++++++++++++++++++---------------- 1 files changed, 28 insertions(+), 18 deletions(-) diff --git a/modules/misc/notify/notify.c b/modules/misc/notify/notify.c index dce8617..65ce65e 100644 --- a/modules/misc/notify/notify.c +++ b/modules/misc/notify/notify.c @@ -135,7 +135,11 @@ static void Close( vlc_object_t *p_this ) pl_Release( p_this ); if( p_sys->notification ) + { + GError *p_error = NULL; + notify_notification_close( p_sys->notification, &p_error ); g_object_unref( p_sys->notification ); + } vlc_mutex_destroy( &p_sys->lock ); free( p_sys ); @@ -169,7 +173,9 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, vlc_object_release( p_input ); return VLC_SUCCESS; } - /*Wait a tad so the meta has been fetched*/ + + /* Wait a tad so the meta has been fetched + * FIXME that's awfully wrong */ msleep( 1000*4 ); /* Playing something ... */ @@ -215,21 +221,20 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, free( psz_album ); GdkPixbuf *pix = NULL; - GError *p_error = NULL; - psz_arturl = input_item_GetArtURL( p_input_item ); vlc_object_release( p_input ); if( psz_arturl && !strncmp( psz_arturl, "file://", 7 ) && strlen( psz_arturl ) > 7 ) { /* scale the art to show it in notify popup */ - gboolean b = TRUE; - pix = gdk_pixbuf_new_from_file_at_scale( - (psz_arturl + 7), 72, 72, b, &p_error ); + GError *p_error = NULL; + pix = gdk_pixbuf_new_from_file_at_scale( &psz_arturl[7], + 72, 72, TRUE, &p_error ); free( psz_arturl ); } else /* else we show state-of-the art logo */ { + GError *p_error = NULL; char *psz_pixbuf; if( asprintf( &psz_pixbuf, "%s/vlc48x48.png", config_GetDataDir() ) >= 0 ) { @@ -240,18 +245,19 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, /* we need to replace '&' with '&' because '&' is a keyword of * notification-daemon parser */ - int i_notify, i_len, i; - i_len = strlen( psz_tmp ); - i_notify = 0; - for( i = 0; ( ( i < i_len ) && ( i_notify < ( MAX_LENGTH - 5 ) ) ); i++ ) + const int i_len = strlen( psz_tmp ); + int i_notify = 0; + for( int i = 0; i < i_len && i_notify < ( MAX_LENGTH - 5 ); i++ ) { /* we use MAX_LENGTH - 5 because if the last char of psz_tmp is '&' * we will need 5 more characters: 'amp;\0' . * however that's unlikely to happen because the last char is '\0' */ if( psz_tmp[i] != '&' ) + { psz_notify[i_notify] = psz_tmp[i]; + } else { - snprintf( psz_notify + i_notify, 6, "&" ); + snprintf( &psz_notify[i_notify], 6, "&" ); i_notify += 4; } i_notify++; @@ -269,20 +275,24 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, static void Next( NotifyNotification *notification, gchar *psz, gpointer p ) { /* libnotify callback, called when the "Next" button is pressed */ + vlc_object_t *p_object = (vlc_object_t*)p; + VLC_UNUSED(psz); - notify_notification_close (notification, NULL); - playlist_t *p_playlist = pl_Hold( ((vlc_object_t*) p) ); + notify_notification_close( notification, NULL ); + playlist_t *p_playlist = pl_Hold( p_object ); playlist_Next( p_playlist ); - pl_Release( ((vlc_object_t*) p) ); + pl_Release( p_object ); } static void Prev( NotifyNotification *notification, gchar *psz, gpointer p ) { /* libnotify callback, called when the "Previous" button is pressed */ + vlc_object_t *p_object = (vlc_object_t*)p; + VLC_UNUSED(psz); - notify_notification_close (notification, NULL); - playlist_t *p_playlist = pl_Hold( ((vlc_object_t*) p) ); + notify_notification_close( notification, NULL ); + playlist_t *p_playlist = pl_Hold( p_object ); playlist_Prev( p_playlist ); - pl_Release( ((vlc_object_t*) p) ); + pl_Release( p_object ); } static int Notify( vlc_object_t *p_this, const char *psz_temp, GdkPixbuf *pix, @@ -301,7 +311,7 @@ static int Notify( vlc_object_t *p_this, const char *psz_temp, GdkPixbuf *pix, } notification = notify_notification_new( _("Now Playing"), - psz_temp, NULL, NULL); + psz_temp, NULL, NULL ); notify_notification_set_timeout( notification, config_GetInt(p_this, "notify-timeout") ); notify_notification_set_urgency( notification, NOTIFY_URGENCY_LOW ); From git at videolan.org Wed Feb 25 21:23:12 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 21:23:12 +0100 (CET) Subject: [vlc-devel] commit: Fixed potential segfault in notify. (Laurent Aimar ) Message-ID: <20090225202312.A563D2FB81@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 25 21:03:48 2009 +0100| [10ba29147acb715e19957ce945354e81bfb9f63e] | committer: Laurent Aimar Fixed potential segfault in notify. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=10ba29147acb715e19957ce945354e81bfb9f63e --- modules/misc/notify/notify.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/misc/notify/notify.c b/modules/misc/notify/notify.c index a72b1d1..dce8617 100644 --- a/modules/misc/notify/notify.c +++ b/modules/misc/notify/notify.c @@ -201,8 +201,6 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, psz_album = NULL; } - vlc_object_release( p_input ); - if( psz_artist && psz_album ) snprintf( psz_tmp, MAX_LENGTH, "%s\n%s\n[%s]", psz_title, psz_artist, psz_album ); @@ -220,6 +218,8 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var, GError *p_error = NULL; psz_arturl = input_item_GetArtURL( p_input_item ); + vlc_object_release( p_input ); + if( psz_arturl && !strncmp( psz_arturl, "file://", 7 ) && strlen( psz_arturl ) > 7 ) { /* scale the art to show it in notify popup */ From git at videolan.org Wed Feb 25 21:58:48 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 21:58:48 +0100 (CET) Subject: [vlc-devel] commit: Use calloc when appropriate (cdrom.c) (Laurent Aimar ) Message-ID: <20090225205848.F2D052FCCD@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Wed Feb 25 21:58:18 2009 +0100| [bbbebb32bde82796ef8f09db44caf93918dc6921] | committer: Laurent Aimar Use calloc when appropriate (cdrom.c) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bbbebb32bde82796ef8f09db44caf93918dc6921 --- modules/access/vcd/cdrom.c | 19 ++++++++++--------- 1 files changed, 10 insertions(+), 9 deletions(-) diff --git a/modules/access/vcd/cdrom.c b/modules/access/vcd/cdrom.c index bf5b03f..1990237 100644 --- a/modules/access/vcd/cdrom.c +++ b/modules/access/vcd/cdrom.c @@ -32,6 +32,7 @@ #include #include +#include #ifdef HAVE_UNISTD_H # include @@ -208,7 +209,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, if( pp_sectors ) { - *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); + *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) return 0; memcpy( *pp_sectors, p_vcddev->p_sectors, @@ -244,7 +245,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, CDTOCDescriptor *pTrackDescriptors; u_char track; - *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); + *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) { darwin_freeTOC( pTOC ); @@ -349,7 +350,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, ((unsigned int)p_tocheader[1] << 8); p_fulltoc = malloc( i_toclength ); - *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); + *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) ); if( *pp_sectors == NULL || p_fulltoc == NULL ) { @@ -415,7 +416,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, { int i; - *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); + *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) return 0; @@ -448,7 +449,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, { int i; - *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); + *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) return 0; @@ -503,7 +504,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev, { int i; - *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) ); + *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) ); if( *pp_sectors == NULL ) return 0; @@ -914,7 +915,7 @@ static int OpenVCDImage( vlc_object_t * p_this, const char *psz_dev, * about the cuefile */ size_t i_tracks = 0; - while( fgets( line, 1024, cuefile ) ) + while( fgets( line, 1024, cuefile ) && i_tracks < INT_MAX-1 ) { /* look for a TRACK line */ char psz_dummy[9]; @@ -930,7 +931,7 @@ static int OpenVCDImage( vlc_object_t * p_this, const char *psz_dev, &i_min, &i_sec, &i_frame ) != 4) || (i_num != 1) ) continue; - int *buf = realloc (p_sectors, (i_tracks + 1) * sizeof (int)); + int *buf = realloc (p_sectors, (i_tracks + 1) * sizeof (*buf)); if (buf == NULL) goto error; p_sectors = buf; @@ -943,7 +944,7 @@ static int OpenVCDImage( vlc_object_t * p_this, const char *psz_dev, } /* fill in the last entry */ - int *buf = realloc (p_sectors, (i_tracks + 1) * sizeof (int)); + int *buf = realloc (p_sectors, (i_tracks + 1) * sizeof (*buf)); if (buf == NULL) goto error; p_sectors = buf; From git at videolan.org Wed Feb 25 23:52:50 2009 From: git at videolan.org (git version control) Date: Wed, 25 Feb 2009 23:52:50 +0100 (CET) Subject: [vlc-devel] commit: l10n: Russian update (Roustam Ghizdatov ) Message-ID: <20090225225250.2471F2FCCD@skanda.videolan.org> vlc | branch: 0.9-bugfix | Roustam Ghizdatov | Wed Feb 25 22:44:52 2009 +0000| [a0768d58416e7f7a0f56519f1cb32864c7c944aa] | committer: Christophe Mutricy l10n: Russian update Signed-off-by: Christophe Mutricy > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a0768d58416e7f7a0f56519f1cb32864c7c944aa --- po/ru.po | 1738 +++++++++++++++++++++++++++----------------------------------- 1 files changed, 757 insertions(+), 981 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=a0768d58416e7f7a0f56519f1cb32864c7c944aa From git at videolan.org Thu Feb 26 00:06:05 2009 From: git at videolan.org (git version control) Date: Thu, 26 Feb 2009 00:06:05 +0100 (CET) Subject: [vlc-devel] commit: Added hotkeys for fine playback rate control. (Laurent Aimar ) Message-ID: <20090225230605.90D092FE88@skanda.videolan.org> vlc | branch: master | Laurent Aimar | Thu Feb 26 00:01:41 2009 +0100| [737137279ab992a32802ec21fac96584caf53820] | committer: Laurent Aimar Added hotkeys for fine playback rate control. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=737137279ab992a32802ec21fac96584caf53820 --- include/vlc_keys.h | 2 ++ modules/control/hotkeys.c | 30 +++++++++++++++++++++++++++++- src/libvlc-module.c | 14 ++++++++++++++ 3 files changed, 45 insertions(+), 1 deletions(-) diff --git a/include/vlc_keys.h b/include/vlc_keys.h index 60a3075..c39c475 100644 --- a/include/vlc_keys.h +++ b/include/vlc_keys.h @@ -345,6 +345,8 @@ typedef enum vlc_key { ACTIONID_SCALE_DOWN, /* */ ACTIONID_RATE_NORMAL, + ACTIONID_RATE_SLOWER_FINE, + ACTIONID_RATE_FASTER_FINE, } vlc_key_t; #endif diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index c900435..473536d 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -39,6 +39,7 @@ #include #include #include "vlc_keys.h" +#include "math.h" #define BUFFER_SIZE 10 @@ -773,7 +774,34 @@ static void Run( intf_thread_t *p_intf ) { var_SetInteger( p_input, "rate", INPUT_RATE_DEFAULT ); vout_OSDMessage( VLC_OBJECT(p_input), DEFAULT_CHAN, - _("1x") ); + _("1.00x") ); + } + else if( i_action == ACTIONID_RATE_FASTER_FINE || + i_action == ACTIONID_RATE_SLOWER_FINE ) + { + /* The playback rate is defined by INPUT_RATE_DEFAULT / "rate" + * and we want to increase/decrease it by 0.1 while making sure + * that the resulting playback rate is a multiple of 0.1 + */ + int i_rate = var_GetInteger( p_input, "rate" ); + if( i_rate == 0 ) + i_rate = INPUT_RATE_MIN; + int i_sign = i_rate < 0 ? -1 : 1; + const int i_dir = i_action == ACTIONID_RATE_FASTER_FINE ? 1 : -1; + + const double f_speed = floor( ( (double)INPUT_RATE_DEFAULT / abs(i_rate) + 0.05 ) / 0.1 + i_dir ) * 0.1; + if( f_speed <= (double)INPUT_RATE_DEFAULT / INPUT_RATE_MAX ) /* Needed to avoid infinity */ + i_rate = INPUT_RATE_MAX; + else + i_rate = INPUT_RATE_DEFAULT / f_speed + 0.5; + + i_rate = i_sign * __MIN( __MAX( i_rate, INPUT_RATE_MIN ), INPUT_RATE_MAX ); + + var_SetInteger( p_input, "rate", i_rate ); + + char psz_msg[7+1]; + snprintf( psz_msg, sizeof(psz_msg), _("%.2fx"), (double)INPUT_RATE_DEFAULT / i_rate ); + vout_OSDMessage( VLC_OBJECT(p_input), DEFAULT_CHAN, psz_msg ); } else if( i_action == ACTIONID_POSITION && b_seekable ) { diff --git a/src/libvlc-module.c b/src/libvlc-module.c index 4ee70fc..116e577 100644 --- a/src/libvlc-module.c +++ b/src/libvlc-module.c @@ -1217,6 +1217,10 @@ static const char *const ppsz_albumart_descriptions[] = #define SLOWER_KEY_LONGTEXT N_("Select the hotkey to use for slow motion playback.") #define RATE_NORMAL_KEY_TEXT N_("Normal rate") #define RATE_NORMAL_KEY_LONGTEXT N_("Select the hotkey to set the playback rate back to normal.") +#define RATE_FASTER_FINE_KEY_TEXT N_("Faster (fine)") +#define RATE_FASTER_FINE_KEY_LONGTEXT N_("Select the hotkey to use for fast forward playback.") +#define RATE_SLOWER_FINE_KEY_TEXT N_("Slower (fine)") +#define RATE_SLOWER_FINE_KEY_LONGTEXT N_("Select the hotkey to use for slow motion playback.") #define NEXT_KEY_TEXT N_("Next") #define NEXT_KEY_LONGTEXT N_("Select the hotkey to use to skip to the next item in the playlist.") #define PREV_KEY_TEXT N_("Previous") @@ -2117,6 +2121,8 @@ vlc_module_begin () # define KEY_FASTER KEY_MODIFIER_COMMAND|'=' # define KEY_SLOWER KEY_MODIFIER_COMMAND|'-' # define KEY_RATE_NORMAL KEY_UNSET +# define KEY_RATE_FASTER_FINE KEY_UNSET +# define KEY_RATE_SLOWER_FINE KEY_UNSET # define KEY_NEXT KEY_MODIFIER_COMMAND|KEY_RIGHT # define KEY_PREV KEY_MODIFIER_COMMAND|KEY_LEFT # define KEY_STOP KEY_MODIFIER_COMMAND|'.' @@ -2229,6 +2235,8 @@ vlc_module_begin () # define KEY_FASTER '+' # define KEY_SLOWER '-' # define KEY_RATE_NORMAL KEY_UNSET +# define KEY_RATE_FASTER_FINE KEY_UNSET +# define KEY_RATE_SLOWER_FINE KEY_UNSET # define KEY_NEXT 'n' # define KEY_PREV 'p' # define KEY_STOP 's' @@ -2351,6 +2359,10 @@ vlc_module_begin () SLOWER_KEY_LONGTEXT, false ) add_key( "key-rate-normal", KEY_RATE_NORMAL, NULL, RATE_NORMAL_KEY_TEXT, RATE_NORMAL_KEY_LONGTEXT, false ) + add_key( "key-rate-faster-fine", KEY_RATE_FASTER_FINE, NULL, RATE_FASTER_FINE_KEY_TEXT, + RATE_FASTER_FINE_KEY_LONGTEXT, false ) + add_key( "key-rate-slower-fine", KEY_RATE_SLOWER_FINE, NULL, RATE_SLOWER_FINE_KEY_TEXT, + RATE_SLOWER_FINE_KEY_LONGTEXT, false ) add_key( "key-next", KEY_NEXT, NULL, NEXT_KEY_TEXT, NEXT_KEY_LONGTEXT, false ) add_key( "key-prev", KEY_PREV, NULL, PREV_KEY_TEXT, @@ -2694,6 +2706,8 @@ const struct hotkey libvlc_hotkeys[] = { "key-faster", ACTIONID_FASTER, 0, }, { "key-slower", ACTIONID_SLOWER, 0, }, { "key-rate-normal", ACTIONID_RATE_NORMAL, 0, }, + { "key-rate-faster-fine", ACTIONID_RATE_FASTER_FINE, 0, }, + { "key-rate-slower-fine", ACTIONID_RATE_SLOWER_FINE, 0, }, { "key-toggle-fullscreen", ACTIONID_TOGGLE_FULLSCREEN, 0, }, { "key-leave-fullscreen", ACTIONID_LEAVE_FULLSCREEN, 0, }, { "key-vol-up", ACTIONID_VOL_UP, 0, }, From git at videolan.org Thu Feb 26 00:48:04 2009 From: git at videolan.org (git version control) Date: Thu, 26 Feb 2009 00:48:04 +0100 (CET) Subject: [vlc-devel] commit: More NEWS. (Jean-Baptiste Kempf ) Message-ID: <20090225234804.A94A02EFA4@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Thu Feb 26 00:43:33 2009 +0100| [8bf474fda23a9c42305786eb6df4b5d6832ef75d] | committer: Jean-Baptiste Kempf More NEWS. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8bf474fda23a9c42305786eb6df4b5d6832ef75d --- NEWS | 14 +++++++++++++- 1 files changed, 13 insertions(+), 1 deletions(-) diff --git a/NEWS b/NEWS index 86afb70..63db86a 100644 --- a/NEWS +++ b/NEWS @@ -4,6 +4,7 @@ Changes between 0.9.8a and 1.0.0-git: Playback: * Instantaneous pausing * Frame-by-Frame playback + * Finer speed control * Timeshift for all medias * On-the-fly recording for all medias * RTSP trickplay support @@ -38,6 +39,8 @@ Access: * EXPERIMENTAL Blu-Ray Disc and AVCHD Folders support * On-the-fly zip file decompression and browsing (MRL of the form zip://file.zip|file.avi to specify the file) * Opening of any file descriptor using 'fd://' + * MTP device access on Unix + * CD-Text support on the cdda module (CD-Audio) Inputs: * Mouse cursor support in x11 and win32 screen modules @@ -50,8 +53,17 @@ Playlist: Linux/Windows interface: * Recently played items list - * Interface customizations * Global Hotkeys on Windows and Linux + * Various fixes for skins2 interface + * Interface toolbar customizations + * Various Improvements on the Qt interface: + - More menus actions + - Finer speed slider + - Improvements on many dialogs + - New dialog for plugins listing + - Fixed-size mode for videos + - Better teletext, trickplay and encrypted streams control + * Better integration in GTK environments Mac OS X Interface: * Reveal-in-Finder functionality for locally stored items. From git at videolan.org Thu Feb 26 01:02:06 2009 From: git at videolan.org (git version control) Date: Thu, 26 Feb 2009 01:02:06 +0100 (CET) Subject: [vlc-devel] commit: New hotkeys for normal speed(=), faster(]) and slower([) ( Jean-Baptiste Kempf ) Message-ID: <20090226000206.E32122F43B@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Thu Feb 26 00:55:59 2009 +0100| [56cc823ccc929472d03a2f2c3d9174103f085bb2] | committer: Jean-Baptiste Kempf New hotkeys for normal speed(=), faster(]) and slower([) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=56cc823ccc929472d03a2f2c3d9174103f085bb2 --- src/libvlc-module.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libvlc-module.c b/src/libvlc-module.c index 116e577..7fb56cf 100644 --- a/src/libvlc-module.c +++ b/src/libvlc-module.c @@ -2234,9 +2234,9 @@ vlc_module_begin () # define KEY_PLAY KEY_UNSET # define KEY_FASTER '+' # define KEY_SLOWER '-' -# define KEY_RATE_NORMAL KEY_UNSET -# define KEY_RATE_FASTER_FINE KEY_UNSET -# define KEY_RATE_SLOWER_FINE KEY_UNSET +# define KEY_RATE_NORMAL '=' +# define KEY_RATE_FASTER_FINE ']' +# define KEY_RATE_SLOWER_FINE '[' # define KEY_NEXT 'n' # define KEY_PREV 'p' # define KEY_STOP 's' From jb at videolan.org Thu Feb 26 01:03:46 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Thu, 26 Feb 2009 01:03:46 +0100 Subject: [vlc-devel] commit: New hotkeys for normal speed(=), faster(]) and slower([) ( Jean-Baptiste Kempf ) In-Reply-To: <20090226000206.E32122F43B@skanda.videolan.org> References: <20090226000206.E32122F43B@skanda.videolan.org> Message-ID: <20090226000346.GA29854@videolan.org> On Thu, Feb 26, 2009 at 01:02:06AM +0100, git version control wrote : > vlc | branch: master | Jean-Baptiste Kempf | Thu Feb 26 00:55:59 2009 +0100| [56cc823ccc929472d03a2f2c3d9174103f085bb2] | committer: Jean-Baptiste Kempf > > New hotkeys for normal speed(=), faster(]) and slower([) This is only for non-apple systems. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jhannwong at gmail.com Thu Feb 26 06:31:14 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Thu, 26 Feb 2009 13:31:14 +0800 Subject: [vlc-devel] Problem with libvlc_media_player_get_time function Message-ID: <49A62922.3090501@gmail.com> That function does work correctly after I call libvlc_media_player_set_time. Say I let a media run for 10 secs, then call set_time to set it back to the 4 secs position. The get_time function seems stuck at 10 secs until the media plays past 10 secs, THEN it begins to function correctly. The libvlc_media_player_get_position function works correctly, though. Is this a known bug? Is the get_time function deprecated in favor of some other correctly functioning API? This bug doesn't really happen with .wmv, only with .mpg it seems. Actually, the returned time seems a bit wrong even with .wmv. From benjihan at users.sourceforge.net Thu Feb 26 10:23:14 2009 From: benjihan at users.sourceforge.net (Benjamin Gerard) Date: Thu, 26 Feb 2009 10:23:14 +0100 Subject: [vlc-devel] [PATCH 1/2] Add a file extension dynamic manager to libvlc. Message-ID: <1235640195-10331-1-git-send-email-benjihan@users.sourceforge.net> The file extension manager provides functions for managing known file extensions into file extension container. Each extension can be associate to given media types (audio, video, play-list and subtitles). It is possible to create/duplicate/destroy file extension container and to alter any of them by adding and removing file extensions. Additionally a general (static) file extension container can be addressed thru the FILEEXT_POOL special container. --- include/vlc_fileext.h | 155 ++++++++++++ src/Makefile.am | 2 + src/libvlccore.sym | 9 + src/misc/fileext.c | 650 +++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 816 insertions(+), 0 deletions(-) create mode 100644 include/vlc_fileext.h create mode 100644 src/misc/fileext.c diff --git a/include/vlc_fileext.h b/include/vlc_fileext.h new file mode 100644 index 0000000..304e731 --- /dev/null +++ b/include/vlc_fileext.h @@ -0,0 +1,155 @@ +/***************************************************************************** + * vlc_fileext.h: file extension for media + ***************************************************************************** + * Copyright (C) 2004-2009 the VideoLAN team + * $Id$ + * + * Authors: Benjamin Gerard + * + * 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 + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. + *****************************************************************************/ + +#ifndef VLC_FILEEXT_H +# define VLC_FILEEXT_H + +/** + * \file vlc_fileext.h + * This file defines functions and structures for handling file extensions + */ + +/** + * \name file extension types + * \{ + * \notice These defines are bit mask. + * \warning DO NOT CHANGE ORDER without changing names table in fileext.c + */ +#define FILEEXT_UNKNOWN 0 /**< file extension has no type */ +#define FILEEXT_AUDIO 1 /**< audio file extension mask. */ +#define FILEEXT_VIDEO 2 /**< video file extension mask. */ +#define FILEEXT_PLAYLIST 4 /**< playlist file extension mask. */ +#define FILEEXT_SUBTITLE 8 /**< subtitle file extension mask. */ +/** all media file extension mask (consists on audio+video+playlist). */ +#define FILEEXT_MEDIA (FILEEXT_AUDIO|FILEEXT_VIDEO|FILEEXT_PLAYLIST) +/** all defined file extension mask (consist on media+subtitle). */ +#define FILEEXT_ALL_KNOWN (FILEEXT_MEDIA|FILEEXT_SUBTITLE) +#define FILEEXT_ALL 16 /**< all (ALL_KNOWN+UNKNOW). */ +/** invalid extension. */ +#define FILEEXT_ERROR -1 +/** + * \} + */ + +/** Opaque type for file extension pool. */ +typedef struct fileext_pool_s * fileext_ptr_t; + +/** Global file extension pool. */ +#define FILEEXT_POOL ( (fileext_ptr_t) NULL ) + +/** + * Get name of extension type(s). + * + * \param types extension type mask + * \retval 0 an invalid type + * \retval other a semicolon ';' separated list of extension type + */ +VLC_EXPORT( const char *, fileext_TypeName, ( int types ) ); + +/** + * Get type of extension. + * + * \param pool file extension pool + * \param psz_ext single extension ("ext" or ".ext" or "*.ext") + * \return FILEEXT_??? + */ +VLC_EXPORT( int, fileext_TypeOf, ( fileext_ptr_t pool, const char * psz_ext ) ); + +/** + * Get extension list of given types. + * + * \param pool file extension pool + * \param types extension type mask + * \retval 0 an invalid type + * \retval "" an empty list + * \retval other a list of extension (e.g "*.ext1;*.ext2") + */ +VLC_EXPORT( char *, fileext_Get, ( fileext_ptr_t pool, int types ) ); + +/** + * Add a list of extension of given type. + * + * \param pool file extension pool + * \param psz_exts a semicolon ';' separated list of extension + * \param types extension type mask (for a single type) + * \retval VLC_EGENERIC on failure + * \retval VLC_SUCCESS on success + */ +VLC_EXPORT( int , fileext_Add, \ + ( fileext_ptr_t pool, const char * psz_exts, int types ) ); + +/** + * Delete (remove) a list of extension. + * + * \param pool file extension pool + * \param psz_exts a semicolon ';' separated list of extension + * \param types extension type mask (for a single type) + * \retval VLC_EGENERIC on failure + * \retval VLC_SUCCESS on success + */ +VLC_EXPORT( int , fileext_Del, \ + ( fileext_ptr_t pool, const char * psz_exts, int types ) ); + +/** + * Fill with default file extensions. + * + * The fileext_Default() fill a file extension pool with an + * predefined list of well known file extensions. + * + * \note This function should not be of any use as soon as each + * component registers properly its file extensions. + * + * \param pool file extension pool + * \retval VLC_SUCCESS on success + * \retval !VLC_SUCCESS error code of failure + */ +VLC_EXPORT( int, fileext_Default, ( fileext_ptr_t pool ) ); + +/** + * Create a new file extension pool. + * + * \param size initial pool size (number of extensions; 0 is allowed) + * \return new file extension pool + * \retval NULL on error + */ +VLC_EXPORT( fileext_ptr_t, fileext_Create, ( int size ) ); + +/** + * Destroy a file extension pool. + * + * \param pool file extension pool + * \return new file extension pool + * \retval NULL on error + */ +VLC_EXPORT( void, fileext_Destroy, ( fileext_ptr_t pool ) ); + +/** + * Duplicate a list of extension. + * + * \param pool file extension pool + * \retval VLC_EGENERIC on failure + * \retval VLC_SUCCESS on success + */ +VLC_EXPORT( fileext_ptr_t, fileext_Dup, ( fileext_ptr_t pool ) ); + +#endif diff --git a/src/Makefile.am b/src/Makefile.am index 061e247..b90d4c1 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -55,6 +55,7 @@ pluginsinclude_HEADERS = \ ../include/vlc_es.h \ ../include/vlc_es_out.h \ ../include/vlc_events.h \ + ../include/vlc_fileext.h \ ../include/vlc_filter.h \ ../include/vlc_gcrypt.h \ ../include/vlc_httpd.h \ @@ -356,6 +357,7 @@ SOURCES_libvlc_common = \ misc/mtime.c \ misc/block.c \ misc/es_format.c \ + misc/fileext.c \ modules/modules.h \ modules/modules.c \ modules/cache.c \ diff --git a/src/libvlccore.sym b/src/libvlccore.sym index 45497fc..0efbe12 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -108,6 +108,15 @@ EnsureUTF8 es_format_Clean es_format_Copy es_format_Init +fileext_Add +fileext_Create +fileext_Default +fileext_Del +fileext_Destroy +fileext_Dup +fileext_Get +fileext_TypeName +fileext_TypeOf filename_sanitize filter_chain_AppendFilter filter_chain_AppendFromString diff --git a/src/misc/fileext.c b/src/misc/fileext.c new file mode 100644 index 0000000..78c5204 --- /dev/null +++ b/src/misc/fileext.c @@ -0,0 +1,650 @@ +/***************************************************************************** + * vlc_fileext.c: file extension for media + ***************************************************************************** + * Copyright (C) 2004-2009 the VideoLAN team + * $Id$ + * + * Authors: Benjamin Gerard + * + * 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 + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. + *****************************************************************************/ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include +#include +#include + +#include +#include +#include + +/** Predefined audio file extensions. */ +#define EXTENSIONS_AUDIO_STATIC \ + "*.a52;*.aac;*.ac3;*.dts;*.flac;*.m4a;*.m4p;*.mka;" \ + "*.mod;*.mp1;*.mp2;*.mp3;*.oga;*.ogg;*.oma;*.spx;" \ + "*.wav;*.wma;*.xm" + +/** Predefined video file extensions. */ +#define EXTENSIONS_VIDEO_STATIC \ + "*.asf;*.avi;*.divx;*.dv;*.flv;*.gxf;*.iso;*.m1v;*.m2v;" \ + "*.m2t;*.m2ts;*.m4v;*.mkv;*.mov;*.mp2;*.mp4;*.mpeg;*.mpeg1;" \ + "*.mpeg2;*.mpeg4;*.mpg;*.mts;*.mxf;*.nuv;" \ + "*.ogg;*.ogm;*.ogv;*.ogx;" \ + "*.ps;*.rm;*.rmvb;*.ts;*.vob;*.wmv;" + +/** Predefined playlist file extensions. */ +#define EXTENSIONS_PLAYLIST_STATIC \ + "*.asx;*.b4s;*.m3u;*.pls;*.vlc;*.xspf" + +/** Predefined media file extensions. */ +#define EXTENSIONS_MEDIA_STATIC \ + EXTENSIONS_VIDEO_STATIC ";" \ + EXTENSIONS_AUDIO_STATIC ";" \ + EXTENSIONS_PLAYLIST_STATIC + +/** Predefined subtitle file extension. */ +#define EXTENSIONS_SUBTITLE_STATIC \ + "*.cdg;*.idx;*.srt;*.sub;*.utf;*.ass;*.ssa;*.aqt;*.jss;*.psb;*.rt;*.smi" + +/** maximum bare file extension length (w/o '*.') */ +#define FILEEXT_LEN_MAX 5 + +/** One file extension. */ +typedef struct fileext_s { + char psz_ext[8]; /**< bare extension name (mp3) */ + int i_len; /**< psz_ext string length */ + int i_types; /**< mixed types */ +} fileext_t; /**< single file extension */ + +/** File extensions collection. */ +typedef struct fileext_pool_s { + vlc_mutex_t lock; /**< lock to access this struct */ + int i_cnt; /**< current number of extension */ + int i_max; /**< size of ext array */ + fileext_t * fileext; /**< sorted array of extension */ +} fileext_pool_t; + +/* static pool shared by all libvlc instances. */ +static fileext_pool_t mypool = { + VLC_STATIC_MUTEX, 0, 0, NULL +}; + +static const char aud_exts[] = EXTENSIONS_AUDIO_STATIC; +static const char vid_exts[] = EXTENSIONS_VIDEO_STATIC; +static const char pls_exts[] = EXTENSIONS_PLAYLIST_STATIC; +static const char sub_exts[] = EXTENSIONS_SUBTITLE_STATIC; + +static const char * name[FILEEXT_ALL+1] = +{ + "unknown", /* 00 */ + "audio", /* 01 */ + "video", /* 02 */ + "audio;video", /* 03 */ + "playlist", /* 04 */ + "audio;playlist", /* 05 */ + "playlist;video", /* 06 */ + "media", /* 07 */ + "subtitle", /* 08 */ + "audio;subtitle", /* 09 */ + "video;subtitle", /* 0A */ + "audio;video;subtitle", /* 0B */ + "playlist;subtitle", /* 0C */ + "audio;playlist;subtitle", /* 0D */ + "audio;video;subtitle", /* 0E */ + "media;subtitle", /* 0F */ + "all", /* 10 */ +}; + +static inline int valid_type( const int type ) +{ + return ( type >= FILEEXT_UNKNOWN && type <= FILEEXT_ALL ); +} + +/* + * Check for a valid extension. + * + * \param ext extension to check "*.ext" or ".ext" or "ext" + * \retval 0 invalid + * \retval >0 ext length (strlen(ext)) + */ +static int valid_ext( const char * ext ) +{ + int max = FILEEXT_LEN_MAX, len = 0; + /* basic checking: valid string starting by a dot '.' */ + if( !ext ) return 0; + if( ext[len] == '*' ) ++len, ++max; + if( ext[len] == '.' ) ++len, ++max; + /* parsing: only valid character for extension are alphanum */ + for(; ext[len]; ++len ) + if ( len >= max || !isalnum( ext[len] )) return 0; + return len; +} + +/* Parse one extesion into extension list. + * \param p_ext in/out string to parse + * \retval 0 invalid + * \retval >0 ext string length + */ +static int parse_exts( const char ** p_exts ) +{ + const char * exts = *p_exts; + int l; + + if ( *exts == '*' ) ++exts; /* ignore '*' prefix */ + if ( *exts == '.' ) ++exts; /* ignore '.' prefix */ + for ( l = 0; isalnum(exts[l]); ++l ) /* measure extension length */ + ; + + /* 1 <= length <= LEN_MAX */ + if ( l<1 || l>FILEEXT_LEN_MAX ) + return 0; + /* nul or ';' terminated */ + if ( exts[l] && exts[l] != ';' ) + return 0; + + *p_exts = exts; + return l; +} + +/* lock file extension pool (enter critical section) */ +static inline void pool_lock( fileext_pool_t * pool ) +{ + vlc_mutex_lock( &pool->lock ); +} + +/* unlock file extension pool (leave critical section) */ +static inline void pool_unlock( fileext_pool_t * pool ) +{ + vlc_mutex_unlock( &pool->lock ); +} + +/* clean the pool: delete all file extensions */ +static void pool_cleanup( fileext_pool_t * pool ) +{ + pool_lock( pool ); + { + pool->i_cnt = 0; + pool->i_max = 0; + free( pool->fileext ); + pool->fileext = 0; + } + pool_unlock( pool ); +} + +/* destroy the pool: clean up pool, destroy mutex, destroy the pool. */ +static void pool_destroy( fileext_pool_t * pool ) +{ + pool_cleanup( pool ); + /* Except for fileext static pool. */ + if( pool != &mypool ) + { + vlc_mutex_destroy( &pool->lock ); + free( pool ); + } +} + +/* MUST BE LOCK -- ensure enough room + * + * Ensure the pool has enough room to store max file extension. It the + * pool does not have enough room it will be reallocated. The new size + * of the pool is max(size*2,max). + * + * retval VLC_SUCCESS on success + * retval VLC_ENOMEM on failure (realloc failed) + */ +static int pool_ensure( fileext_pool_t * pool, int max ) +{ + if( max > pool->i_max ) + { + fileext_t * fileext; + int newmax = pool->i_max * 2; + + if( newmax < max ) newmax = max; + fileext = realloc( pool->fileext, newmax * sizeof(fileext_t) ); + if( ! fileext ) + return VLC_ENOMEM; + pool->fileext = fileext; + pool->i_max = newmax; + } + return VLC_SUCCESS; +} + +/* initialize pool structure. */ +static int pool_init( fileext_pool_t * pool ) +{ + /* Do not reset the static pool */ + if( pool != &mypool ) + { + memset( pool, 0, sizeof(*pool) ); + vlc_mutex_init( &pool->lock ); + } + return VLC_SUCCESS; +} + +/* create a new empty pool. */ +static fileext_pool_t * pool_create( int size ) +{ + fileext_pool_t * pool = malloc( sizeof(*pool) ); + + if( pool ) + { + if ( VLC_SUCCESS != pool_init( pool ) ) + { + free( pool ); + pool = 0; + } + else if ( VLC_SUCCESS != pool_ensure( pool, size ) ) + { + pool_destroy( pool ); + pool = 0; + } + } + return pool; +} + +/* MUST BE LOCK -- get extension list associate to given types. + * + * \return a mallocated string + * \retval NULL on error + */ +static char * pool_get( fileext_pool_t * pool, int types ) +{ + int l, i; + const int always = ( types == FILEEXT_ALL ); + char * exts; + + /* count matching extensions */ + for( l = i = 0; i < pool->i_cnt; ++i ) + { + if( always || pool->fileext[i].i_types == types || + ( pool->fileext[i].i_types & types ) ) + { + l += pool->fileext[i].i_len + 3; + } + } + /* malloc string */ + exts = malloc( l ); + + if( exts ) + { + for( l = i = 0; i < pool->i_cnt; ++i ) + { + if( always || pool->fileext[i].i_types == types || + ( pool->fileext[i].i_types & types ) ) + { + exts[l++] = '*'; + exts[l++] = '.'; + strcpy( exts+l, pool->fileext[i].psz_ext ); + l += pool->fileext[i].i_len; + exts[l++] = ';'; + } + } + if( l > 0 ) --l; + exts[l] = 0; + } + return exts; +} + +/* Copy buffer with lowercase transform ( 0 < l < 8) */ +static inline void lowercpy( char * d, const char * s, int l ) +{ + do + *d++ = tolower( *s++ ); + while( --l ); +} + +/* Compare 2 fileext_t (qsort and bsearch callback) */ +static int fileext_cmp( const void * p_va, const void * p_vb ) +{ + const fileext_t * p_fe_a = p_va; + const fileext_t * p_fe_b = p_vb; + return strncmp( p_fe_a->psz_ext, p_fe_b->psz_ext, sizeof(p_fe_a->psz_ext) ); +} + +/* MUST BE LOCK -- ascending sort file extension pool. + */ +static void pool_sort( fileext_pool_t * pool ) +{ + qsort( pool->fileext, pool->i_cnt, sizeof(fileext_t), fileext_cmp ); +} + +/* MUST BE LOCK -- search for a file extension in the pool. + * + * retval 0 not found + * retval !0 matching file extension + */ +static fileext_t * pool_search( const fileext_pool_t * pool, + const char * ext, const int len ) +{ + fileext_t key; + lowercpy( key.psz_ext, ext, len ); + key.psz_ext[len] = 0; + return + bsearch( &key, pool->fileext, pool->i_cnt, sizeof(key), fileext_cmp ); +} + +/* MUST BE LOCK -- add a single file extension. + * + * retval -1 on error + * return 1 new file extension + * return 0 update existing file extension + */ +static int pool_add_ext( fileext_pool_t * pool, + const char * ext, int len, int types ) +{ + fileext_t * key + = pool_search( pool, ext, len ); + int creation = !key; + if( creation ) + { + if ( pool_ensure( pool, pool->i_cnt+1 ) == VLC_SUCCESS ) + { + key = pool->fileext + pool->i_cnt++; + key->i_types = types; + lowercpy( key->psz_ext, ext, len ); + key->psz_ext[len] = 0; + key->i_len = len; + } + } + + if( key ) + key->i_types |= types; + + return key ? creation : -1; +} + +/* MUST BE LOCK -- add file extensions. + * + * \return number of extension added + * \retval -1 on error + */ +static int pool_add_exts( fileext_pool_t * pool, + const char * exts, int types ) +{ + int l, cnt = 0, creation = 0; + + if ( types == FILEEXT_ALL ) types = FILEEXT_ALL_KNOWN; + while( l = parse_exts( &exts ), l ) + { + int res = pool_add_ext( pool, exts, l, types ); + if( res == -1 ) + { + l = 0; break; + } + ++cnt; + creation |= ( res == 1 ); + + /* ignore semicolons ';' */ + for( exts += l; *exts == ';'; ++exts ) + ; + /* no more ? */ + if( !*exts ) break; + } + if( creation ) pool_sort(pool); + return l ? cnt : -1; +} + +/* MUST BE LOCKED -- remove file extensions. + * + * Currently only remove types; the extension is never deleted but + * stay in the pool in the unknown category. + * + * retval -1 error + * return >0 number of extension affected + */ +static int pool_del_exts( fileext_pool_t * pool, + const char * exts, int types ) +{ + int l, cnt = 0; + const int mask = ( types == FILEEXT_ALL ) ? 0 : ~types; + + while( l = parse_exts( &exts ), l ) + { + fileext_t * ext; + if ( ext = pool_search( pool,exts,l ), ext ) + { + ++cnt; + ext->i_types &= mask; + } + + /* ignore semicolons ';' */ + for( exts += l; *exts == ';'; ++exts ) + ; + /* no more ? */ + if( !*exts ) break; + } + return l ? cnt : -1; +} + +/* MUST BE LOCKED -- duplicate a pool */ +static fileext_pool_t * pool_dup( fileext_pool_t * pool ) +{ + fileext_pool_t * dup = pool_create( pool->i_cnt ); + + if( dup ) + { + dup->i_cnt = pool->i_cnt; + memmove( dup->fileext, pool->fileext, dup->i_cnt * sizeof(fileext_t) ); + } + return dup; +} + +/* + * Get name of extension type(s). + * + * \param types extension type mask + * \retval 0 an invalid type + * \retval other a semicolon ';' separated list of extension type + */ +const char * fileext_TypeName( int types ) +{ + /* return types >= FILEEXT_UNKNOWN || type <= FILEEXT_ALL */ + return valid_type( types ) + ? name[types] + : "invalid" + ; +} + +/* + * Get name of extension type(s). + * + * \param types extension type mask + * \retval 0 an invalid type + * \retval other a semicolon ';' separated list of extension type + */ +int fileext_TypeOf( fileext_ptr_t pool, const char * ext ) +{ + fileext_t * fileext; + int type = FILEEXT_ERROR; + int len = valid_ext( ext ); + + if( !len ) + return type; + + pool = ( pool == FILEEXT_POOL ) ? &mypool : pool; + pool_lock( pool ); + { + fileext = pool_search( pool, ext, len ); + type = fileext + ? fileext->i_types + : FILEEXT_UNKNOWN + ; + } + pool_unlock( pool ); + + return type; +} + +/* + * Get extension list of given types. + * + * \param types extension type mask + * \retval 0 an invalid type + * \retval "" an empty list + * \retval other a list of extension (e.g "*.ext1;*.ext2") + */ +char * fileext_Get( fileext_pool_t * pool, int types ) +{ + char * psz_exts = NULL; + + if ( valid_type( types ) ) + { + pool = ( pool == FILEEXT_POOL ) ? &mypool : pool; + pool_lock( pool ); + { + psz_exts = pool_get( pool, types ); + } + pool_unlock( pool ); + } + + return psz_exts; +} + +/* + * Add a list of extension of given type. + * + * \param psz_exts a semicolon ';' separated list of extension + * \param types extension type mask (for a single type) + * \retval VLC_EGENERIC on failure + * \retval VLC_SUCCESS on success + */ +int fileext_Add( fileext_pool_t * pool, const char * psz_extlist, int types ) +{ + int res; + + pool = ( pool == FILEEXT_POOL ) ? &mypool : pool; + pool_lock( pool ); + { + res = pool_add_exts( pool, psz_extlist, types ) >= 0 + ? VLC_SUCCESS + : VLC_EGENERIC + ; + } + pool_unlock( pool ); + + return res; +} + +/* + * Delete (remove) a list of extension. + * + * \param psz_exts a semicolon ';' separated list of extension + * \param types extension type mask (for a single type) + * \retval VLC_EGENERIC on failure + * \retval VLC_SUCCESS on success + */ +int fileext_Del( fileext_pool_t * pool, + const char * psz_extlist, int types ) +{ + int res; + + pool = ( pool == FILEEXT_POOL ) ? &mypool : pool; + pool_lock( pool ); + { + res = pool_del_exts( pool, psz_extlist, types ) >= 0 + ? VLC_SUCCESS + : VLC_EGENERIC + ; + } + pool_unlock( pool ); + + return res; +} + +/* + * Duplicate a list of extension. + * + * \param pool file extension pool + * \param psz_exts a semicolon ';' separated list of extension + * \param types extension type mask (for a single type) + * \retval VLC_EGENERIC on failure + * \retval VLC_SUCCESS on success + */ +fileext_pool_t * fileext_Dup( fileext_pool_t * pool ) +{ + fileext_pool_t * dup; + + pool = ( pool == FILEEXT_POOL ) ? &mypool : pool; + pool_lock( pool ); + { + dup = pool_dup( pool ); + } + pool_unlock( pool ); + + return dup; +} + + +/* + * Create a new file extension pool. + * + * \param size initial pool size (number of extensions; 0 is allowed) + * \return new file extension pool + * \retval NULL on error + */ +fileext_pool_t * fileext_Create( int size ) +{ + return pool_create( size ); +} + +/* + * Destroy a file extension pool. + * + * \param pool file extension pool + * \return new file extension pool + * \retval NULL on error + */ +void fileext_Destroy( fileext_pool_t * pool ) +{ + pool = ( pool == FILEEXT_POOL ) ? &mypool : pool; + pool_destroy( pool ); +} + + +/* + * Fill with default file extensions. + * + * The fileext_Default() fill a file extension pool with an + * predefined list of well known file extensions. + * + * \note This function should not be of any use as soon as each + * component registers properly its file extensions. + * + * \param pool file extension pool + * \retval VLC_SUCCESS on success + * \retval !VLC_SUCCESS error code of failure + */ +int fileext_Default( fileext_pool_t * pool ) +{ + int res = VLC_EGENERIC; + + pool = ( pool == FILEEXT_POOL ) ? &mypool : pool; + pool_lock( pool ); + for( ;; ) + { + if ( 0 > pool_add_exts( pool, aud_exts, FILEEXT_AUDIO ) ) break; + if ( 0 > pool_add_exts( pool, vid_exts, FILEEXT_VIDEO ) ) break; + if ( 0 > pool_add_exts( pool, pls_exts, FILEEXT_PLAYLIST ) ) break; + if ( 0 > pool_add_exts( pool, sub_exts, FILEEXT_SUBTITLE ) ) break; + res = VLC_SUCCESS; + break; + } + pool_unlock( pool ); + + return res; +} -- 1.6.1.3 From benjihan at users.sourceforge.net Thu Feb 26 10:23:15 2009 From: benjihan at users.sourceforge.net (Benjamin Gerard) Date: Thu, 26 Feb 2009 10:23:15 +0100 Subject: [vlc-devel] [PATCH 2/2] Implements dynamic file extension manager. In-Reply-To: <1235640195-10331-1-git-send-email-benjihan@users.sourceforge.net> References: <1235640195-10331-1-git-send-email-benjihan@users.sourceforge.net> Message-ID: <1235640195-10331-2-git-send-email-benjihan@users.sourceforge.net> Modifies current libvlc and GUI to use the new file extension manager. Basically currently the static shared file extension container FILEEXT_POOL is used by all instance of libvlc. It should be somewhat easy to implement a per libvlc instance container version if it is required. --- include/vlc_interface.h | 26 ++++++----------- modules/gui/qt4/dialogs_provider.hpp | 51 ++++++++++++++++------------------ modules/gui/skins2/src/dialogs.cpp | 20 ++++++++++--- src/libvlc.c | 6 ++++ 4 files changed, 54 insertions(+), 49 deletions(-) diff --git a/include/vlc_interface.h b/include/vlc_interface.h index 7dde2a5..68852c6 100644 --- a/include/vlc_interface.h +++ b/include/vlc_interface.h @@ -171,23 +171,15 @@ typedef enum vlc_dialog { /* Useful text messages shared by interfaces */ #define INTF_ABOUT_MSG LICENSE_MSG -#define EXTENSIONS_AUDIO "*.a52;*.aac;*.ac3;*.dts;*.flac;*.m4a;*.m4p;*.mka;" \ - "*.mod;*.mp1;*.mp2;*.mp3;*.oga;*.ogg;*.oma;*.spx;" \ - "*.wav;*.wma;*.xm" - -#define EXTENSIONS_VIDEO "*.asf;*.avi;*.divx;*.dv;*.flv;*.gxf;*.iso;*.m1v;*.m2v;" \ - "*.m2t;*.m2ts;*.m4v;*.mkv;*.mov;*.mp2;*.mp4;*.mpeg;*.mpeg1;" \ - "*.mpeg2;*.mpeg4;*.mpg;*.mts;*.mxf;*.nuv;" \ - "*.ogg;*.ogm;*.ogv;*.ogx;*.ps;" \ - "*.rec;*.rm;*.rmvb;*.ts;*.vob;*.wmv;" - -#define EXTENSIONS_PLAYLIST "*.asx;*.b4s;*.m3u;*.pls;*.vlc;*.xspf" - -#define EXTENSIONS_MEDIA EXTENSIONS_VIDEO ";" EXTENSIONS_AUDIO ";" \ - EXTENSIONS_PLAYLIST - -#define EXTENSIONS_SUBTITLE "*.cdg;*.idx;*.srt;*.sub;*.utf;*.ass;*.ssa;*.aqt;" \ - "*.jss;*.psb;*.rt;*.smi" + /* XXX: dynamic file extension: + returns MALLOCated strings caller should FREE them ! + */ +# include +# define EXTENSIONS_AUDIO fileext_Get( FILEEXT_POOL, FILEEXT_AUDIO ) +# define EXTENSIONS_VIDEO fileext_Get( FILEEXT_POOL, FILEEXT_VIDEO ) +# define EXTENSIONS_PLAYLIST fileext_Get( FILEEXT_POOL, FILEEXT_PLAYLIST ) +# define EXTENSIONS_MEDIA fileext_Get( FILEEXT_POOL, FILEEXT_MEDIA ) +# define EXTENSIONS_SUBTITLE fileext_Get( FILEEXT_POOL, FILEEXT_SUBTITLE ) /** \defgroup vlc_interaction Interaction * \ingroup vlc_interface diff --git a/modules/gui/qt4/dialogs_provider.hpp b/modules/gui/qt4/dialogs_provider.hpp index c08a6a5..b2b1ffe 100644 --- a/modules/gui/qt4/dialogs_provider.hpp +++ b/modules/gui/qt4/dialogs_provider.hpp @@ -35,34 +35,31 @@ #include -#define ADD_FILTER_MEDIA( string ) \ - string += qtr( "Media Files" ); \ - string += " ( "; \ - string += EXTENSIONS_MEDIA; \ - string += ");;"; -#define ADD_FILTER_VIDEO( string ) \ - string += qtr( "Video Files" ); \ - string += " ( "; \ - string += EXTENSIONS_VIDEO; \ - string += ");;"; -#define ADD_FILTER_AUDIO( string ) \ - string += qtr( "Audio Files" ); \ - string += " ( "; \ - string += EXTENSIONS_AUDIO; \ - string += ");;"; -#define ADD_FILTER_PLAYLIST( string ) \ - string += qtr( "Playlist Files" ); \ - string += " ( "; \ - string += EXTENSIONS_PLAYLIST; \ - string += ");;"; -#define ADD_FILTER_SUBTITLE( string ) \ - string += qtr( "Subtitles Files" );\ - string += " ( "; \ - string += EXTENSIONS_SUBTITLE; \ - string += ");;"; +#define ADD_FILTER_ANY( string, type, label ) \ + if (1) { \ + char * ext = EXTENSIONS_##type; \ + string += qtr( label ); \ + string += " ( "; \ + string += ext; \ + string += ");;"; \ + free( ext ); \ + } else + +#define ADD_FILTER_MEDIA( string )\ + ADD_FILTER_ANY( string, MEDIA, "Media Files" ) +#define ADD_FILTER_VIDEO( string )\ + ADD_FILTER_ANY( string, VIDEO, "Video Files" ) +#define ADD_FILTER_AUDIO( string )\ + ADD_FILTER_ANY( string, AUDIO, "Audio Files" ) +#define ADD_FILTER_PLAYLIST( string )\ + ADD_FILTER_ANY( string, PLAYLIST, "Playlist Files" ) +#define ADD_FILTER_SUBTITLE( string )\ + ADD_FILTER_ANY( string, SUBTITLE, "Subtitles Files" ) #define ADD_FILTER_ALL( string ) \ - string += qtr( "All Files" ); \ - string += " (*)"; + if (1) { \ + string += qtr( "All Files" ); \ + string += " (*)"; \ + } else enum { EXT_FILTER_MEDIA = 0x01, diff --git a/modules/gui/skins2/src/dialogs.cpp b/modules/gui/skins2/src/dialogs.cpp index bf4b541..3cacf13 100644 --- a/modules/gui/skins2/src/dialogs.cpp +++ b/modules/gui/skins2/src/dialogs.cpp @@ -223,13 +223,23 @@ void Dialogs::showChangeSkin() void Dialogs::showPlaylistLoad() { - showFileGeneric( _("Open playlist"), - _("Playlist Files|"EXTENSIONS_PLAYLIST"|" - "All Files|*"), - showPlaylistLoadCB, kOPEN ); + const char * psz_playlist = _("Playlist Files"); + const char * psz_allfiles = _("All Files"); + char * list, * psz_exts = EXTENSIONS_PLAYLIST; + + if( ! psz_exts ) + return; + if( -1 != + asprintf( &list, "%s|%s|%s|*", psz_playlist, psz_exts, psz_allfiles ) ) + { + showFileGeneric( _("Open playlist"), + list, + showPlaylistLoadCB, kOPEN ); + free( list ); + } + free( psz_exts ); } - void Dialogs::showPlaylistSave() { showFileGeneric( _("Save playlist"), _("XSPF playlist|*.xspf|" diff --git a/src/libvlc.c b/src/libvlc.c index fb7aa52..ab45657 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -321,6 +321,9 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, */ LoadMessages (); + /* Initialize file extension manager */ + fileext_Default( FILEEXT_POOL ); + /* Initialize the module bank and load the configuration of the * main module. We need to do this at this stage to be able to display * a short help if required by the user. (short help == main module @@ -1111,6 +1114,9 @@ void libvlc_InternalCleanup( libvlc_int_t *p_libvlc ) /* Free module bank. It is refcounted, so we call this each time */ module_EndBank( p_libvlc, true ); + /* Cleanup file extension manager */ + fileext_Destroy( FILEEXT_POOL ); + FREENULL( priv->psz_configfile ); var_DelCallback( p_libvlc, "key-pressed", vlc_key_to_action, p_libvlc->p_hotkeys ); -- 1.6.1.3 From sebastien-devel at celeos.eu Thu Feb 26 10:54:08 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Thu, 26 Feb 2009 10:54:08 +0100 Subject: [vlc-devel] [PATCH] bug in globalhotkeys Message-ID: <1235642048.49a666c0d8ab8@imp.celeos.eu> Hi There is a problem in globalhotkeys module. If a X11 error is sent after this module unload, the callback function X11ErrorHandler will be called but it doesn't exists anymore. This patch restores the previous error handler Regards. -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Restore-X11-error-handler.patch Type: text/x-diff Size: 2154 bytes Desc: not available URL: From rdenis at simphalempin.com Thu Feb 26 09:03:11 2009 From: rdenis at simphalempin.com (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 26 Feb 2009 09:03:11 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_New_hotkeys_for_normal_speed=28?= =?utf-8?b?PSksIGZhc3RlcihdKSBhbmQgc2xvd2VyKFspICggSmVhbi1CYXB0aXN0ZSBL?= =?utf-8?q?empf_=29?= In-Reply-To: <20090226000206.E32122F43B@skanda.videolan.org> References: <20090226000206.E32122F43B@skanda.videolan.org> Message-ID: <5f32c64764e1d6b426907daf2cc57bdf@chewa.net> On Thu, 26 Feb 2009 01:02:06 +0100 (CET), git at videolan.org (git version control) wrote: > vlc | branch: master | Jean-Baptiste Kempf | Thu Feb 26 > 00:55:59 2009 +0100| [56cc823ccc929472d03a2f2c3d9174103f085bb2] | > committer: Jean-Baptiste Kempf > > New hotkeys for normal speed(=), faster(]) and slower([) Hmm err, are you sure those are on all or at least most standard keyboard layouts? -- R?mi Denis-Courmont From jb at videolan.org Thu Feb 26 12:00:51 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Thu, 26 Feb 2009 12:00:51 +0100 Subject: [vlc-devel] commit: New hotkeys for normal speed(=), faster(]) and slower([) ( Jean-Baptiste Kempf ) In-Reply-To: <5f32c64764e1d6b426907daf2cc57bdf@chewa.net> References: <20090226000206.E32122F43B@skanda.videolan.org> <5f32c64764e1d6b426907daf2cc57bdf@chewa.net> Message-ID: <20090226110051.GA27139@videolan.org> On Thu, Feb 26, 2009 at 09:03:11AM +0100, R?mi Denis-Courmont wrote : > > > > On Thu, 26 Feb 2009 01:02:06 +0100 (CET), git at videolan.org (git version > control) wrote: > > vlc | branch: master | Jean-Baptiste Kempf | Thu Feb 26 > > 00:55:59 2009 +0100| [56cc823ccc929472d03a2f2c3d9174103f085bb2] | > > committer: Jean-Baptiste Kempf > > > > New hotkeys for normal speed(=), faster(]) and slower([) > > Hmm err, are you sure those are on all or at least most standard keyboard > layouts? '=' is very easy to acess on all keyboards, according to http://en.wikipedia.org/wiki/Keyboard_layout [ and ] are accessible easily on US keyboards but are often triggered with AltGr for other layouts, but I took the mplayer concistency for this.. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From remi at remlab.net Thu Feb 26 12:30:45 2009 From: remi at remlab.net (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 26 Feb 2009 12:30:45 +0100 Subject: [vlc-devel] [PATCH] bug in globalhotkeys In-Reply-To: <1235642048.49a666c0d8ab8@imp.celeos.eu> References: <1235642048.49a666c0d8ab8@imp.celeos.eu> Message-ID: On Thu, 26 Feb 2009 10:54:08 +0100, S?bastien Escudier wrote: > There is a problem in globalhotkeys module. > If a X11 error is sent after this module unload, the callback function > X11ErrorHandler will be called but it doesn't exists anymore. I don't disagree there is a bug. But how did you trigger this? > This patch restores the previous error handler This only works if the error handlers are unregistered in exact reverse registration order. The X11 video outputs do register their handlers. I don't know about other plugins. One work around would be: while (x_error_handler != our_handler) sleep (sometime); set (previous_handler); And then we also have a problem with the Xlib thread handling :( In the long term, we should either: - use a single Xlib Display managed by the core (with proper Xlib thread safety initialization), or - switch to XCB. Alas the first solution would render libvlccore dependent on Xlib, which would infuriate Debian multimedia... and the second one requires a lot more work to bring our XCB support to a decent features level. -- R?mi Denis-Courmont From sebastien-devel at celeos.eu Thu Feb 26 12:40:13 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Thu, 26 Feb 2009 12:40:13 +0100 Subject: [vlc-devel] [PATCH] bug in globalhotkeys In-Reply-To: References: <1235642048.49a666c0d8ab8@imp.celeos.eu> Message-ID: <1235648413.49a67f9d5c104@imp.celeos.eu> Quoting R?mi Denis-Courmont : > > If a X11 error is sent after this module unload, the callback function > > X11ErrorHandler will be called but it doesn't exists anymore. > > I don't disagree there is a bug. But how did you trigger this? I am using vlc as a library, and my main application triggered a X11 error after I unloaded vlc. So it crashed. > > This patch restores the previous error handler > > This only works if the error handlers are unregistered in exact reverse > registration order. Unless I am missing something, I think I handled this in my patch because I am testing if the handler has been changed. Two cases when we close the module : - The handler is still vlc's one. It means no one unregistered or changed the handler, so we can register the one there was before. - The handler is not vlc's one. It means someone changed it, and I leave it as it is. I don't see any case where it doesn't work. If the handler I restore is not valid anymore, it is not vlc's responsibility From sebastien-devel at celeos.eu Thu Feb 26 12:49:13 2009 From: sebastien-devel at celeos.eu (=?iso-8859-1?b?U+liYXN0aWVu?= Escudier) Date: Thu, 26 Feb 2009 12:49:13 +0100 Subject: [vlc-devel] [PATCH] bug in globalhotkeys In-Reply-To: <1235648413.49a67f9d5c104@imp.celeos.eu> References: <1235642048.49a666c0d8ab8@imp.celeos.eu> <1235648413.49a67f9d5c104@imp.celeos.eu> Message-ID: <1235648953.49a681b96444d@imp.celeos.eu> Quoting S?bastien Escudier : > I don't see any case where it doesn't work. If the handler I restore is not > valid anymore, it is not vlc's responsibility Ho I think I see what you meant. The previous handler may not have been unregistered because vlc changed it. Another solution could be to not use XSetErrorHandler. I am quoting : http://www.motifdeveloper.com/tips/tip29.html This means that an application program can use the routine to temporarily override Xlib error behavior, installing its own handler for a given purpose, and then later re-install the default handler when some critical piece of code is finished. This is not the way it is used in this module. From fenrir at via.ecp.fr Thu Feb 26 13:00:25 2009 From: fenrir at via.ecp.fr (Laurent Aimar) Date: Thu, 26 Feb 2009 13:00:25 +0100 Subject: [vlc-devel] [PATCH] bug in globalhotkeys In-Reply-To: <1235648413.49a67f9d5c104@imp.celeos.eu> References: <1235642048.49a666c0d8ab8@imp.celeos.eu> <1235648413.49a67f9d5c104@imp.celeos.eu> Message-ID: <20090226120025.GA18538@via.ecp.fr> On Thu, Feb 26, 2009, S?bastien Escudier wrote: > Unless I am missing something, I think I handled this in my patch because I am > testing if the handler has been changed. Not really, because in VLC you have at least two modules that change the handler (globalhotkeys, x11 video output, and maybe Qt4). If only one interface changes it (ie no qt4) then it may work as vout are always destroyed before interfaces. Otherwise it won't as nothing imposes that interfaces are destructed in the reverse order of their creation. -- fenrir From remi at remlab.net Thu Feb 26 13:15:26 2009 From: remi at remlab.net (=?UTF-8?Q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 26 Feb 2009 13:15:26 +0100 Subject: [vlc-devel] [PATCH] bug in globalhotkeys In-Reply-To: <1235648413.49a67f9d5c104@imp.celeos.eu> References: <1235642048.49a666c0d8ab8@imp.celeos.eu> <1235648413.49a67f9d5c104@imp.celeos.eu> Message-ID: <6f00f3fe90bc3a23b44acb95bc9f1375@chewa.net> On Thu, 26 Feb 2009 12:40:13 +0100, S?bastien Escudier wrote: > - The handler is not vlc's one. It means someone changed it, and I leave > it as it is. That won't work. First, if an error occurs, that someone else should try to handle it. If it does not handle it, it should forward it to the earlier handler. That means our now invalid handle (look at what the X11 video output does for instance) will be called. Second, when that someone else exits, it should similarly reset the X11 error handler to its own "earlier" value, which was our handler back then. If you've used DOS in the old days, you may remember the TSR unload ordering. We have the same problem here (Xlib is from the eighties afterall). > I don't see any case where it doesn't work. If the handler I restore is > not valid anymore, it is not vlc's responsibility Yes it is. As long as we are unable to unregister our handler, we MUST ensure it remains valid. Which means we should sleep until we can unregister. Unfortunately, that might cause a deadlock. -- R?mi Denis-Courmont From jpd at m2x.nl Thu Feb 26 15:05:37 2009 From: jpd at m2x.nl (jpd at m2x.nl) Date: Thu, 26 Feb 2009 15:05:37 +0100 (CET) Subject: [vlc-devel] [PATCH] Change wording to be more accurate. Message-ID: <99c2474d83295fbb4f069226d0720d8e.squirrel@m2x.nl> Change wording to be more accurate. And maybe make JB happy. --- projects/mozilla/vlcshell.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/projects/mozilla/vlcshell.cpp b/projects/mozilla/vlcshell.cpp index c1ddaf8..db135e3 100644 --- a/projects/mozilla/vlcshell.cpp +++ b/projects/mozilla/vlcshell.cpp @@ -46,7 +46,7 @@ /* Enable/disable debugging printf's for X11 resizing */ #undef X11_RESIZE_DEBUG -#define WINDOW_TEXT "Video is loading..." +#define WINDOW_TEXT "Waiting for video" /***************************************************************************** * Unix-only declarations -- 1.6.0.6 From git at videolan.org Thu Feb 26 16:53:28 2009 From: git at videolan.org (git version control) Date: Thu, 26 Feb 2009 16:53:28 +0100 (CET) Subject: [vlc-devel] commit: Change wording to be more accurate. (jpd@m2x.nl ) Message-ID: <20090226155328.9F83C2F7B7@skanda.videolan.org> vlc | branch: 0.9-bugfix | jpd at m2x.nl | Thu Feb 26 15:05:37 2009 +0100| [dd372810fc9fe351ef91da24ba7937216380dc29] | committer: R?mi Denis-Courmont Change wording to be more accurate. Change wording to be more accurate. And maybe make JB happy. Signed-off-by: R?mi Denis-Courmont (cherry picked from commit f03b31ee8f915c5c993095466b340ee1e620c961) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dd372810fc9fe351ef91da24ba7937216380dc29 --- projects/mozilla/vlcshell.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/projects/mozilla/vlcshell.cpp b/projects/mozilla/vlcshell.cpp index 7adfca6..72bc8e4 100644 --- a/projects/mozilla/vlcshell.cpp +++ b/projects/mozilla/vlcshell.cpp @@ -46,7 +46,7 @@ /* Enable/disable debugging printf's for X11 resizing */ #undef X11_RESIZE_DEBUG -#define WINDOW_TEXT "Video is loading..." +#define WINDOW_TEXT "Waiting for video" /***************************************************************************** * Unix-only declarations From rem at videolan.org Thu Feb 26 16:53:42 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Thu, 26 Feb 2009 17:53:42 +0200 Subject: [vlc-devel] [PATCH] Change wording to be more accurate. In-Reply-To: <99c2474d83295fbb4f069226d0720d8e.squirrel@m2x.nl> References: <99c2474d83295fbb4f069226d0720d8e.squirrel@m2x.nl> Message-ID: <200902261753.42297.rem@videolan.org> Le jeudi 26 f?vrier 2009 16:05:37 jpd at m2x.nl, vous avez ?crit?: > Change wording to be more accurate. Merged, thanks. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From xxcv07 at gmail.com Thu Feb 26 16:56:41 2009 From: xxcv07 at gmail.com (xxcv) Date: Fri, 27 Feb 2009 02:56:41 +1100 Subject: [vlc-devel] =?utf-8?q?commit=3A_libxml=3A_ugly_fix_for_plugin_re-?= =?utf-8?q?entrancy_-_refs_=232541_=28_R=C3=A9mi_Denis-Courmont_=29?= In-Reply-To: <20090222182132.BF5EB2F773@skanda.videolan.org> References: <20090222182132.BF5EB2F773@skanda.videolan.org> Message-ID: <49A6BBB9.3080703@gmail.com> git version control wrote: > vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Fri Feb 20 18:52:47 2009 +0200| [0fc400924a5bd1165ca78803db8989e377d1abd1] | committer: R?mi Denis-Courmont > > libxml: ugly fix for plugin re-entrancy - refs #2541 > > >> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0fc400924a5bd1165ca78803db8989e377d1abd1 >> > --- > > modules/misc/xml/libxml.c | 39 +++++++++++++++++++++++++++++++++++++-- > 1 files changed, 37 insertions(+), 2 deletions(-) > > diff --git a/modules/misc/xml/libxml.c b/modules/misc/xml/libxml.c > index 1b25a82..e5de2f1 100644 > --- a/modules/misc/xml/libxml.c > +++ b/modules/misc/xml/libxml.c > @@ -67,6 +67,31 @@ static void CatalogLoad( xml_t *, const char * ); > static void CatalogAdd( xml_t *, const char *, const char *, const char * ); > static int StreamRead( void *p_context, char *p_buffer, int i_buffer ); > > +static unsigned refs = 0; > +#if defined (LIBVLC_USE_PTHREAD) > +static vlc_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; > +#elif defined (WIN32) > +BOOL WINAPI DllMain (HINSTANCE hinstDll, DWORD fdwReason, LPVOID lpvReserved) > +{ > + (void) hinstDll; > + (void) lpvReserved; > + > + switch (fdwReason) > + { > + case DLL_PROCESS_ATTACH: > + vlc_mutex_init (&lock); > libxml.c:75: warning: no previous prototype for 'DllMain' libxml.c: In function `DllMain': libxml.c:82: error: `lock' undeclared (first use in this function) libxml.c:82: error: (Each undeclared identifier is reported only once libxml.c:82: error: for each function it appears in.) libxml.c: In function `Open': libxml.c:105: error: `lock' undeclared (first use in this function) libxml.c: In function `Close': libxml.c:124: error: `lock' undeclared (first use in this function) make[7]: *** [libxml_plugin_la-libxml.lo] Error 1 What's lock? You never defined it in 0.9-bugfix -------------- next part -------------- An HTML attachment was scrubbed... URL: From anna.richter1 at gmx.net Thu Feb 26 17:03:56 2009 From: anna.richter1 at gmx.net (Anna Richter) Date: Thu, 26 Feb 2009 17:03:56 +0100 Subject: [vlc-devel] remove the subtitles Message-ID: <20090226160356.166200@gmx.net> Hi everybody! I have following situation: I have a video-streaming-server on the one side and a video-client on the other side. The video-client is a C-Code. In that C-Code I call the vlc-code, which I took from here: http://wiki.videolan.org/LibVLC_Tutorial. The desired url is a parameter of the libvlc_media_new(...)-function. Then the client sends a request to the server to get the data according to that url. When the videostreams receives at the client, it plays it, means, it opens the video-output-window and plays the video there. But (and that is my problem) the data-url is displayed the first couple of seconds on the display too, like a kind of subtitles. How can I remove it? What should I change and where? I am looking for it since 2days and I still can not find it. It would be great, if somebody could help me. Best wishes Anna -- Psssst! Schon vom neuen GMX MultiMessenger geh?rt? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger01 From jb at videolan.org Thu Feb 26 17:05:27 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Thu, 26 Feb 2009 17:05:27 +0100 Subject: [vlc-devel] remove the subtitles In-Reply-To: <20090226160356.166200@gmx.net> References: <20090226160356.166200@gmx.net> Message-ID: <20090226160527.GA25251@videolan.org> Hello Anna, On Thu, Feb 26, 2009 at 05:03:56PM +0100, Anna Richter wrote : > But (and that is my problem) the data-url is displayed the first couple of seconds on the display too, like a kind of subtitles. How can I remove it? What should I change and where? I am looking for it since 2days and I still can not find it. It would be great, if somebody could help me. Use :no-video-title-show Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Thu Feb 26 17:23:04 2009 From: git at videolan.org (git version control) Date: Thu, 26 Feb 2009 17:23:04 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Missing_static_variable_declarati?= =?utf-8?q?on_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090226162304.501862FE41@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Thu Feb 26 18:22:43 2009 +0200| [f106114c71e42288343aaadfa08fcbdc16c0bf9a] | committer: R?mi Denis-Courmont Missing static variable declaration > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f106114c71e42288343aaadfa08fcbdc16c0bf9a --- modules/misc/xml/libxml.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/misc/xml/libxml.c b/modules/misc/xml/libxml.c index e5de2f1..2afe3a5 100644 --- a/modules/misc/xml/libxml.c +++ b/modules/misc/xml/libxml.c @@ -71,6 +71,8 @@ static unsigned refs = 0; #if defined (LIBVLC_USE_PTHREAD) static vlc_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; #elif defined (WIN32) +static vlc_mutex_t lock; + BOOL WINAPI DllMain (HINSTANCE hinstDll, DWORD fdwReason, LPVOID lpvReserved) { (void) hinstDll; From benjihan at users.sourceforge.net Thu Feb 26 17:54:28 2009 From: benjihan at users.sourceforge.net (=?UTF-8?Q?Benjamin_G=C3=A9rard?=) Date: Thu, 26 Feb 2009 17:54:28 +0100 Subject: [vlc-devel] pkg-config missing cflags ? Message-ID: <1e0b1f250902260854k2eb9ac07rc043fc0c7d950b02@mail.gmail.com> Compiling with some vlc headers requires -std=gnu99 gcc flag. Shouldn't it be added to pkg-config --cflags ? Regards. -- B. From rem at videolan.org Thu Feb 26 18:03:00 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Thu, 26 Feb 2009 19:03:00 +0200 Subject: [vlc-devel] pkg-config missing cflags ? In-Reply-To: <1e0b1f250902260854k2eb9ac07rc043fc0c7d950b02@mail.gmail.com> References: <1e0b1f250902260854k2eb9ac07rc043fc0c7d950b02@mail.gmail.com> Message-ID: <200902261903.01086.rem@videolan.org> Le jeudi 26 f?vrier 2009 18:54:28 Benjamin G?rard, vous avez ?crit?: > Compiling with some vlc headers requires -std=gnu99 gcc flag. > Shouldn't it be added to pkg-config --cflags ? No. The C++ compiler wouldn't like that, and it's compiler- and compiler version-dependent. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From git at videolan.org Thu Feb 26 18:06:48 2009 From: git at videolan.org (git version control) Date: Thu, 26 Feb 2009 18:06:48 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_skins2=3A_simplification=2E_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090226170648.828652FE88@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Thu Feb 26 11:23:32 2009 +0100| [410e1456ded4f5be5a8633a3e013289ef3402e89] | committer: R?mi Duraffort skins2: simplification. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=410e1456ded4f5be5a8633a3e013289ef3402e89 --- modules/gui/skins2/src/theme_repository.cpp | 10 ++++------ 1 files changed, 4 insertions(+), 6 deletions(-) diff --git a/modules/gui/skins2/src/theme_repository.cpp b/modules/gui/skins2/src/theme_repository.cpp index 3db8a42..8aef4e6 100644 --- a/modules/gui/skins2/src/theme_repository.cpp +++ b/modules/gui/skins2/src/theme_repository.cpp @@ -131,14 +131,12 @@ void ThemeRepository::parseDirectory( const string &rDir_locale ) // Add the theme in the popup menu string shortname = name.substr( 0, name.size() - 4 ); - val.psz_string = new char[path.size() + 1]; - text.psz_string = new char[shortname.size() + 1]; - strcpy( val.psz_string, path.c_str() ); - strcpy( text.psz_string, shortname.c_str() ); + val.psz_string = strdup( path.c_str() ); + text.psz_string = strdup( shortname.c_str() ); var_Change( getIntf(), "intf-skins", VLC_VAR_ADDCHOICE, &val, &text ); - delete[] val.psz_string; - delete[] text.psz_string; + free( val.psz_string ); + free( text.psz_string ); } free( pszDirContent ); From support at streamalerts.com Thu Feb 26 19:01:33 2009 From: support at streamalerts.com (Stream Alerts) Date: Thu, 26 Feb 2009 13:01:33 -0500 Subject: [vlc-devel] RE : RE : How to continue playing an online playlistwith LibVLC? Message-ID: <7f5256cb$36d1f485$76bd811$@com> Yes, that worked great! I just had to wait for a little after the initial file was parsed. I'll have to post a tutorial on the wiki. Thanks! Clean Clean DocumentEmail Actually, libvlc_media_player_play is asynchronous. It spawns others threads, and returns. The job is really done when you get a EndReached event. >From the moment on, libvlc_media_subitems ( ) can be used. You can also just insert a small sleep(1) and it should work (at least for testing). Erwan10. -----Message d'origine----- De : vlc-devel-bounces at videolan.org [mailto:vlc-devel-bounces at videolan.org] De la part de Stream Alerts Envoy? : vendredi 20 f?vrier 2009 21:40 ? : Mailing list for VLC media player developers Objet : Re: [vlc-devel] RE : How to continue playing an online playlistwith LibVLC? Thank you Erwan10! That makes sense. How do I extract that media_list after the playlist is parsed? libvlc_media_subitems()? I tried refreshing my media object with libvlc_media_player_get_media() and then called libvlc_media_subitems() but it returned a null pointer. How else can I grab the information? Thanks! Sincerely, Chris Larsen -------------- next part -------------- An HTML attachment was scrubbed... URL: From benjihan at users.sourceforge.net Thu Feb 26 19:02:53 2009 From: benjihan at users.sourceforge.net (=?UTF-8?Q?Benjamin_G=C3=A9rard?=) Date: Thu, 26 Feb 2009 19:02:53 +0100 Subject: [vlc-devel] pkg-config missing cflags ? In-Reply-To: <200902261903.01086.rem@videolan.org> References: <1e0b1f250902260854k2eb9ac07rc043fc0c7d950b02@mail.gmail.com> <200902261903.01086.rem@videolan.org> Message-ID: <1e0b1f250902261002o3e17a18fm9f65fbfa1dab9a5a@mail.gmail.com> On Thu, Feb 26, 2009 at 6:03 PM, R?mi Denis-Courmont wrote: > Le jeudi 26 f?vrier 2009 18:54:28 Benjamin G?rard, vous avez ?crit?: >> Compiling with some vlc headers requires -std=gnu99 gcc flag. >> Shouldn't it be added to pkg-config --cflags ? > > No. The C++ compiler wouldn't like that, and it's compiler- and compiler > version-dependent. > Right. Some autoconf macros would be sweet (at least for autotools users). -- B. From remi at remlab.net Thu Feb 26 19:15:33 2009 From: remi at remlab.net (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 26 Feb 2009 20:15:33 +0200 Subject: [vlc-devel] [RFC] Opening network stream Message-ID: <200902262015.33780.remi@remlab.net> Hello, I don't know how to put it nicely so... I really find the open network stream dialog has had its time. It's simply confusing and ugly. The list of protocols is too long, yet not even complete. At least RTP/TCP, RTP/DCCP and raw TCP are currently missing; and RTSPS and FTPS might need to be added later. Even if you know the protocol names, the use of the dialog is confusing. For HTTP, HTTPS, MMS, FTP and RTSP (and would-be RTSPS and FTPS), the user is far more likely to have a full URL. Automatically adding the protocol prefix in front of the specified "address" is confusing. The term "address" is plain wrong. And it is silly to ask the user for the protocol through the dropdown list when the URL would already contain the information. By the way, my browsers (yes, plural) have a "Open Location" or "Open URL" option. I daresay "Paste MRL" while it is quite nifty, has a terrible name. Users are more likely to know URL or location (I don't know which is best), not the VideoLAN-specific MRL term. Also, that entry should probably be in the same menu section as the open... options rather than with discovery plugins. I don't know about RTMP, but I guess the same would apply. Then again, if _I_ have never seen a RTMP location, I wonder how many people ever have. Does Flash have a standard way to give a RTMP location? That leaves RTP and UDP. I have a lot of problem with these. First, UDP is a bad misnomer for UDP/TS, since RTP is over UDP too. Second, UDP/TS is legacy and RTP is our current "blessed" multicasting protocol. Yet users are a lot more likely to know what "UDP" means than "RTP". Hence they'll pick the _wrong_ one. Admittedly, this is rather a streaming output problem though (and "prefer UDP over RTP" is really a poor choice of name for the sout checkbox). Third non-UDP transports for RTP cannot be selected. Forth, users tend to confuse the source and destination address in that field, especially when unicasting. Fifth, you cannot do SSM. Sixth, the default port number doesn't match the default RTP port. And last, it makes people believe that they can open any "RTP" stream, which is totally untrue. You can only a single RTP _elementary_ stream (i.e. a single RTP session in IETF RFC3550 parliance), and then, only if the payload type is one of the old static payload types. In practice, this RTP stuff is really only useful for old audio codecs, and for MPEG TS. Forget about modern codecs or A/V streams with native (non-TS) RTP encapsulation. In those cases, a SDP is needed. It can come from SAP, RTSP or a file (or SIP but VLC doesn't do that). All in all, I wonder how many people do -succesfully- type in the IP address and port number manually in that dialog. I would really remove the open network dialog/tab completely. Then I'd widden, rename and move the Paste MRL dialog. And if we really want RTP and/or UDP helpers, we can add a forth button to that dialog, but I think we should skip that and encourage people to use RTSP, SAP and/or SDP-over-HTTP. -- R?mi Denis-Courmont http://www.remlab.net/ From rem at videolan.org Thu Feb 26 19:16:34 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Thu, 26 Feb 2009 20:16:34 +0200 Subject: [vlc-devel] pkg-config missing cflags ? In-Reply-To: <1e0b1f250902261002o3e17a18fm9f65fbfa1dab9a5a@mail.gmail.com> References: <1e0b1f250902260854k2eb9ac07rc043fc0c7d950b02@mail.gmail.com> <200902261903.01086.rem@videolan.org> <1e0b1f250902261002o3e17a18fm9f65fbfa1dab9a5a@mail.gmail.com> Message-ID: <200902262016.35047.rem@videolan.org> Le jeudi 26 f?vrier 2009 20:02:53 Benjamin G?rard, vous avez ?crit?: > On Thu, Feb 26, 2009 at 6:03 PM, R?mi Denis-Courmont wrote: > > Le jeudi 26 f?vrier 2009 18:54:28 Benjamin G?rard, vous avez ?crit?: > >> Compiling with some vlc headers requires -std=gnu99 gcc flag. > >> Shouldn't it be added to pkg-config --cflags ? > > > > No. The C++ compiler wouldn't like that, and it's compiler- and compiler > > version-dependent. > > Right. Some autoconf macros would be sweet (at least for autotools users). AC_PROG_CC_C99 ? -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From ivoire at videolan.org Thu Feb 26 17:53:00 2009 From: ivoire at videolan.org (=?UTF-8?B?UsOpbWkgRHVyYWZmb3J0?=) Date: Thu, 26 Feb 2009 17:53:00 +0100 Subject: [vlc-devel] =?utf-8?q?commit=3A_telepathy=3A_compute_test_only_on?= =?utf-8?q?e_time_=28_R=C3=A9mi_Duraffort_=29?= In-Reply-To: <200902252054.53799.rem@videolan.org> References: <20090225184751.3ACED2FB11@skanda.videolan.org> <200902252054.53799.rem@videolan.org> Message-ID: <49A6C8EC.4020106@videolan.org> >> telepathy: compute test only one time >> (and strlen("item-current") == 12) > > Actually, you've changed the behavior, as the code was really equivalent to > strcmp(), and not anymore (it won't compare the nul). I don't know what's > right. Yes you're right. The problem is that I don't know what was the intended result but I guess that it's just to compare that psz_var is equal to "item-current". And so I might have changed strncmp to strcmp. -- ivoire | R?mi Duraffort From git at videolan.org Fri Feb 27 01:08:47 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 01:08:47 +0100 (CET) Subject: [vlc-devel] commit: s/Paste MRL/Paste Location/ (Jean-Baptiste Kempf ) Message-ID: <20090227000847.E18A42FD62@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 01:07:39 2009 +0100| [a63f8160772f5a9a78732122ba53a7283d45a1be] | committer: Jean-Baptiste Kempf s/Paste MRL/Paste Location/ > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a63f8160772f5a9a78732122ba53a7283d45a1be --- modules/gui/qt4/menus.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index ccc34a0..9b7dd94 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -317,7 +317,7 @@ QMenu *QVLCMenu::FileMenu( intf_thread_t *p_intf, QWidget *parent ) "Ctrl+C" ); menu->addSeparator(); - addDPStaticEntry( menu, qtr( "Paste &MRL" ), + addDPStaticEntry( menu, qtr( "Paste &Location" ), NULL, SLOT( openUrlDialog() ), "Ctrl+V" ); recentsMenu = new QMenu( qtr( "&Recent Media" ), menu ); From git at videolan.org Fri Feb 27 01:34:36 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 01:34:36 +0100 (CET) Subject: [vlc-devel] commit: Qt: repair A->B loop and close #2558 (Jean-Baptiste Kempf ) Message-ID: <20090227003436.083CA2EDA3@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 01:33:32 2009 +0100| [9c902929930dd435d96e41aac7d382f2fdfb1e97] | committer: Jean-Baptiste Kempf Qt: repair A->B loop and close #2558 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9c902929930dd435d96e41aac7d382f2fdfb1e97 --- modules/gui/qt4/input_manager.cpp | 7 ++++++- modules/gui/qt4/input_manager.hpp | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index a38807e..53ad7b2 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -823,18 +823,23 @@ void InputManager::setAtoB() { timeB = var_GetTime( THEMIM->getInput(), "time" ); var_SetTime( THEMIM->getInput(), "time" , timeA ); + CONNECT( this, positionUpdated( float, int, int ), + this, AtoBLoop( float, int, int ) ); } else { timeA = 0; timeB = 0; + disconnect( this, SIGNAL( positionUpdated( float, int, int ) ), + this, SLOT( AtoBLoop( float, int, int ) ) ); } emit AtoBchanged( (timeA != 0 ), (timeB != 0 ) ); } /* Function called regularly when in an AtoB loop */ -void InputManager::AtoBLoop( int i_time ) +void InputManager::AtoBLoop( float, int i_time, int ) { + msg_Dbg( p_intf, "I am here" ); if( timeB ) { if( ( i_time >= (int)( timeB/1000000 ) ) diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp index 19af8ac..69732e0 100644 --- a/modules/gui/qt4/input_manager.hpp +++ b/modules/gui/qt4/input_manager.hpp @@ -136,7 +136,6 @@ private: void UpdateCaching(); void UpdateRecord(); - void AtoBLoop( int ); public slots: void setInput( input_thread_t * ); ///< Our controlled input changed @@ -163,6 +162,7 @@ public slots: private slots: void togglePlayPause(); + void AtoBLoop( float, int, int ); signals: /// Send new position, new time and new length From jhannwong at gmail.com Fri Feb 27 03:17:42 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Fri, 27 Feb 2009 10:17:42 +0800 Subject: [vlc-devel] jvlc: media_player_is_playing method not found in 0.9.8a? Message-ID: <49A74D46.2010709@gmail.com> Calling MediaPlayer.isPlaying() gives UnsatisfiedLinkError. Procedure not found. From jhannwong at gmail.com Fri Feb 27 06:30:09 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Fri, 27 Feb 2009 13:30:09 +0800 Subject: [vlc-devel] jvlc: MediaPlayerListener causes javaw.exe fault with ntdll.dll Message-ID: <49A77A61.7080506@gmail.com> Hi all, I got a new Media Player from libvlc_media_player_new_from_media. I released the media used to create the Media Player. I start playing with libvlc_media_player_play. I stopped with libvlc_media_player_stop. Wait for a second before releasing the Media Player with libvlc_media_player_release. Wait for another second before all the above with another video file. The above can go for about 3 times before I hit an error with "ntdll.dll". Fatal crash. Is this a VLC problem? Or did I use the VLC procedures wrong? This only happens when I use the MediaPlayerListener. Help? Thanks! Regards Jonathan From jhannwong at gmail.com Fri Feb 27 06:36:17 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Fri, 27 Feb 2009 13:36:17 +0800 Subject: [vlc-devel] libvlc_media_player_get_length returns zero? Message-ID: <49A77BD1.9080707@gmail.com> That function returns zero for every video file I throw at it. From jhannwong at gmail.com Fri Feb 27 07:06:34 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Fri, 27 Feb 2009 14:06:34 +0800 Subject: [vlc-devel] Different code paths between libvlc and VideoLan player? Message-ID: <49A782EA.6000108@gmail.com> Hi all, How is it that the media length and current time (position in millisec) works in VideoLan player, but not in libvlc? I thought the entire VideoLan player was built on libvlc? Procedures like libvlc_media_player_get_length, libvlc_media_player_get_time don't work correctly (with .mpg). However, the media current time and media total length are displayed perfectly fine in VideoLan player for all media types! I've started looking into the QT gui codes, and tracing down to the stuff behind it. But, can anyone here help me get started quickly in unraveling vlc? I could help in its development. I have a 6-month project all to do with videos, and I do envision making quite a bit of contribution to vlc. Thanks in advance! Regards Jonathan From agent_007 at luukku.com Fri Feb 27 09:02:05 2009 From: agent_007 at luukku.com (=?ISO-8859-1?Q?Kaarlo_R=E4ih=E4?=) Date: Fri, 27 Feb 2009 10:02:05 +0200 (EET) Subject: [vlc-devel] Different code paths between libvlc and VideoLan player? Message-ID: <1235721725122.agent_007.9364.pYSyeVzBbSV2RRrtkgHrmw@luukku.com> > Procedures like libvlc_media_player_get_length, > libvlc_media_player_get_time don't work correctly > (with .mpg). However, the media current time and media total length are > displayed perfectly fine > in VideoLan player for all media types! TS length isn't displayed all in 0.9.8a or 1.0.0 and there also some other file types that show incorrect length information. And some MPG files show incorrect length because they are muxed together against the specs. ................................................................... Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku From jhannwong at gmail.com Fri Feb 27 09:19:43 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Fri, 27 Feb 2009 16:19:43 +0800 Subject: [vlc-devel] Different code paths between libvlc and VideoLan player? In-Reply-To: <1235721725122.agent_007.9364.pYSyeVzBbSV2RRrtkgHrmw@luukku.com> References: <1235721725122.agent_007.9364.pYSyeVzBbSV2RRrtkgHrmw@luukku.com> Message-ID: <49A7A21F.809@gmail.com> I meant that it actually works correctly in the VideoLan player. The one with the QT gui interface. All media types show correct lengths there. When I call the libvlc codes programmatically, they don't function correctly. Kaarlo R?ih? wrote: >> Procedures like libvlc_media_player_get_length, >> libvlc_media_player_get_time don't work correctly >> (with .mpg). However, the media current time and media total length are >> displayed perfectly fine >> in VideoLan player for all media types! > TS length isn't displayed all in 0.9.8a or 1.0.0 and there also some other file types that show incorrect length information. And some MPG files show incorrect length because they are muxed together against the specs. > > > > > ................................................................... > Luukku Plus paketilla p??set eroon tila- ja turvallisuusongelmista. > Hanki Luukku Plus ja helpotat el?m??si. http://www.mtv3.fi/luukku > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > From ilkka.ollakka+vlc at oamk.fi Fri Feb 27 10:50:07 2009 From: ilkka.ollakka+vlc at oamk.fi (Ilkka Ollakka) Date: Fri, 27 Feb 2009 11:50:07 +0200 Subject: [vlc-devel] [RFC] Opening network stream In-Reply-To: <200902262015.33780.remi@remlab.net> References: <200902262015.33780.remi@remlab.net> Message-ID: <20090227095007.GD24873@papu.site> On to 26. helmikuuta 2009 20.15.33, R?mi Denis-Courmont wrote: > Hello, > > I would really remove the open network dialog/tab completely. Then I'd widden, > rename and move the Paste MRL dialog. And if we really want RTP and/or UDP > helpers, we can add a forth button to that dialog, but I think we should skip > that and encourage people to use RTSP, SAP and/or SDP-over-HTTP. I think this is one of the first feedbacks on open network-dialog (not sure, maybe my memory is doing tricks on me). But yes I too think that whole open network tab could be dropped in favor of that open localtion dialog where user just drops url. -- Ilkka Ollakka "I drink to make other people interesting." -- George Jean Nathan -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 197 bytes Desc: not available URL: From git at videolan.org Fri Feb 27 12:06:27 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 12:06:27 +0100 (CET) Subject: [vlc-devel] commit: Qt: remove debug. (Jean-Baptiste Kempf ) Message-ID: <20090227110627.6494D2FF01@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 11:30:10 2009 +0100| [e42739b4afbb1614cf0b97d2235716cbdb4c99b1] | committer: Jean-Baptiste Kempf Qt: remove debug. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e42739b4afbb1614cf0b97d2235716cbdb4c99b1 --- modules/gui/qt4/input_manager.cpp | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 53ad7b2..9564438 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -839,7 +839,6 @@ void InputManager::setAtoB() /* Function called regularly when in an AtoB loop */ void InputManager::AtoBLoop( float, int i_time, int ) { - msg_Dbg( p_intf, "I am here" ); if( timeB ) { if( ( i_time >= (int)( timeB/1000000 ) ) From git at videolan.org Fri Feb 27 19:24:47 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 19:24:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_gesture=3A_remove_one_dummy_funct?= =?utf-8?q?ion_and_clean_a_bit=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090227182447.283922FF37@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Thu Feb 26 18:22:51 2009 +0100| [2f47743dcf44e953c7b82bfd9ffe3ffa3a6d5437] | committer: R?mi Duraffort gesture: remove one dummy function and clean a bit. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2f47743dcf44e953c7b82bfd9ffe3ffa3a6d5437 --- modules/control/gestures.c | 39 +++++++++++---------------------------- 1 files changed, 11 insertions(+), 28 deletions(-) diff --git a/modules/control/gestures.c b/modules/control/gestures.c index 3bb38a5..ce4135c 100644 --- a/modules/control/gestures.c +++ b/modules/control/gestures.c @@ -1,7 +1,7 @@ /***************************************************************************** * gestures.c: control vlc with mouse gestures ***************************************************************************** - * Copyright (C) 2004 the VideoLAN team + * Copyright (C) 2004-2009 the VideoLAN team * $Id$ * * Authors: Sigmund Augdal Helberg @@ -116,13 +116,11 @@ int Open ( vlc_object_t *p_this ) /* Allocate instance and initialize some members */ p_intf->p_sys = malloc( sizeof( intf_sys_t ) ); if( p_intf->p_sys == NULL ) - { - return( 1 ); - }; + return VLC_ENOMEM; p_intf->pf_run = RunIntf; - return( 0 ); + return VLC_SUCCESS; } /***************************************************************************** @@ -134,15 +132,6 @@ static int gesture( int i_pattern, int i_num ) } /***************************************************************************** - * input_from_playlist: don't forget to release the return value - * Also this function should really be available from core. - *****************************************************************************/ -static input_thread_t * input_from_playlist ( playlist_t *p_playlist ) -{ - return playlist_CurrentInput( p_playlist ); -} - -/***************************************************************************** * CloseIntf: destroy dummy interface *****************************************************************************/ void Close ( vlc_object_t *p_this ) @@ -220,9 +209,8 @@ static void RunIntf( intf_thread_t *p_intf ) { input_thread_t * p_input; p_playlist = pl_Hold( p_intf ); - - p_input = input_from_playlist( p_playlist ); - vlc_object_release( p_playlist ); + p_input = playlist_CurrentInput( p_playlist ); + pl_Release( p_intf ); if( !p_input ) break; @@ -247,15 +235,13 @@ static void RunIntf( intf_thread_t *p_intf ) break; case GESTURE(LEFT,DOWN,NONE,NONE): p_playlist = pl_Hold( p_intf ); - playlist_Prev( p_playlist ); - vlc_object_release( p_playlist ); + pl_Release( p_intf ); break; case GESTURE(RIGHT,DOWN,NONE,NONE): p_playlist = pl_Hold( p_intf ); - playlist_Next( p_playlist ); - vlc_object_release( p_playlist ); + pl_Release( p_intf ); break; case UP: { @@ -286,10 +272,8 @@ static void RunIntf( intf_thread_t *p_intf ) int i_count, i; p_playlist = pl_Hold( p_intf ); - - p_input = input_from_playlist( p_playlist ); - - vlc_object_release( p_playlist ); + p_input = playlist_CurrentInput( p_playlist ); + pl_Release( p_intf ); if( !p_input ) break; @@ -341,9 +325,8 @@ static void RunIntf( intf_thread_t *p_intf ) int i_count, i; p_playlist = pl_Hold( p_intf ); - - p_input = input_from_playlist( p_playlist ); - vlc_object_release( p_playlist ); + p_input = playlist_CurrentInput( p_playlist ); + pl_Release( p_intf ); if( !p_input ) break; From git at videolan.org Fri Feb 27 19:24:47 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 19:24:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_gestures=3A_use_the_right_objet_f?= =?utf-8?q?or_the_variable=2E_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090227182447.3C7AB2FF50@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Thu Feb 26 23:04:30 2009 +0100| [94d67fe0680ff44c89c83b2960d5cfe5a2cc8801] | committer: R?mi Duraffort gestures: use the right objet for the variable. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=94d67fe0680ff44c89c83b2960d5cfe5a2cc8801 --- modules/control/gestures.c | 34 +++++++++++++++++++++++++--------- 1 files changed, 25 insertions(+), 9 deletions(-) diff --git a/modules/control/gestures.c b/modules/control/gestures.c index ce4135c..9e0d987 100644 --- a/modules/control/gestures.c +++ b/modules/control/gestures.c @@ -46,8 +46,8 @@ struct intf_sys_t { vlc_object_t * p_vout; - bool b_got_gesture; - bool b_button_pressed; + bool b_got_gesture; + bool b_button_pressed; int i_mouse_x, i_mouse_y; int i_last_x, i_last_y; unsigned int i_pattern; @@ -150,6 +150,7 @@ static void RunIntf( intf_thread_t *p_intf ) { playlist_t * p_playlist = NULL; int canc = vlc_savecancel(); + input_thread_t *p_input; vlc_mutex_lock( &p_intf->change_lock ); p_intf->p_sys->p_vout = NULL; @@ -181,19 +182,37 @@ static void RunIntf( intf_thread_t *p_intf ) switch( p_intf->p_sys->i_pattern ) { case LEFT: + // Get the current input + p_playlist = pl_Hold( p_intf ); + p_input = playlist_CurrentInput( p_playlist ); + pl_Release( p_intf ); + if( !p_input ) + break; + i_interval = config_GetInt( p_intf , "short-jump-size" ); - if ( i_interval > 0 ) { + if ( i_interval > 0 ) + { val.i_time = ( (mtime_t)( -i_interval ) * 1000000L); - var_Set( p_intf, "time-offset", val ); + var_Set( p_input, "time-offset", val ); } + vlc_object_release( p_input ); msg_Dbg(p_intf, "Go backward in the movie!"); break; + case RIGHT: + p_playlist = pl_Hold( p_intf ); + p_input = playlist_CurrentInput( p_playlist ); + pl_Release( p_intf ); + if( !p_input ) + break; + i_interval = config_GetInt( p_intf , "short-jump-size" ); - if ( i_interval > 0 ) { + if ( i_interval > 0 ) + { val.i_time = ( (mtime_t)( i_interval ) * 1000000L); - var_Set( p_intf, "time-offset", val ); + var_Set( p_input, "time-offset", val ); } + vlc_object_release( p_input ); msg_Dbg(p_intf, "Go forward in the movie!"); break; case GESTURE(LEFT,UP,NONE,NONE): @@ -207,7 +226,6 @@ static void RunIntf( intf_thread_t *p_intf ) case GESTURE(LEFT,RIGHT,NONE,NONE): case GESTURE(RIGHT,LEFT,NONE,NONE): { - input_thread_t * p_input; p_playlist = pl_Hold( p_intf ); p_input = playlist_CurrentInput( p_playlist ); pl_Release( p_intf ); @@ -267,7 +285,6 @@ static void RunIntf( intf_thread_t *p_intf ) break; case GESTURE(UP,RIGHT,NONE,NONE): { - input_thread_t * p_input; vlc_value_t val, list, list2; int i_count, i; @@ -320,7 +337,6 @@ static void RunIntf( intf_thread_t *p_intf ) break; case GESTURE(DOWN,RIGHT,NONE,NONE): { - input_thread_t * p_input; vlc_value_t val, list, list2; int i_count, i; From git at videolan.org Fri Feb 27 19:24:47 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 19:24:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_gestures=3A_remove_the_=28init=7C?= =?utf-8?q?end=29thread_function_=28_R=C3=A9mi_Duraffort_=29?= Message-ID: <20090227182447.52D3E2FF66@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Fri Feb 27 16:37:58 2009 +0100| [d935c55c7f234d125b573371eb9899ba3f86c244] | committer: R?mi Duraffort gestures: remove the (init|end)thread function > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d935c55c7f234d125b573371eb9899ba3f86c244 --- modules/control/gestures.c | 111 ++++++++++++-------------------------------- 1 files changed, 30 insertions(+), 81 deletions(-) diff --git a/modules/control/gestures.c b/modules/control/gestures.c index 9e0d987..02b118a 100644 --- a/modules/control/gestures.c +++ b/modules/control/gestures.c @@ -68,8 +68,6 @@ struct intf_sys_t int Open ( vlc_object_t * ); void Close ( vlc_object_t * ); -static int InitThread ( intf_thread_t *p_intf ); -static void EndThread ( intf_thread_t *p_intf ); static int MouseEvent ( vlc_object_t *, char const *, vlc_value_t, vlc_value_t, void * ); @@ -114,12 +112,31 @@ int Open ( vlc_object_t *p_this ) intf_thread_t *p_intf = (intf_thread_t *)p_this; /* Allocate instance and initialize some members */ - p_intf->p_sys = malloc( sizeof( intf_sys_t ) ); + intf_sys_t *p_sys = p_intf->p_sys = malloc( sizeof( intf_sys_t ) ); if( p_intf->p_sys == NULL ) return VLC_ENOMEM; + // Configure the module p_intf->pf_run = RunIntf; + p_sys->p_vout = NULL; + p_sys->b_got_gesture = false; + p_sys->b_button_pressed = false; + p_sys->i_threshold = config_GetInt( p_intf, "gestures-threshold" ); + + // Choose the tight button to use + char *psz_button = config_GetPsz( p_intf, "gestures-button" ); + if( !strcmp( psz_button, "left" ) ) + p_sys->i_button_mask = 1; + else if( !strcmp( psz_button, "middle" ) ) + p_sys->i_button_mask = 2; + else // psz_button == "right" + p_sys->i_button_mask = 4; + free( psz_button ); + + p_sys->i_pattern = 0; + p_sys->i_num_gestures = 0; + return VLC_SUCCESS; } @@ -138,6 +155,16 @@ void Close ( vlc_object_t *p_this ) { intf_thread_t *p_intf = (intf_thread_t *)p_this; + // Destroy the callbacks + if( p_intf->p_sys->p_vout ) + { + var_DelCallback( p_intf->p_sys->p_vout, "mouse-moved", + MouseEvent, p_intf ); + var_DelCallback( p_intf->p_sys->p_vout, "mouse-button-down", + MouseEvent, p_intf ); + vlc_object_release( p_intf->p_sys->p_vout ); + } + /* Destroy structure */ free( p_intf->p_sys ); } @@ -152,17 +179,6 @@ static void RunIntf( intf_thread_t *p_intf ) int canc = vlc_savecancel(); input_thread_t *p_input; - vlc_mutex_lock( &p_intf->change_lock ); - p_intf->p_sys->p_vout = NULL; - vlc_mutex_unlock( &p_intf->change_lock ); - - if( InitThread( p_intf ) < 0 ) - { - msg_Err( p_intf, "can't initialize interface thread" ); - return; - } - msg_Dbg( p_intf, "interface thread initialized" ); - /* Main loop */ while( vlc_object_alive( p_intf ) ) { @@ -441,77 +457,10 @@ static void RunIntf( intf_thread_t *p_intf ) msleep( INTF_IDLE_SLEEP ); } - EndThread( p_intf ); vlc_restorecancel( canc ); } /***************************************************************************** - * InitThread: - *****************************************************************************/ -static int InitThread( intf_thread_t * p_intf ) -{ - char *psz_button; - /* we might need some locking here */ - if( vlc_object_alive( p_intf ) ) - { - /* p_intf->change_lock locking strategy: - * - Every access to p_intf->p_sys are locked threw p_intf->change_lock - * - make sure there won't be cross increment/decrement ref count - * of p_intf->p_sys members p_intf->change_lock should be locked - * during those operations */ - vlc_mutex_lock( &p_intf->change_lock ); - - p_intf->p_sys->b_got_gesture = false; - p_intf->p_sys->b_button_pressed = false; - p_intf->p_sys->i_threshold = - config_GetInt( p_intf, "gestures-threshold" ); - psz_button = config_GetPsz( p_intf, "gestures-button" ); - if ( !strcmp( psz_button, "left" ) ) - { - p_intf->p_sys->i_button_mask = 1; - } - else if ( !strcmp( psz_button, "middle" ) ) - { - p_intf->p_sys->i_button_mask = 2; - } - else if ( !strcmp( psz_button, "right" ) ) - { - p_intf->p_sys->i_button_mask = 4; - } - free( psz_button ); - - p_intf->p_sys->i_pattern = 0; - p_intf->p_sys->i_num_gestures = 0; - vlc_mutex_unlock( &p_intf->change_lock ); - - return 0; - } - else - { - return -1; - } -} - -/***************************************************************************** - * EndThread: - *****************************************************************************/ -static void EndThread( intf_thread_t * p_intf ) -{ - vlc_mutex_lock( &p_intf->change_lock ); - - if( p_intf->p_sys->p_vout ) - { - var_DelCallback( p_intf->p_sys->p_vout, "mouse-moved", - MouseEvent, p_intf ); - var_DelCallback( p_intf->p_sys->p_vout, "mouse-button-down", - MouseEvent, p_intf ); - vlc_object_release( p_intf->p_sys->p_vout ); - } - - vlc_mutex_unlock( &p_intf->change_lock ); -} - -/***************************************************************************** * MouseEvent: callback for mouse events *****************************************************************************/ static int MouseEvent( vlc_object_t *p_this, char const *psz_var, From git at videolan.org Fri Feb 27 19:24:47 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 19:24:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_hotkeys=3A_factorization=2E_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090227182447.8343F2FF6A@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Fri Feb 27 17:18:55 2009 +0100| [8285136ce30f68018d850dbc509b4a7141dc0183] | committer: R?mi Duraffort hotkeys: factorization. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8285136ce30f68018d850dbc509b4a7141dc0183 --- modules/control/hotkeys.c | 23 ++++------------------- 1 files changed, 4 insertions(+), 19 deletions(-) diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 473536d..4ed3ee5 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -163,7 +163,6 @@ static void Run( intf_thread_t *p_intf ) { vout_thread_t *p_vout = NULL; vlc_value_t val; - int i; playlist_t *p_playlist = pl_Hold( p_intf ); int canc = vlc_savecancel(); @@ -198,6 +197,7 @@ static void Run( intf_thread_t *p_intf ) /* Register OSD channels */ if( p_vout && p_vout != p_last_vout ) { + int i; for( i = 0; i < CHANNELS_NUMBER; i++ ) { spu_Control( p_vout->p_spu, SPU_CHANNEL_REGISTER, @@ -502,22 +502,13 @@ static void Run( intf_thread_t *p_intf ) { msg_Warn( p_input, "invalid current audio track, selecting 0" ); - var_Set( p_input, "audio-es", - list.p_list->p_values[0] ); i = 0; } else if( i == i_count - 1 ) - { - var_Set( p_input, "audio-es", - list.p_list->p_values[1] ); i = 1; - } else - { - var_Set( p_input, "audio-es", - list.p_list->p_values[i+1] ); i++; - } + var_Set( p_input, "audio-es", list.p_list->p_values[i] ); vout_OSDMessage( VLC_OBJECT(p_input), DEFAULT_CHAN, _("Audio track: %s"), list2.p_list->p_values[i].psz_string ); @@ -549,19 +540,13 @@ static void Run( intf_thread_t *p_intf ) { msg_Warn( p_input, "invalid current subtitle track, selecting 0" ); - var_Set( p_input, "spu-es", list.p_list->p_values[0] ); i = 0; } else if( i == i_count - 1 ) - { - var_Set( p_input, "spu-es", list.p_list->p_values[0] ); i = 0; - } else - { - var_Set( p_input, "spu-es", list.p_list->p_values[i+1] ); - i = i + 1; - } + i++; + var_Set( p_input, "spu-es", list.p_list->p_values[i] ); vout_OSDMessage( VLC_OBJECT(p_input), DEFAULT_CHAN, _("Subtitle track: %s"), list2.p_list->p_values[i].psz_string ); From git at videolan.org Fri Feb 27 19:24:47 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 19:24:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_gestures=3A_cleaning=2E_=28_R?= =?utf-8?q?=C3=A9mi_Duraffort_=29?= Message-ID: <20090227182447.960FB2FF5A@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Fri Feb 27 18:30:55 2009 +0100| [2dfd048ed72af838b8ac11dd19102a68e23dd83d] | committer: R?mi Duraffort gestures: cleaning. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2dfd048ed72af838b8ac11dd19102a68e23dd83d --- modules/control/gestures.c | 17 +++++++++++++---- 1 files changed, 13 insertions(+), 4 deletions(-) diff --git a/modules/control/gestures.c b/modules/control/gestures.c index fb0fa76..b556bf9 100644 --- a/modules/control/gestures.c +++ b/modules/control/gestures.c @@ -385,13 +385,16 @@ static void RunIntf( intf_thread_t *p_intf ) vlc_object_release( p_input ); } break; + case GESTURE(UP,LEFT,NONE,NONE): if (p_intf->p_sys->p_vout ) { - ((vout_thread_t *)p_intf->p_sys->p_vout)->i_changes |= - VOUT_FULLSCREEN_CHANGE; + var_Get( p_intf->p_sys->p_vout, "fullscreen", &val ); + val.b_bool = !val.b_bool; + var_Set( p_intf->p_sys->p_vout, "fullscreen", val ); } break; + case GESTURE(DOWN,LEFT,NONE,NONE): /* FIXME: Should close the vout!"*/ libvlc_Quit( p_intf->p_libvlc ); @@ -423,8 +426,14 @@ static void RunIntf( intf_thread_t *p_intf ) if( p_intf->p_sys->p_vout == NULL ) { - p_intf->p_sys->p_vout = vlc_object_find( p_intf, - VLC_OBJECT_VOUT, FIND_ANYWHERE ); + p_playlist = pl_Hold( p_intf ); + p_input = playlist_CurrentInput( p_playlist ); + pl_Release( p_intf ); + if( p_input ) + { + p_intf->p_sys->p_vout = input_GetVout( p_input ); + vlc_object_release( p_input ); + } if( p_intf->p_sys->p_vout ) { var_AddCallback( p_intf->p_sys->p_vout, "mouse-moved", From git at videolan.org Fri Feb 27 19:24:47 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 19:24:47 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_gestures=3A_=28_R=C3=A9mi_Duraffo?= =?utf-8?q?rt_=29?= Message-ID: <20090227182447.694652FF56@skanda.videolan.org> vlc | branch: master | R?mi Duraffort | Fri Feb 27 17:09:56 2009 +0100| [da8ff69a018db3a041860c174ac4c6000af6ae1d] | committer: R?mi Duraffort gestures: * add the possibility to go slower and faster (wasn't finished) * some cleaning and factorization > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=da8ff69a018db3a041860c174ac4c6000af6ae1d --- modules/control/gestures.c | 167 ++++++++++++++++++++------------------------ 1 files changed, 75 insertions(+), 92 deletions(-) diff --git a/modules/control/gestures.c b/modules/control/gestures.c index 02b118a..fb0fa76 100644 --- a/modules/control/gestures.c +++ b/modules/control/gestures.c @@ -198,107 +198,108 @@ static void RunIntf( intf_thread_t *p_intf ) switch( p_intf->p_sys->i_pattern ) { case LEFT: - // Get the current input + msg_Dbg( p_intf, "Go backward in the movie!" ); p_playlist = pl_Hold( p_intf ); p_input = playlist_CurrentInput( p_playlist ); pl_Release( p_intf ); - if( !p_input ) - break; - - i_interval = config_GetInt( p_intf , "short-jump-size" ); - if ( i_interval > 0 ) + if( p_input ) { - val.i_time = ( (mtime_t)( -i_interval ) * 1000000L); - var_Set( p_input, "time-offset", val ); + i_interval = config_GetInt( p_intf , "short-jump-size" ); + if ( i_interval > 0 ) + { + val.i_time = ( (mtime_t)( -i_interval ) * 1000000L); + var_Set( p_input, "time-offset", val ); + } + vlc_object_release( p_input ); } - vlc_object_release( p_input ); - msg_Dbg(p_intf, "Go backward in the movie!"); break; case RIGHT: + msg_Dbg( p_intf, "Go forward in the movie!" ); p_playlist = pl_Hold( p_intf ); p_input = playlist_CurrentInput( p_playlist ); pl_Release( p_intf ); - if( !p_input ) - break; - i_interval = config_GetInt( p_intf , "short-jump-size" ); - if ( i_interval > 0 ) + if( p_input ) { - val.i_time = ( (mtime_t)( i_interval ) * 1000000L); - var_Set( p_input, "time-offset", val ); + i_interval = config_GetInt( p_intf , "short-jump-size" ); + if ( i_interval > 0 ) + { + val.i_time = ( (mtime_t)( i_interval ) * 1000000L); + var_Set( p_input, "time-offset", val ); + } + vlc_object_release( p_input ); } - vlc_object_release( p_input ); - msg_Dbg(p_intf, "Go forward in the movie!"); break; + case GESTURE(LEFT,UP,NONE,NONE): - /*FIXME BF*/ - msg_Dbg(p_intf, "Going slower."); + msg_Dbg( p_intf, "Going slower." ); + p_playlist = pl_Hold( p_intf ); + p_input = playlist_CurrentInput( p_playlist ); + pl_Release( p_intf ); + if( p_input ) + { + var_SetVoid( p_input, "rate-slower" ); + vlc_object_release( p_input ); + } break; + case GESTURE(RIGHT,UP,NONE,NONE): - /*FIXME FF*/ - msg_Dbg(p_intf, "Going faster."); + msg_Dbg( p_intf, "Going faster." ); + p_playlist = pl_Hold( p_intf ); + p_input = playlist_CurrentInput( p_playlist ); + pl_Release( p_intf ); + if( p_input ) + { + var_SetVoid( p_input, "rate-faster" ); + vlc_object_release( p_input ); + } break; + case GESTURE(LEFT,RIGHT,NONE,NONE): case GESTURE(RIGHT,LEFT,NONE,NONE): - { - p_playlist = pl_Hold( p_intf ); - p_input = playlist_CurrentInput( p_playlist ); - pl_Release( p_intf ); - - if( !p_input ) - break; + msg_Dbg( p_intf, "Play/Pause" ); + p_playlist = pl_Hold( p_intf ); + p_input = playlist_CurrentInput( p_playlist ); + pl_Release( p_intf ); - val.i_int = PLAYING_S; - if( p_input ) - { - var_Get( p_input, "state", &val); - if( val.i_int == PAUSE_S ) - { - val.i_int = PLAYING_S; - } - else - { - val.i_int = PAUSE_S; - } - var_Set( p_input, "state", val); - } - msg_Dbg(p_intf, "Play/Pause"); + if( p_input ) + { + var_Get( p_input, "state", &val); + val.i_int = ( val.i_int != PLAYING_S ) ? PLAYING_S : PAUSE_S; + var_Set( p_input, "state", val); vlc_object_release( p_input ); } break; + case GESTURE(LEFT,DOWN,NONE,NONE): p_playlist = pl_Hold( p_intf ); playlist_Prev( p_playlist ); pl_Release( p_intf ); break; + case GESTURE(RIGHT,DOWN,NONE,NONE): p_playlist = pl_Hold( p_intf ); playlist_Next( p_playlist ); pl_Release( p_intf ); break; + case UP: - { - audio_volume_t i_newvol; - aout_VolumeUp( p_intf, 1, &i_newvol ); - msg_Dbg(p_intf, "Louder"); - } + msg_Dbg(p_intf, "Louder"); + aout_VolumeUp( p_intf, 1, NULL ); break; + case DOWN: - { - audio_volume_t i_newvol; - aout_VolumeDown( p_intf, 1, &i_newvol ); - msg_Dbg(p_intf, "Quieter"); - } + msg_Dbg(p_intf, "Quieter"); + aout_VolumeDown( p_intf, 1, NULL ); break; + case GESTURE(UP,DOWN,NONE,NONE): case GESTURE(DOWN,UP,NONE,NONE): - { - audio_volume_t i_newvol = -1; - aout_VolumeMute( p_intf, &i_newvol ); - msg_Dbg(p_intf, "Mute sound"); - } + msg_Dbg(p_intf, "Mute sound"); + aout_VolumeMute( p_intf, NULL ); break; + case GESTURE(UP,RIGHT,NONE,NONE): { vlc_value_t val, list, list2; @@ -323,32 +324,21 @@ static void RunIntf( intf_thread_t *p_intf ) for( i = 0; i < i_count; i++ ) { if( val.i_int == list.p_list->p_values[i].i_int ) - { break; - } - } - /* value of audio-es was not in choices list */ - if( i == i_count ) - { - msg_Warn( p_input, - "invalid current audio track, selecting 0" ); - var_Set( p_input, "audio-es", - list.p_list->p_values[0] ); - i = 0; - } - else if( i == i_count - 1 ) - { - var_Set( p_input, "audio-es", - list.p_list->p_values[1] ); - i = 1; - } - else - { - var_Set( p_input, "audio-es", - list.p_list->p_values[i+1] ); - i++; } - vlc_object_release( p_input ); + /* value of audio-es was not in choices list */ + if( i == i_count ) + { + msg_Warn( p_input, + "invalid current audio track, selecting 0" ); + i = 0; + } + else if( i == i_count - 1 ) + i = 1; + else + i++; + var_Set( p_input, "audio-es", list.p_list->p_values[i] ); + vlc_object_release( p_input ); } break; case GESTURE(DOWN,RIGHT,NONE,NONE): @@ -385,20 +375,13 @@ static void RunIntf( intf_thread_t *p_intf ) { msg_Warn( p_input, "invalid current subtitle track, selecting 0" ); - var_Set( p_input, "spu-es", list.p_list->p_values[0] ); i = 0; } else if( i == i_count - 1 ) - { - var_Set( p_input, "spu-es", list.p_list->p_values[0] ); i = 0; - } else - { - var_Set( p_input, "spu-es", - list.p_list->p_values[i+1] ); - i = i + 1; - } + i++; + var_Set( p_input, "spu-es", list.p_list->p_values[i] ); vlc_object_release( p_input ); } break; From git at videolan.org Fri Feb 27 20:31:17 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 20:31:17 +0100 (CET) Subject: [vlc-devel] commit: Qt: remove the HACK with the static QAction for minimalViewAction, and fix a few minimalVIew issues. (Jean-Baptiste Kempf ) Message-ID: <20090227193117.0781D2FB6A@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 20:28:55 2009 +0100| [916aa463af5260cac06cce80c1c84b3b6be5f331] | committer: Jean-Baptiste Kempf Qt: remove the HACK with the static QAction for minimalViewAction, and fix a few minimalVIew issues. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=916aa463af5260cac06cce80c1c84b3b6be5f331 --- modules/gui/qt4/main_interface.cpp | 18 ++++++++++-------- modules/gui/qt4/main_interface.hpp | 7 ++++--- modules/gui/qt4/menus.cpp | 12 ++++++------ 3 files changed, 20 insertions(+), 17 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index f1d490e..0af7620 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -257,7 +257,7 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf ) /* And switch to minimal view if needed Must be called after the show() */ if( i_visualmode == QT_MINIMAL_MODE ) - toggleMinimalView(); + toggleMinimalView( true ); /* Update the geometry : It is useful if you switch between qt-display-modes ?*/ @@ -803,7 +803,7 @@ void MainInterface::dockPlaylist( pl_dock_e i_pos ) { } -void MainInterface::toggleMinimalView() +void MainInterface::toggleMinimalView( bool b_switch ) { if( i_visualmode != QT_ALWAYS_VIDEO_MODE && i_visualmode != QT_MINIMAL_MODE ) @@ -816,13 +816,13 @@ void MainInterface::toggleMinimalView() } } - TOGGLEV( menuBar() ); - TOGGLEV( controls ); - TOGGLEV( statusBar() ); - TOGGLEV( inputC ); + menuBar()->setVisible( !b_switch ); + controls->setVisible( !b_switch ); + statusBar()->setVisible( !b_switch ); + inputC->setVisible( !b_switch ); doComponentsUpdate(); - QVLCMenu::minimalViewAction->setChecked( bgWasVisible ); + emit minimalViewToggled( b_switch ); } /* Video widget cannot do this synchronously as it runs in another thread */ @@ -855,6 +855,8 @@ void MainInterface::toggleAdvanced() /* Get the visibility status of the controls (hidden or not, advanced or not) */ int MainInterface::getControlsVisibilityStatus() { + msg_Warn( p_intf, "%i", (controls->isVisible() ? CONTROLS_VISIBLE : CONTROLS_HIDDEN ) + + CONTROLS_ADVANCED * controls->b_advancedVisible ); return( (controls->isVisible() ? CONTROLS_VISIBLE : CONTROLS_HIDDEN ) + CONTROLS_ADVANCED * controls->b_advancedVisible ); } @@ -1126,7 +1128,7 @@ void MainInterface::keyPressEvent( QKeyEvent *e ) if( ( e->modifiers() & Qt::ControlModifier ) && ( e->key() == Qt::Key_H ) && menuBar()->isHidden() ) { - toggleMinimalView(); + toggleMinimalView( false ); e->accept(); } diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp index df86b80..b2c088e 100644 --- a/modules/gui/qt4/main_interface.hpp +++ b/modules/gui/qt4/main_interface.hpp @@ -51,9 +51,9 @@ class QMenu; class QSize; enum { - CONTROLS_HIDDEN = 0x0, CONTROLS_VISIBLE = 0x1, - CONTROLS_ADVANCED = 0x2 + CONTROLS_HIDDEN = 0x2, + CONTROLS_ADVANCED = 0x4, }; typedef enum pl_dock_e { @@ -153,7 +153,7 @@ private: public slots: void undockPlaylist(); void dockPlaylist( pl_dock_e i_pos = PL_BOTTOM ); - void toggleMinimalView(); + void toggleMinimalView( bool ); void togglePlaylist(); void toggleUpdateSystrayMenu(); void toggleAdvanced(); @@ -185,6 +185,7 @@ signals: void askVideoToToggle(); void askBgWidgetToToggle(); void askUpdate(); + void minimalViewToggled( bool ); }; #endif diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 9b7dd94..65226dd 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -75,7 +75,6 @@ static QActionGroup *currentGroup; /* HACK for minimalView to go around a Qt bug/feature * that doesn't update the QAction checked state when QMenu is hidden */ -QAction *QVLCMenu::minimalViewAction = NULL; QAction *QVLCMenu::fullscreenViewAction = NULL; QMenu *QVLCMenu::recentsMenu = NULL; @@ -413,13 +412,14 @@ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, } /* Minimal View */ - QAction *action = menu->addAction( qtr( "Mi&nimal View" ), mi, - SLOT( toggleMinimalView() ), qtr( "Ctrl+H" ) ); + QAction *action = menu->addAction( qtr( "Mi&nimal View" ) ); + action->setShortcut( qtr( "Ctrl+H" ) ); action->setCheckable( true ); + action->setChecked( !with_intf && + (mi->getControlsVisibilityStatus() && CONTROLS_HIDDEN ) ); - if( mi->getControlsVisibilityStatus() & CONTROLS_VISIBLE ) - action->setChecked( true ); - minimalViewAction = action; /* HACK for minimalView */ + CONNECT( action, triggered( bool ), mi, toggleMinimalView( bool ) ); + CONNECT( mi, minimalViewToggled( bool ), action, setChecked( bool ) ); /* FullScreen View */ action = menu->addAction( qtr( "&Fullscreen Interface" ), mi, From jb at videolan.org Fri Feb 27 20:33:25 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Fri, 27 Feb 2009 20:33:25 +0100 Subject: [vlc-devel] commit: Qt: remove the HACK with the static QAction for minimalViewAction, and fix a few minimalVIew issues. (Jean-Baptiste Kempf ) In-Reply-To: <20090227193117.0781D2FB6A@skanda.videolan.org> References: <20090227193117.0781D2FB6A@skanda.videolan.org> Message-ID: <20090227193325.GA22765@videolan.org> On Fri, Feb 27, 2009 at 08:31:17PM +0100, git version control wrote : > vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 20:28:55 2009 +0100| [916aa463af5260cac06cce80c1c84b3b6be5f331] | committer: Jean-Baptiste Kempf > > Qt: remove the HACK with the static QAction for minimalViewAction, and fix a few minimalVIew issues. Close also #2537 From git at videolan.org Fri Feb 27 20:59:27 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 20:59:27 +0100 (CET) Subject: [vlc-devel] commit: Qt: remove the static QAction* for the menus consistency in the Fullscreen Mode . (Jean-Baptiste Kempf ) Message-ID: <20090227195927.D12972FC8B@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 20:58:12 2009 +0100| [f8d66f23e21afdb60bb8e31b2f8fa7bdfba93ad6] | committer: Jean-Baptiste Kempf Qt: remove the static QAction* for the menus consistency in the Fullscreen Mode. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f8d66f23e21afdb60bb8e31b2f8fa7bdfba93ad6 --- modules/gui/qt4/main_interface.cpp | 4 ++-- modules/gui/qt4/main_interface.hpp | 1 + modules/gui/qt4/menus.cpp | 10 ++++------ modules/gui/qt4/menus.hpp | 4 ---- 4 files changed, 7 insertions(+), 12 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index 0af7620..fede720 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -1183,12 +1183,12 @@ void MainInterface::toggleFullScreen( void ) { showNormal(); emit askUpdate(); // Needed if video was launched after the F11 - QVLCMenu::fullscreenViewAction->setChecked( false ); + emit fullscreenInterfaceToggled( false ); } else { showFullScreen(); - QVLCMenu::fullscreenViewAction->setChecked( true ); + emit fullscreenInterfaceToggled( true ); } } diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp index b2c088e..4034eb5 100644 --- a/modules/gui/qt4/main_interface.hpp +++ b/modules/gui/qt4/main_interface.hpp @@ -186,6 +186,7 @@ signals: void askBgWidgetToToggle(); void askUpdate(); void minimalViewToggled( bool ); + void fullscreenInterfaceToggled( bool ); }; #endif diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 65226dd..efd5cc4 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -73,10 +73,6 @@ enum static QActionGroup *currentGroup; -/* HACK for minimalView to go around a Qt bug/feature - * that doesn't update the QAction checked state when QMenu is hidden */ -QAction *QVLCMenu::fullscreenViewAction = NULL; - QMenu *QVLCMenu::recentsMenu = NULL; /**************************************************************************** @@ -416,7 +412,7 @@ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, action->setShortcut( qtr( "Ctrl+H" ) ); action->setCheckable( true ); action->setChecked( !with_intf && - (mi->getControlsVisibilityStatus() && CONTROLS_HIDDEN ) ); + (mi->getControlsVisibilityStatus() & CONTROLS_HIDDEN ) ); CONNECT( action, triggered( bool ), mi, toggleMinimalView( bool ) ); CONNECT( mi, minimalViewToggled( bool ), action, setChecked( bool ) ); @@ -424,8 +420,10 @@ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, /* FullScreen View */ action = menu->addAction( qtr( "&Fullscreen Interface" ), mi, SLOT( toggleFullScreen() ), QString( "F11" ) ); - fullscreenViewAction = action; action->setCheckable( true ); + action->setChecked( mi->isFullScreen() ); + CONNECT( mi, fullscreenInterfaceToggled( bool ), + action, setChecked( bool ) ); /* Advanced Controls */ action = menu->addAction( qtr( "&Advanced Controls" ), mi, diff --git a/modules/gui/qt4/menus.hpp b/modules/gui/qt4/menus.hpp index 76b65f6..3ab5ae0 100644 --- a/modules/gui/qt4/menus.hpp +++ b/modules/gui/qt4/menus.hpp @@ -94,10 +94,6 @@ public: /* Actions */ static void DoAction( QObject * ); - /* HACK for minimalView */ - static QAction *minimalViewAction; - static QAction *fullscreenViewAction; - private: /* All main Menus */ static QMenu *FileMenu( intf_thread_t *, QWidget * ); From git at videolan.org Fri Feb 27 21:03:12 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 21:03:12 +0100 (CET) Subject: [vlc-devel] commit: Qt: block too large Windows for open dialog. And close #2475. ( Jean-Baptiste Kempf ) Message-ID: <20090227200312.4A0DA2FF53@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 21:01:56 2009 +0100| [01ac4a7e1cf0a24c2f8bd2dfd4e79ee51990202e] | committer: Jean-Baptiste Kempf Qt: block too large Windows for open dialog. And close #2475. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=01ac4a7e1cf0a24c2f8bd2dfd4e79ee51990202e --- modules/gui/qt4/dialogs/open.cpp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/dialogs/open.cpp b/modules/gui/qt4/dialogs/open.cpp index e8db45e..5fcd28d 100644 --- a/modules/gui/qt4/dialogs/open.cpp +++ b/modules/gui/qt4/dialogs/open.cpp @@ -181,6 +181,7 @@ OpenDialog::OpenDialog( QWidget *parent, newCachingMethod( "file-caching" ); setMinimumSize( sizeHint() ); + setMaximumWidth( 900 ); resize( getSettings()->value( "opendialog-size", QSize( 500, 490 ) ).toSize() ); } From git at videolan.org Fri Feb 27 21:05:52 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 21:05:52 +0100 (CET) Subject: [vlc-devel] commit: Qt: remove debug forgotten. (Jean-Baptiste Kempf ) Message-ID: <20090227200552.BFB282FF37@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 21:04:46 2009 +0100| [784f547f9565ec335bf8efcea4ff3d8149de6d62] | committer: Jean-Baptiste Kempf Qt: remove debug forgotten. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=784f547f9565ec335bf8efcea4ff3d8149de6d62 --- modules/gui/qt4/main_interface.cpp | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index fede720..0c921fb 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -855,8 +855,6 @@ void MainInterface::toggleAdvanced() /* Get the visibility status of the controls (hidden or not, advanced or not) */ int MainInterface::getControlsVisibilityStatus() { - msg_Warn( p_intf, "%i", (controls->isVisible() ? CONTROLS_VISIBLE : CONTROLS_HIDDEN ) - + CONTROLS_ADVANCED * controls->b_advancedVisible ); return( (controls->isVisible() ? CONTROLS_VISIBLE : CONTROLS_HIDDEN ) + CONTROLS_ADVANCED * controls->b_advancedVisible ); } From git at videolan.org Fri Feb 27 21:59:23 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 21:59:23 +0100 (CET) Subject: [vlc-devel] commit: Qt: add a shortcut for A->B loop (Jean-Baptiste Kempf ) Message-ID: <20090227205923.890462FF10@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 21:15:12 2009 +0100| [7f4548c68565be41c6630916f78ef7a6f0aa1bfc] | committer: Jean-Baptiste Kempf Qt: add a shortcut for A->B loop We need to fix that better in post 1.0.0 Close #2377 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7f4548c68565be41c6630916f78ef7a6f0aa1bfc --- modules/gui/qt4/components/controller.cpp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp index e1aaad1..eadaf8b 100644 --- a/modules/gui/qt4/components/controller.cpp +++ b/modules/gui/qt4/components/controller.cpp @@ -320,6 +320,7 @@ QWidget *AbstractController::createWidget( buttonType_e button, int options ) case ATOB_BUTTON: { AtoB_Button *ABButton = new AtoB_Button; setupButton( ABButton ); + ABButton->setShortcut( qtr("Shift+L") ); BUTTON_SET_BAR( ABButton ); ENABLE_ON_INPUT( ABButton ); CONNECT_MAP_SET( ABButton, ATOB_ACTION ); From d3ck0r at gmail.com Fri Feb 27 22:32:04 2009 From: d3ck0r at gmail.com (J Decker) Date: Fri, 27 Feb 2009 13:32:04 -0800 Subject: [vlc-devel] Different code paths between libvlc and VideoLan player? In-Reply-To: <49A782EA.6000108@gmail.com> References: <49A782EA.6000108@gmail.com> Message-ID: <8596d02a0902271332r5709f1a2h6b334445ee20cf6b@mail.gmail.com> these actually do seem to work, after starting _play .... it's just that the load phase doesn't seem to set them... On Thu, Feb 26, 2009 at 10:06 PM, Jonathan Wong wrote: > Hi all, > > How is it that the media length and current time (position in millisec) works in VideoLan player, > but not in libvlc? I thought the entire VideoLan player was built on libvlc? > > Procedures like libvlc_media_player_get_length, libvlc_media_player_get_time don't work correctly > (with .mpg). ?However, the media current time and media total length are displayed perfectly fine > in VideoLan player for all media types! > > I've started looking into the QT gui codes, and tracing down to the stuff behind it. > > But, can anyone here help me get started quickly in unraveling vlc? I could help in its > development. I have a 6-month project all to do with videos, and I do envision making quite a bit > of contribution to vlc. > > Thanks in advance! > > Regards > Jonathan > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > From git at videolan.org Fri Feb 27 23:53:21 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 23:53:21 +0100 (CET) Subject: [vlc-devel] commit: Qt: comments. (Jean-Baptiste Kempf ) Message-ID: <20090227225321.108F02FC60@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 22:14:13 2009 +0100| [2099e457407a9b83423f170897e98d08b68838ef] | committer: Jean-Baptiste Kempf Qt: comments. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2099e457407a9b83423f170897e98d08b68838ef --- modules/gui/qt4/main_interface.cpp | 11 ++++++++--- 1 files changed, 8 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index 0c921fb..c8f903e 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -274,8 +274,10 @@ MainInterface::~MainInterface() { msg_Dbg( p_intf, "Destroying the main interface" ); + /* Unsure we hide the videoWidget before destroying it */ if( videoIsActive ) videoWidget->hide(); + /* Save playlist state */ if( playlistWidget ) { if( !isDocked() ) @@ -284,12 +286,14 @@ MainInterface::~MainInterface() delete playlistWidget; } + /* Be sure to kill the actionsManager... FIXME */ ActionsManager::killInstance(); + /* Delete the FSC controller */ if( fullscreenControls ) delete fullscreenControls; + /* Save states */ settings->beginGroup( "MainWindow" ); - settings->setValue( "pl-dock-status", (int)i_pl_dock ); settings->setValue( "playlist-visible", (int)playlistVisible ); settings->setValue( "adv-controls", @@ -301,12 +305,13 @@ MainInterface::~MainInterface() if( bgWidget ) settings->setValue( "backgroundSize", bgWidget->size() ); + /* Save this size */ QVLCTools::saveWidgetPosition(settings, this); settings->endGroup(); - var_DelCallback( p_intf->p_libvlc, "intf-show", IntfShowCB, p_intf ); - /* Unregister callback for the intf-popupmenu variable */ + /* Unregister callbacks */ + var_DelCallback( p_intf->p_libvlc, "intf-show", IntfShowCB, p_intf ); var_DelCallback( p_intf->p_libvlc, "intf-popupmenu", PopupMenuCB, p_intf ); interaction_Unregister( p_intf ); From git at videolan.org Fri Feb 27 23:53:21 2009 From: git at videolan.org (git version control) Date: Fri, 27 Feb 2009 23:53:21 +0100 (CET) Subject: [vlc-devel] commit: Qt: cohenrency for volume between FSC and main Controller. Solve the 1% issue reported by Trax, close #1851. (Jean-Baptiste Kempf ) Message-ID: <20090227225321.215712FC8E@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Fri Feb 27 23:51:52 2009 +0100| [0ba671da3b5f22732d67bbaf10d2fb3758d0a773] | committer: Jean-Baptiste Kempf Qt: cohenrency for volume between FSC and main Controller. Solve the 1% issue reported by Trax, close #1851. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0ba671da3b5f22732d67bbaf10d2fb3758d0a773 --- modules/gui/qt4/components/controller_widget.cpp | 65 +++++++++++---------- 1 files changed, 34 insertions(+), 31 deletions(-) diff --git a/modules/gui/qt4/components/controller_widget.cpp b/modules/gui/qt4/components/controller_widget.cpp index 4b95784..1b907ff 100644 --- a/modules/gui/qt4/components/controller_widget.cpp +++ b/modules/gui/qt4/components/controller_widget.cpp @@ -120,36 +120,6 @@ SoundWidget::SoundWidget( QWidget *_parent, intf_thread_t * _p_intf, CONNECT( THEMIM, volumeChanged( void ), this, updateVolume( void ) ); } -void SoundWidget::showVolumeMenu( QPoint pos ) -{ - volumeMenu->exec( QCursor::pos() - pos - QPoint( 0, volumeMenu->height()/2 ) - + QPoint( width(), height() /2) ); -} - -bool SoundWidget::eventFilter( QObject *obj, QEvent *e ) -{ - VLC_UNUSED( obj ); - if (e->type() == QEvent::MouseButtonPress ) - { - if( volumeSlider->orientation() == Qt::Vertical ) - { - QMouseEvent *event = static_cast(e); - showVolumeMenu( event->pos() ); - } - else - { - aout_VolumeMute( p_intf, NULL ); - } - e->accept(); - return true; - } - else - { - e->ignore(); - return false; - } -} - void SoundWidget::updateVolume( int i_sliderVolume ) { if( !b_my_volume ) @@ -177,7 +147,7 @@ void SoundWidget::updateVolume() /* Audio part */ audio_volume_t i_volume; aout_VolumeGet( p_intf, &i_volume ); - i_volume = ( i_volume * VOLUME_MAX )/ (AOUT_VOLUME_MAX/2); + i_volume = ( ( i_volume + 1 ) * VOLUME_MAX )/ (AOUT_VOLUME_MAX/2); int i_gauge = volumeSlider->value(); b_my_volume = false; if( i_volume - i_gauge > 1 || i_gauge - i_volume > 1 ) @@ -188,6 +158,39 @@ void SoundWidget::updateVolume() } } +void SoundWidget::showVolumeMenu( QPoint pos ) +{ + volumeMenu->exec( QCursor::pos() - pos - QPoint( 0, volumeMenu->height()/2 ) + + QPoint( width(), height() /2) ); +} + +bool SoundWidget::eventFilter( QObject *obj, QEvent *e ) +{ + VLC_UNUSED( obj ); + if (e->type() == QEvent::MouseButtonPress ) + { + if( volumeSlider->orientation() == Qt::Vertical ) + { + QMouseEvent *event = static_cast(e); + showVolumeMenu( event->pos() ); + } + else + { + aout_VolumeMute( p_intf, NULL ); + } + e->accept(); + return true; + } + else + { + e->ignore(); + return false; + } +} + +/** + * Play Button + **/ void PlayButton::updateButton( bool b_playing ) { setIcon( b_playing ? QIcon( ":/pause_b" ) : QIcon( ":/play_b" ) ); From git at videolan.org Sat Feb 28 00:03:55 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 00:03:55 +0100 (CET) Subject: [vlc-devel] commit: Qt: cohenrency for volume between FSC and main Controller. Solve the 1% issue reported by (Jean-Baptiste Kempf ) Message-ID: <20090227230355.0688C2F9F1@skanda.videolan.org> vlc | branch: 0.9-bugfix | Jean-Baptiste Kempf | Sat Feb 28 00:01:58 2009 +0100| [0fe3057f741cc7737c4a7742c0ac897e177a6046] | committer: Jean-Baptiste Kempf Qt: cohenrency for volume between FSC and main Controller. Solve the 1% issue reported by Trax, close #1851. Manual backport of [0ba671da3b5f22732d67bbaf10d2fb3758d0a773] > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0fe3057f741cc7737c4a7742c0ac897e177a6046 --- modules/gui/qt4/components/interface_widgets.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/interface_widgets.cpp b/modules/gui/qt4/components/interface_widgets.cpp index 6fca0ca..da24cae 100644 --- a/modules/gui/qt4/components/interface_widgets.cpp +++ b/modules/gui/qt4/components/interface_widgets.cpp @@ -916,7 +916,7 @@ void ControlsWidget::updateVolume() /* Audio part */ audio_volume_t i_volume; aout_VolumeGet( p_intf, &i_volume ); - i_volume = ( i_volume * VOLUME_MAX )/ (AOUT_VOLUME_MAX/2); + i_volume = ( (i_volume + 1)* VOLUME_MAX )/ (AOUT_VOLUME_MAX/2); int i_gauge = volumeSlider->value(); b_my_volume = false; if( i_volume - i_gauge > 1 || i_gauge - i_volume > 1 ) From git at videolan.org Sat Feb 28 00:58:12 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 00:58:12 +0100 (CET) Subject: [vlc-devel] commit: Qt: add UI for play-and-exit activation. Just a menu for now. ( Jean-Baptiste Kempf ) Message-ID: <20090227235812.C11452F543@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 00:56:20 2009 +0100| [eef168a36ed123d6071870e190f255793393f75a] | committer: Jean-Baptiste Kempf Qt: add UI for play-and-exit activation. Just a menu for now. Close partly #2237 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=eef168a36ed123d6071870e190f255793393f75a --- modules/gui/qt4/input_manager.cpp | 5 +++++ modules/gui/qt4/input_manager.hpp | 1 + modules/gui/qt4/menus.cpp | 8 ++++++++ 3 files changed, 14 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 9564438..cdefa32 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -983,6 +983,11 @@ void MainInputManager::togglePlayPause() getIM()->togglePlayPause(); } +void MainInputManager::activatePlayQuit( bool b_exit ) +{ + var_SetBool( THEPL, "play-and-exit", b_exit ); +} + /* Static callbacks for MIM */ static int PLItemChanged( vlc_object_t *p_this, const char *psz_var, vlc_value_t oldval, vlc_value_t newval, void *param ) diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp index 69732e0..e6729f2 100644 --- a/modules/gui/qt4/input_manager.hpp +++ b/modules/gui/qt4/input_manager.hpp @@ -237,6 +237,7 @@ public slots: void stop(); void next(); void prev(); + void activatePlayQuit( bool ); signals: void inputChanged( input_thread_t * ); diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index efd5cc4..8ffa151 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -432,6 +432,14 @@ QMenu *QVLCMenu::ViewMenu( intf_thread_t *p_intf, if( mi->getControlsVisibilityStatus() & CONTROLS_ADVANCED ) action->setChecked( true ); + if( with_intf ) + // I don't want to manage consistency between menus, so no popup-menu + { + action = menu->addAction( qtr( "Quit after Playback" ) ); + action->setCheckable( true ); + CONNECT( action, triggered( bool ), THEMIM, activatePlayQuit( bool ) ); + } + #if 0 /* For Visualisations. Not yet working */ adv = menu->addAction( qtr( "Visualizations selector" ), mi, SLOT( visual() ) ); From jhannwong at gmail.com Sat Feb 28 00:59:01 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Sat, 28 Feb 2009 07:59:01 +0800 Subject: [vlc-devel] Different code paths between libvlc and VideoLan player? In-Reply-To: <8596d02a0902271332r5709f1a2h6b334445ee20cf6b@mail.gmail.com> References: <49A782EA.6000108@gmail.com> <8596d02a0902271332r5709f1a2h6b334445ee20cf6b@mail.gmail.com> Message-ID: <49A87E45.2090305@gmail.com> Yes, that's somewhat how I saw it in my tests, but not exactly. The get_time works only for a brief moment right after I call set_time. Then it goes back to malfunctioning. The malfunction is like this. The media plays till 10 secs point, I set_time to 4 secs. The get_time function at first returns 4 secs, but quickly jumps back to 10 secs. After the media has played past the 10 secs point, the get_time function begins to work properly. This bug is found in the QT gui too. Double click the TimeLabel at the bottom right of the gui, and set the time there. The bug is reproduced thus exactly. The media position slider works through a different code path. I'm diving into the codes today to find out exactly. I wonder why there's been no response from this forum. I hope I don't have to fork my own libvlc version. J Decker wrote: > these actually do seem to work, after starting _play .... it's just > that the load phase doesn't seem to set them... > > On Thu, Feb 26, 2009 at 10:06 PM, Jonathan Wong wrote: >> Hi all, >> >> How is it that the media length and current time (position in millisec) works in VideoLan player, >> but not in libvlc? I thought the entire VideoLan player was built on libvlc? >> >> Procedures like libvlc_media_player_get_length, libvlc_media_player_get_time don't work correctly >> (with .mpg). However, the media current time and media total length are displayed perfectly fine >> in VideoLan player for all media types! >> >> I've started looking into the QT gui codes, and tracing down to the stuff behind it. >> >> But, can anyone here help me get started quickly in unraveling vlc? I could help in its >> development. I have a 6-month project all to do with videos, and I do envision making quite a bit >> of contribution to vlc. >> >> Thanks in advance! >> >> Regards >> Jonathan >> _______________________________________________ >> vlc-devel mailing list >> To unsubscribe or modify your subscription options: >> http://mailman.videolan.org/listinfo/vlc-devel >> > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > From git at videolan.org Sat Feb 28 01:07:53 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 01:07:53 +0100 (CET) Subject: [vlc-devel] commit: Qt: string consistency. (Jean-Baptiste Kempf ) Message-ID: <20090228000753.C7B852F8E7@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 01:06:53 2009 +0100| [25407b7fdfb23e541874362c291b901177dc0e53] | committer: Jean-Baptiste Kempf Qt: string consistency. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=25407b7fdfb23e541874362c291b901177dc0e53 --- modules/gui/qt4/components/preferences_widgets.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/components/preferences_widgets.cpp b/modules/gui/qt4/components/preferences_widgets.cpp index 6c49762..fdf2653 100644 --- a/modules/gui/qt4/components/preferences_widgets.cpp +++ b/modules/gui/qt4/components/preferences_widgets.cpp @@ -1145,7 +1145,7 @@ KeySelectorControl::KeySelectorControl( vlc_object_t *_p_this, table = new QTreeWidget; table->setColumnCount(3); table->headerItem()->setText( 0, qtr( "Action" ) ); - table->headerItem()->setText( 1, qtr( "Shortcut" ) ); + table->headerItem()->setText( 1, qtr( "Hotkey" ) ); table->headerItem()->setText( 2, qtr( "Global" ) ); table->setAlternatingRowColors( true ); From git at videolan.org Sat Feb 28 01:40:53 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 01:40:53 +0100 (CET) Subject: [vlc-devel] commit: Qt: random button is now just a checkable button and doesn' t change icon nor tooltip. (Jean-Baptiste Kempf ) Message-ID: <20090228004053.41FC42F466@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 01:39:17 2009 +0100| [34d5eedc690eb80ae957e100536d13502c11fce1] | committer: Jean-Baptiste Kempf Qt: random button is now just a checkable button and doesn't change icon nor tooltip. This fixes the previous behaviour that was confusing. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=34d5eedc690eb80ae957e100536d13502c11fce1 --- .../gui/qt4/components/playlist/standardpanel.cpp | 17 +++-------------- modules/gui/qt4/vlc.qrc | 1 - 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/modules/gui/qt4/components/playlist/standardpanel.cpp b/modules/gui/qt4/components/playlist/standardpanel.cpp index 6b57047..35b4fd0 100644 --- a/modules/gui/qt4/components/playlist/standardpanel.cpp +++ b/modules/gui/qt4/components/playlist/standardpanel.cpp @@ -118,16 +118,9 @@ StandardPLPanel::StandardPLPanel( PlaylistWidget *_parent, /* Random 2-state button */ randomButton = new QPushButton( this ); - if( model->hasRandom() ) - { - randomButton->setIcon( QIcon( ":/shuffle_on" )); - randomButton->setToolTip( qtr( I_PL_RANDOM )); - } - else - { - randomButton->setIcon( QIcon( ":/shuffle_off" ) ); - randomButton->setToolTip( qtr( I_PL_NORANDOM )); - } + randomButton->setIcon( QIcon( ":/shuffle_on" )); + randomButton->setToolTip( qtr( I_PL_RANDOM )); + randomButton->setCheckable( true ); BUTTONACT( randomButton, toggleRandom() ); buttons->addWidget( randomButton ); @@ -204,10 +197,6 @@ void StandardPLPanel::toggleRandom() { bool prev = model->hasRandom(); model->setRandom( !prev ); - randomButton->setIcon( prev ? - QIcon( ":/shuffle_off" ) : - QIcon( ":/shuffle_on" ) ); - randomButton->setToolTip( prev ? qtr( I_PL_NORANDOM ) : qtr(I_PL_RANDOM ) ); } void StandardPLPanel::gotoPlayingItem() diff --git a/modules/gui/qt4/vlc.qrc b/modules/gui/qt4/vlc.qrc index 0e5aef3..e74f5bb 100644 --- a/modules/gui/qt4/vlc.qrc +++ b/modules/gui/qt4/vlc.qrc @@ -39,7 +39,6 @@ pixmaps/playlist/repeat_all.png pixmaps/playlist/repeat_off.png pixmaps/playlist/repeat_one.png - pixmaps/playlist/shuffle_off.png pixmaps/playlist/shuffle_on.png pixmaps/playlist/jumpto.png pixmaps/types/type_directory.png From jhannwong at gmail.com Sat Feb 28 05:13:53 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Sat, 28 Feb 2009 12:13:53 +0800 Subject: [vlc-devel] QT problem during make, install QT? Message-ID: <49A8BA01.50303@gmail.com> Do I have to install QT? The compile instructions didn't mention anything about installing QT. The `make' problem log: In file included from ./components/sout/profile_selector.hpp:32, from ./ui/sout.h:30, from dialogs/sout.hpp:33, from dialogs_provider.cpp:46: ./ui/profiles.h: In member function ??$(0vo(Bid Ui_Profiles::setupUi(QWidget*)??$(1: (B./ui/profiles.h:117: error: ??$(0cl(Bass QGridLayout??$(1 h(Bas no member named ??$(0se(BtLeftMargin??$(1 .(B/ui/profiles.h:118: error: ??$(0cl(Bass QGridLayout??$(1 h(Bas no member named ??$(0se(BtRightMargin??$(1 m(Bake[6]: *** [libqt4_plugin_la-dialogs_provider.lo] Error 1 make[6]: Leaving directory `/home/vlc-proj/vlc/modules/gui/qt4' make[5]: *** [all] Error 2 make[5]: Leaving directory `/home/vlc-proj/vlc/modules/gui/qt4' make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory `/home/vlc-proj/vlc/modules/gui' make[3]: *** [all] Error 2 make[3]: Leaving directory `/home/vlc-proj/vlc/modules/gui' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/vlc-proj/vlc/modules' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/vlc-proj/vlc' make: *** [all] Error 2 From jhannwong at gmail.com Sat Feb 28 08:11:05 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Sat, 28 Feb 2009 15:11:05 +0800 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: <49A8BA01.50303@gmail.com> References: <49A8BA01.50303@gmail.com> Message-ID: <49A8E389.1090705@gmail.com> By the way, I was using the contrib-20080528-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2 at http://download.videolan.org/pub/videolan/testing/win32/ Any help? Or do I have to compile my own contrib binaries? Speaking of which, I did try. I got this error: checking for C compiler default output file name... configure: error: C compiler cannot create executables See `config.log' for more details. configure: error: ./configure failed for autoconf-lib-link make[1]: *** [.intl] Error 1 That's when doing a `make src'. Doing a `make bin' throws an error: Did a `./bootstrap mingw32'. Then a `make bin'. I get a: make: *** No rule to make target 'using-bin', needed by 'bin'. Stop. Jonathan Wong wrote: > Do I have to install QT? The compile instructions didn't mention > anything about installing QT. > > The `make' problem log: > > In file included from ./components/sout/profile_selector.hpp:32, > from ./ui/sout.h:30, > from dialogs/sout.hpp:33, > from dialogs_provider.cpp:46: > ./ui/profiles.h: In member function ??$(0vo(Bid > Ui_Profiles::setupUi(QWidget*)??$(1: > (B./ui/profiles.h:117: error: ??$(0cl(Bass QGridLayout??$(1 h(Bas > no member named ??$(0se(BtLeftMargin??$(1 > .(B/ui/profiles.h:118: error: ??$(0cl(Bass QGridLayout??$(1 h(Bas > no member named ??$(0se(BtRightMargin??$(1 > m(Bake[6]: *** [libqt4_plugin_la-dialogs_provider.lo] Error 1 > make[6]: Leaving directory `/home/vlc-proj/vlc/modules/gui/qt4' > make[5]: *** [all] Error 2 > make[5]: Leaving directory `/home/vlc-proj/vlc/modules/gui/qt4' > make[4]: *** [all-recursive] Error 1 > make[4]: Leaving directory `/home/vlc-proj/vlc/modules/gui' > make[3]: *** [all] Error 2 > make[3]: Leaving directory `/home/vlc-proj/vlc/modules/gui' > make[2]: *** [all-recursive] Error 1 > make[2]: Leaving directory `/home/vlc-proj/vlc/modules' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/home/vlc-proj/vlc' > make: *** [all] Error 2 > From jhannwong at gmail.com Sat Feb 28 08:45:45 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Sat, 28 Feb 2009 15:45:45 +0800 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: <49A8E389.1090705@gmail.com> References: <49A8BA01.50303@gmail.com> <49A8E389.1090705@gmail.com> Message-ID: <49A8EBA9.4000302@gmail.com> Ok, I'm really trying here. I've compiled the qt4 in the extras/contrib. Installed those into the /usr/win32 folder. The vlc `make' still gives me the same error. I'm gonna try compiling from the source codes NOT from git. How do I try to hire people from the vlc dev team, by the way? Is this the place to ask? Jonathan Wong wrote: > By the way, I was using the > contrib-20080528-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2 at > http://download.videolan.org/pub/videolan/testing/win32/ > > Any help? Or do I have to compile my own contrib binaries? > > Speaking of which, I did try. I got this error: > > checking for C compiler default output file name... > configure: error: C compiler cannot create executables > See `config.log' for more details. > configure: error: ./configure failed for autoconf-lib-link > make[1]: *** [.intl] Error 1 > > That's when doing a `make src'. > > Doing a `make bin' throws an error: > > Did a `./bootstrap mingw32'. Then a `make bin'. > > I get a: > > make: *** No rule to make target 'using-bin', needed by 'bin'. Stop. > > Jonathan Wong wrote: >> Do I have to install QT? The compile instructions didn't mention >> anything about installing QT. >> >> The `make' problem log: >> >> In file included from ./components/sout/profile_selector.hpp:32, >> from ./ui/sout.h:30, >> from dialogs/sout.hpp:33, >> from dialogs_provider.cpp:46: >> ./ui/profiles.h: In member function ??$(0vo(Bid >> Ui_Profiles::setupUi(QWidget*)??$(1: >> (B./ui/profiles.h:117: error: ??$(0cl(Bass QGridLayout??$(1 h(Bas >> no member named ??$(0se(BtLeftMargin??$(1 >> .(B/ui/profiles.h:118: error: ??$(0cl(Bass QGridLayout??$(1 h(Bas >> no member named ??$(0se(BtRightMargin??$(1 >> m(Bake[6]: *** [libqt4_plugin_la-dialogs_provider.lo] Error 1 >> make[6]: Leaving directory `/home/vlc-proj/vlc/modules/gui/qt4' >> make[5]: *** [all] Error 2 >> make[5]: Leaving directory `/home/vlc-proj/vlc/modules/gui/qt4' >> make[4]: *** [all-recursive] Error 1 >> make[4]: Leaving directory `/home/vlc-proj/vlc/modules/gui' >> make[3]: *** [all] Error 2 >> make[3]: Leaving directory `/home/vlc-proj/vlc/modules/gui' >> make[2]: *** [all-recursive] Error 1 >> make[2]: Leaving directory `/home/vlc-proj/vlc/modules' >> make[1]: *** [all-recursive] Error 1 >> make[1]: Leaving directory `/home/vlc-proj/vlc' >> make: *** [all] Error 2 >> > > From geo.couprie at gmail.com Sat Feb 28 11:43:53 2009 From: geo.couprie at gmail.com (Geoffroy Couprie) Date: Sat, 28 Feb 2009 11:43:53 +0100 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: <49A8E389.1090705@gmail.com> References: <49A8BA01.50303@gmail.com> <49A8E389.1090705@gmail.com> Message-ID: On Sat, Feb 28, 2009 at 8:11 AM, Jonathan Wong wrote: > By the way, I was using the contrib-20080528-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2 at > http://download.videolan.org/pub/videolan/testing/win32/ Did you follow http://wiki.videolan.org/Win32CompileCygwinNew ? > > Any help? Or do I have to compile my own contrib binaries? No, you can download them on http://people.videolan.org/~jb/Contribs/contrib-20090219-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2 > > Speaking of which, I did try. I got this error: > > checking for C compiler default output file name... > configure: error: C compiler cannot create executables > See `config.log' for more details. well, obviously, you should look at config.log :) Are you building on Linux or Windows? > configure: error: ./configure failed for autoconf-lib-link > make[1]: *** [.intl] Error 1 > > That's when doing a `make src'. > > Doing a `make bin' throws an error: > > Did a `./bootstrap mingw32'. Then a `make bin'. > > I get a: > > make: *** No rule to make target 'using-bin', needed by 'bin'. Stop. What are you trying to build? vlc or the contribs? From git at videolan.org Sat Feb 28 11:51:29 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 11:51:29 +0100 (CET) Subject: [vlc-devel] commit: Make UI compatible Qt4.3 - May people from the designer die in Hell ... (Jean-Baptiste Kempf ) Message-ID: <20090228105129.EEFEC2FCF6@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 11:46:51 2009 +0100| [e5eff32daab554104de435121136be9ce468b2c8] | committer: Jean-Baptiste Kempf Make UI compatible Qt4.3 - May people from the designer die in Hell... > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e5eff32daab554104de435121136be9ce468b2c8 --- modules/gui/qt4/ui/profiles.ui | 6 ------ 1 files changed, 0 insertions(+), 6 deletions(-) diff --git a/modules/gui/qt4/ui/profiles.ui b/modules/gui/qt4/ui/profiles.ui index 0348dfd..a26c2b8 100644 --- a/modules/gui/qt4/ui/profiles.ui +++ b/modules/gui/qt4/ui/profiles.ui @@ -45,12 +45,6 @@ _("Encapsulation") - - 9 - - - 9 - From jb at videolan.org Sat Feb 28 11:52:15 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 28 Feb 2009 11:52:15 +0100 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: <49A8BA01.50303@gmail.com> References: <49A8BA01.50303@gmail.com> Message-ID: <20090228105215.GA828@videolan.org> On Sat, Feb 28, 2009 at 12:13:53PM +0800, Jonathan Wong wrote : > Do I have to install QT? The compile instructions didn't mention anything about installing QT. You are using an old Qt version, please update, and update your source to fix this too. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Sat Feb 28 11:54:32 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 11:54:32 +0100 (CET) Subject: [vlc-devel] commit: Fix wrong initialization of 'mp2v' encoder profile (Roman Pen ) Message-ID: <20090228105432.14E3C2F743@skanda.videolan.org> vlc | branch: master | Roman Pen | Sat Feb 28 01:39:17 2009 +0100| [9be39f72dbafbeb94f6f1d3c1d2e46be5d2b3c93] | committer: R?mi Denis-Courmont Fix wrong initialization of 'mp2v' encoder profile According to ffmpeg/libavcodec/mpeg12enc.c:155 (rev:2fd06be07311) profile and level must be inited at the same time, so, -1 will be returned for mp2v with width > 720 or height > 576. But, if we leave this fields blank (i.e. FF_PROFILE_UNKNOWN and FF_LEVEL_UNKNOWN) avcodec will init them correctly. This partially reverts commit b1b72b632aed8ccf9624093214efe1329093e6f8. Signed-off-by: R?mi Denis-Courmont > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9be39f72dbafbeb94f6f1d3c1d2e46be5d2b3c93 --- modules/codec/avcodec/encoder.c | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c index 6cbe672..f5ffc01 100644 --- a/modules/codec/avcodec/encoder.c +++ b/modules/codec/avcodec/encoder.c @@ -427,9 +427,6 @@ int OpenEncoder( vlc_object_t *p_this ) p_context->width = p_enc->fmt_in.video.i_width; p_context->height = p_enc->fmt_in.video.i_height; - if( p_enc->fmt_out.i_codec == VLC_FOURCC('m', 'p', '2', 'v') - && (p_context->width > 720 || p_context->height > 576) ) - p_context->level = 4; /* High level */ p_context->time_base.num = p_enc->fmt_in.video.i_frame_rate_base; p_context->time_base.den = p_enc->fmt_in.video.i_frame_rate; From git at videolan.org Sat Feb 28 11:56:51 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 11:56:51 +0100 (CET) Subject: [vlc-devel] commit: QT4: set initial state of randombutton correctly (Ilkka Ollakka ) Message-ID: <20090228105651.DAC932FF68@skanda.videolan.org> vlc | branch: master | Ilkka Ollakka | Sat Feb 28 12:56:22 2009 +0200| [74579daae8e2b99a7d49216ba15051e1b7a9d792] | committer: Ilkka Ollakka QT4: set initial state of randombutton correctly > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=74579daae8e2b99a7d49216ba15051e1b7a9d792 --- .../gui/qt4/components/playlist/standardpanel.cpp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/components/playlist/standardpanel.cpp b/modules/gui/qt4/components/playlist/standardpanel.cpp index 35b4fd0..3b68e98 100644 --- a/modules/gui/qt4/components/playlist/standardpanel.cpp +++ b/modules/gui/qt4/components/playlist/standardpanel.cpp @@ -121,6 +121,7 @@ StandardPLPanel::StandardPLPanel( PlaylistWidget *_parent, randomButton->setIcon( QIcon( ":/shuffle_on" )); randomButton->setToolTip( qtr( I_PL_RANDOM )); randomButton->setCheckable( true ); + randomButton->setChecked( model->hasRandom() ); BUTTONACT( randomButton, toggleRandom() ); buttons->addWidget( randomButton ); From jhannwong at gmail.com Sat Feb 28 12:03:14 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Sat, 28 Feb 2009 19:03:14 +0800 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: References: <49A8BA01.50303@gmail.com> <49A8E389.1090705@gmail.com> Message-ID: <49A919F2.2020808@gmail.com> Godsend! So you guys actually work the weekdays, and slog on vlc in weekends? Used Debian Lenny. Installed autoconf (automake pulled in along the way), gettext, libgcrypt-dev, mingw32, libtool. Put that 2008-05-28 contrib into /usr/win32. Did the bootstrap and configure according to the INSTALL.win32 file. `make' fails with QT problem I mentioned before. I'm gonna try the new contrib you mentioned. Will let you know. It seems the contrib folder online wasn't updated to use the latest necessary QT? Geoffroy Couprie wrote: > On Sat, Feb 28, 2009 at 8:11 AM, Jonathan Wong wrote: >> By the way, I was using the contrib-20080528-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2 at >> http://download.videolan.org/pub/videolan/testing/win32/ > > Did you follow http://wiki.videolan.org/Win32CompileCygwinNew ? >> Any help? Or do I have to compile my own contrib binaries? > > No, you can download them on > http://people.videolan.org/~jb/Contribs/contrib-20090219-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2 > >> Speaking of which, I did try. I got this error: >> >> checking for C compiler default output file name... >> configure: error: C compiler cannot create executables >> See `config.log' for more details. > > well, obviously, you should look at config.log :) Are you building on > Linux or Windows? > >> configure: error: ./configure failed for autoconf-lib-link >> make[1]: *** [.intl] Error 1 >> >> That's when doing a `make src'. >> >> Doing a `make bin' throws an error: >> >> Did a `./bootstrap mingw32'. Then a `make bin'. >> >> I get a: >> >> make: *** No rule to make target 'using-bin', needed by 'bin'. Stop. > > What are you trying to build? vlc or the contribs? > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel > From jhannwong at gmail.com Sat Feb 28 12:23:39 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Sat, 28 Feb 2009 19:23:39 +0800 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: <49A919F2.2020808@gmail.com> References: <49A8BA01.50303@gmail.com> <49A8E389.1090705@gmail.com> <49A919F2.2020808@gmail.com> Message-ID: <49A91EBB.60007@gmail.com> It's worse with the new contrib. Failed even before the QT problem. Some kind of libzvbi problem: *** Warning: Linking the shared library libzvbi_plugin.la against the *** static library /usr/win32/lib/libiconv.a is not portable! i586-mingw32msvc-gcc -std=gnu99 -shared .libs/libzvbi_plugin_la-zvbi.o -L/usr/win32/lib /usr/win32/lib/libzvbi.a /usr/win32/lib/libintl.a /usr/win32/lib/libiconv.a -lpthreadGC2 -lpng -lz ../../src/.libs/libvlccore.dll.a -lmingw32 -mtune=pentium2 -mms-bitfields -o .libs/libzvbi_plugin.dll -Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker .libs/libzvbi_plugin.dll.a Creating library file: .libs/libzvbi_plugin.dll.a/usr/win32/lib/libzvbi.a(vbi.o):vbi.c:(.text+0x243): undefined reference to `__imp__pthread_once' /usr/win32/lib/libzvbi.a(vbi.o):vbi.c:(.text+0x297): undefined reference to `__imp__pthread_mutex_init' Jonathan Wong wrote: > Godsend! So you guys actually work the weekdays, and slog on vlc in > weekends? > > Used Debian Lenny. Installed autoconf (automake pulled in along the > way), gettext, libgcrypt-dev, mingw32, libtool. Put that 2008-05-28 > contrib into /usr/win32. > > Did the bootstrap and configure according to the INSTALL.win32 file. > > `make' fails with QT problem I mentioned before. > > I'm gonna try the new contrib you mentioned. > > Will let you know. > > It seems the contrib folder online wasn't updated to use the latest > necessary QT? > > Geoffroy Couprie wrote: > > On Sat, Feb 28, 2009 at 8:11 AM, Jonathan Wong > wrote: > >> By the way, I was using the > contrib-20080528-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2 at > >> http://download.videolan.org/pub/videolan/testing/win32/ > > > > Did you follow http://wiki.videolan.org/Win32CompileCygwinNew ? > >> Any help? Or do I have to compile my own contrib binaries? > > > > No, you can download them on > > > http://people.videolan.org/~jb/Contribs/contrib-20090219-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2 > > > > >> Speaking of which, I did try. I got this error: > >> > >> checking for C compiler default output file name... > >> configure: error: C compiler cannot create executables > >> See `config.log' for more details. > > > > well, obviously, you should look at config.log :) Are you building on > > Linux or Windows? > > > >> configure: error: ./configure failed for autoconf-lib-link > >> make[1]: *** [.intl] Error 1 > >> > >> That's when doing a `make src'. > >> > >> Doing a `make bin' throws an error: > >> > >> Did a `./bootstrap mingw32'. Then a `make bin'. > >> > >> I get a: > >> > >> make: *** No rule to make target 'using-bin', needed by 'bin'. Stop. > > > > What are you trying to build? vlc or the contribs? > > _______________________________________________ > > vlc-devel mailing list > > To unsubscribe or modify your subscription options: > > http://mailman.videolan.org/listinfo/vlc-devel > > > From git at videolan.org Sat Feb 28 12:24:17 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 12:24:17 +0100 (CET) Subject: [vlc-devel] commit: Qt: consistency between loop and random buttons. ( Jean-Baptiste Kempf ) Message-ID: <20090228112417.DEC552FF85@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 12:23:13 2009 +0100| [862258e86722f54e5e9fc417fc8fcd21bfdcc518] | committer: Jean-Baptiste Kempf Qt: consistency between loop and random buttons. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=862258e86722f54e5e9fc417fc8fcd21bfdcc518 --- .../gui/qt4/components/playlist/standardpanel.cpp | 21 +++++++++++-------- 1 files changed, 12 insertions(+), 9 deletions(-) diff --git a/modules/gui/qt4/components/playlist/standardpanel.cpp b/modules/gui/qt4/components/playlist/standardpanel.cpp index 3b68e98..4ecc873 100644 --- a/modules/gui/qt4/components/playlist/standardpanel.cpp +++ b/modules/gui/qt4/components/playlist/standardpanel.cpp @@ -127,20 +127,23 @@ StandardPLPanel::StandardPLPanel( PlaylistWidget *_parent, /* Repeat 3-state button */ repeatButton = new QPushButton( this ); + repeatButton->setToolTip( qtr( "Click to toggle between loop one, loop all" ) ); + repeatButton->setCheckable( true ); + if( model->hasRepeat() ) { repeatButton->setIcon( QIcon( ":/repeat_one" ) ); - repeatButton->setToolTip( qtr( I_PL_REPEAT )); + repeatButton->setChecked( true ); } else if( model->hasLoop() ) { repeatButton->setIcon( QIcon( ":/repeat_all" ) ); - repeatButton->setToolTip( qtr( I_PL_LOOP )); + repeatButton->setChecked( true ); } else { - repeatButton->setIcon( QIcon( ":/repeat_off" ) ); - repeatButton->setToolTip( qtr( I_PL_NOREPEAT )); + repeatButton->setIcon( QIcon( ":/repeat_one" ) ); + repeatButton->setChecked( false ); } BUTTONACT( repeatButton, toggleRepeat() ); buttons->addWidget( repeatButton ); @@ -177,19 +180,19 @@ void StandardPLPanel::toggleRepeat() { model->setRepeat( false ); model->setLoop( true ); repeatButton->setIcon( QIcon( ":/repeat_all" ) ); - repeatButton->setToolTip( qtr( I_PL_LOOP )); + repeatButton->setChecked( true ); } else if( model->hasLoop() ) { model->setRepeat( false ) ; model->setLoop( false ); - repeatButton->setIcon( QIcon( ":/repeat_off" ) ); - repeatButton->setToolTip( qtr( I_PL_NOREPEAT )); + repeatButton->setChecked( false ); + repeatButton->setIcon( QIcon( ":/repeat_one" ) ); } else { - model->setRepeat( true ); + model->setRepeat( true ); model->setLoop( false ); + repeatButton->setChecked( true ); repeatButton->setIcon( QIcon( ":/repeat_one" ) ); - repeatButton->setToolTip( qtr( I_PL_REPEAT )); } } From jhannwong at gmail.com Sat Feb 28 12:33:39 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Sat, 28 Feb 2009 19:33:39 +0800 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: <20090228105215.GA828@videolan.org> References: <49A8BA01.50303@gmail.com> <20090228105215.GA828@videolan.org> Message-ID: <49A92113.5030207@gmail.com> I got the source from git just yesterday. Do I compile the QT for Win32 or for Linux? I'm cross-compiling vlc in Debian for Win32. Jean-Baptiste Kempf wrote: > On Sat, Feb 28, 2009 at 12:13:53PM +0800, Jonathan Wong wrote : >> Do I have to install QT? The compile instructions didn't mention anything about installing QT. > > You are using an old Qt version, please update, and update your source > to fix this too. > > > Best Regards, > From git at videolan.org Sat Feb 28 12:36:41 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 12:36:41 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Fix_FfmpegExecute_callback_protot?= =?utf-8?q?ype_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228113641.F10722FC8E@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 13:36:19 2009 +0200| [1be112b61da70ecf92f78b33492bc8339e55e88b] | committer: R?mi Denis-Courmont Fix FfmpegExecute callback prototype > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1be112b61da70ecf92f78b33492bc8339e55e88b --- modules/codec/avcodec/encoder.c | 13 +++++++------ 1 files changed, 7 insertions(+), 6 deletions(-) diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c index f5ffc01..6c6047c 100644 --- a/modules/codec/avcodec/encoder.c +++ b/modules/codec/avcodec/encoder.c @@ -70,7 +70,7 @@ struct thread_context_t; static void* FfmpegThread( vlc_object_t *p_this ); static int FfmpegExecute( AVCodecContext *s, int (*pf_func)(AVCodecContext *c2, void *arg2), - void **arg, int *ret, int count ); + void *arg, int *ret, int count, int ); /***************************************************************************** * thread_context_t : for multithreaded encoding @@ -751,25 +751,25 @@ static void* FfmpegThread( vlc_object_t *p_this ) static int FfmpegExecute( AVCodecContext *s, int (*pf_func)(AVCodecContext *c2, void *arg2), - void **arg, int *ret, int count ) + void *arg, int *ret, int count, int size ) { struct thread_context_t ** pp_contexts = (struct thread_context_t **)s->thread_opaque; - int i; + void **argv = arg; /* Note, we can be certain that this is not called with the same * AVCodecContext by different threads at the same time */ - for ( i = 0; i < count; i++ ) + for ( int i = 0; i < count; i++ ) { vlc_mutex_lock( &pp_contexts[i]->lock ); - pp_contexts[i]->arg = arg[i]; + pp_contexts[i]->arg = argv[i]; pp_contexts[i]->pf_func = pf_func; pp_contexts[i]->i_ret = 12345; pp_contexts[i]->b_work = 1; vlc_cond_signal( &pp_contexts[i]->cond ); vlc_mutex_unlock( &pp_contexts[i]->lock ); } - for ( i = 0; i < count; i++ ) + for ( int i = 0; i < count; i++ ) { vlc_mutex_lock( &pp_contexts[i]->lock ); while ( !pp_contexts[i]->b_done ) @@ -786,6 +786,7 @@ static int FfmpegExecute( AVCodecContext *s, } } + (void)size; return 0; } From jb at videolan.org Sat Feb 28 13:02:59 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 28 Feb 2009 13:02:59 +0100 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: <49A92113.5030207@gmail.com> References: <49A8BA01.50303@gmail.com> <20090228105215.GA828@videolan.org> <49A92113.5030207@gmail.com> Message-ID: <20090228120259.GA14634@videolan.org> On Sat, Feb 28, 2009 at 07:33:39PM +0800, Jonathan Wong wrote : > I got the source from git just yesterday. > > Do I compile the QT for Win32 or for Linux? I'm cross-compiling vlc in Debian for Win32. Take my Virtual Machine or try to understand the messages... (hint disable-zvbi) Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jhannwong at gmail.com Sat Feb 28 13:12:55 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Sat, 28 Feb 2009 20:12:55 +0800 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: <20090228120259.GA14634@videolan.org> References: <49A8BA01.50303@gmail.com> <20090228105215.GA828@videolan.org> <49A92113.5030207@gmail.com> <20090228120259.GA14634@videolan.org> Message-ID: <49A92A47.7050302@gmail.com> Oh, where's your virtual machine? I'm just right now struggling to compile qt4-4.4.3-win32-bin.tar.bz2 Would be nice if I can have your Virtual Machine. Thanks! Jean-Baptiste Kempf wrote: > On Sat, Feb 28, 2009 at 07:33:39PM +0800, Jonathan Wong wrote : >> I got the source from git just yesterday. >> >> Do I compile the QT for Win32 or for Linux? I'm cross-compiling vlc in Debian for Win32. > > Take my Virtual Machine or try to understand the messages... (hint > disable-zvbi) > > Best Regards, > From jhannwong at gmail.com Sat Feb 28 13:43:49 2009 From: jhannwong at gmail.com (Jonathan Wong) Date: Sat, 28 Feb 2009 20:43:49 +0800 Subject: [vlc-devel] QT problem during make, install QT? In-Reply-To: <49A92A47.7050302@gmail.com> References: <49A8BA01.50303@gmail.com> <20090228105215.GA828@videolan.org> <49A92113.5030207@gmail.com> <20090228120259.GA14634@videolan.org> <49A92A47.7050302@gmail.com> Message-ID: <49A93185.2070908@gmail.com> Ah, 2 days, and I finally compiled it. For anyone interested, Debian Etch had a missing gettimeofday function. Lenny works. I didn't spot the disable-zvbi in the configure file. I thought it was just enable-zvbi or naught. Thanks! By the way, if you'd teach me how to compile the contrib from scratch, I'll do it for you guys every time you need an updated contrib binary distributed. Jonathan Wong wrote: > Oh, where's your virtual machine? > > I'm just right now struggling to compile qt4-4.4.3-win32-bin.tar.bz2 > > Would be nice if I can have your Virtual Machine. Thanks! > > Jean-Baptiste Kempf wrote: >> On Sat, Feb 28, 2009 at 07:33:39PM +0800, Jonathan Wong wrote : >>> I got the source from git just yesterday. >>> >>> Do I compile the QT for Win32 or for Linux? I'm cross-compiling vlc >>> in Debian for Win32. >> >> Take my Virtual Machine or try to understand the messages... (hint >> disable-zvbi) >> >> Best Regards, >> > > From fkuehne.videolan at googlemail.com Sat Feb 28 13:49:03 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Sat, 28 Feb 2009 13:49:03 +0100 Subject: [vlc-devel] commit: s/Paste MRL/Paste Location/ (Jean-Baptiste Kempf ) In-Reply-To: <20090227000847.E18A42FD62@skanda.videolan.org> References: <20090227000847.E18A42FD62@skanda.videolan.org> Message-ID: Am 27.02.2009 um 01:08 schrieb git version control: > + addDPStaticEntry( menu, qtr( "Paste &Location" ), > NULL, SLOT( openUrlDialog() ), "Ctrl+V" ); Why don't you "Open" the location? Well, of course you'll paste the URL in the dialogue, but in the long run, VLC will open it. So, from a user's perspective, this would make more sense and would have the same name as most web browser (like R?mi mentioned)... Just my 2ct.. Best regards, Felix From fkuehne.videolan at googlemail.com Sat Feb 28 13:50:35 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Sat, 28 Feb 2009 13:50:35 +0100 Subject: [vlc-devel] [RFC] Opening network stream In-Reply-To: <20090227095007.GD24873@papu.site> References: <200902262015.33780.remi@remlab.net> <20090227095007.GD24873@papu.site> Message-ID: Am 27.02.2009 um 10:50 schrieb Ilkka Ollakka: > On to 26. helmikuuta 2009 20.15.33, R?mi Denis-Courmont wrote: >> Hello, >> > >> I would really remove the open network dialog/tab completely. Then >> I'd widden, >> rename and move the Paste MRL dialog. And if we really want RTP and/ >> or UDP >> helpers, we can add a forth button to that dialog, but I think we >> should skip >> that and encourage people to use RTSP, SAP and/or SDP-over-HTTP. > > I think this is one of the first feedbacks on open network-dialog (not > sure, maybe my memory is doing tricks on me). But yes I too think that > whole open network tab could be dropped in favor of that open > localtion > dialog where user just drops url. I strongly agree with you guys (although I would add the "forth button for UDP/RTP" as R?mi suggested). 1+ Best regards, Felix From aballier at gentoo.org Sat Feb 28 13:51:32 2009 From: aballier at gentoo.org (Alexis Ballier) Date: Sat, 28 Feb 2009 13:51:32 +0100 Subject: [vlc-devel] [PATCH] Backport fixes for audio resampling or downmixing from master. Message-ID: <1235825492-22228-1-git-send-email-aballier@gentoo.org> From: Laurent Aimar Fixed audio transcoding when channel mixing or resampling is needed. Signed-off-by: Alexis Ballier --- modules/stream_out/transcode.c | 238 +++++++++++++++++++++------------------- 1 files changed, 123 insertions(+), 115 deletions(-) diff --git a/modules/stream_out/transcode.c b/modules/stream_out/transcode.c index 7290b60..da60d1c 100644 --- a/modules/stream_out/transcode.c +++ b/modules/stream_out/transcode.c @@ -1101,12 +1101,107 @@ static int transcode_audio_filter_allocation_init( filter_t *p_filter, return VLC_SUCCESS; } +static bool transcode_audio_filter_needed( const es_format_t *p_fmt1, const es_format_t *p_fmt2 ) +{ + if( p_fmt1->i_codec != p_fmt2->i_codec || + p_fmt1->audio.i_channels != p_fmt2->audio.i_channels || + p_fmt1->audio.i_rate != p_fmt2->audio.i_rate ) + return true; + return false; +} +static int transcode_audio_filter_chain_build( sout_stream_t *p_stream, filter_chain_t *p_chain, + const es_format_t *p_dst, const es_format_t *p_src ) +{ + if( !transcode_audio_filter_needed( p_dst, p_src ) ) + return VLC_SUCCESS; + + es_format_t current = *p_src; + + msg_Dbg( p_stream, "Looking for filter " + "(%4.4s->%4.4s, channels %d->%d, rate %d->%d)", + (const char *)&p_src->i_codec, + (const char *)&p_dst->i_codec, + p_src->audio.i_channels, + p_dst->audio.i_channels, + p_src->audio.i_rate, + p_dst->audio.i_rate ); + + /* If any filter is needed, convert to fl32 */ + if( current.i_codec != VLC_FOURCC('f','l','3','2') ) + { + /* First step, convert to fl32 */ + current.i_codec = + current.audio.i_format = VLC_FOURCC('f','l','3','2'); + + if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) ) + { + msg_Err( p_stream, "Failed to find conversion filter to fl32" ); + return VLC_EGENERIC; + } + current = *filter_chain_GetFmtOut( p_chain ); + } + + /* Fix sample rate */ + if( current.audio.i_rate != p_dst->audio.i_rate ) + { + current.audio.i_rate = p_dst->audio.i_rate; + if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) ) + { + msg_Err( p_stream, "Failed to find conversion filter for resampling" ); + return VLC_EGENERIC; + } + current = *filter_chain_GetFmtOut( p_chain ); + } + + /* Fix channels */ + if( current.audio.i_channels != p_dst->audio.i_channels ) + { + current.audio.i_channels = p_dst->audio.i_channels; + current.audio.i_physical_channels = p_dst->audio.i_physical_channels; + current.audio.i_original_channels = p_dst->audio.i_original_channels; + + if( ( !current.audio.i_physical_channels || !current.audio.i_original_channels ) && + current.audio.i_channels < 6 ) + current.audio.i_physical_channels = + current.audio.i_original_channels = pi_channels_maps[current.audio.i_channels]; + + if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) ) + { + msg_Err( p_stream, "Failed to find conversion filter for channel mixing" ); + return VLC_EGENERIC; + } + current = *filter_chain_GetFmtOut( p_chain ); + } + + /* And last step, convert to the requested codec */ + if( current.i_codec != p_dst->i_codec ) + { + current.i_codec = p_dst->i_codec; + if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) ) + { + msg_Err( p_stream, "Failed to find conversion filter to %4.4s", + (const char*)&p_dst->i_codec); + return VLC_EGENERIC; + } + current = *filter_chain_GetFmtOut( p_chain ); + } + + if( transcode_audio_filter_needed( p_dst, ¤t ) ) + { + /* Weird case, a filter has side effects, doomed */ + msg_Err( p_stream, "Failed to create a valid audio filter chain" ); + return VLC_EGENERIC; + } + + msg_Dbg( p_stream, "Got complete audio filter chain" ); + return VLC_SUCCESS; +} + static int transcode_audio_new( sout_stream_t *p_stream, sout_stream_id_t *id ) { sout_stream_sys_t *p_sys = p_stream->p_sys; es_format_t fmt_last; - int i; /* * Open decoder @@ -1172,130 +1267,39 @@ static int transcode_audio_new( sout_stream_t *p_stream, id->p_encoder->fmt_in.audio.i_bitspersample = aout_BitsPerSample( id->p_encoder->fmt_in.i_codec ); - /* Init filter chain */ - id->p_f_chain = filter_chain_New( p_stream, "audio filter2", true, - transcode_audio_filter_allocation_init, NULL, NULL ); - filter_chain_Reset( id->p_f_chain, &fmt_last, &id->p_encoder->fmt_in ); - - /* Load conversion filters */ - if( fmt_last.audio.i_channels != id->p_encoder->fmt_in.audio.i_channels || - fmt_last.audio.i_rate != id->p_encoder->fmt_in.audio.i_rate ) - { - /* We'll have to go through fl32 first */ - fmt_last.i_codec = fmt_last.audio.i_format = VLC_FOURCC('f','l','3','2'); - fmt_last.audio.i_bitspersample = aout_BitsPerSample( fmt_last.i_codec ); - filter_chain_AppendFilter( id->p_f_chain, NULL, NULL, NULL, &fmt_last ); - fmt_last = *filter_chain_GetFmtOut( id->p_f_chain ); - } - - for( i = 0; i < 4; i++ ) - { - if( (fmt_last.audio.i_channels != - id->p_encoder->fmt_in.audio.i_channels) || - (fmt_last.audio.i_rate != id->p_encoder->fmt_in.audio.i_rate) || - (fmt_last.i_codec != id->p_encoder->fmt_in.i_codec) ) - { - msg_Dbg( p_stream, "Looking for filter " - "(%4.4s->%4.4s, channels %d->%d, rate %d->%d)", - (char *)&fmt_last.i_codec, - (char *)&id->p_encoder->fmt_in.i_codec, - fmt_last.audio.i_channels, - id->p_encoder->fmt_in.audio.i_channels, - fmt_last.audio.i_rate, - id->p_encoder->fmt_in.audio.i_rate ); - filter_chain_AppendFilter( id->p_f_chain, NULL, NULL, - &fmt_last, &id->p_encoder->fmt_in ); - fmt_last = *filter_chain_GetFmtOut( id->p_f_chain ); - } - else break; - } - - /* Final checks to see if conversions were successful */ - if( fmt_last.i_codec != id->p_encoder->fmt_in.i_codec ) - { - msg_Err( p_stream, "no audio filter found " - "(%4.4s->%4.4s, channels %d->%d, rate %d->%d)", - (char *)&fmt_last.i_codec, - (char *)&id->p_encoder->fmt_in.i_codec, - fmt_last.audio.i_channels, - id->p_encoder->fmt_in.audio.i_channels, - fmt_last.audio.i_rate, - id->p_encoder->fmt_in.audio.i_rate ); - transcode_audio_close( id ); - return VLC_EGENERIC; - } - - /* Load user specified audio filters now */ + /* Load user specified audio filters */ if( p_sys->psz_af2 ) { - id->p_uf_chain = filter_chain_New( p_stream, "audio filter2", false, - transcode_audio_filter_allocation_init, NULL, NULL ); - filter_chain_Reset( id->p_uf_chain, &fmt_last, &id->p_encoder->fmt_in ); - filter_chain_AppendFromString( id->p_uf_chain, p_sys->psz_af2 ); - fmt_last = *filter_chain_GetFmtOut( id->p_uf_chain ); - } - - if( fmt_last.audio.i_channels != id->p_encoder->fmt_in.audio.i_channels ) - { -#if 1 - module_Unneed( id->p_encoder, id->p_encoder->p_module ); - id->p_encoder->p_module = NULL; - - /* This might work, but only if the encoder is restarted */ - id->p_encoder->fmt_in.audio.i_channels = fmt_last.audio.i_channels; - id->p_encoder->fmt_out.audio.i_channels = fmt_last.audio.i_channels; - - id->p_encoder->fmt_in.audio.i_physical_channels = - id->p_encoder->fmt_in.audio.i_original_channels = - fmt_last.audio.i_physical_channels; - id->p_encoder->fmt_out.audio.i_physical_channels = - id->p_encoder->fmt_out.audio.i_original_channels = - fmt_last.audio.i_physical_channels; - - msg_Dbg( p_stream, "number of audio channels for mixing changed, " - "trying to reopen the encoder for mixing %i to %i channels", - fmt_last.audio.i_channels, - id->p_encoder->fmt_in.audio.i_channels ); - - /* reload encoder */ - id->p_encoder->p_cfg = p_stream->p_sys->p_audio_cfg; - id->p_encoder->p_module = - module_Need( id->p_encoder, "encoder", p_sys->psz_aenc, true ); - if( !id->p_encoder->p_module ) + es_format_t fmt_fl32 = fmt_last; + fmt_fl32.i_codec = + fmt_fl32.audio.i_format = VLC_FOURCC('f','l','3','2'); + if( transcode_audio_filter_chain_build( p_stream, id->p_uf_chain, + &fmt_fl32, &fmt_last ) ) { - msg_Err( p_stream, "cannot find audio encoder (module:%s fourcc:%4.4s)", - p_sys->psz_aenc ? p_sys->psz_aenc : "any", - (char *)&p_sys->i_acodec ); transcode_audio_close( id ); return VLC_EGENERIC; } - id->p_encoder->fmt_in.audio.i_format = id->p_encoder->fmt_in.i_codec; - id->p_encoder->fmt_in.audio.i_bitspersample = - aout_BitsPerSample( id->p_encoder->fmt_in.i_codec ); -#else - msg_Err( p_stream, "no audio filter found for mixing from" - " %i to %i channels", fmt_last.audio.i_channels, - id->p_encoder->fmt_in.audio.i_channels ); + fmt_last = fmt_fl32; - transcode_audio_close( id ); - return VLC_EGENERIC; -#endif + id->p_uf_chain = filter_chain_New( p_stream, "audio filter2", false, + transcode_audio_filter_allocation_init, NULL, NULL ); + filter_chain_Reset( id->p_uf_chain, &fmt_last, &fmt_fl32 ); + if( filter_chain_AppendFromString( id->p_uf_chain, p_sys->psz_af2 ) > 0 ) + fmt_last = *filter_chain_GetFmtOut( id->p_uf_chain ); } - if( fmt_last.audio.i_rate != id->p_encoder->fmt_in.audio.i_rate ) + /* Load conversion filters */ + id->p_f_chain = filter_chain_New( p_stream, "audio filter2", true, + transcode_audio_filter_allocation_init, NULL, NULL ); + filter_chain_Reset( id->p_f_chain, &fmt_last, &id->p_encoder->fmt_in ); + + if( transcode_audio_filter_chain_build( p_stream, id->p_f_chain, + &id->p_encoder->fmt_in, &fmt_last ) ) { - msg_Err( p_stream, "no audio filter found for resampling from" - " %iHz to %iHz", fmt_last.audio.i_rate, - id->p_encoder->fmt_in.audio.i_rate ); -#if 0 - /* FIXME : this might work, but only if the encoder is restarted */ - id->p_encoder->fmt_in.audio.i_rate = fmt_last.audio.i_rate; - id->p_encoder->fmt_out.audio.i_rate = fmt_last.audio.i_rate; -#else transcode_audio_close( id ); return VLC_EGENERIC; -#endif } + fmt_last = id->p_encoder->fmt_in; /* FIXME: Hack for mp3 transcoding support */ if( id->p_encoder->fmt_out.i_codec == VLC_FOURCC( 'm','p','3',' ' ) ) @@ -1319,10 +1323,10 @@ static void transcode_audio_close( sout_stream_id_t *id ) id->p_encoder->p_module = NULL; /* Close filters */ - if( id->p_f_chain ) - filter_chain_Delete( id->p_f_chain ); if( id->p_uf_chain ) filter_chain_Delete( id->p_uf_chain ); + if( id->p_f_chain ) + filter_chain_Delete( id->p_f_chain ); } static int transcode_audio_process( sout_stream_t *p_stream, @@ -1363,9 +1367,13 @@ static int transcode_audio_process( sout_stream_t *p_stream, p_audio_block->i_samples = p_audio_buf->i_nb_samples; /* Run filter chain */ - p_audio_block = filter_chain_AudioFilter( id->p_f_chain, p_audio_block ); if( id->p_uf_chain ) + { p_audio_block = filter_chain_AudioFilter( id->p_uf_chain, p_audio_block ); + assert( p_audio_block ); + } + + p_audio_block = filter_chain_AudioFilter( id->p_f_chain, p_audio_block ); assert( p_audio_block ); p_audio_buf->p_buffer = p_audio_block->p_buffer; -- 1.6.1.3 From jb at videolan.org Sat Feb 28 13:52:07 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 28 Feb 2009 13:52:07 +0100 Subject: [vlc-devel] [RFC] Opening network stream In-Reply-To: References: <200902262015.33780.remi@remlab.net> <20090227095007.GD24873@papu.site> Message-ID: <20090228125207.GA23323@videolan.org> On Sat, Feb 28, 2009 at 01:50:35PM +0100, Felix Paul K?hne wrote : > I strongly agree with you guys (although I would add the "forth button > for UDP/RTP" as R?mi suggested). Well, I kind of disagre... Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Sat Feb 28 13:52:58 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 28 Feb 2009 13:52:58 +0100 Subject: [vlc-devel] commit: s/Paste MRL/Paste Location/ (Jean-Baptiste Kempf ) In-Reply-To: References: <20090227000847.E18A42FD62@skanda.videolan.org> Message-ID: <20090228125258.GB23323@videolan.org> On Sat, Feb 28, 2009 at 01:49:03PM +0100, Felix Paul K?hne wrote : > Am 27.02.2009 um 01:08 schrieb git version control: > > > + addDPStaticEntry( menu, qtr( "Paste &Location" ), > > NULL, SLOT( openUrlDialog() ), "Ctrl+V" ); > > Why don't you "Open" the location? Well, of course you'll paste the > URL in the dialogue, but in the long run, VLC will open it. So, from a > user's perspective, this would make more sense and would have the same > name as most web browser (like R?mi mentioned)... No, because this is something that takes the data from the clipboard, you don't have to paste it in it. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Sat Feb 28 13:53:58 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 28 Feb 2009 13:53:58 +0100 Subject: [vlc-devel] [PATCH] Backport fixes for audio resampling or downmixing from master. In-Reply-To: <1235825492-22228-1-git-send-email-aballier@gentoo.org> References: <1235825492-22228-1-git-send-email-aballier@gentoo.org> Message-ID: <20090228125358.GC23323@videolan.org> This solves the segfault when transcoding from a DVD on 0.9.9? On Sat, Feb 28, 2009 at 01:51:32PM +0100, Alexis Ballier wrote : > Fixed audio transcoding when channel mixing or resampling is needed. > > Signed-off-by: Alexis Ballier > --- > modules/stream_out/transcode.c | 238 +++++++++++++++++++++------------------- > 1 files changed, 123 insertions(+), 115 deletions(-) > > diff --git a/modules/stream_out/transcode.c b/modules/stream_out/transcode.c > index 7290b60..da60d1c 100644 > --- a/modules/stream_out/transcode.c > +++ b/modules/stream_out/transcode.c > @@ -1101,12 +1101,107 @@ static int transcode_audio_filter_allocation_init( filter_t *p_filter, > return VLC_SUCCESS; > } > > +static bool transcode_audio_filter_needed( const es_format_t *p_fmt1, const es_format_t *p_fmt2 ) > +{ > + if( p_fmt1->i_codec != p_fmt2->i_codec || > + p_fmt1->audio.i_channels != p_fmt2->audio.i_channels || > + p_fmt1->audio.i_rate != p_fmt2->audio.i_rate ) > + return true; > + return false; > +} > +static int transcode_audio_filter_chain_build( sout_stream_t *p_stream, filter_chain_t *p_chain, > + const es_format_t *p_dst, const es_format_t *p_src ) > +{ > + if( !transcode_audio_filter_needed( p_dst, p_src ) ) > + return VLC_SUCCESS; > + > + es_format_t current = *p_src; > + > + msg_Dbg( p_stream, "Looking for filter " > + "(%4.4s->%4.4s, channels %d->%d, rate %d->%d)", > + (const char *)&p_src->i_codec, > + (const char *)&p_dst->i_codec, > + p_src->audio.i_channels, > + p_dst->audio.i_channels, > + p_src->audio.i_rate, > + p_dst->audio.i_rate ); > + > + /* If any filter is needed, convert to fl32 */ > + if( current.i_codec != VLC_FOURCC('f','l','3','2') ) > + { > + /* First step, convert to fl32 */ > + current.i_codec = > + current.audio.i_format = VLC_FOURCC('f','l','3','2'); > + > + if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) ) > + { > + msg_Err( p_stream, "Failed to find conversion filter to fl32" ); > + return VLC_EGENERIC; > + } > + current = *filter_chain_GetFmtOut( p_chain ); > + } > + > + /* Fix sample rate */ > + if( current.audio.i_rate != p_dst->audio.i_rate ) > + { > + current.audio.i_rate = p_dst->audio.i_rate; > + if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) ) > + { > + msg_Err( p_stream, "Failed to find conversion filter for resampling" ); > + return VLC_EGENERIC; > + } > + current = *filter_chain_GetFmtOut( p_chain ); > + } > + > + /* Fix channels */ > + if( current.audio.i_channels != p_dst->audio.i_channels ) > + { > + current.audio.i_channels = p_dst->audio.i_channels; > + current.audio.i_physical_channels = p_dst->audio.i_physical_channels; > + current.audio.i_original_channels = p_dst->audio.i_original_channels; > + > + if( ( !current.audio.i_physical_channels || !current.audio.i_original_channels ) && > + current.audio.i_channels < 6 ) > + current.audio.i_physical_channels = > + current.audio.i_original_channels = pi_channels_maps[current.audio.i_channels]; > + > + if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) ) > + { > + msg_Err( p_stream, "Failed to find conversion filter for channel mixing" ); > + return VLC_EGENERIC; > + } > + current = *filter_chain_GetFmtOut( p_chain ); > + } > + > + /* And last step, convert to the requested codec */ > + if( current.i_codec != p_dst->i_codec ) > + { > + current.i_codec = p_dst->i_codec; > + if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) ) > + { > + msg_Err( p_stream, "Failed to find conversion filter to %4.4s", > + (const char*)&p_dst->i_codec); > + return VLC_EGENERIC; > + } > + current = *filter_chain_GetFmtOut( p_chain ); > + } > + > + if( transcode_audio_filter_needed( p_dst, ¤t ) ) > + { > + /* Weird case, a filter has side effects, doomed */ > + msg_Err( p_stream, "Failed to create a valid audio filter chain" ); > + return VLC_EGENERIC; > + } > + > + msg_Dbg( p_stream, "Got complete audio filter chain" ); > + return VLC_SUCCESS; > +} > + > static int transcode_audio_new( sout_stream_t *p_stream, > sout_stream_id_t *id ) > { > sout_stream_sys_t *p_sys = p_stream->p_sys; > es_format_t fmt_last; > - int i; > > /* > * Open decoder > @@ -1172,130 +1267,39 @@ static int transcode_audio_new( sout_stream_t *p_stream, > id->p_encoder->fmt_in.audio.i_bitspersample = > aout_BitsPerSample( id->p_encoder->fmt_in.i_codec ); > > - /* Init filter chain */ > - id->p_f_chain = filter_chain_New( p_stream, "audio filter2", true, > - transcode_audio_filter_allocation_init, NULL, NULL ); > - filter_chain_Reset( id->p_f_chain, &fmt_last, &id->p_encoder->fmt_in ); > - > - /* Load conversion filters */ > - if( fmt_last.audio.i_channels != id->p_encoder->fmt_in.audio.i_channels || > - fmt_last.audio.i_rate != id->p_encoder->fmt_in.audio.i_rate ) > - { > - /* We'll have to go through fl32 first */ > - fmt_last.i_codec = fmt_last.audio.i_format = VLC_FOURCC('f','l','3','2'); > - fmt_last.audio.i_bitspersample = aout_BitsPerSample( fmt_last.i_codec ); > - filter_chain_AppendFilter( id->p_f_chain, NULL, NULL, NULL, &fmt_last ); > - fmt_last = *filter_chain_GetFmtOut( id->p_f_chain ); > - } > - > - for( i = 0; i < 4; i++ ) > - { > - if( (fmt_last.audio.i_channels != > - id->p_encoder->fmt_in.audio.i_channels) || > - (fmt_last.audio.i_rate != id->p_encoder->fmt_in.audio.i_rate) || > - (fmt_last.i_codec != id->p_encoder->fmt_in.i_codec) ) > - { > - msg_Dbg( p_stream, "Looking for filter " > - "(%4.4s->%4.4s, channels %d->%d, rate %d->%d)", > - (char *)&fmt_last.i_codec, > - (char *)&id->p_encoder->fmt_in.i_codec, > - fmt_last.audio.i_channels, > - id->p_encoder->fmt_in.audio.i_channels, > - fmt_last.audio.i_rate, > - id->p_encoder->fmt_in.audio.i_rate ); > - filter_chain_AppendFilter( id->p_f_chain, NULL, NULL, > - &fmt_last, &id->p_encoder->fmt_in ); > - fmt_last = *filter_chain_GetFmtOut( id->p_f_chain ); > - } > - else break; > - } > - > - /* Final checks to see if conversions were successful */ > - if( fmt_last.i_codec != id->p_encoder->fmt_in.i_codec ) > - { > - msg_Err( p_stream, "no audio filter found " > - "(%4.4s->%4.4s, channels %d->%d, rate %d->%d)", > - (char *)&fmt_last.i_codec, > - (char *)&id->p_encoder->fmt_in.i_codec, > - fmt_last.audio.i_channels, > - id->p_encoder->fmt_in.audio.i_channels, > - fmt_last.audio.i_rate, > - id->p_encoder->fmt_in.audio.i_rate ); > - transcode_audio_close( id ); > - return VLC_EGENERIC; > - } > - > - /* Load user specified audio filters now */ > + /* Load user specified audio filters */ > if( p_sys->psz_af2 ) > { > - id->p_uf_chain = filter_chain_New( p_stream, "audio filter2", false, > - transcode_audio_filter_allocation_init, NULL, NULL ); > - filter_chain_Reset( id->p_uf_chain, &fmt_last, &id->p_encoder->fmt_in ); > - filter_chain_AppendFromString( id->p_uf_chain, p_sys->psz_af2 ); > - fmt_last = *filter_chain_GetFmtOut( id->p_uf_chain ); > - } > - > - if( fmt_last.audio.i_channels != id->p_encoder->fmt_in.audio.i_channels ) > - { > -#if 1 > - module_Unneed( id->p_encoder, id->p_encoder->p_module ); > - id->p_encoder->p_module = NULL; > - > - /* This might work, but only if the encoder is restarted */ > - id->p_encoder->fmt_in.audio.i_channels = fmt_last.audio.i_channels; > - id->p_encoder->fmt_out.audio.i_channels = fmt_last.audio.i_channels; > - > - id->p_encoder->fmt_in.audio.i_physical_channels = > - id->p_encoder->fmt_in.audio.i_original_channels = > - fmt_last.audio.i_physical_channels; > - id->p_encoder->fmt_out.audio.i_physical_channels = > - id->p_encoder->fmt_out.audio.i_original_channels = > - fmt_last.audio.i_physical_channels; > - > - msg_Dbg( p_stream, "number of audio channels for mixing changed, " > - "trying to reopen the encoder for mixing %i to %i channels", > - fmt_last.audio.i_channels, > - id->p_encoder->fmt_in.audio.i_channels ); > - > - /* reload encoder */ > - id->p_encoder->p_cfg = p_stream->p_sys->p_audio_cfg; > - id->p_encoder->p_module = > - module_Need( id->p_encoder, "encoder", p_sys->psz_aenc, true ); > - if( !id->p_encoder->p_module ) > + es_format_t fmt_fl32 = fmt_last; > + fmt_fl32.i_codec = > + fmt_fl32.audio.i_format = VLC_FOURCC('f','l','3','2'); > + if( transcode_audio_filter_chain_build( p_stream, id->p_uf_chain, > + &fmt_fl32, &fmt_last ) ) > { > - msg_Err( p_stream, "cannot find audio encoder (module:%s fourcc:%4.4s)", > - p_sys->psz_aenc ? p_sys->psz_aenc : "any", > - (char *)&p_sys->i_acodec ); > transcode_audio_close( id ); > return VLC_EGENERIC; > } > - id->p_encoder->fmt_in.audio.i_format = id->p_encoder->fmt_in.i_codec; > - id->p_encoder->fmt_in.audio.i_bitspersample = > - aout_BitsPerSample( id->p_encoder->fmt_in.i_codec ); > -#else > - msg_Err( p_stream, "no audio filter found for mixing from" > - " %i to %i channels", fmt_last.audio.i_channels, > - id->p_encoder->fmt_in.audio.i_channels ); > + fmt_last = fmt_fl32; > > - transcode_audio_close( id ); > - return VLC_EGENERIC; > -#endif > + id->p_uf_chain = filter_chain_New( p_stream, "audio filter2", false, > + transcode_audio_filter_allocation_init, NULL, NULL ); > + filter_chain_Reset( id->p_uf_chain, &fmt_last, &fmt_fl32 ); > + if( filter_chain_AppendFromString( id->p_uf_chain, p_sys->psz_af2 ) > 0 ) > + fmt_last = *filter_chain_GetFmtOut( id->p_uf_chain ); > } > > - if( fmt_last.audio.i_rate != id->p_encoder->fmt_in.audio.i_rate ) > + /* Load conversion filters */ > + id->p_f_chain = filter_chain_New( p_stream, "audio filter2", true, > + transcode_audio_filter_allocation_init, NULL, NULL ); > + filter_chain_Reset( id->p_f_chain, &fmt_last, &id->p_encoder->fmt_in ); > + > + if( transcode_audio_filter_chain_build( p_stream, id->p_f_chain, > + &id->p_encoder->fmt_in, &fmt_last ) ) > { > - msg_Err( p_stream, "no audio filter found for resampling from" > - " %iHz to %iHz", fmt_last.audio.i_rate, > - id->p_encoder->fmt_in.audio.i_rate ); > -#if 0 > - /* FIXME : this might work, but only if the encoder is restarted */ > - id->p_encoder->fmt_in.audio.i_rate = fmt_last.audio.i_rate; > - id->p_encoder->fmt_out.audio.i_rate = fmt_last.audio.i_rate; > -#else > transcode_audio_close( id ); > return VLC_EGENERIC; > -#endif > } > + fmt_last = id->p_encoder->fmt_in; > > /* FIXME: Hack for mp3 transcoding support */ > if( id->p_encoder->fmt_out.i_codec == VLC_FOURCC( 'm','p','3',' ' ) ) > @@ -1319,10 +1323,10 @@ static void transcode_audio_close( sout_stream_id_t *id ) > id->p_encoder->p_module = NULL; > > /* Close filters */ > - if( id->p_f_chain ) > - filter_chain_Delete( id->p_f_chain ); > if( id->p_uf_chain ) > filter_chain_Delete( id->p_uf_chain ); > + if( id->p_f_chain ) > + filter_chain_Delete( id->p_f_chain ); > } > > static int transcode_audio_process( sout_stream_t *p_stream, > @@ -1363,9 +1367,13 @@ static int transcode_audio_process( sout_stream_t *p_stream, > p_audio_block->i_samples = p_audio_buf->i_nb_samples; > > /* Run filter chain */ > - p_audio_block = filter_chain_AudioFilter( id->p_f_chain, p_audio_block ); > if( id->p_uf_chain ) > + { > p_audio_block = filter_chain_AudioFilter( id->p_uf_chain, p_audio_block ); > + assert( p_audio_block ); > + } > + > + p_audio_block = filter_chain_AudioFilter( id->p_f_chain, p_audio_block ); > assert( p_audio_block ); > > p_audio_buf->p_buffer = p_audio_block->p_buffer; > -- > 1.6.1.3 > > _______________________________________________ > vlc-devel mailing list > To unsubscribe or modify your subscription options: > http://mailman.videolan.org/listinfo/vlc-devel -- Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From aballier at gentoo.org Sat Feb 28 13:54:36 2009 From: aballier at gentoo.org (Alexis Ballier) Date: Sat, 28 Feb 2009 13:54:36 +0100 Subject: [vlc-devel] [PATCH] Backport fixes for audio resampling or downmixing from master. In-Reply-To: <1235825492-22228-1-git-send-email-aballier@gentoo.org> References: <1235825492-22228-1-git-send-email-aballier@gentoo.org> Message-ID: <20090228135436.4aa64e45@gentoo.org> On Sat, 28 Feb 2009 13:51:32 +0100 Alexis Ballier wrote: > From: Laurent Aimar > > Fixed audio transcoding when channel mixing or resampling is needed. > > Signed-off-by: Alexis Ballier > --- my git-fu sucks so this is the best I've been able to get from cherry-picking the commit and porting it, sorry if this is a bit messed up :/ and some references: https://bugs.gentoo.org/show_bug.cgi?id=260242 Alexis. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: not available URL: From aballier at gentoo.org Sat Feb 28 13:56:27 2009 From: aballier at gentoo.org (Alexis Ballier) Date: Sat, 28 Feb 2009 13:56:27 +0100 Subject: [vlc-devel] [PATCH] Backport fixes for audio resampling or downmixing from master. In-Reply-To: <20090228125358.GC23323@videolan.org> References: <1235825492-22228-1-git-send-email-aballier@gentoo.org> <20090228125358.GC23323@videolan.org> Message-ID: <20090228135627.0ab70811@gentoo.org> On Sat, 28 Feb 2009 13:53:58 +0100 Jean-Baptiste Kempf wrote: > This solves the segfault when transcoding from a DVD on 0.9.9? I haven't tried with a DVD but here this solves the segfault when transcoding from a mkv with 5.1 DTS on 0.9.9. Alexis. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: not available URL: From fkuehne.videolan at googlemail.com Sat Feb 28 13:57:10 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Sat, 28 Feb 2009 13:57:10 +0100 Subject: [vlc-devel] commit: s/Paste MRL/Paste Location/ (Jean-Baptiste Kempf ) In-Reply-To: <20090228125258.GB23323@videolan.org> References: <20090227000847.E18A42FD62@skanda.videolan.org> <20090228125258.GB23323@videolan.org> Message-ID: Am 28.02.2009 um 13:52 schrieb Jean-Baptiste Kempf: > On Sat, Feb 28, 2009 at 01:49:03PM +0100, Felix Paul K?hne wrote : >> Am 27.02.2009 um 01:08 schrieb git version control: >> >>> + addDPStaticEntry( menu, qtr( "Paste &Location" ), >>> NULL, SLOT( openUrlDialog() ), "Ctrl+V" ); >> >> Why don't you "Open" the location? Well, of course you'll paste the >> URL in the dialogue, but in the long run, VLC will open it. So, >> from a >> user's perspective, this would make more sense and would have the >> same >> name as most web browser (like R?mi mentioned)... > > No, because this is something that takes the data from the clipboard, > you don't have to paste it in it. Oh, I would never have guessed that from this menu title. Seriously. Perhaps, using something like "Open URL/Location from Clipboard" might be a better naming? Best regards, Felix From jb at videolan.org Sat Feb 28 13:59:00 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 28 Feb 2009 13:59:00 +0100 Subject: [vlc-devel] commit: s/Paste MRL/Paste Location/ (Jean-Baptiste Kempf ) In-Reply-To: References: <20090227000847.E18A42FD62@skanda.videolan.org> <20090228125258.GB23323@videolan.org> Message-ID: <20090228125900.GA25448@videolan.org> On Sat, Feb 28, 2009 at 01:57:10PM +0100, Felix Paul K?hne wrote : > Oh, I would never have guessed that from this menu title. Seriously. > Perhaps, using something like "Open URL/Location from Clipboard" might > be a better naming? Ctrl+V is used for Paste, and this is exactly what happens here, you select anything, you Ctrl+C, in VLC you Ctrl+V and set Ok. That is why it is named paste and not open. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From rem at videolan.org Sat Feb 28 14:08:01 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Sat, 28 Feb 2009 15:08:01 +0200 Subject: [vlc-devel] commit: s/Paste MRL/Paste Location/ (Jean-Baptiste Kempf ) In-Reply-To: <20090228125900.GA25448@videolan.org> References: <20090227000847.E18A42FD62@skanda.videolan.org> <20090228125900.GA25448@videolan.org> Message-ID: <200902281508.02031.rem@videolan.org> Le samedi 28 f?vrier 2009 14:59:00 Jean-Baptiste Kempf, vous avez ?crit?: > On Sat, Feb 28, 2009 at 01:57:10PM +0100, Felix Paul K?hne wrote : > > Oh, I would never have guessed that from this menu title. Seriously. > > Perhaps, using something like "Open URL/Location from Clipboard" might > > be a better naming? > > Ctrl+V is used for Paste, and this is exactly what happens here, you > select anything, you Ctrl+C, in VLC you Ctrl+V and set Ok. No. Normally Ctrl+V pastes. Immediately. Here, Ctrl+V opens the "paste" dialog. Hence, that argument bears little to no value to me. > That is why it is named paste and not open. That's not the point. We _need_ an Open URL or Open Location box, because it is the ONE single SANE way to open HTTP/RTSP/MMS streams. It simply is. And once we have that, Paste MRL/Paste URL will become totally redumdant. How can you pretend to argue for consistency with other softwares, then use the argument to make things that is precisely inconsistent with those? -- R?mi Denis-Courmont From rem at videolan.org Sat Feb 28 14:17:50 2009 From: rem at videolan.org (=?iso-8859-1?q?R=E9mi_Denis-Courmont?=) Date: Sat, 28 Feb 2009 15:17:50 +0200 Subject: [vlc-devel] [RFC] Opening network stream In-Reply-To: <20090228125207.GA23323@videolan.org> References: <200902262015.33780.remi@remlab.net> <20090228125207.GA23323@videolan.org> Message-ID: <200902281517.50839.rem@videolan.org> Le samedi 28 f?vrier 2009 14:52:07 Jean-Baptiste Kempf, vous avez ?crit?: > On Sat, Feb 28, 2009 at 01:50:35PM +0100, Felix Paul K?hne wrote : > > I strongly agree with you guys (although I would add the "forth button > > for UDP/RTP" as R?mi suggested). > > Well, I kind of disagre... Impressive arguments, you have. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From jb at videolan.org Sat Feb 28 14:21:54 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 28 Feb 2009 14:21:54 +0100 Subject: [vlc-devel] [RFC] Opening network stream In-Reply-To: <200902281517.50839.rem@videolan.org> References: <200902262015.33780.remi@remlab.net> <20090228125207.GA23323@videolan.org> <200902281517.50839.rem@videolan.org> Message-ID: <20090228132154.GA30194@videolan.org> On Sat, Feb 28, 2009 at 03:17:50PM +0200, R?mi Denis-Courmont wrote : > Le samedi 28 f?vrier 2009 14:52:07 Jean-Baptiste Kempf, vous avez ?crit?: > > On Sat, Feb 28, 2009 at 01:50:35PM +0100, Felix Paul K?hne wrote : > > > I strongly agree with you guys (although I would add the "forth button > > > for UDP/RTP" as R?mi suggested). > > > > Well, I kind of disagre... > > Impressive arguments, you have. Maybe I don't want to argue with you. One argument is that open dialog let you convert/stream while Paste URL doesn't. Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From jb at videolan.org Sat Feb 28 14:27:41 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 28 Feb 2009 14:27:41 +0100 Subject: [vlc-devel] commit: s/Paste MRL/Paste Location/ (Jean-Baptiste Kempf ) In-Reply-To: <200902281508.02031.rem@videolan.org> References: <20090227000847.E18A42FD62@skanda.videolan.org> <20090228125900.GA25448@videolan.org> <200902281508.02031.rem@videolan.org> Message-ID: <20090228132741.GA31084@videolan.org> On Sat, Feb 28, 2009 at 03:08:01PM +0200, R?mi Denis-Courmont wrote : > stuffs Ok, proposal: 1) Simplify the normal open dialog to have just a LineEdit to paste a MRL. 2) Change the Ctrl+V to: - automatically play if nothing is played, - enqueue if something is played at the same time. Does it suits better? Best Regards, -- Jean-Baptiste Kempf http://www.jbkempf.com/ From fkuehne.videolan at googlemail.com Sat Feb 28 14:33:27 2009 From: fkuehne.videolan at googlemail.com (=?ISO-8859-1?Q?Felix_Paul_K=FChne?=) Date: Sat, 28 Feb 2009 14:33:27 +0100 Subject: [vlc-devel] [RFC] Opening network stream In-Reply-To: <20090228132154.GA30194@videolan.org> References: <200902262015.33780.remi@remlab.net> <20090228125207.GA23323@videolan.org> <200902281517.50839.rem@videolan.org> <20090228132154.GA30194@videolan.org> Message-ID: <7D97EEFF-FD0E-4222-B7BA-E007BFEB5D09@gmail.com> Am 28.02.2009 um 14:21 schrieb Jean-Baptiste Kempf: > On Sat, Feb 28, 2009 at 03:17:50PM +0200, R?mi Denis-Courmont wrote : >> Le samedi 28 f?vrier 2009 14:52:07 Jean-Baptiste Kempf, vous avez >> ?crit : >>> On Sat, Feb 28, 2009 at 01:50:35PM +0100, Felix Paul K?hne wrote : >>>> I strongly agree with you guys (although I would add the "forth >>>> button >>>> for UDP/RTP" as R?mi suggested). >>> >>> Well, I kind of disagre... >> >> Impressive arguments, you have. > > Maybe I don't want to argue with you. Yes, let's start to ignore mails with long texts and good arguments just because you dislike the author. That's a great idea... > One argument is that open dialog let you convert/stream while Paste > URL > doesn't. As far as I understood, one of R?mi's main arguments is that that the current Open Network panel is bound to be used in a wrong way by most users. It's confusing and unnecessarily complicated. 1) you can ditch the protocol popup altogether. It's useless for most protocols. A TextField to paste the URL in is enough and _in sync_ with most media players. 2) All one may need the current UI for RTP/UDP-TS, but this should be hidden by default. Result: you get a clean dialogue with Sout support, but don't need this paste location thingie, which would be really off-standard if it remains named this way. Nobody pastes stuff through "File" (or "Media") menu. Additionally, don't you have any text fields in the Qt4 interface where you would like copy&paste? Well, you can't now, because cmd-v is taken by the Media menu's facility to open network streams. This even confuses me, although I don't really think to be a PC starter (virtually like everyone on this list). Best regards, Felix From jb at videolan.org Sat Feb 28 14:40:33 2009 From: jb at videolan.org (Jean-Baptiste Kempf) Date: Sat, 28 Feb 2009 14:40:33 +0100 Subject: [vlc-devel] [RFC] Opening network stream In-Reply-To: <7D97EEFF-FD0E-4222-B7BA-E007BFEB5D09@gmail.com> References: <200902262015.33780.remi@remlab.net> <20090228125207.GA23323@videolan.org> <200902281517.50839.rem@videolan.org> <20090228132154.GA30194@videolan.org> <7D97EEFF-FD0E-4222-B7BA-E007BFEB5D09@gmail.com> Message-ID: <20090228134032.GA32516@videolan.org> On Sat, Feb 28, 2009 at 02:33:27PM +0100, Felix Paul K?hne wrote : > > Maybe I don't want to argue with you. > Yes, let's start to ignore mails with long texts and good arguments > just because you dislike the author. That's a great idea... I don't dislike the author, I just am pissed off with attacks on me, lately. > > One argument is that open dialog let you convert/stream while Paste > > URL > > doesn't. > As far as I understood, one of R?mi's main arguments is that that the > current Open Network panel is bound to be used in a wrong way by most > users. It's confusing and unnecessarily complicated. > 1) you can ditch the protocol popup altogether. It's useless for most > protocols. A TextField to paste the URL in is enough and _in sync_ > with most media players. > 2) All one may need the current UI for RTP/UDP-TS, but this should be > hidden by default. See my other mail. Simplification of the open network tab is NOT ditching it, as it was suggested. > Result: you get a clean dialogue with Sout support, but don't need > this paste location thingie, which would be really off-standard if it > remains named this way. Nobody pastes stuff through "File" (or > "Media") menu. Additionally, don't you have any text fields in the Qt4 Why do you have it on mac? > interface where you would like copy&paste? Well, you can't now, > because cmd-v is taken by the Media menu's facility to open network > streams. This even confuses me, although I don't really think to be a > PC starter (virtually like everyone on this list). Of course not, since Qt does the thing correctly, if you are on a widget that has a paste capability, it will get the event before, because only in last resort, the menu will get the event. -- Jean-Baptiste Kempf http://www.jbkempf.com/ From git at videolan.org Sat Feb 28 15:16:16 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 15:16:16 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Hard_code_plugin_path_and_http_pa?= =?utf-8?q?th_in_static_VLC_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228141616.2A2D92FF85@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 16:10:49 2009 +0200| [0e1e17e1b8f59fcb95897a7cf53e078c19430eb3] | committer: R?mi Denis-Courmont Hard code plugin path and http path in static VLC This allows using the http interface directly when builddir != srcdir. This is needed to get rid of the ./vlc script. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0e1e17e1b8f59fcb95897a7cf53e078c19430eb3 --- bin/Makefile.am | 4 ++++ bin/vlc.c | 24 +++++++++++++++++------- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/bin/Makefile.am b/bin/Makefile.am index aa404a2..bc35922 100644 --- a/bin/Makefile.am +++ b/bin/Makefile.am @@ -30,6 +30,10 @@ vlc_LDFLAGS = `$(VLC_CONFIG) --ldflags vlc` vlc_LDADD = ../src/libvlc.la `$(VLC_CONFIG) -libs vlc` vlc_static_SOURCES = $(vlc_SOURCES) +vlc_static_CFLAGS = $(AM_CFLAGS) \ + -DTOP_BUILDDIR=\"$$(cd "$(top_builddir)"; pwd)\" \ + -DTOP_SRCDIR=\"$$(cd "$(top_srcdir)"; pwd)\" \ + $(NULL) vlc_static_DEPENDENCIES = $(vlc_DEPENDENCIES) vlc_static_LDADD = $(vlc_LDADD) vlc_static_LDFLAGS = $(vlc_LDFLAGS) -no-install -static diff --git a/bin/vlc.c b/bin/vlc.c index ba3b040..3a15722 100644 --- a/bin/vlc.c +++ b/bin/vlc.c @@ -120,8 +120,20 @@ int main( int i_argc, const char *ppsz_argv[] ) sigdelset (&set, SIGCHLD); /* Note that FromLocale() can be used before libvlc is initialized */ - for (int i = 0; i < i_argc; i++) - if ((ppsz_argv[i] = FromLocale (ppsz_argv[i])) == NULL) + const char *argv[i_argc + 3]; + int argc = 0; + +#ifdef TOP_BUILDDIR + argv[argc++] = FromLocale ("--plugin-path="TOP_BUILDDIR"/modules"); +#endif +#ifdef TOP_SRCDIR +# ifdef ENABLE_HTTPD + argv[argc++] = FromLocale ("--http-src="TOP_SRCDIR"/share/http"); +# endif +#endif + + for (int i = 1; i < i_argc; i++) + if ((argv[argc++] = FromLocale (ppsz_argv[i])) == NULL) return 1; // BOOM! libvlc_exception_t ex, dummy; @@ -129,9 +141,7 @@ int main( int i_argc, const char *ppsz_argv[] ) libvlc_exception_init (&dummy); /* Initialize libvlc */ - int i_argc_real = i_argc ? i_argc - 1 : 0; - const char **ppsz_argv_real = i_argc ? &ppsz_argv[1] : ppsz_argv; - libvlc_instance_t *vlc = libvlc_new (i_argc_real, ppsz_argv_real, &ex); + libvlc_instance_t *vlc = libvlc_new (argc, argv, &ex); if (vlc != NULL) { @@ -153,8 +163,8 @@ int main( int i_argc, const char *ppsz_argv[] ) libvlc_exception_clear (&ex); libvlc_exception_clear (&dummy); - for (int i = 0; i < i_argc; i++) - LocaleFree (ppsz_argv[i]); + for (int i = 0; i < argc; i++) + LocaleFree (argv[i]); return i_ret; } From git at videolan.org Sat Feb 28 15:16:16 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 15:16:16 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Use_a_symbolic_link_instead_of_a_?= =?utf-8?q?shell_script_for_static_vlc_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228141616.3DE3B2FFB5@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 16:14:44 2009 +0200| [64a460aad5c8458343d4a98d4c7c9f22a883dbb9] | committer: R?mi Denis-Courmont Use a symbolic link instead of a shell script for static vlc This allows invoking debuggers directly from the command line again! > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=64a460aad5c8458343d4a98d4c7c9f22a883dbb9 --- Makefile.am | 8 ++------ 1 files changed, 2 insertions(+), 6 deletions(-) diff --git a/Makefile.am b/Makefile.am index c2f09b5..378b34a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -397,12 +397,8 @@ if BUILD_VLC noinst_SCRIPTS += vlc$(EXEEXT) endif -vlc$(EXEEXT): Makefile.am - rm -f -- vlc vlc.tmp - echo '#! /bin/sh' > vlc.tmp - echo 'exec "$$(dirname "$$0")/bin/vlc-static$(EXEEXT)" "--plugin-path=$$(dirname "$$0")/modules" "$$@"' >> vlc.tmp - chmod +x vlc.tmp - mv -f -- vlc.tmp vlc +vlc$(EXEEXT): + ln -sf bin/vlc-static$(EXEEXT) vlc$(EXEEXT) if HAVE_DARWIN if BUILD_VLC From remi at remlab.net Sat Feb 28 15:22:45 2009 From: remi at remlab.net (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 28 Feb 2009 16:22:45 +0200 Subject: [vlc-devel] buildbot failure in VLC media player on I386-Sid-Trunk In-Reply-To: <20090228141825.9D71D33E8E@altair.via.ecp.fr> References: <20090228141825.9D71D33E8E@altair.via.ecp.fr> Message-ID: <200902281622.45832.remi@remlab.net> Le samedi 28 f?vrier 2009 16:18:25, vous avez ?crit?: > The Buildbot has detected a new failure of I386-Sid-Trunk on VLC media > player. Full details are available at: > http://buildbot.videolan.org/builders/I386-Sid-Trunk/builds/157 > > Buildbot URL: http://buildbot.videolan.org/ > > Buildslave for this Build: altair-32-builder > > Build Reason: > Build Source Stamp: [branch master] HEAD > Blamelist: R?mi Denis-Courmont > > BUILD FAILED: failed Checkout master git:// access seems to be broken. This affects at least altair and JPD's machine (he filed a bug). -- R?mi Denis-Courmont http://www.remlab.net/ From rem at videolan.org Sat Feb 28 15:37:11 2009 From: rem at videolan.org (=?utf-8?q?R=C3=A9mi_Denis-Courmont?=) Date: Sat, 28 Feb 2009 16:37:11 +0200 Subject: [vlc-devel] =?utf-8?q?commit=3A__Use_a_framebuffer_whose_visual_m?= =?utf-8?q?atches_that_of_the_window_-_refs_=231672_=28_R=C3=A9mi_D?= =?utf-8?q?enis-Courmont_=29?= In-Reply-To: References: <20090224175150.688C52FE39@skanda.videolan.org> Message-ID: <200902281637.12155.rem@videolan.org> Le mercredi 25 f?vrier 2009 09:46:40 R?mi Denis-Courmont, vous avez ?crit?: > I'd like those who had OpenGL crash to retry... If it still does not work, > please provide your xdpyinfo and glxinfo -t. Not a single response. I'll close the bug. -- R?mi Denis-Courmont http://git.remlab.net/cgi-bin/gitweb.cgi?p=vlc-courmisch.git;a=summary From pdherbemont at free.fr Sat Feb 28 16:28:16 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Sat, 28 Feb 2009 16:28:16 +0100 Subject: [vlc-devel] [RFC] Opening network stream In-Reply-To: <20090228132154.GA30194@videolan.org> References: <200902262015.33780.remi@remlab.net> <20090228125207.GA23323@videolan.org> <200902281517.50839.rem@videolan.org> <20090228132154.GA30194@videolan.org> Message-ID: On Sat, Feb 28, 2009 at 2:21 PM, Jean-Baptiste Kempf wrote: > On Sat, Feb 28, 2009 at 03:17:50PM +0200, R?mi Denis-Courmont wrote : >> Le samedi 28 f?vrier 2009 14:52:07 Jean-Baptiste Kempf, vous avez ?crit?: >> > On Sat, Feb 28, 2009 at 01:50:35PM +0100, Felix Paul K?hne wrote : >> > > I strongly agree with you guys (although I would add the "forth button >> > > for UDP/RTP" as R?mi suggested). >> > >> > Well, I kind of disagre... >> >> Impressive arguments, you have. > > Maybe I don't want to argue with you. > > One argument is that open dialog let you convert/stream while Paste URL > doesn't. An open URL dialog is not a very natural place to convert or stream file. Don't we have a streaming pane for that? Pierre. From pdherbemont at free.fr Sat Feb 28 16:30:52 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Sat, 28 Feb 2009 16:30:52 +0100 Subject: [vlc-devel] Different code paths between libvlc and VideoLan player? In-Reply-To: <49A782EA.6000108@gmail.com> References: <49A782EA.6000108@gmail.com> Message-ID: On Fri, Feb 27, 2009 at 7:06 AM, Jonathan Wong wrote: > Hi all, > > How is it that the media length and current time (position in millisec) works in VideoLan player, > but not in libvlc? I thought the entire VideoLan player was built on libvlc? > > Procedures like libvlc_media_player_get_length, libvlc_media_player_get_time don't work correctly > (with .mpg). ?However, the media current time and media total length are displayed perfectly fine > in VideoLan player for all media types! > > I've started looking into the QT gui codes, and tracing down to the stuff behind it. > > But, can anyone here help me get started quickly in unraveling vlc? I could help in its > development. I have a 6-month project all to do with videos, and I do envision making quite a bit > of contribution to vlc. This is likely a bug in libvlc, feel free to send a patch for it. It's true that vlc's UI doesn't use libvlc_media_player_get_time though they should share a common root. Pierre. From pdherbemont at free.fr Sat Feb 28 16:33:13 2009 From: pdherbemont at free.fr (Pierre d'Herbemont) Date: Sat, 28 Feb 2009 16:33:13 +0100 Subject: [vlc-devel] Different code paths between libvlc and VideoLan player? In-Reply-To: References: <49A782EA.6000108@gmail.com> Message-ID: On Sat, Feb 28, 2009 at 4:30 PM, Pierre d'Herbemont wrote: > On Fri, Feb 27, 2009 at 7:06 AM, Jonathan Wong wrote: >> Hi all, >> >> How is it that the media length and current time (position in millisec) works in VideoLan player, >> but not in libvlc? I thought the entire VideoLan player was built on libvlc? >> >> Procedures like libvlc_media_player_get_length, libvlc_media_player_get_time don't work correctly >> (with .mpg). ?However, the media current time and media total length are displayed perfectly fine >> in VideoLan player for all media types! >> >> I've started looking into the QT gui codes, and tracing down to the stuff behind it. >> >> But, can anyone here help me get started quickly in unraveling vlc? I could help in its >> development. I have a 6-month project all to do with videos, and I do envision making quite a bit >> of contribution to vlc. > > This is likely a bug in libvlc, feel free to send a patch for it. It's > true that vlc's UI doesn't use libvlc_media_player_get_time though > they should share a common root. Oh, and you should indicate the libvlc version you use. Pierre. From git at videolan.org Sat Feb 28 16:43:30 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 16:43:30 +0100 (CET) Subject: [vlc-devel] commit: Use !isVisible when needed ISO isHidden (Jean-Baptiste Kempf ) Message-ID: <20090228154330.52F5E2FF5A@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 16:19:50 2009 +0100| [86de3606cf515bf0480dd567f31e100a4d563a23] | committer: Jean-Baptiste Kempf Use !isVisible when needed ISO isHidden > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=86de3606cf515bf0480dd567f31e100a4d563a23 --- modules/gui/qt4/components/interface_widgets.cpp | 2 +- modules/gui/qt4/main_interface.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/gui/qt4/components/interface_widgets.cpp b/modules/gui/qt4/components/interface_widgets.cpp index e9a26db..dca2b0c 100644 --- a/modules/gui/qt4/components/interface_widgets.cpp +++ b/modules/gui/qt4/components/interface_widgets.cpp @@ -127,7 +127,7 @@ void VideoWidget::SetSizing( unsigned int w, unsigned int h ) msg_Dbg( p_intf, "Video is resizing to: %i %i", w, h ); videoSize.rwidth() = w; videoSize.rheight() = h; - if( isHidden() ) show(); + if( !isVisible() ) show(); updateGeometry(); // Needed for deinterlace } diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index c8f903e..1234634 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -1129,7 +1129,7 @@ void MainInterface::customEvent( QEvent *event ) void MainInterface::keyPressEvent( QKeyEvent *e ) { if( ( e->modifiers() & Qt::ControlModifier ) && ( e->key() == Qt::Key_H ) - && menuBar()->isHidden() ) + && !menuBar()->isVisible() ) { toggleMinimalView( false ); e->accept(); From git at videolan.org Sat Feb 28 16:43:30 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 16:43:30 +0100 (CET) Subject: [vlc-devel] commit: Qt: update comment in menus.cpp (Jean-Baptiste Kempf ) Message-ID: <20090228154330.6FC9B2FFC3@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 16:42:28 2009 +0100| [52422885b771f6e2893a1545970e0896476caef8] | committer: Jean-Baptiste Kempf Qt: update comment in menus.cpp > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=52422885b771f6e2893a1545970e0896476caef8 --- modules/gui/qt4/menus.cpp | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp index 8ffa151..bf69ed8 100644 --- a/modules/gui/qt4/menus.cpp +++ b/modules/gui/qt4/menus.cpp @@ -1139,7 +1139,8 @@ void QVLCMenu::UpdateItem( intf_thread_t *p_intf, QMenu *menu, } /* Check the type of the object variable */ - /* What is the following HACK needed for? */ + /* This HACK is needed so we have a radio button for audio and video tracks + instread of a checkbox */ if( !strcmp( psz_var, "audio-es" ) || !strcmp( psz_var, "video-es" ) ) i_type = VLC_VAR_INTEGER | VLC_VAR_HASCHOICE; From buhochileno at gmail.com Sat Feb 28 18:27:55 2009 From: buhochileno at gmail.com (buhochileno at gmail.com) Date: Sat, 28 Feb 2009 14:27:55 -0300 Subject: [vlc-devel] look and stream from IP Camera Message-ID: <49A9741B.5010106@gmail.com> Hi guys, sorry if this question is in the wronge list... Two question about streaming from IP cameras.. First I have a really old and bad IP camera that make a stream in a propietarie format, but I can get the last picture that the camera take from the camera URL like http://mycamera/cgi-bin?video.jpg So my question is if I can make a stream from this images?, looking for something I find the "--fake-file-reload" option, with I think that may be can help, is posible to make a regular rstp or udp stream from this images (is like vlc take this images from time to time a put it in the stream)? Second question is for a kind of better camera, this one can make a mjpeg stream, here I think that is kind of more easy for vlc to show the mjpeg stream from the camera, bit I don't have any idea about what options to use/set, any examples to begin to try? Really thanks for any tips.. Mauricio From git at videolan.org Sat Feb 28 18:47:09 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 18:47:09 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_non-working_and_hardly_doc?= =?utf-8?q?umented_RRD_support_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228174709.AEDD52FF9B@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 19:15:59 2009 +0200| [b007563549b757a684bc619a472d8897d3b8c6ad] | committer: R?mi Denis-Courmont Remove non-working and hardly documented RRD support > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b007563549b757a684bc619a472d8897d3b8c6ad --- doc/rrd-howto.txt | 14 ---------- modules/misc/logger.c | 67 +----------------------------------------------- 2 files changed, 2 insertions(+), 79 deletions(-) diff --git a/doc/rrd-howto.txt b/doc/rrd-howto.txt deleted file mode 100644 index 007005b..0000000 --- a/doc/rrd-howto.txt +++ /dev/null @@ -1,14 +0,0 @@ -# Create the exchange file -touch rrd - -# Create the RRD file -rrdtool create vlc.rrd --step 1 "DS:in:GAUGE:10:0:30000" "DS:demux:GAUGE:10:0:30000" "DS:out:GAUGE:10:0:30000" "RRA:AVERAGE:0,5:1:86400" - -# Start "listening" the RRD file -tail -f rrd |while read in;do echo $in;rrdtool update vlc.rrd `echo $in`;done - -# Start vlc -vlc normal_vlc_stuff --extraintf logger --rrd-file rrd - -# Graph the last 5 minutes (300 seconds) -rrdtool graph vlc.png --start -300 "DEF:inp=vlc.rrd:in:AVERAGE" "DEF:dem=vlc.rrd:demux:AVERAGE" "DEF:out=vlc.rrd:out:AVERAGE" "LINE2:dem#00FF00:Demux bitrate" "LINE2:inp#0000FF:Input bitrate" "LINE2:out#FF0000:Output bitrate" diff --git a/modules/misc/logger.c b/modules/misc/logger.c index 3b49bed..2cd9a7f 100644 --- a/modules/misc/logger.c +++ b/modules/misc/logger.c @@ -88,12 +88,6 @@ struct msg_cb_data_t *****************************************************************************/ struct intf_sys_t { - struct - { - FILE *stream; - vlc_thread_t thread; - } rrd; - msg_subscription_t *p_sub; msg_cb_data_t msg; }; @@ -111,8 +105,6 @@ static void HtmlPrint ( const msg_item_t *, FILE * ); static void SyslogPrint ( const msg_item_t *); #endif -static void *DoRRD( void * ); - /***************************************************************************** * Module descriptor *****************************************************************************/ @@ -150,8 +142,7 @@ vlc_module_begin () false ) change_string_list( mode_list, mode_list_text, 0 ) - add_file( "rrd-file", NULL, NULL, N_("RRD output file") , - N_("Output data for RRDTool in this file." ), true ) + add_obsolete_string( "rrd-file" ) set_capability( "interface", 0 ) set_callbacks( Open, Close ) @@ -164,7 +155,7 @@ static int Open( vlc_object_t *p_this ) { intf_thread_t *p_intf = (intf_thread_t *)p_this; intf_sys_t *p_sys; - char *psz_mode, *psz_rrd_file; + char *psz_mode; CONSOLE_INTRO_MSG; msg_Info( p_intf, "using logger..." ); @@ -263,27 +254,6 @@ static int Open( vlc_object_t *p_this ) #endif } - psz_rrd_file = config_GetPsz( p_intf, "rrd-file" ); - if( psz_rrd_file && *psz_rrd_file ) - { - FILE *rrd = utf8_fopen( psz_rrd_file, "w" ); - if (rrd != NULL) - { - setvbuf (rrd, NULL, _IOLBF, BUFSIZ); - if (!vlc_clone (&p_sys->rrd.thread, DoRRD, p_intf, - VLC_THREAD_PRIORITY_LOW)) - p_sys->rrd.stream = rrd; - else - { - fclose (rrd); - p_sys->rrd.stream = NULL; - } - } - } - else - p_sys->rrd.stream = NULL; - free( psz_rrd_file ); - p_sys->p_sub = msg_Subscribe( p_intf->p_libvlc, Overflow, &p_sys->msg ); return 0; @@ -297,12 +267,6 @@ static void Close( vlc_object_t *p_this ) intf_thread_t *p_intf = (intf_thread_t *)p_this; intf_sys_t *p_sys = p_intf->p_sys; - if (p_sys->rrd.stream) - { - vlc_cancel (p_sys->rrd.thread); - vlc_join (p_sys->rrd.thread, NULL); - } - /* Flush the queue and unsubscribe from the message queue */ /* FIXME: flush */ msg_Unsubscribe( p_sys->p_sub ); @@ -407,30 +371,3 @@ static void HtmlPrint( const msg_item_t *p_msg, FILE *p_file ) ppsz_type[p_msg->i_type], ppsz_color[p_msg->i_type], p_msg->psz_msg ); } - -static void *DoRRD (void *data) -{ - intf_thread_t *p_intf = data; - FILE *file = p_intf->p_sys->rrd.stream; - - for (;;) - { - /* FIXME: I wonder how memory synchronization occurs here... - * -- Courmisch */ - if( p_intf->p_libvlc->p_stats ) - { - lldiv_t in = lldiv( p_intf->p_libvlc->p_stats->f_input_bitrate * 1000000, - 1000 ); - lldiv_t dm = lldiv( p_intf->p_libvlc->p_stats->f_demux_bitrate * 1000000, - 1000 ); - lldiv_t out = lldiv( p_intf->p_libvlc->p_stats->f_output_bitrate * 1000000, - 1000 ); - fprintf( file, - "%"PRIi64":%lld.%03llu:%lld.%03llu:%lld.%03llu\n", - (int64_t)time(NULL), in.quot, in.rem, dm.quot, dm.rem, out.quot, out.rem ); - } -#undef msleep /* yeah, we really want to wake up every second here */ - msleep (CLOCK_FREQ); - } - assert (0); -} From git at videolan.org Sat Feb 28 18:47:09 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 18:47:09 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_uninitialized_and_unsynchr?= =?utf-8?q?onized_global_stats_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228174709.BE6A12FFC4@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 19:16:29 2009 +0200| [3d729748de26d33885557c31488f12b3f842ae36] | committer: R?mi Denis-Courmont Remove uninitialized and unsynchronized global stats This could crash the input thread(s). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3d729748de26d33885557c31488f12b3f842ae36 --- include/vlc_main.h | 3 --- src/input/input.c | 24 ------------------------ src/libvlc.c | 12 ------------ src/libvlc.h | 3 --- 4 files changed, 0 insertions(+), 42 deletions(-) diff --git a/include/vlc_main.h b/include/vlc_main.h index 119b177..0d2ce47 100644 --- a/include/vlc_main.h +++ b/include/vlc_main.h @@ -37,9 +37,6 @@ struct libvlc_int_t { VLC_COMMON_MEMBERS - /* FIXME: this is only used by the logger module! */ - global_stats_t *p_stats; ///< Global statistics - /* Structure storing the action name / key associations */ struct hotkey { diff --git a/src/input/input.c b/src/input/input.c index cb9e6de..7d05ae2 100644 --- a/src/input/input.c +++ b/src/input/input.c @@ -149,17 +149,6 @@ static input_thread_t *Create( vlc_object_t *p_parent, input_item_t *p_item, if( !p_input->p ) return NULL; - /* One "randomly" selected input thread is responsible for computing - * the global stats. Check if there is already someone doing this */ - if( p_input->p_libvlc->p_stats && !b_quick ) - { - libvlc_priv_t *p_private = libvlc_priv( p_input->p_libvlc ); - vlc_mutex_lock( &p_input->p_libvlc->p_stats->lock ); - if( p_private->p_stats_computer == NULL ) - p_private->p_stats_computer = p_input; - vlc_mutex_unlock( &p_input->p_libvlc->p_stats->lock ); - } - p_input->b_preparsing = b_quick; p_input->psz_header = psz_header ? strdup( psz_header ) : NULL; @@ -700,12 +689,6 @@ static void MainLoopInterface( input_thread_t *p_input ) static void MainLoopStatistic( input_thread_t *p_input ) { stats_ComputeInputStats( p_input, p_input->p->p_item->p_stats ); - /* Are we the thread responsible for computing global stats ? */ - if( libvlc_priv( p_input->p_libvlc )->p_stats_computer == p_input ) - { - stats_ComputeGlobalStats( p_input->p_libvlc, - p_input->p_libvlc->p_stats ); - } input_SendEventStatistics( p_input ); } @@ -1324,13 +1307,6 @@ static void End( input_thread_t * p_input ) /* make sure we are up to date */ stats_ComputeInputStats( p_input, p_input->p->p_item->p_stats ); - if( p_private->p_stats_computer == p_input ) - { - stats_ComputeGlobalStats( p_input->p_libvlc, - p_input->p_libvlc->p_stats ); - /* FIXME how can it be thread safe ? */ - p_private->p_stats_computer = NULL; - } CL_CO( read_bytes ); CL_CO( read_packets ); CL_CO( demux_read ); diff --git a/src/libvlc.c b/src/libvlc.c index fb7aa52..1d1d71d 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -791,16 +791,6 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, priv->i_timers = 0; priv->pp_timers = NULL; - /* Init stats */ - p_libvlc->p_stats = (global_stats_t *)malloc( sizeof( global_stats_t ) ); - if( !p_libvlc->p_stats ) - { - vlc_object_release( p_libvlc ); - return VLC_ENOMEM; /* FIXME: leaks */ - } - vlc_mutex_init( &p_libvlc->p_stats->lock ); - priv->p_stats_computer = NULL; - priv->i_last_input_id = 0; /* Not very safe, should be removed */ /* @@ -1080,8 +1070,6 @@ void libvlc_InternalCleanup( libvlc_int_t *p_libvlc ) stats_TimersCleanAll( p_libvlc ); msg_Dbg( p_libvlc, "removing stats" ); - vlc_mutex_destroy( &p_libvlc->p_stats->lock ); - FREENULL( p_libvlc->p_stats ); #ifndef WIN32 char* psz_pidfile = NULL; diff --git a/src/libvlc.h b/src/libvlc.h index 20eea3a..bf5094d 100644 --- a/src/libvlc.h +++ b/src/libvlc.h @@ -217,9 +217,6 @@ typedef struct libvlc_priv_t int i_timers; ///< Number of timers bool b_stats; ///< Whether to collect stats - void *p_stats_computer; ///< Input thread computing stats - /// (needs cleanup) - /* Singleton objects */ module_t *p_memcpy_module; ///< Fast memcpy plugin used playlist_t *p_playlist; //< the playlist singleton From git at videolan.org Sat Feb 28 18:47:10 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 18:47:10 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_str=5Fformat=5Fmeta=3A_take_the_i?= =?utf-8?q?nput_stats_lock_as_needed_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228174710.38F3E2FF9E@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 19:37:07 2009 +0200| [7913df2296a3d2b97abce87cd916c8572b16084a] | committer: R?mi Denis-Courmont str_format_meta: take the input stats lock as needed > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7913df2296a3d2b97abce87cd916c8572b16084a --- src/text/strings.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/src/text/strings.c b/src/text/strings.c index b76d14c..ee0085e 100644 --- a/src/text/strings.c +++ b/src/text/strings.c @@ -742,8 +742,10 @@ char *__str_format_meta( vlc_object_t *p_object, const char *string ) case 'f': if( p_item && p_item->p_stats ) { + vlc_mutex_lock( &p_item->p_stats->lock ); snprintf( buf, 10, "%d", p_item->p_stats->i_displayed_pictures ); + vlc_mutex_unlock( &p_item->p_stats->lock ); } else { From git at videolan.org Sat Feb 28 18:47:09 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 18:47:09 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Remove_remaining_global_stats_cod?= =?utf-8?q?e_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228174709.EE4992F488@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 19:19:45 2009 +0200| [2f1189df0a232b1e9fcd78328b87b7937666a00f] | committer: R?mi Denis-Courmont Remove remaining global stats code > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2f1189df0a232b1e9fcd78328b87b7937666a00f --- include/vlc_common.h | 1 - include/vlc_messages.h | 18 ------------------ src/libvlccore.sym | 1 - src/misc/stats.c | 37 ------------------------------------- 4 files changed, 0 insertions(+), 57 deletions(-) diff --git a/include/vlc_common.h b/include/vlc_common.h index 23f27a0..931c3ac 100644 --- a/include/vlc_common.h +++ b/include/vlc_common.h @@ -361,7 +361,6 @@ typedef struct counter_t counter_t; typedef struct counter_sample_t counter_sample_t; typedef struct stats_handler_t stats_handler_t; typedef struct input_stats_t input_stats_t; -typedef struct global_stats_t global_stats_t; /* Update */ typedef struct update_t update_t; diff --git a/include/vlc_messages.h b/include/vlc_messages.h index bf8d2dd..7257ef0 100644 --- a/include/vlc_messages.h +++ b/include/vlc_messages.h @@ -299,24 +299,6 @@ VLC_EXPORT( void, stats_ComputeInputStats, (input_thread_t*, input_stats_t*) ); VLC_EXPORT( void, stats_ReinitInputStats, (input_stats_t *) ); VLC_EXPORT( void, stats_DumpInputStats, (input_stats_t *) ); -/******************** - * Global stats - *******************/ -struct global_stats_t -{ - vlc_mutex_t lock; - - float f_input_bitrate; - float f_demux_bitrate; - float f_output_bitrate; - - int i_http_clients; -}; - -#define stats_ComputeGlobalStats(a,b) __stats_ComputeGlobalStats( VLC_OBJECT(a),b) -VLC_EXPORT( void, __stats_ComputeGlobalStats, (vlc_object_t*,global_stats_t*)); - - /********* * Timing ********/ diff --git a/src/libvlccore.sym b/src/libvlccore.sym index 45497fc..c7b3110 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -343,7 +343,6 @@ spu_DisplaySubpicture spu_Init spu_RenderSubpictures spu_SortSubpictures -__stats_ComputeGlobalStats stats_ComputeInputStats stats_CounterClean __stats_CounterCreate diff --git a/src/misc/stats.c b/src/misc/stats.c index b2e03ef..da4e10d 100644 --- a/src/misc/stats.c +++ b/src/misc/stats.c @@ -238,43 +238,6 @@ void stats_DumpInputStats( input_stats_t *p_stats ) vlc_mutex_unlock( &p_stats->lock ); } -void __stats_ComputeGlobalStats( vlc_object_t *p_obj, global_stats_t *p_stats ) -{ - vlc_list_t *p_list; - int i_index; - - if( !libvlc_stats (p_obj) ) return; - - vlc_mutex_lock( &p_stats->lock ); - - p_list = vlc_list_find( p_obj, VLC_OBJECT_INPUT, FIND_ANYWHERE ); - if( p_list ) - { - float f_total_in = 0, f_total_out = 0,f_total_demux = 0; - for( i_index = 0; i_index < p_list->i_count ; i_index ++ ) - { - float f_in = 0, f_out = 0, f_demux = 0; - input_thread_t *p_input = (input_thread_t *) - p_list->p_values[i_index].p_object; - vlc_mutex_lock( &p_input->p->counters.counters_lock ); - stats_GetFloat( p_obj, p_input->p->counters.p_input_bitrate, &f_in ); - if( p_input->p->counters.p_sout_send_bitrate ) - stats_GetFloat( p_obj, p_input->p->counters.p_sout_send_bitrate, - &f_out ); - stats_GetFloat( p_obj, p_input->p->counters.p_demux_bitrate, - &f_demux ); - vlc_mutex_unlock( &p_input->p->counters.counters_lock ); - f_total_in += f_in; f_total_out += f_out;f_total_demux += f_demux; - } - p_stats->f_input_bitrate = f_total_in; - p_stats->f_output_bitrate = f_total_out; - p_stats->f_demux_bitrate = f_total_demux; - vlc_list_release( p_list ); - } - - vlc_mutex_unlock( &p_stats->lock ); -} - void __stats_TimerStart( vlc_object_t *p_obj, const char *psz_name, unsigned int i_id ) { From git at videolan.org Sat Feb 28 18:47:10 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 18:47:10 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Privatize_input_stats_internals_?= =?utf-8?q?=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228174710.1DBAE2FFFA@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 19:38:25 2009 +0200| [1793ca880ead3001da8c1b6e11706fc42af40cf2] | committer: R?mi Denis-Courmont Privatize input stats internals Those were never used from plugins. This commit is a no-brainer. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1793ca880ead3001da8c1b6e11706fc42af40cf2 --- include/vlc_input_item.h | 37 +++++++++++++++++ include/vlc_messages.h | 102 ---------------------------------------------- src/libvlc.h | 69 +++++++++++++++++++++++++++++++ src/libvlccore.sym | 7 --- 4 files changed, 106 insertions(+), 109 deletions(-) diff --git a/include/vlc_input_item.h b/include/vlc_input_item.h index fa90d21..1abdc3b 100644 --- a/include/vlc_input_item.h +++ b/include/vlc_input_item.h @@ -210,4 +210,41 @@ VLC_EXPORT( input_item_t *, __input_item_NewExt, (vlc_object_t *, const char *ps */ #define input_item_New( a,b,c ) input_item_NewExt( a, b, c, 0, NULL, 0, -1 ) +/****************** + * Input stats + ******************/ +struct input_stats_t +{ + vlc_mutex_t lock; + + /* Input */ + int i_read_packets; + int i_read_bytes; + float f_input_bitrate; + float f_average_input_bitrate; + + /* Demux */ + int i_demux_read_packets; + int i_demux_read_bytes; + float f_demux_bitrate; + float f_average_demux_bitrate; + + /* Decoders */ + int i_decoded_audio; + int i_decoded_video; + + /* Vout */ + int i_displayed_pictures; + int i_lost_pictures; + + /* Sout */ + int i_sent_packets; + int i_sent_bytes; + float f_send_bitrate; + + /* Aout */ + int i_played_abuffers; + int i_lost_abuffers; +}; + #endif diff --git a/include/vlc_messages.h b/include/vlc_messages.h index 7257ef0..19cf3c9 100644 --- a/include/vlc_messages.h +++ b/include/vlc_messages.h @@ -197,108 +197,6 @@ enum STATS_TIMER_SKINS_PLAYTREE_IMAGE, }; -#define stats_Update(a,b,c) __stats_Update( VLC_OBJECT(a), b, c ) -VLC_EXPORT( int, __stats_Update, (vlc_object_t*, counter_t *, vlc_value_t, vlc_value_t *) ); -#define stats_CounterCreate(a,b,c) __stats_CounterCreate( VLC_OBJECT(a), b, c ) -VLC_EXPORT( counter_t *, __stats_CounterCreate, (vlc_object_t*, int, int) ); -#define stats_Get(a,b,c) __stats_Get( VLC_OBJECT(a), b, c) -VLC_EXPORT( int, __stats_Get, (vlc_object_t*, counter_t *, vlc_value_t*) ); - -VLC_EXPORT (void, stats_CounterClean, (counter_t * ) ); - -#define stats_GetInteger(a,b,c) __stats_GetInteger( VLC_OBJECT(a), b, c ) -static inline int __stats_GetInteger( vlc_object_t *p_obj, counter_t *p_counter, - int *value ) -{ - int i_ret; - vlc_value_t val; val.i_int = 0; - if( !p_counter ) return VLC_EGENERIC; - i_ret = __stats_Get( p_obj, p_counter, &val ); - *value = val.i_int; - return i_ret; -} - -#define stats_GetFloat(a,b,c) __stats_GetFloat( VLC_OBJECT(a), b, c ) -static inline int __stats_GetFloat( vlc_object_t *p_obj, counter_t *p_counter, - float *value ) -{ - int i_ret; - vlc_value_t val; val.f_float = 0.0; - if( !p_counter ) return VLC_EGENERIC; - i_ret = __stats_Get( p_obj, p_counter, &val ); - *value = val.f_float; - return i_ret; -} -#define stats_UpdateInteger(a,b,c,d) __stats_UpdateInteger( VLC_OBJECT(a),b,c,d ) -static inline int __stats_UpdateInteger( vlc_object_t *p_obj,counter_t *p_co, - int i, int *pi_new ) -{ - int i_ret; - vlc_value_t val; - vlc_value_t new_val; new_val.i_int = 0; - if( !p_co ) return VLC_EGENERIC; - val.i_int = i; - i_ret = __stats_Update( p_obj, p_co, val, &new_val ); - if( pi_new ) - *pi_new = new_val.i_int; - return i_ret; -} -#define stats_UpdateFloat(a,b,c,d) __stats_UpdateFloat( VLC_OBJECT(a),b,c,d ) -static inline int __stats_UpdateFloat( vlc_object_t *p_obj, counter_t *p_co, - float f, float *pf_new ) -{ - vlc_value_t val; - int i_ret; - vlc_value_t new_val;new_val.f_float = 0.0; - if( !p_co ) return VLC_EGENERIC; - val.f_float = f; - i_ret = __stats_Update( p_obj, p_co, val, &new_val ); - if( pf_new ) - *pf_new = new_val.f_float; - return i_ret; -} - -/****************** - * Input stats - ******************/ -struct input_stats_t -{ - vlc_mutex_t lock; - - /* Input */ - int i_read_packets; - int i_read_bytes; - float f_input_bitrate; - float f_average_input_bitrate; - - /* Demux */ - int i_demux_read_packets; - int i_demux_read_bytes; - float f_demux_bitrate; - float f_average_demux_bitrate; - - /* Decoders */ - int i_decoded_audio; - int i_decoded_video; - - /* Vout */ - int i_displayed_pictures; - int i_lost_pictures; - - /* Sout */ - int i_sent_packets; - int i_sent_bytes; - float f_send_bitrate; - - /* Aout */ - int i_played_abuffers; - int i_lost_abuffers; -}; - -VLC_EXPORT( void, stats_ComputeInputStats, (input_thread_t*, input_stats_t*) ); -VLC_EXPORT( void, stats_ReinitInputStats, (input_stats_t *) ); -VLC_EXPORT( void, stats_DumpInputStats, (input_stats_t *) ); - /********* * Timing ********/ diff --git a/src/libvlc.h b/src/libvlc.h index bf5094d..608d1c9 100644 --- a/src/libvlc.h +++ b/src/libvlc.h @@ -250,6 +250,75 @@ extern const size_t libvlc_config_count; */ void var_OptionParse (vlc_object_t *, const char *, bool trusted); + +/* + * Stats stuff + */ +#define stats_Update(a,b,c) __stats_Update( VLC_OBJECT(a), b, c ) +int __stats_Update (vlc_object_t*, counter_t *, vlc_value_t, vlc_value_t *); +#define stats_CounterCreate(a,b,c) __stats_CounterCreate( VLC_OBJECT(a), b, c ) +counter_t * __stats_CounterCreate (vlc_object_t*, int, int); +#define stats_Get(a,b,c) __stats_Get( VLC_OBJECT(a), b, c) +int __stats_Get (vlc_object_t*, counter_t *, vlc_value_t*); + +void stats_CounterClean (counter_t * ); + +#define stats_GetInteger(a,b,c) __stats_GetInteger( VLC_OBJECT(a), b, c ) +static inline int __stats_GetInteger( vlc_object_t *p_obj, counter_t *p_counter, + int *value ) +{ + int i_ret; + vlc_value_t val; val.i_int = 0; + if( !p_counter ) return VLC_EGENERIC; + i_ret = __stats_Get( p_obj, p_counter, &val ); + *value = val.i_int; + return i_ret; +} + +#define stats_GetFloat(a,b,c) __stats_GetFloat( VLC_OBJECT(a), b, c ) +static inline int __stats_GetFloat( vlc_object_t *p_obj, counter_t *p_counter, + float *value ) +{ + int i_ret; + vlc_value_t val; val.f_float = 0.0; + if( !p_counter ) return VLC_EGENERIC; + i_ret = __stats_Get( p_obj, p_counter, &val ); + *value = val.f_float; + return i_ret; +} +#define stats_UpdateInteger(a,b,c,d) __stats_UpdateInteger( VLC_OBJECT(a),b,c,d ) +static inline int __stats_UpdateInteger( vlc_object_t *p_obj,counter_t *p_co, + int i, int *pi_new ) +{ + int i_ret; + vlc_value_t val; + vlc_value_t new_val; new_val.i_int = 0; + if( !p_co ) return VLC_EGENERIC; + val.i_int = i; + i_ret = __stats_Update( p_obj, p_co, val, &new_val ); + if( pi_new ) + *pi_new = new_val.i_int; + return i_ret; +} +#define stats_UpdateFloat(a,b,c,d) __stats_UpdateFloat( VLC_OBJECT(a),b,c,d ) +static inline int __stats_UpdateFloat( vlc_object_t *p_obj, counter_t *p_co, + float f, float *pf_new ) +{ + vlc_value_t val; + int i_ret; + vlc_value_t new_val;new_val.f_float = 0.0; + if( !p_co ) return VLC_EGENERIC; + val.f_float = f; + i_ret = __stats_Update( p_obj, p_co, val, &new_val ); + if( pf_new ) + *pf_new = new_val.f_float; + return i_ret; +} + +VLC_EXPORT( void, stats_ComputeInputStats, (input_thread_t*, input_stats_t*) ); +VLC_EXPORT( void, stats_ReinitInputStats, (input_stats_t *) ); +VLC_EXPORT( void, stats_DumpInputStats, (input_stats_t *) ); + /* * Replacement functions */ diff --git a/src/libvlccore.sym b/src/libvlccore.sym index c7b3110..1cd3ee4 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -343,19 +343,12 @@ spu_DisplaySubpicture spu_Init spu_RenderSubpictures spu_SortSubpictures -stats_ComputeInputStats -stats_CounterClean -__stats_CounterCreate -stats_DumpInputStats -__stats_Get -stats_ReinitInputStats __stats_TimerClean __stats_TimerDump __stats_TimersCleanAll __stats_TimersDumpAll __stats_TimerStart __stats_TimerStop -__stats_Update stream_Block stream_Control stream_Delete From git at videolan.org Sat Feb 28 19:15:36 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 19:15:36 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Recognize_supported_media_type_fo?= =?utf-8?q?r_SDP_from_SAP=2C_not_only_from_files_=28_R=C3=A9mi_Denis-Courm?= =?utf-8?q?ont_=29?= Message-ID: <20090228181536.C1C7F2FFFE@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Sat Feb 28 20:11:54 2009 +0200| [012818b0712338786626c8d6b1b3c9ebdba55d26] | committer: R?mi Denis-Courmont Recognize supported media type for SDP from SAP, not only from files (cherry picked from commit 58469fdae05a8fb3ee5ab7fca330f7e0d520ca99) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=012818b0712338786626c8d6b1b3c9ebdba55d26 --- modules/services_discovery/sap.c | 36 +++++++++++++++++++----------------- 1 files changed, 19 insertions(+), 17 deletions(-) diff --git a/modules/services_discovery/sap.c b/modules/services_discovery/sap.c index 26a9dc1..f7a8261 100644 --- a/modules/services_discovery/sap.c +++ b/modules/services_discovery/sap.c @@ -287,6 +287,22 @@ static inline int min_int( int a, int b ) return a > b ? b : a; } +static bool IsWellKnownPayload (int type) +{ + switch (type) + { /* Should be in sync with modules/demux/rtp.c */ + case 0: /* PCMU/8000 */ + case 8: /* PCMA/8000 */ + case 10: /* L16/44100/2 */ + case 11: /* L16/44100 */ + case 14: /* MPA/90000 */ + case 32: /* MPV/90000 */ + case 33: /* MP2/90000 */ + return true; + } + return false; +} + /***************************************************************************** * Open: initialize and create stuff *****************************************************************************/ @@ -394,19 +410,8 @@ static int OpenDemux( vlc_object_t *p_this ) { p_sdp->psz_uri = NULL; } - switch (p_sdp->i_media_type) - { /* Should be in sync with modules/demux/rtp.c */ - case 0: /* PCMU/8000 */ - case 8: /* PCMA/8000 */ - case 10: /* L16/44100/2 */ - case 11: /* L16/44100 */ - case 14: /* MPA/90000 */ - case 32: /* MPV/90000 */ - case 33: /* MP2/90000 */ - break; - default: - goto error; - } + if (!IsWellKnownPayload (p_sdp->i_media_type)) + goto error; if( p_sdp->psz_uri == NULL ) goto error; p_demux->p_sys = (demux_sys_t *)malloc( sizeof(demux_sys_t) ); @@ -780,10 +785,7 @@ static int ParseSAP( services_discovery_t *p_sd, const uint8_t *buf, p_sdp->psz_uri = NULL; /* Multi-media or no-parse -> pass to LIVE.COM */ - if( ( p_sdp->i_media_type != 14 - && p_sdp->i_media_type != 32 - && p_sdp->i_media_type != 33) - || p_sd->p_sys->b_parse == false ) + if( !IsWellKnownPayload( p_sdp->i_media_type ) || !p_sd->p_sys->b_parse ) { free( p_sdp->psz_uri ); if (asprintf( &p_sdp->psz_uri, "sdp://%s", p_sdp->psz_sdp ) == -1) From git at videolan.org Sat Feb 28 19:49:56 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 19:49:56 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_RTP=3A_audio/MPA_needs_to_be_pack?= =?utf-8?q?etized_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228184956.E60E130022@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Sat Feb 28 20:48:05 2009 +0200| [fa435d12a82e5e7a777552f57dfd99cbb8f80ffb] | committer: R?mi Denis-Courmont RTP: audio/MPA needs to be packetized (see http://forum.videolan.org/viewtopic.php?f=2&t=56224&p=186350) (cherry picked from commit 575b1c1cecd6b20392a42e1f54db2c6cff498044) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fa435d12a82e5e7a777552f57dfd99cbb8f80ffb --- modules/demux/rtp.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/demux/rtp.c b/modules/demux/rtp.c index 97e1a6e..082c08a 100644 --- a/modules/demux/rtp.c +++ b/modules/demux/rtp.c @@ -555,6 +555,7 @@ static void *mpa_init (demux_t *demux) es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('m', 'p', 'g', 'a')); fmt.audio.i_channels = 2; + fmt.b_packetized = false; return codec_init (demux, &fmt); } From git at videolan.org Sat Feb 28 19:50:03 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 19:50:03 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Use_our_endianism_macros_=28_R?= =?utf-8?q?=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228185003.506CB2F80F@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 20:47:32 2009 +0200| [dd4e4a5e2f5b61e183adcc992eae262b39f717f9] | committer: R?mi Denis-Courmont Use our endianism macros > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dd4e4a5e2f5b61e183adcc992eae262b39f717f9 --- modules/stream_out/rtpfmt.c | 19 ++++++------------- 1 files changed, 6 insertions(+), 13 deletions(-) diff --git a/modules/stream_out/rtpfmt.c b/modules/stream_out/rtpfmt.c index 16719c8..680f745 100644 --- a/modules/stream_out/rtpfmt.c +++ b/modules/stream_out/rtpfmt.c @@ -55,11 +55,9 @@ int rtp_packetize_mpa( sout_stream_id_t *id, /* rtp common header */ rtp_packetize_common( id, out, (i == i_count - 1)?1:0, in->i_pts ); /* mbz set to 0 */ - out->p_buffer[12] = 0; - out->p_buffer[13] = 0; + SetWBE( out->p_buffer + 12, 0 ); /* fragment offset in the current frame */ - out->p_buffer[14] = ( (i*i_max) >> 8 )&0xff; - out->p_buffer[15] = ( (i*i_max) )&0xff; + SetWBE( out->p_buffer + 14, i * i_max ); memcpy( &out->p_buffer[16], p_data, i_payload ); out->i_buffer = 16 + i_payload; @@ -145,6 +143,7 @@ int rtp_packetize_mpv( sout_stream_id_t *id, block_t *in ) { int i_payload = __MIN( i_max, i_data ); block_t *out = block_Alloc( 16 + i_payload ); + /* MBZ:5 T:1 TR:10 AN:1 N:1 S:1 B:1 E:1 P:3 FBV:1 BFC:3 FFV:1 FFC:3 */ uint32_t h = ( i_temporal_ref << 16 )| ( b_sequence_start << 13 )| ( b_start_slice << 12 )| @@ -156,11 +155,7 @@ int rtp_packetize_mpv( sout_stream_id_t *id, block_t *in ) rtp_packetize_common( id, out, (i == i_count - 1)?1:0, in->i_pts > 0 ? in->i_pts : in->i_dts ); - /* MBZ:5 T:1 TR:10 AN:1 N:1 S:1 B:1 E:1 P:3 FBV:1 BFC:3 FFV:1 FFC:3 */ - out->p_buffer[12] = ( h >> 24 )&0xff; - out->p_buffer[13] = ( h >> 16 )&0xff; - out->p_buffer[14] = ( h >> 8 )&0xff; - out->p_buffer[15] = ( h )&0xff; + SetDWBE( out->p_buffer + 12, h ); memcpy( &out->p_buffer[16], p_data, i_payload ); @@ -320,8 +315,7 @@ int rtp_packetize_mp4a( sout_stream_id_t *id, block_t *in ) out->p_buffer[12] = 0; out->p_buffer[13] = 2*8; /* for each AU length 13 bits + idx 3bits, */ - out->p_buffer[14] = ( in->i_buffer >> 5 )&0xff; - out->p_buffer[15] = ( (in->i_buffer&0xff)<<3 )|0; + SetWBE( out->p_buffer + 14, (in->i_buffer << 3) | 0 ); memcpy( &out->p_buffer[16], p_data, i_payload ); @@ -384,8 +378,7 @@ int rtp_packetize_h263( sout_stream_id_t *id, block_t *in ) in->i_pts > 0 ? in->i_pts : in->i_dts ); /* h263 header */ - out->p_buffer[12] = ( h >> 8 )&0xff; - out->p_buffer[13] = ( h )&0xff; + SetWBE( out->p_buffer + 12, h ); memcpy( &out->p_buffer[RTP_H263_PAYLOAD_START], p_data, i_payload ); out->i_buffer = RTP_H263_PAYLOAD_START + i_payload; From git at videolan.org Sat Feb 28 19:50:03 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 19:50:03 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_RTP=3A_audio/MPA_needs_to_be_pack?= =?utf-8?q?etized_=28_R=C3=A9mi_Denis-Courmont_=29?= Message-ID: <20090228185003.A34922F791@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 20:48:05 2009 +0200| [575b1c1cecd6b20392a42e1f54db2c6cff498044] | committer: R?mi Denis-Courmont RTP: audio/MPA needs to be packetized (see http://forum.videolan.org/viewtopic.php?f=2&t=56224&p=186350) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=575b1c1cecd6b20392a42e1f54db2c6cff498044 --- modules/access/rtp/rtp.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/access/rtp/rtp.c b/modules/access/rtp/rtp.c index d2e2e07..1128476 100644 --- a/modules/access/rtp/rtp.c +++ b/modules/access/rtp/rtp.c @@ -529,6 +529,7 @@ static void *mpa_init (demux_t *demux) es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('m', 'p', 'g', 'a')); fmt.audio.i_channels = 2; + fmt.b_packetized = false; return codec_init (demux, &fmt); } From git at videolan.org Sat Feb 28 19:52:11 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 19:52:11 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Packetize_MPV_as_well_=28_R=C3=A9?= =?utf-8?q?mi_Denis-Courmont_=29?= Message-ID: <20090228185211.3AF5F2F80F@skanda.videolan.org> vlc | branch: 0.9-bugfix | R?mi Denis-Courmont | Sat Feb 28 20:51:37 2009 +0200| [96aab73615b91ff7bef10d5006a9abc5c03dfcf5] | committer: R?mi Denis-Courmont Packetize MPV as well (cherry picked from commit af4d8375937fc0188b7de089e445ef9a99e69c67) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=96aab73615b91ff7bef10d5006a9abc5c03dfcf5 --- modules/demux/rtp.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/demux/rtp.c b/modules/demux/rtp.c index 082c08a..031b68f 100644 --- a/modules/demux/rtp.c +++ b/modules/demux/rtp.c @@ -582,6 +582,7 @@ static void *mpv_init (demux_t *demux) es_format_t fmt; es_format_Init (&fmt, VIDEO_ES, VLC_FOURCC ('m', 'p', 'g', 'v')); + fmt.b_packetized = false; return codec_init (demux, &fmt); } From git at videolan.org Sat Feb 28 19:52:13 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 19:52:13 +0100 (CET) Subject: [vlc-devel] =?utf-8?q?commit=3A_Packetize_MPV_as_well_=28_R=C3=A9?= =?utf-8?q?mi_Denis-Courmont_=29?= Message-ID: <20090228185213.DCB533000B@skanda.videolan.org> vlc | branch: master | R?mi Denis-Courmont | Sat Feb 28 20:51:37 2009 +0200| [af4d8375937fc0188b7de089e445ef9a99e69c67] | committer: R?mi Denis-Courmont Packetize MPV as well > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=af4d8375937fc0188b7de089e445ef9a99e69c67 --- modules/access/rtp/rtp.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/modules/access/rtp/rtp.c b/modules/access/rtp/rtp.c index 1128476..d052322 100644 --- a/modules/access/rtp/rtp.c +++ b/modules/access/rtp/rtp.c @@ -556,6 +556,7 @@ static void *mpv_init (demux_t *demux) es_format_t fmt; es_format_Init (&fmt, VIDEO_ES, VLC_FOURCC ('m', 'p', 'g', 'v')); + fmt.b_packetized = false; return codec_init (demux, &fmt); } From git at videolan.org Sat Feb 28 20:46:24 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 20:46:24 +0100 (CET) Subject: [vlc-devel] commit: Qt: now that you don't control the controls size anymore, be careful to resize the controller when buttons show up. ( Jean-Baptiste Kempf ) Message-ID: <20090228194624.9FF8A2FFAA@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 20:45:11 2009 +0100| [61733f0e1da307d34b66e8051f0fc1af59c41a33] | committer: Jean-Baptiste Kempf Qt: now that you don't control the controls size anymore, be careful to resize the controller when buttons show up. Close #2487. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=61733f0e1da307d34b66e8051f0fc1af59c41a33 --- modules/gui/qt4/components/controller.cpp | 2 ++ modules/gui/qt4/components/controller.hpp | 1 + modules/gui/qt4/main_interface.cpp | 2 ++ 3 files changed, 5 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp index eadaf8b..42a590c 100644 --- a/modules/gui/qt4/components/controller.cpp +++ b/modules/gui/qt4/components/controller.cpp @@ -479,6 +479,8 @@ QFrame *AbstractController::discFrame() sectionNext() ); CONNECT( menuButton, clicked(), THEMIM->getIM(), sectionMenu() ); + connect( THEMIM->getIM(), SIGNAL( titleChanged( bool ) ), + this, SIGNAL( sizeChanged() ) ); return discFrame; } diff --git a/modules/gui/qt4/components/controller.hpp b/modules/gui/qt4/components/controller.hpp index a4de91c..d3eafc2 100644 --- a/modules/gui/qt4/components/controller.hpp +++ b/modules/gui/qt4/components/controller.hpp @@ -163,6 +163,7 @@ signals: void inputPlaying( bool ); /// This might be usefull in the IM ? void inputIsRecordable( bool ); /// same ? void inputIsTrickPlayable( bool ); /// same ? + void sizeChanged(); }; /* Advanced Button Bar */ diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index 1234634..5c1c047 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -426,6 +426,8 @@ void MainInterface::handleMainUi( QSettings *settings ) settings->value( "adv-controls", false ).toBool(), this ); CONNECT( controls, advancedControlsToggled( bool ), this, doComponentsUpdate() ); + CONNECT( controls, sizeChanged(), + this, doComponentsUpdate() ); inputC = new InputControlsWidget( p_intf, this ); /* Visualisation */ From git at videolan.org Sat Feb 28 20:56:00 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 20:56:00 +0100 (CET) Subject: [vlc-devel] commit: Qt: Same for telexFrame. (Jean-Baptiste Kempf ) Message-ID: <20090228195600.0D3B62FD86@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 20:55:47 2009 +0100| [ec5ea10f4b5ce3202f773a9651b0a18949e51b2c] | committer: Jean-Baptiste Kempf Qt: Same for telexFrame. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ec5ea10f4b5ce3202f773a9651b0a18949e51b2c --- modules/gui/qt4/components/controller.cpp | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp index 42a590c..426f120 100644 --- a/modules/gui/qt4/components/controller.cpp +++ b/modules/gui/qt4/components/controller.cpp @@ -495,6 +495,8 @@ QFrame *AbstractController::telexFrame() telexLayout->setSpacing( 0 ); telexLayout->setMargin( 0 ); CONNECT( THEMIM->getIM(), teletextPossible( bool ), telexFrame, setVisible( bool ) ); + connect( THEMIM->getIM(), SIGNAL( teletextPossible( bool ) ), + this, SIGNAL( sizeChanged() ) ); /* On/Off button */ QToolButton *telexOn = new QToolButton; From git at videolan.org Sat Feb 28 23:18:10 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 23:18:10 +0100 (CET) Subject: [vlc-devel] commit: Don't believe Wikipedia: VLC supports perfectly well Wavepack files OUTSIDE of mkv. ( Jean-Baptiste Kempf ) Message-ID: <20090228221810.155602F69F@skanda.videolan.org> vlc | branch: master | Jean-Baptiste Kempf | Sat Feb 28 23:17:32 2009 +0100| [195597f3f71f0dc37a50f05ac4dbaa1fee603a5c] | committer: Jean-Baptiste Kempf Don't believe Wikipedia: VLC supports perfectly well Wavepack files OUTSIDE of mkv. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=195597f3f71f0dc37a50f05ac4dbaa1fee603a5c --- extras/package/win32/vlc.win32.nsi.in | 1 + include/vlc_interface.h | 2 +- 2 files changed, 2 insertions(+), 1 deletions(-) diff --git a/extras/package/win32/vlc.win32.nsi.in b/extras/package/win32/vlc.win32.nsi.in index 9cdd44b..7520bfa 100644 --- a/extras/package/win32/vlc.win32.nsi.in +++ b/extras/package/win32/vlc.win32.nsi.in @@ -214,6 +214,7 @@ FunctionEnd !insertmacro ${_action} ".spx" !insertmacro ${_action} ".wav" !insertmacro ${_action} ".wma" + !insertmacro ${_action} ".wv" !insertmacro ${_action} ".xm" !macroend diff --git a/include/vlc_interface.h b/include/vlc_interface.h index 7dde2a5..1f01762 100644 --- a/include/vlc_interface.h +++ b/include/vlc_interface.h @@ -173,7 +173,7 @@ typedef enum vlc_dialog { #define EXTENSIONS_AUDIO "*.a52;*.aac;*.ac3;*.dts;*.flac;*.m4a;*.m4p;*.mka;" \ "*.mod;*.mp1;*.mp2;*.mp3;*.oga;*.ogg;*.oma;*.spx;" \ - "*.wav;*.wma;*.xm" + "*.wav;*.wma;*.wv;*.xm" #define EXTENSIONS_VIDEO "*.asf;*.avi;*.divx;*.dv;*.flv;*.gxf;*.iso;*.m1v;*.m2v;" \ "*.m2t;*.m2ts;*.m4v;*.mkv;*.mov;*.mp2;*.mp4;*.mpeg;*.mpeg1;" \ From git at videolan.org Sat Feb 28 23:59:30 2009 From: git at videolan.org (git version control) Date: Sat, 28 Feb 2009 23:59:30 +0100 (CET) Subject: [vlc-devel] commit: Backport fixes for audio resampling or downmixing from master. ( Laurent Aimar ) Message-ID: <20090228225930.6A3842FD1A@skanda.videolan.org> vlc | branch: 0.9-bugfix | Laurent Aimar | Sat Feb 28 13:51:32 2009 +0100| [4720daefe40cbce30daa2ff76944e3e0f405a195] | committer: Jean-Baptiste Kempf Backport fixes for audio resampling or downmixing from master. Fixed audio transcoding when channel mixing or resampling is needed. Signed-off-by: Alexis Ballier Signed-off-by: Jean-Baptiste Kempf (transcoding cannot be worse than it is now) > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4720daefe40cbce30daa2ff76944e3e0f405a195 --- modules/stream_out/transcode.c | 238 +++++++++++++++++++++------------------- 1 files changed, 123 insertions(+), 115 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=4720daefe40cbce30daa2ff76944e3e0f405a195 From gianpaolo.todini at alice.it Fri Feb 27 16:35:01 2009 From: gianpaolo.todini at alice.it (gianpaolo.todini at alice.it) Date: Fri, 27 Feb 2009 16:35:01 +0100 Subject: [vlc-devel] vlc-devel] JVLC - java.lang.UnsatisfiedLinkError: Unable to Message-ID: Ciao dal nome credo che sei italiano,quindi almeno per ora prover? a scriverti nella "nostra" lingua almeno sperando che tu lo sia! Il problema ? che sto usando le librerie jvlc per creare dei comandi tramite metodi java,per ora mi accontenterei di far partire un file audio o video! Il codice ho utilizzato ?: public class provaVlc public static void main(String[] args) { System.out.println("== Starting VLCExample =="); if(args.length == 0) { System.out.print("Creating a JVLC instance without args"); } else { System.out.println("Creating a JVLC instance with args: "); for(int i = 0; i < args.length; i++) System.out.println((new StringBuilder()).append(i).append(") ").append(args[i]).toString()); } JVLC jvlc = new JVLC(args); System.out.println("... done."); MediaDescriptor mediaDescriptor = new MediaDescriptor(jvlc, "c://prova1.vaw"); MediaPlayer mediaPlayer = mediaDescriptor.getMediaPlayer(); mediaPlayer.play(); } } L'errore che mi da ?: Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'libvlc': Impossibile trovare il modulo specificato. at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:114) at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:157) at com.sun.jna.Library$Handler.(Library.java:123) at com.sun.jna.Native.loadLibrary(Native.java:260) at com.sun.jna.Native.loadLibrary(Native.java:246) at org.videolan.jvlc.internal.LibVlc.(LibVlc.java:41) at org.videolan.jvlc.JVLC.(JVLC.java:45) at OpenProgramTest.VlcTest.main(VlcTest.java:28) leggendo altri tuoi post lasciati sul sito da quello che ho capito dovrebbe essere un problema che non riesce a caricare le dll. Nella mi acartella di istallazione ho : libvlc.dll e libvlccore.dll Io ho provato a cambiare il nome della dll libvlc.dll in vlc-controll.dll ma non funziona ugualmente e poi q quel punto non riesco pi? a alanciare neanche il programma da windows. poi sul tuo post tu parli di un a dll di nome libvlc-control mentre nel mio c'? solo libvlc.dll (uso l'ultima versione 0.9.8,potrebbe essere un problema di versione di vlc ). Non funzionando in questo modo ho provato ad aprire la classe org/videolan/jvlc/internal/LibVlc.java ( in realt? ho decompilato il file.class inq uanto non sono riuscito atrovare i sorgenti) ma sono delle interfacce e quindo non ho trovato quella parte di codice da modificare il nome delle dll da caricare. Potresti darmi qualche dritta su come superrare questo primo empasse sperando dopo di trovare meno difficolt??Forse faccio anche semplicemente un stupido errore che non riesco a vedere! Alice Messenger ;-) chatti anche con gli amici di Windows Live Messenger e tutti i telefonini TIM! Vai su http://maileservizi.alice.it/alice_messenger/index.html?pmk=footer -------------- next part -------------- An HTML attachment was scrubbed... URL: From mhenriquezs at terra.cl Sat Feb 28 02:21:13 2009 From: mhenriquezs at terra.cl (Mauricio Henriquez) Date: Fri, 27 Feb 2009 22:21:13 -0300 Subject: [vlc-devel] look and stream from IP camera.. Message-ID: <49A89189.4070307@terra.cl> Hi guys, sorry if this question is in the wronge list... Two question about streaming from IP cameras.. First I have a really old and bad IP camera that make a stream in a propietarie format, but I can get the last picture that the camera take from the camera URL like http://mycamera/cgi-bin?video.jpg So my question is if I can make a stream from this images?, looking for something I find the "--fake-file-reload" option, with I think that may be can help, is posible to make a regular rstp or udp stream from this images (is like vlc take this images from time to time a put it in the stream)? Second question is for a kind of better camera, this one can make a mjpeg stream, here I think that is kind of more easy for vlc to show the mjpeg stream from the camera, bit I don't have any idea about what options to use/set, any examples to begin to try? Really thanks for any tips.. Mauricio