Opened 18 years ago
Closed 17 years ago
Last modified 16 years ago
#2152 closed enhancement (invalid)
Add support for "udp:" urls in FreeboxRecorder
Reported by: | Owned by: | danielk | |
---|---|---|---|
Priority: | minor | Milestone: | 0.21 |
Component: | mythtv | Version: | head |
Severity: | medium | Keywords: | |
Cc: | scott@… | Ticket locked: | no |
Description
Refs #1704. With the following patch, the FreeboxRecorder? can now record (multiple) udp urls (the same ones as the CRCIP Recorder does).
Attachments (5)
Change History (13)
Changed 18 years ago by
Attachment: | patch-freebox-udp.diff added |
---|
comment:2 Changed 18 years ago by
Thank for patch. Sorry, but I see this patch too late, when I was finished same work :(.
I agree another solution. General changes:
- It's work for me :) . Patch added by mythtv[at]remars.com have two bugs. First - it not include file <cassert> in sources used assert, so compilation fail. Second and main - with my data channel switching may (depending on channel) give error. Cause of this error - caching in MPEGStreamData class. PAT & PMT packed come after channel switching examine as redurant and on this case recorder can't handle key frame (they waiting for incorrect video PID). Solution - redefine Reset method in recorder.
- My solution based on livemedia library - they realization of multicast handling is better than in avformat (support reuse socket,avtomatic multicast/unicast detection).
- M3U lists now can be load from local fs and ftp (not tested).
- I use base class instead of wrapper
comment:3 Changed 18 years ago by
Resolution: | → invalid |
---|---|
Status: | new → closed |
Unified patch in preparation.
comment:4 Changed 18 years ago by
Resolution: | invalid |
---|---|
Status: | closed → reopened |
New unified patch. Major changes are:
- uses livemedia to stream the udp urls
- the m3u can be read in a local file or downloaded using ftp protocol
- major refactorings : adding new protocol should be easier now
- few bug fixes
Thanks to Mike Mironov for its great work.
comment:5 Changed 18 years ago by
New version of patch. Major changes:
- Add support for RTP protocol with MPEG2-TS payload.
- Add support for file protocol. Main purpose of this is allow to debug problem with streams on other machines (as my problems with channel changing). This protocol support only MPEG2-TS files. For any other files use MythVideo?.
- Add class TSPacketSplitter that split stream data in TSPacket. It may be useful for other recorders.
- Change choosing class for protocol. Now we use ClassFactory? pattern. It's simplify creating new protocol handlers.
Great thanks to Mickaël Remars for its work.
comment:6 Changed 17 years ago by
Resolution: | → invalid |
---|---|
Status: | reopened → closed |
Thanks for all the work the two of you have done, I'm greatful and I would like to get this functionality into MythTV. However, this patch is way too big.
Please break this into 10kb to 20kb sized patches. A few patches for the reorganization, which don't add or subtract any features but are fully functional. At least one patch for each file type or protocol added.
Please also document every class with doxygen, and any method whose name does not fully explain the function of the method. Finally, put a summary of all the classes and important methods and how they interact in the FreeboxRecorder? class documentation (See videooutbase for an example.)
Please don't add any classes without thinking about it carefully, the freebox code already has more classes than any other recorder. Any general MPEG classes that are added should go into libs/libmythtv/mpeg, but the TSPacketSplitter functionality appears to already exist in the StreamData? classes.
Changed 17 years ago by
Attachment: | patch-freebox-unified-udp-v18.diff added |
---|
Latest patch (for backup purpose)
comment:7 Changed 17 years ago by
Cc: | scott@… added |
---|
comment:8 Changed 16 years ago by
Replying to mythtv@remars.com:
Refs #1704. With the following patch, the FreeboxRecorder? can now record (multiple) udp urls (the same ones as the CRCIP Recorder does).
Is there any chance of a HTTP patch too? I have a couple of streams that are easily accessible via HTTP, but the packet loss on my line is too great to try to get stuff down via UDP.
The patch