summaryrefslogtreecommitdiffstats
path: root/media/base/media_switches.h
Commit message (Collapse)AuthorAgeFilesLines
* Implement audio recording for Linux via ALSA.satish@chromium.org2010-09-021-1/+2
| | | | | | | | | | | There are no new unit tests because a cross platform unit test added in CL 3357004 covers this code. BUG=53598 TEST=media_unittests --gtest_filter=AudioInputTest.* Review URL: http://codereview.chromium.org/3299005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58409 0039d316-1c4b-4281-b951-d872f2087c98
* 1. ipc_video_decoder.cc/h is media pipeline filter which use the gpu decoder ↵jiesun@google.com2010-08-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | facilities in video stack. it is only enabled when (a) hardware composition is on (b) hardware decoding command line is on (c) h264 codec is specified. 2. gpu_video_service.cc/h is a singleton in gpu process which provide video services for renderer process, through it we could create decoder. ( in my imagination, in the future, we could create encoder or capturer too) 3. gpu_video_decoder.cc/h. abstract interface for hardware decoder. 4. gpu_video_service_host.cc/h is singleton in renderer process which provide proxy for gpu_video_service. 5. gpu_video_decoder_host.cc/h is proxy for gpu_video_decoder. (1 to 1 map).basically there is one global GpuVideoService in GPU process, one GpuVideoServiceHost in Renderer process. for each renderer process, there are could be multiple renderer view, each could had multiple GpuVideoDecoderHost the connect to GpuVideoDeocder through GPUCHannelHOst/GpuChannel. 6. gpu_video_common.cc/h: IPC message definition and pickle/marshaling support. ISSUES: 1. in media pipeline, we need let decoder to determine if bit stream filter should be used instead of let command line to determine it. 2. stop readback from D3D surface use ANGLE. 3. Flush logic still need fine tuning. 4. CreateThread in GpuVideoDecoder, and post message in message handler, and derived classs handle message loop. ? 5. Error handling. 6. Input ring buffer implementation. Current impl is naive. 7.Add output queue for MFT decoder. 8. Query Capabilities at GetVideoServices()... BUG=None TEST=Windows7 Review URL: http://codereview.chromium.org/2873089 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55516 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 55405 - Special thanks for in-ming cheng's MFT hardware decodering code.ananta@chromium.org2010-08-091-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. ipc_video_decoder.cc/h is media pipeline filter which use the gpu decoder facilities in video stack. it is only enabled when (a) hardware composition is on (b) hardware decoding command line is on (c) h264 codec is specified. 2. gpu_video_service.cc/h is a singleton in gpu process which provide video services for renderer process, through it we could create decoder. ( in my imagination, in the future, we could create encoder or capturer too) 3. gpu_video_decoder.cc/h. abstract interface for hardware decoder. 4. gpu_video_decoder_mft.cc/h media foundation transform hardware decoder which run on windows 7 only. 5. gpu_video_service_host.cc/h is singleton in renderer process which provide proxy for gpu_video_service. 6. gpu_video_decoder_host.cc/h is proxy for gpu_video_decoder. (1 to 1 map).basically there is one global GpuVideoService in GPU process, one GpuVideoServiceHost in Renderer process. for each renderer process, there are could be multiple renderer view, each could had multiple GpuVideoDecoderHost the connect to GpuVideoDeocder through GPUCHannelHOst/GpuChannel. 7. gpu_video_common.cc/h: IPC message definition and pickle/marshaling support. ISSUES: 1. in media pipeline, we need let decoder to determine if bit stream filter should be used instead of let command line to determine it. 2. stop readback from D3D surface use ANGLE. 3. Flush logic still need fine tuning. 4. CreateThread in GpuVideoDecoder, and post message in message handler, and derived classs handle message loop. ? 5. Error handling. 6. Input ring buffer implementation. Current impl is naive. 7.Add output queue for MFT decoder. 8. Query Capabilities at GetVideoServices()... BUG=None TEST=Windows7 Review URL: http://codereview.chromium.org/2873089 TBR=jiesun@google.com Review URL: http://codereview.chromium.org/3020077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55419 0039d316-1c4b-4281-b951-d872f2087c98
* Special thanks for in-ming cheng's MFT hardware decodering code.jiesun@google.com2010-08-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. ipc_video_decoder.cc/h is media pipeline filter which use the gpu decoder facilities in video stack. it is only enabled when (a) hardware composition is on (b) hardware decoding command line is on (c) h264 codec is specified. 2. gpu_video_service.cc/h is a singleton in gpu process which provide video services for renderer process, through it we could create decoder. ( in my imagination, in the future, we could create encoder or capturer too) 3. gpu_video_decoder.cc/h. abstract interface for hardware decoder. 4. gpu_video_decoder_mft.cc/h media foundation transform hardware decoder which run on windows 7 only. 5. gpu_video_service_host.cc/h is singleton in renderer process which provide proxy for gpu_video_service. 6. gpu_video_decoder_host.cc/h is proxy for gpu_video_decoder. (1 to 1 map).basically there is one global GpuVideoService in GPU process, one GpuVideoServiceHost in Renderer process. for each renderer process, there are could be multiple renderer view, each could had multiple GpuVideoDecoderHost the connect to GpuVideoDeocder through GPUCHannelHOst/GpuChannel. 7. gpu_video_common.cc/h: IPC message definition and pickle/marshaling support. ISSUES: 1. in media pipeline, we need let decoder to determine if bit stream filter should be used instead of let command line to determine it. 2. stop readback from D3D surface use ANGLE. 3. Flush logic still need fine tuning. 4. CreateThread in GpuVideoDecoder, and post message in message handler, and derived classs handle message loop. ? 5. Error handling. 6. Input ring buffer implementation. Current impl is naive. 7.Add output queue for MFT decoder. 8. Query Capabilities at GetVideoServices()... BUG=None TEST=Windows7 Review URL: http://codereview.chromium.org/2873089 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55405 0039d316-1c4b-4281-b951-d872f2087c98
* Change default to three threads for video decoding and add command line ↵fbarchard@chromium.org2010-05-191-4/+6
| | | | | | | | | | | --video-threads. BUG=44128 TEST=player_wtl.exe --video-threads=6 d:\mediatests\crowd\crowd2.mp4 Review URL: http://codereview.chromium.org/2080008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47723 0039d316-1c4b-4281-b951-d872f2087c98
* Some fixes to player_x11 when OpenMAX is enabledhclam@chromium.org2010-02-201-1/+0
| | | | | | | | | | | - remove the --enable-h264-annexb-filter flag - OmxVideoDecodeEngine have some problems dealing EOS buffers TEST=player_x11 runs with --enable-openmax Review URL: http://codereview.chromium.org/652008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39542 0039d316-1c4b-4281-b951-d872f2087c98
* Switches to enable OpenMAX for video decoding in Chromehclam@chromium.org2010-01-221-1/+2
| | | | | | | | | Added a --enable-openmax switch to enable OpenMAX for video decoding. Review URL: http://codereview.chromium.org/555046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36883 0039d316-1c4b-4281-b951-d872f2087c98
* Implementation of OmxVideoDecodeEngine.ajwong@chromium.org2009-12-221-0/+2
| | | | | | | | | | | | | | | | | | Also moves FFmpegVideoDecodeEngine FFmpegVideoDecoder, OmxVideoDecoder, and VideoDecoderImpl into their own files. Refactors FFmpegDemuxerTest to be less of a characterization test, and to hopefully be less fragile. Creates a set of utilities for handling Callbacks versus Tasks, and resource management related to Callbacks. Re-enables the annexb filters for the chrome build of FFmpeg. Added a BitstreamConverter class that abstracts the bitstream filter code. Cleans up a few gyp mistakes with flag exporting. Review URL: http://codereview.chromium.org/492023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35171 0039d316-1c4b-4281-b951-d872f2087c98
* Move Alsa device opening into the audio thread, and add in support for ↵ajwong@chromium.org2009-10-161-0/+20
multi-channel audio. Moving the device opening into the audio thread will prevent browser hangs for badly behaving alsa implementations (like pulseaudio) that can hang snd_pcm_open if pulseaudiod is wedged, even if SND_PCM_NONBLOCK is requested. For multi-channel audio, device enumeration has been added to try and find a multi-channel device with a stable channel mapping. According to http://0pointer.de/blog/projects/guide-to-sound-apis.html, default should only be used with mono and stereo stream because the channel ordering is not defined by Alsa. To get a well-defined channel ordering, one must use one of the surround40, surround51, etc., device names. However, these device names do not always allow multiple opens, so a fallback scheme is implemented to use default if necessary. BUG=20945,17703 TEST=listened with built-in soundcard and USB soundcard with various other audio programs running. Review URL: http://codereview.chromium.org/275022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29299 0039d316-1c4b-4281-b951-d872f2087c98