summaryrefslogtreecommitdiffstats
path: root/stream/stream_tv.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove classic Linux analog TV support, and DVB runtime controlswm42019-09-131-52/+0
| | | | | | | | | | | | | | | | | | | | | | | | Linux analog TV support (via tv://) was excessively complex, and whenever I attempted to use it (cameras or loopback devices), it didn't work well, or would have required some major work to update it. It's very much stuck in the analog past (my favorite are the frequency tables in frequencies.c for analog TV channels which don't exist anymore). Especially cameras and such work fine with libavdevice and better than tv://, for example: mpv av://v4l2:/dev/video0 (adding --profile=low-latency --untimed even makes it mostly realtime) Adding a new input layer that targets such "modern" uses would be acceptable, if anyone is interested in it. The old TV code is just too focused on actual analog TV. DVB is rather obscure, but has an active maintainer, so don't remove it. However, the demux/stream ctrl layer must go, so remove controls for channel switching. Most of these could be reimplemented by using the normal method for option runtime changes.
* demux, stream: rip out the classic stream cachewm42018-08-311-1/+0
| | | | | | The demuxer cache is the only cache now. Might need another change to combat seeking failures in mp4 etc. The only bad thing is the loss of cache-speed, which was sort of nice to have.
* stream: get rid of streamtype enumwm42017-02-021-1/+0
| | | | | | | | | Because it's kind of dumb. (But not sure if it was worth the trouble.) For stream_file.c, we add new explicit fields. The rest are rather special uses and can be killed by comparing the stream impl. name. The changes to DVD/BD/CD/TV are entirely untested.
* tv: remove weird option parsing stuffwm42016-09-091-17/+0
| | | | Mostly untested.
* Update license headersMarcin Kurczewski2015-04-131-5/+4
| | | | Signed-off-by: wm4 <wm4@nowhere>
* Add more constwm42014-06-111-2/+2
| | | | | | | While I'm not very fond of "const", it's important for declarations (it decides whether a symbol is emitted in a read-only or read/write section). Fix all these cases, so we have writeable global data only when we really need.
* tv: remove global option variableswm42014-06-111-44/+4
| | | | | | Pretty much nothing changes, but using -tv-scan with suboptions doesn't work anymore (instead of "-tv-scan x" it's "-tv scan-x" now). Flat options ("-tv-scan-x") stay compatible.
* stream: remove chaos related to writeable streamswm42014-05-241-1/+1
| | | | | | | | | | For some reason, we support writeable streams. (Only encoding uses that, and the use of it looks messy enough that I want to replace it with FILE or avio today.) It's a chaos: most streams do not actually check the mode parameter like they should. Simplify it, and let streams signal availability of write mode by setting a flag in the stream info struct.
* Move options/config related files from mpvcore/ to options/wm42013-12-171-1/+1
| | | | | | | | | Since m_option.h and options.h are extremely often included, a lot of files have to be changed. Moving path.c/h to options/ is a bit questionable, but since this is mainly about access to config files (which are also handled in options/), it's probably ok.
* dvdnav, tv: force-disable cachingwm42013-12-141-0/+1
| | | | | | | | | On dvdnav, caching kind of works but not really. (Not our fault, at least not fully. It's due to libdvdnav being slightly misdesigned; see previous commit for some explanations.) The TV code is implemented in the demuxer, and the stream implementation is just a wrapper, so caching makes no sense here.
* stream: fix url_options field, make protocols field not fixed lengthwm42013-08-261-7/+7
| | | | | | | | | | | | | | | | | | | | The way the url_options field was handled was not entirely sane: it's actually a flexible array member, so it points to garbage for streams which do not initialize this member (it just points to the data right after the struct, which is garbage in theory and practice). This was not actually a problem, since the field is only used if priv_size is set (due to how this stuff is used). But it doesn't allow setting priv_size only, which might be useful in some cases. Also, make the protocols array not a fixed size array. Most stream implementations have only 1 protocol prefix, but stream_lavf.c has over 10 (whitelists ffmpeg protocols). The high size of the fixed size protocol array wastes space, and it is _still_ annoying to add new prefixes to stream_lavf (have to bump the maximum length), so make it arbitrary length. The two changes (plus some more cosmetic changes) arte conflated into one, because it was annoying going over all the stream implementations.
* core: move contents to mpvcore (2/2)Stefano Pigozzi2013-08-061-1/+1
| | | | Followup commit. Fixes all the files references.
* stream: redo URL parsing, replace m_struct usage with m_configwm42013-08-021-19/+13
| | | | | | | | | | | | | Move the URL parsing code from m_option.c to stream.c, and simplify it dramatically. This code originates from times when http code used this, but now it's just relict from other stream implementations reusing this code. Remove the unused bits and simplify the rest. stream_vcd is insane, and the priv struct is different on every platform, so drop the URL parsing. This means you can't specify a track anymore, only the device. (Does anyone use stream_vcd? Not like this couldn't be fixed, but it doesn't seem worth the effort, especially because it'd require potentially touching platform specific code.)
* stream: remove useless author/comment fieldswm42013-07-121-3/+1
| | | | | | | | | These were printed only with -v. Most streams had them set to useless or redundant values, so it's just badly maintained bloat. Since we remove the "author" field too, and since this may have copyright implications, we add the contents of the author fields to the file headers, except if the name is already part of the file header.
* Cleanup some include statementswm42013-07-121-1/+0
|
* core: change open_stream and demux_open signaturewm42013-07-121-2/+2
| | | | | | | | | | | This removes the dependency on DEMUXER_TYPE_* and the file_format parameter from the stream open functions. Remove some of the playlist handling code. It looks like this was needed only for loading linked mov files with demux_mov (which was removed long ago). Delete a minor bit of dead network-related code from stream.c as well.
* stream/tv: remove unused dshow-specific optionsMartin Herkt2013-07-081-5/+1
|
* Rename directories, move files (step 2 of 2)wm42012-11-121-3/+3
| | | | | | | | | | | | Finish renaming directories and moving files. Adjust all include statements to make the previous commit compile. The two commits are separate, because git is bad at tracking renames and content changes at the same time. Also take this as an opportunity to remove the separation between "common" and "mplayer" sources in the Makefile. ("common" used to be shared between mplayer and mencoder.)
* mplayer, stream_tv: move variable initializationwm42012-08-031-1/+1
| | | | It's not clear why that was done in mplayer's main function.
* Remove teletext supportwm42012-08-031-6/+0
| | | | | | | | Teletext requires special OSD support. Because I can't even test teletext, I can't restore support for it. Since teletext can be considered ancient and obscure, and since it doesn't make sense to keep the remaining teletext code without being able to use it, I'm removing it.
* Fix warning "missing braces around initializer".cehoyos2010-02-271-0/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30782 b3059339-0415-0410-9bf9-f77b7e298cf2
* whitespace cosmetics: Remove all trailing whitespace.diego2009-05-131-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29305 b3059339-0415-0410-9bf9-f77b7e298cf2
* Use standard license headers with standard formatting.diego2008-05-141-13/+16
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26769 b3059339-0415-0410-9bf9-f77b7e298cf2
* stream_opts should be constreimar2008-01-131-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25719 b3059339-0415-0410-9bf9-f77b7e298cf2
* stream_opts arrays should be constreimar2007-12-021-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25270 b3059339-0415-0410-9bf9-f77b7e298cf2
* Mark all stream_info_t as constreimar2007-12-021-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25239 b3059339-0415-0410-9bf9-f77b7e298cf2
* #ifdef's in tv.c and tv.h becomes more and more hard to maintain.voroshil2007-10-141-13/+0
| | | | | | | | I've decided to remove all of them and control options only through cfg-common.h git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24786 b3059339-0415-0410-9bf9-f77b7e298cf2
* DirectShow based tv:// driver for win32voroshil2007-10-131-3/+13
| | | | | | | | | | | Teletext is also supported (but 625 system parameters are hardcoded). pthreads is required for teletext. Code is still experimental. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24772 b3059339-0415-0410-9bf9-f77b7e298cf2
* Implement setting gain control for video devices (usually webcams)voroshil2007-09-181-0/+1
| | | | | | | in v4l2 tv:// driver. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24573 b3059339-0415-0410-9bf9-f77b7e298cf2
* Implementation of tv:// driver autodetection.voroshil2007-09-101-1/+1
| | | | | | | | | | | | If user did not specify driver directly, all available drivers will be probed (in order: v4l2,v4l1,bsdbt848,dummy). In most cases first probed driver will be successfully autodetected and used. Autodetection will be disabled if user specified driver directly (in command line or config). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24423 b3059339-0415-0410-9bf9-f77b7e298cf2
* Support for selecting language via packet 28.voroshil2007-08-311-0/+1
| | | | | | | | | | Also allows to select default teletext language. It will be used if language is not specified by network provider via packet 28. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24310 b3059339-0415-0410-9bf9-f77b7e298cf2
* 10l: Move #endif upper to reflect changes in r24054.voroshil2007-08-261-1/+1
| | | | | | | | | | This fixes wrong tvscan suboptions initialization under *BSD. patch from Bernd Ernesti mplayer-dev-eng at lists dot veego dot de git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24211 b3059339-0415-0410-9bf9-f77b7e298cf2
* Automatic TV channels scanning ability for MPlayer.voroshil2007-08-231-1/+5
| | | | | | | Code is based on patch from Otvos Attila oattila at chello dot hu git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24125 b3059339-0415-0410-9bf9-f77b7e298cf2
* Teletext support.voroshil2007-07-291-0/+3
| | | | | | | Part 2/5: options/slaves/configure/definitions/etc git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23920 b3059339-0415-0410-9bf9-f77b7e298cf2
* Removing global variables from tv://voroshil2007-07-291-19/+55
| | | | | | | | Step 1: introducing new structure, fixing tv:// stream git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23902 b3059339-0415-0410-9bf9-f77b7e298cf2
* Cosmetics.voroshil2007-06-301-3/+3
| | | | | | | Reindent line, remove trailing spaces. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23698 b3059339-0415-0410-9bf9-f77b7e298cf2
* Don't override input= option value is no input id is passed in tv:// url.voroshil2007-06-301-2/+4
| | | | | | | | Remove debug fprintf git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23697 b3059339-0415-0410-9bf9-f77b7e298cf2
* Implemented tv://[<channel>][/<input_id>] url syntaxvoroshil2007-06-281-3/+34
| | | | | | | | | to allow users start watching from S-Video or Composite input without touching '-tv input=' option. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23687 b3059339-0415-0410-9bf9-f77b7e298cf2
* proper inclusion of demuxer.h (including libmpdemux in Makefile only was to ↵ben2006-08-041-1/+1
| | | | | | make previous split easier) git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19318 b3059339-0415-0410-9bf9-f77b7e298cf2
* conversion from stream_null to stream_tv was missing stream typeben2006-08-031-0/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19301 b3059339-0415-0410-9bf9-f77b7e298cf2
* add an explicit tv stream input instead of the previous hack in stream_nullben2006-07-311-0/+49
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19279 b3059339-0415-0410-9bf9-f77b7e298cf2