IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> Changing channel without interrupting a capture, Opinions and help welcome
jtvlan
post Aug 30 2007, 06:07 AM
Post #1


Participant


Group: New Members
Posts: 46
Joined: 14-April 06
From: Italy
Member No.: 4,599
Card: None


I'm thinking about some improvements of JTVLAN and I was wondering the following:

- would it be possible to write a command line program (say tune.exe) that, taking the cardId, frequency, pids from the command line, is able to change the tuner channel just while a capture process is running without interrupting it?

- is there someone who'd like to help the JTVLAN development and write such a program (i' not an expert of Windoes development, do not have VC++ etc) ?

I plan to use the program in the channel-change phase. To change a channel the actual JTVLAN version stops and starts the capture, but this takes very long time and is annoying. Using that little program it would be much faster and easier...

Thanks for any help or suggestion.
Iacopo
Go to the top of the page
 
+Quote Post
bear
post Aug 30 2007, 07:21 PM
Post #2


Forum Regular


Group: Members
Posts: 3,099
Joined: 24-April 04
From: Queensland
Member No.: 808
Card: VisionPlus DVB-t


QUOTE
- would it be possible to write a command line program (say tune.exe) that, taking the cardId, frequency, pids from the command line, is able to change the tuner channel just while a capture process is running without interrupting it?
MediaPortal's TVServer does this so maybe chat to them. While it is possible it is quite complicated and prone to a multiple number of issues unless you utilise cpu power to re stripe the stream. Best to suffer the delay or look at preloading the channel from another file and switching sources when loaded to give you an almodt seamless cut. Software components is already around that does this.
Go to the top of the page
 
+Quote Post
Guest_dns_*
post Aug 30 2007, 08:06 PM
Post #3





Guests






As you can see null is working on version 5 of ws so hopefully the command line tools will make it possible to record programs from a command line in theory atleast.

If i ever get around to it, it should be possible to write a small server to replace the interface of web scheduler.
It would be a small server that a small java client would interact with to start and stop recordings.
How does jtvlan actually work? i assume it is a wrapper around ws that interacts by parsing the ws pages and saves files to a folder that is accessible as a windows share?
Go to the top of the page
 
+Quote Post
null_pointer
post Aug 30 2007, 08:10 PM
Post #4


Web Scheduler Developer


Group: Developers
Posts: 4,495
Joined: 9-July 03
From: Melb
Member No.: 9
Card: None


Also to what bear has stated once a process/graph has the capture up and running no other instance of the driver capture filter can be created so it would not be possible to change the device tuner from a separate EXE once a capture is running.
Go to the top of the page
 
+Quote Post
jtvlan
post Aug 30 2007, 08:29 PM
Post #5


Participant


Group: New Members
Posts: 46
Joined: 14-April 06
From: Italy
Member No.: 4,599
Card: None


First of all thanks for the feedbacks

QUOTE (dns @ Aug 30 2007, 08:06 PM) *
How does jtvlan actually work? i assume it is a wrapper around ws that interacts by parsing the ws pages and saves files to a folder that is accessible as a windows share?


No, jtvlan plugs-in into WebScheduler and calls Java public methods of the WebScheduler engine. This way it is able to interact with the internal WS state, get the channel database, get the schedules, running captures and so. I thought myself about the little server using the command line tools, but it would lose all the things mentioned before.


QUOTE (null_pointer @ Aug 30 2007, 08:10 PM) *
Also to what bear has stated once a process/graph has the capture up and running no other instance of the driver capture filter can be created so it would not be possible to change the device tuner from a separate EXE once a capture is running.


thanks null_poiner and bear, that's exactely what I needed to know...
Go to the top of the page
 
+Quote Post
jtvlan
post Aug 30 2007, 08:43 PM
Post #6


Participant


Group: New Members
Posts: 46
Joined: 14-April 06
From: Italy
Member No.: 4,599
Card: None


QUOTE (null_pointer @ Aug 30 2007, 08:10 PM) *
Also to what bear has stated once a process/graph has the capture up and running no other instance of the driver capture filter can be created so it would not be possible to change the device tuner from a separate EXE once a capture is running.


...but I guess it would be possible to create a modified version of the actual capture.exe to make it read tuning commands from the standard input while it is capturing (it would be easy to send commands writing to the java Process OutputStream). This way i would not need a separate EXE to create a new instance of the filter. Could it be done that way or the issues mentioned by bear would apply in that case ? Thanks
Go to the top of the page
 
+Quote Post
Guest_dns_*
post Aug 30 2007, 09:43 PM
Post #7





Guests






The question is does ws provide enough information for jtvlan?
From what i can see it would need: number of capture cards, number of free cards, with the 5 engine it might be useful to have a canRecord(Channel) method as you may already be recording something in the same mutex.

You should also have a 1 step method that will record to a specified filename (i don't think ws does this predictable enough) using a specified file type on a specified channel and it should also setup the auto delete for a few days to save space. This method needs to return some information such as the filename and if there was any errors in setup.
A second method needs to exist that will list the currently running captures and have the ability to stop a running capture.
Go to the top of the page
 
+Quote Post
null_pointer
post Aug 30 2007, 10:20 PM
Post #8


Web Scheduler Developer


Group: Developers
Posts: 4,495
Joined: 9-July 03
From: Melb
Member No.: 9
Card: None


Seriously if you are going into that much depth and plugging into WS at such a log level (class level) then you should probably just write your own capture app from scratch, at least that way you can build what you need and not have to worry about trying to get it to do something it was nto designed to do.

With the managed C# DirectShow classes it is not that hard to whip up a capture tool for DBA devices.
Go to the top of the page
 
+Quote Post
efax
post May 6 2008, 01:23 PM
Post #9


Forum Regular


Group: New Members
Posts: 124
Joined: 29-March 08
Member No.: 9,881
Card: Avermedia DVB-t


QUOTE (jtvlan @ Aug 30 2007, 06:07 AM) *
I'm thinking about some improvements of JTVLAN and I was wondering the following:

- would it be possible to write a command line program (say tune.exe) that, taking the cardId, frequency, pids from the command line, is able to change the tuner channel just while a capture process is running without interrupting it?

- is there someone who'd like to help the JTVLAN development and write such a program (i' not an expert of Windoes development, do not have VC++ etc) ?

I plan to use the program in the channel-change phase. To change a channel the actual JTVLAN version stops and starts the capture, but this takes very long time and is annoying. Using that little program it would be much faster and easier...

Thanks for any help or suggestion.
Iacopo


Hi, you can use DVPiper for this.

You can change frequency inside the program while recording (though you should probably stream the whole transport stream cause the PIDs would then change).

Hope that helps.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 21st October 2018 - 01:27 AM