Hi All, I finally figured out why LiveTV wasn't working for me (see log and original question below). Turns out the cardid's of my capturecards were in the 100's (far greater than the 17 or so the mvpmc code looks for). I renumbered them to 1,2,3 and bam, livetv started working.
Seems to me that hard looping 1 to 17 looking for a set of hardcoded cardid's is not the most clean way, no? You guys might consider using GET_NEXT_FREE_RECORDER [http://www.mythtv.org/wiki/index.php/Myth_Protocol_Command_GET_NEXT_FREE_RECORDER] instead of GET_RECORDER_FROM_NUM Cheers, Luis. PS: I know, do it myself, but my C is very rusty and I still have to setup the compilation environment, conversely, this change might take someone already setup 2 seconds, and make the software that much better. Thanks to all the guys that make this little gadget work with MythTV possible...very cool!!! On 9/11/06, Luis Ochoa <[EMAIL PROTECTED]> wrote: > Hi guys...in hope that someone who knows more than I do can figure it out. > MythTV 0.20 > Dongle build from 20060911 > > The first time I hit New LiveTV it says "No tuners available" > If I hit it again, the "Please wait..." bar goes on forever. > MythTV shows the registration of the mvpmc client and I can watch > recordings using the myth protocol. I was also able to schedule a > recording. > > Thanks to you all for a great job. > > # mvpmc -f /etc/helvR10.fnt -s 192.168.230.50 -M > Turn on MythTV debugging > child pid 121 > MediaMVP Media Center > Version 546f1d2c657ad0b056727d2bb1055f12f2597731 > fnt_createfont: using font /etc/helvR10.fnt > fnt_createfont: /etc/helvB18.pcf,0 not found > glyph_count = 756 (2f4) > def char 0 (0) > size 8960 byte1 0,34 byte2 0,255 > pcf_createfont: using font /etc/helvB18.pcf > fnt_createfont: using font /etc/helvR10.fnt > Re-starting to convince aspect ratio stuff to work... > Mon Sep 11 03:00:26 EDT 2006child exited cleanly > child pid 122 > MediaMVP Media Center > Version 546f1d2c657ad0b056727d2bb1055f12f2597731 > fnt_createfont: using font /etc/helvR10.fnt > fnt_createfont: /etc/helvB18.pcf,0 not found > glyph_count = 756 (2f4) > def char 0 (0) > size 8960 byte1 0,34 byte2 0,255 > pcf_createfont: using font /etc/helvB18.pcf > fnt_createfont: using font /etc/helvR10.fnt > Mon Sep 11 03:00:26 EDT 2006NTSC mode, 720x480 > createfont: (height == 0) found builtin font System (0) > createfont: (height == 0) found builtin font System (0) > screen is 720 x 480 > Initializing PAT Decoder > audio write thread started (pid 124) > approximate heap size 577536 > Allocated 4194304 heap bytes > Allocated guard page > mpeg read thread started (pid 125) > video write thread started (pid 126) > audio thread started (pid 127) > Demux size video: 2097152 audio: 524288 > Setting WSS aspect to: 8 > screensaver enable > mclient:Starting mclient pthread. > web server thread started (pid 132) > switch_gui_state(): changing from 1 to 2 > show busy widget > Turn on libcmyth debugging > cmyth_conn_connect_ctrl: connecting control connection > cmyth_connect: connecting to 192.168.230.50 fd = 25 > cmyth_allocate_data(32, ret = 0x105d0e34, ref = 0x105d0e28) { > cmyth_allocate_data(32, ret = 0x105d0e34, ref = 0x105d0e28) } > cmyth_conn_create { > cmyth_set_destroy(0x105d0e34, func = 0x100a20d4, ref = 0x105d0e28) { > cmyth_set_destroy(0x105d0e34, func = 0x100a20d4, ref = 0x105d0e28) } > cmyth_conn_create } > __cmyth_send_message > __cmyth_send_message: sending message '20 MYTH_PROTO_VERSION 8' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '13 ' ret = 13 > __cmyth_rcv_string: string received 'REJECT' > __cmyth_rcv_string: string received '30' > cmyth_conn_connect: asked for version 8, got version 30 > cmyth_release(0x105d0e34) { > libs/libcmyth/alloc.c:441 cmyth_release(0x105d0e34,ref = > 0x105d0e28,refcount = 0 x1,length = 32) > cmyth_conn_destroy { > cmyth_conn_destroy: shutdown and close connection fd = 25 > cmyth_conn_destroy } > libs/libcmyth/alloc.c:460 cmyth_release() -- free it > cmyth_release(0x105d0e34) } > cmyth_connect: connecting to 192.168.230.50 fd = 25 > cmyth_allocate_data(32, ret = 0x105d0e34, ref = 0x105d0e28) { > cmyth_allocate_data(32, ret = 0x105d0e34, ref = 0x105d0e28) } > cmyth_conn_create { > cmyth_set_destroy(0x105d0e34, func = 0x100a20d4, ref = 0x105d0e28) { > cmyth_set_destroy(0x105d0e34, func = 0x100a20d4, ref = 0x105d0e28) } > cmyth_conn_create } > __cmyth_send_message > __cmyth_send_message: sending message '21 MYTH_PROTO_VERSION 30' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '13 ' ret = 13 > __cmyth_rcv_string: string received 'ACCEPT' > __cmyth_rcv_string: string received '30' > cmyth_conn_connect: asked for version 30, got version 30 > cmyth_conn_connect: agreed on Version 30 protocol > __cmyth_send_message > __cmyth_send_message: sending message '29 ANN Playback 192.168.230.31 0' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '2 ' ret = 2 > __cmyth_rcv_string: string received 'OK' > cmyth_conn_connect_ctrl: done connecting control connection ret = 0x105d0e34 > cmyth_conn_connect_event: connecting event channel connection > cmyth_connect: connecting to 192.168.230.50 fd = 26 > cmyth_allocate_data(32, ret = 0x1035c004, ref = 0x1035bff8) { > cmyth_allocate_data(32, ret = 0x1035c004, ref = 0x1035bff8) } > cmyth_conn_create { > cmyth_set_destroy(0x1035c004, func = 0x100a20d4, ref = 0x1035bff8) { > cmyth_set_destroy(0x1035c004, func = 0x100a20d4, ref = 0x1035bff8) } > cmyth_conn_create } > __cmyth_send_message > __cmyth_send_message: sending message '20 MYTH_PROTO_VERSION 8' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '13 ' ret = 13 > __cmyth_rcv_string: string received 'REJECT' > __cmyth_rcv_string: string received '30' > cmyth_conn_connect: asked for version 8, got version 30 > cmyth_release(0x1035c004) { > libs/libcmyth/alloc.c:441 cmyth_release(0x1035c004,ref = > 0x1035bff8,refcount = 0 x1,length = 32) > cmyth_conn_destroy { > cmyth_conn_destroy: shutdown and close connection fd = 26 > cmyth_conn_destroy } > libs/libcmyth/alloc.c:460 cmyth_release() -- free it > cmyth_release(0x1035c004) } > cmyth_connect: connecting to 192.168.230.50 fd = 26 > cmyth_allocate_data(32, ret = 0x1035c004, ref = 0x1035bff8) { > cmyth_allocate_data(32, ret = 0x1035c004, ref = 0x1035bff8) } > cmyth_conn_create { > cmyth_set_destroy(0x1035c004, func = 0x100a20d4, ref = 0x1035bff8) { > cmyth_set_destroy(0x1035c004, func = 0x100a20d4, ref = 0x1035bff8) } > cmyth_conn_create } > __cmyth_send_message > __cmyth_send_message: sending message '21 MYTH_PROTO_VERSION 30' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '13 ' ret = 13 > __cmyth_rcv_string: string received 'ACCEPT' > __cmyth_rcv_string: string received '30' > cmyth_conn_connect: asked for version 30, got version 30 > cmyth_conn_connect: agreed on Version 30 protocol > __cmyth_send_message > __cmyth_send_message: sending message '29 ANN Playback 192.168.230.31 1' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '2 ' ret = 2 > __cmyth_rcv_string: string received 'OK' > cmyth_conn_connect_event: done connecting event channel connection ret > = 0x1035c 004 > cmyth_allocate_data(20, ret = 0x1035bcf4, ref = 0x1035bce8) { > cmyth_allocate_data(20, ret = 0x1035bcf4, ref = 0x1035bce8) } > cmyth_database_init > cmyth_strdup(0x3000196c) { > cmyth_allocate_data(15, ret = 0x10330fcc, ref = 0x10330fc0) { > cmyth_allocate_data(15, ret = 0x10330fcc, ref = 0x10330fc0) } > cmyth_strdup str = 0x3000196c[192.168.230.50], len = 15, ret =0x10330fcc > cmyth_strdup() } > cmyth_strdup(0x300019ac) { > cmyth_allocate_data(7, ret = 0x1035c064, ref = 0x1035c058) { > cmyth_allocate_data(7, ret = 0x1035c064, ref = 0x1035c058) } > cmyth_strdup str = 0x300019ac[mythtv], len = 7, ret =0x1035c064 > cmyth_strdup() } > cmyth_strdup(0x300019cc) { > cmyth_allocate_data(7, ret = 0x1035c07c, ref = 0x1035c070) { > cmyth_allocate_data(7, ret = 0x1035c07c, ref = 0x1035c070) } > cmyth_strdup str = 0x300019cc[mythtv], len = 7, ret =0x1035c07c > cmyth_strdup() } > cmyth_strdup(0x300019ec) { > cmyth_allocate_data(12, ret = 0x1035c094, ref = 0x1035c088) { > cmyth_allocate_data(12, ret = 0x1035c094, ref = 0x1035c088) } > cmyth_strdup str = 0x300019ec[mythconverg], len = 12, ret =0x1035c094 > cmyth_strdup() } > control_start [src/mythtv.c:1596]: (trace) { > mythtv control thread sleeping...(pid 133) > cmyth_hold(0x105d0e34) { > cmyth_hold(0x105d0e34) } > wd_start [src/mythtv.c:1492]: (trace) { > myth watchdog thread started (pid 134) > mythtv_init [src/mythtv.c:1827]: (trace) 0} > mythtv_verify [src/mythtv.c:253]: (trace) 0} > event thread started (pid 135) > __cmyth_rcv_length > Starting new livetv > switch_hw_state(): changing from 1 to 2 > cmyth_hold(0x105d0e34) { > cmyth_hold(0x105d0e34) } > __cmyth_send_message > __cmyth_send_message: sending message '23 GET_FREE_RECORDER_COUNT' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '1 ' ret = 1 > __cmyth_rcv_string: string received '3' > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) { > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) } > cmyth_recorder_create > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) { > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) } > __cmyth_send_message > __cmyth_send_message: sending message '27 GET_RECORDER_FROM_NUM[]:[]1' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '13 ' ret = 13 > __cmyth_rcv_string: string received 'nohost' > __cmyth_rcv_string: string received '-1' > cmyth_release(0x105e5bec) { > libs/libcmyth/alloc.c:441 cmyth_release(0x105e5bec,ref = > 0x105e5be0,refcount = 0 x1,length = 40) > cmyth_recorder_destroy > libs/libcmyth/alloc.c:460 cmyth_release() -- free it > cmyth_release(0x105e5bec) } > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) { > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) } > cmyth_recorder_create > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) { > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) } > __cmyth_send_message > __cmyth_send_message: sending message '27 GET_RECORDER_FROM_NUM[]:[]2' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '13 ' ret = 13 > __cmyth_rcv_string: string received 'nohost' > __cmyth_rcv_string: string received '-1' > cmyth_release(0x105e5bec) { > libs/libcmyth/alloc.c:441 cmyth_release(0x105e5bec,ref = > 0x105e5be0,refcount = 0 x1,length = 40) > cmyth_recorder_destroy > libs/libcmyth/alloc.c:460 cmyth_release() -- free it > cmyth_release(0x105e5bec) } > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) { > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) } > cmyth_recorder_create > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) { > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) } > __cmyth_send_message > __cmyth_send_message: sending message '27 GET_RECORDER_FROM_NUM[]:[]3' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '13 ' ret = 13 > __cmyth_rcv_string: string received 'nohost' > __cmyth_rcv_string: string received '-1' > cmyth_release(0x105e5bec) { > libs/libcmyth/alloc.c:441 cmyth_release(0x105e5bec,ref = > 0x105e5be0,refcount = 0 x1,length = 40) > cmyth_recorder_destroy > libs/libcmyth/alloc.c:460 cmyth_release() -- free it > cmyth_release(0x105e5bec) } > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) { > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) } > cmyth_recorder_create > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) { > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) } > __cmyth_send_message > __cmyth_send_message: sending message '27 GET_RECORDER_FROM_NUM[]:[]4' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '13 ' ret = 13 > __cmyth_rcv_string: string received 'nohost' > __cmyth_rcv_string: string received '-1' > cmyth_release(0x105e5bec) { > libs/libcmyth/alloc.c:441 cmyth_release(0x105e5bec,ref = > 0x105e5be0,refcount = 0 x1,length = 40) > cmyth_recorder_destroy > libs/libcmyth/alloc.c:460 cmyth_release() -- free it > cmyth_release(0x105e5bec) } > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) { > cmyth_allocate_data(40, ret = 0x105e5bec, ref = 0x105e5be0) } > cmyth_recorder_create > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) { > cmyth_set_destroy(0x105e5bec, func = 0x100a9594, ref = 0x105e5be0) } > __cmyth_send_message > __cmyth_send_message: sending message '27 GET_RECORDER_FROM_NUM[]:[]5' > __cmyth_rcv_length > __cmyth_rcv_length: buffer is '13 ' ret = 13 > ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Mvpmc-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mvpmc-users mvpmc wiki: http://mvpmc.wikispaces.com/
