forked from jonsafari/mocp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
794 lines (765 loc) · 37.1 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
[Note that all relevant maintenance applied to the stable version has
also been applied to the development version. You should review the
development version changes in conjunction with those of the current
stable version maintenance releases.]
2.6 - "Usability" [alpha3: 2016-11-16]
* Autotools and packaging changes:
- Dropped version micro number for development versions
- Upgraded autoconf-archive macros to 2014-02-28 release
- Replaced custom shell code with Autoconf archive macros
* Changed build behaviours:
- 'make dist': now defaults to XZ compression
- curl-config: replaced by pkg-config
- New GCC-5 and 6 warnings addressed
- Removed checks for POSIX.1 and C99 mandated headers and functions
* Changed minimum support and release requirements:
- POSIX.1: introduced minimum requirement of IEEE 1003.1-2001
- C Compiler: introduced minimum requirement of ISO 9899:1999
- FFmpeg/LibAV: raised minimum requirement to release 1.0/10.0
- FLAC: raised minimum requirement to release 1.1.3
- Berkeley DB: raised minimum requirement to release 4.1
- libcurl: raised minimum requirement to version 7.15.1
- autoconf: raised minimum requirement to version 2.64
- ALSA: raised minimum requirement to version 1.0.11
* New and changed library requirements:
- POPT library: MOC now requires libpopt
* Documentation:
- Improved wording of some error messages
- Added environment variables section to the manpage
* Removed functionality:
- Transitional code from the previous release
- autogen.sh in favour of autoreconf(1)
- Deprecated ffmpeg-config support
- Warning of changed executable name
- Removed "Search Next" interface command
* Changed functionality:
- Decoupled mono-mixing from softmixer
- Made command line toggling arguments case insensitive
* Added functionality:
- Introduced in-memory circular logging buffer
- Introduced MOCP_POPTRC environment variable
- Introduced MOCP_OPTS environment variable
- Add 24-bit support to the OSS sound driver (Vladimir Krylov)
* New and changed command line options:
- echo-args: Show POPT-interpreted command line arguments
* New and changed audio decoders:
- All sndfile-supported extensions are now available
- Added .mat[45] extensions as aliases for .mat in sndfile decoder
- Added .ircam extension as alias for .sf in sndfile decoder
- Added reading from Internet streams to FFmpeg decoder (Jenny Wong)
* Changes to supported formats and codecs:
- All formats provided by Sndfile are now supported
- DSD: now supported via FFmpeg/LibAV (.dff and .dsf files)
- TTA: now supported via FFmpeg/LibAV
- VQF: now supported via FFmpeg/LibAV
* Miscellaneous
- Improved logging from ALSA sound driver and library
- Fixed displayed ALSA volume percentage drift
2.5.2 [2016-11-16]
* New configuration file options:
- ALSAStutterDefeat: avoid the ALSA bug which causes stuttering
* Significant bug fixes:
- Fixed error during configure on busybox systems
- Fixed calculation of average bitrate in FLAC decoder
- Fixed unintentional disabling of MMAP support
- Fixed build failure on split ncurses/tinfo systems
- Fixed unreaped children when running in foreground mode
- Fixed freeze on Nokia devices if audios play to completion
- Circumvented ALSA stutter bug
- Added missing 'Precache' option to example config file
* Miscellaneous:
- Improved the accuracy of the average bitrate for FLAC
- Mitigated out-of-file seeking for several formats
- Warn of TagLib version requirement rising to 1.5
- Warn of Musepack library changing to libmpc (from libmpcdec)
2.5.1 [2016-02-24]
* Significant bug fixes:
- Corrected the setting of linked libraries for Berkeley DB
- Fixed ALSA volume setting problem (Tomasz Golinski)
- Fixed clearing of stream status message on error
- Resolved FFmpeg/LibAV's downmixing API issues (Andreas Cadhalpun)
- Removed duplicate logging of fatal error messages
* Miscellaneous:
- Adapted to FFmpeg 3.0 API
- Warn of FFmpeg/LibAV version requirement rising to 1.0/10.0
- Warn of pending POSIX.1-2001 compliance requirement
- Fixed several warnings and errors on OpenBSD (Brent Cook)
- Fixed various (and potential) segfaults (Daniel T. Borelli,
Hendrik Iben, Rastislav Barlik)
- Fixed various resource leakages
- Silenced various compiler warnings
- Added instructions on building with autoreconf
2.5.0 - "Consolidation" [2014-08-13]
* Autotools and packaging changes:
- Upgraded autoconf version requirement to 2.60
- Added '--with-alsa' to suppress ALSA sound driver inclusion
- Added '--without-oss' to suppress OSS sound driver inclusion
- Added '--disable-cache' to remove tags cache support
- Added specific GDB support to '--enable-debug'
- Refactor decoder plug-ins' autoconf scripts into source directories
- Ensure that all decoders get into the source distribution tarball
- Removed SID decoder's dependance on .la-file presence
- Removed distribution-specific .spec file
- Minor reformatting of the configure summary
- Added warnings for various deprecations and potential problems
- Added warnings for unmet future package requirements
- Updated GNU boilerplate text
* Improved support for embedded systems:
- Refined FFmpeg decoder configuration for use with cross-compilation
- Provided use of Tremor with the Vorbis decoder
- Improve portability to non-GNU library platforms
- Added --with-libiconv-prefix configure option
* Audio driver changes:
- Allow use of the OSSv4 per-application mixer API
- Provided SNDIO support for OpenBSD systems (Alexander Polakov)
* New and changed audio decoders:
- New TiMidity decoder for MIDI (Hendrik Iben)
- Migrate AAC decoder to later FAAD2 API (Max Klinger)
- Added AAC+ (HE-AAC) support to AAC decoder
- New SidPlay2 decoder for SID (Hendrik Iben)
- New Modplug decoder (Hendrik Iben)
- New WavPack decoder (Alexandrov Sergey)
- Renamed SndFile plugin for consistancy
- Removed M4A format support from AAC decoder plugin
- Removed WAV format support from ModPlug decoder plugin
- Detect huge files in certain formats which SndFile cannot play
- Improved (drastically in some cases) the accuracy of AAC durations
* Overhauled FFmpeg/LibAV decoder:
- Resolved FFmpeg API deprecations
- Provided LibAV compatibility
- Provided proper stereo downmixing
- Provided locking support for non-thread-safe library functions
- Provided better FFmpeg or LibAV discrimination
- Provided better audio duration reliability determination
- Increased number of decodable formats (including Xiph Opus)
- Added decoding of audio from video formats
- Added logging of FFmpeg/LibAV messages
- Added seeking in most (but not all) formats
- Added handling for "planar" codecs
- Excluded experimental codecs from decoding
- Fixed misreporting of tags, duration and bitrates
- Fixed memory and file descriptor leakages
- Fixed severe distortion on 8-bit samples
- Fixed loop playing FLAC files
- Fixed many FFmpeg/LibAV API breakages
- Fixed many miscellaneous bugs
- Detect over-length (and therefore broken) WAV files
- Fixed log formatting when FFmpeg messages contain newline characters
* Audio reproduction changes:
- Improved support for 8-bit sample size
- Added software mixer (Hendrik Iben)
- Added parametric equalizer (Hendrik Iben)
- Fixed many bugs which produced distorted sound
- Fixed bugs in 24-bit sample handling (Tomasz Golinski)
* General configuration file changes:
- Reconciled and regularised example config and keymap files
- Introduced lists and function-like syntax
- Introduced variable substitution
- Introduced symbol and boolean option types
- Improved security of the configuration file
- Automatic clearing of an overridden default key binding
- Made processing of keymap file consistant with that of config file
* Changed configuration file options:
- Layout# options moved to a list and function-like syntax
- SoundDriver option moved to a list syntax
- Renamed OSSMixerChannel to OSSMixerChannel1
- Renamed ALSAMixer to ALSAMixer1
- QueueNextSongReturn moved to yes/no values
- TagsCacheSize set to zero now disables tag caching
* New configuration file options:
- OnSongChange: run an external command (Jack Miller)
- RepeatSongChange: govern the running of the OnSongChange command
- OnStop: run an external command on stopping
- EnforceTagsEncoding: substitutes ID3v1TagsEncoding for ISO-8859-1
encoding in ID3v2 tags (Aleks Sherikov)
- FileNamesIconv: converts from local to UTF8 encoding for file names
(Aleks Sherikov)
- NonUTFXterm: converts UTF8 to local encoding for X-Term titles
(Aleks Sherikov)
- AutoLoadLyrics: says whether MOC should look for lyrics files
- PreferredDecoders: allow finer control over decoder selection
- XTerms: externalises terminals regarded as X-Terms
- UseMIMEMagic: says whether to identify audio files by using MIME
- JackStartServer: autostart JACK the server (Max Klinger)
- ShowTimePercent: set the percent played state (Daniel T. Borelli)
- Various options for SidPlay2, Modplug and TiMidity support
* New command line options:
- '-j' to jump to some position in the current track (Nuno Cardoso)
- '-O' to override configuration file settings
- '-Q' to display user formatted information (Juho Hämäläinen)
- '-q' to queue files from command line (Martin Milata)
- '-t' and '--on/off' to toggle or set playback options (Jack Miller)
- '-v' to set the volume (Jack Miller)
* Screen handling changes:
- Changed minimum screen height to 7 lines (Tero Marttila)
- Added support for GNU screen title (Jonathan Derque)
- Restored screen to console mode after reporting fatal errors
- Populated playlist panel when loading default playlist file
- Removed default playlist autofocus at start
- Fixed overlength highlight bar
- Fixed screen upset when tags contain control characters
- Fixed some screen upsets when tags contain UTF-8 characters (firejox)
- Fixed screen upset caused by screen(1) mis-detection
* New and updated client interaction features:
- 'a' command: also add a directory to the playlist (Filippo Giunchedi)
- 'L' command: display music lyrics (Géraud Le Falher)
- 'Y' command: prune unreadable files from the playlist (tyranix)
- Queued messages for display in the message area
- Added play queue (Martin Milata)
- Mark a fragment of a file which can be passed to external commands
- Clear status message after a stream open failure
- Minor help menu clarifications
* Improve text entry history and editting:
- Recognise ^u (by default) as delete to start of line
- Recognise ^k (by default) as delete to end of line
- Save and restore entered text prior to history scrolling
- Save history entry modifications
- Do not save adjacent duplicate entries
- Do not save or modify with blank entries
- Position cursor at end of restored or history line
* Theme changes:
- Enabled highlighted playlist numbers and file times (Marc Tschiesche)
- Fixed miscoloured frame when switching themes (Alexander Polakov)
- Fixed default colour settings
- Fixed cursor placement in themes menu (Alex Merenstein)
- Fixed ordering of theme files in themes menu
- Fixed new attributes application on theme switching (Alex Merenstein)
* General code cleaning:
- Refactoring, optimisations and cosmetic improvements
- Silenced many build warnings and errors
- Replaced various deprecated, legacy and platform-specific functions
- Improved thread safety
* Significant bug fixes:
- Fixed stale locks freeze in tags cache database following a crash
- Fixed CURL timeout for internet streaming errors (Daniel Stenberg)
- Fixed audio distortion on MP3 file having overly long tag values
- Fixed false positive stream detection in the MP3 decoder
- Fixed Ogg/Vorbis stream detection in the Vorbis decoder
- Fixed 'LRINTF error' raised when reconfiguring MOC
- Fixed backspace key mishandling
- Fixed client interface meta-key handling
- Fixed pthread stack overflow segfault on OpenBSD
- Fixed segfault when text entry history becomes full
- Fixed segfault processing playlists with relative paths
- Fixed memory corruptions when toggling tag reading
- Fixed assertion when a second client is started
- Fixed slow memory leak in client on long-playing streams
- Fixed severe distortion on 11025Hz 16-bit mono audios
- Fixed freeze at end of playing audio file
- Fixed server crash when attempting to play a deleted file
- Fixed MIME type detection on HTTP redirection
- Fixed crash when mixer value is above 100%
- Fixed handling of huge (greater than 2 GiB) files
- Fixed sub-second audio truncation on ALSA
- Fixed segfault when MIME-detected MP3 file has no "extension"
- Fixed segfault when using '--format' without an audio playing
- Workaround for streams that have the actual title as tags/comments
- Indentified cause of "undefined symbol" build errors
- Plugged all known memory and file descriptor leaks
- Fixed nonsense duration values returned on some corrupt FLAC files
- Fixed 'time >= 0' assertion at change of audio file
- Fixed client event notification failure in some circumstances
- Fixed client abort on duplicated playlist filenames
- Fixed delayed client exit when server invokes long-running scripts
(Alex Merenstein)
- Fixed occasional server freeze on logging when running scripts
- Fixed non-conforming 'User-Agent' HTTP request header
* Miscellaneous:
- Updated and reformatted mocp manpage and equalizer README file
- Made many warning and error reports more informative and consistant
- Better logging of more problem determination information
- More informative version information display
- Introduced MD5-based decoder verification tools
- Improved compatibility with 64-bit systems
- Improved compatibility with big-endian systems
- Moved tags cache to a Berkeley DB
- Integration of down-stream distribution patches
- Fixed frames to duration calculations in ALSA
- Fixed some mutex management bugs
- Fixed many bugs which crashed MOC
2.4.4 [2009-01-04]
* Fix crash when saving a playlist with URLs.
* Fix hang in case of symlink loop (like symlink to parent directory)
when adding files recursively to the playlist.
* Fix bad memory access when using FILL parameter in layouts that caused
"FATAL_ERROR: Layout1 is malformed".
* Fix compilation with newer ffmpeg. (Alexis Ballier)
* Increase maximum file title (made from tags) length to 512. Helps on
wide terminals.
* Fix displaying URLs on the playlist when it ends with a slash.
* Fix compilation of flac plugin by detecting libflac using pkg-config.
* Fix for multichannel playback. (Maarten van Es)
* Fix handling of invalid track number in tags. A segfault occurred when
the track number was at least a value of 2^31.
* Support for the new (SVN) libmpcdec API.
* Remove old, irrelevant comment about iconv from the configuration
file.
* Fix configure to display proper information about compiled RCC.
* Run libtoolize in autogen.sh to prevent conflicts with installed
libtool/libltdl version.
2.4.3 [2007-07-30]
* Fix displaying tags from Internet streams, sometimes the name of the
station or other less useful text was displayed instead the title.
* Fix a problem with opening Internet streams with curl 7.16.x. (Samid
Tennakoon)
* Fix XTermTitle for urxvt.
* Fix delete and backspace keys in entries.
* Fix a race (crash) when issuing the next commands one after another
very fast.
* Fix problems with vmix OSS virtual driver (no supported audio
formats).
* Fix FollowPlayedFile after CLI restart.
* Updated moc.spec (Klaus Ethgen)
2.4.2 [2007-06-10]
* Disable 24bit output by default due to reported problems with some
sound cards. It can be enabled by setting Allow24bitOutput option
to yes.
* Fix escape key handling. (Jack Miller)
* Fix CTRL-key combinations in entries. (Jack Miller)
* Fix a crash when a file is precached and user requests playing a
different file.
* Disabled using mmap() for reading files in the default configuration
due to reported incrased memory usage.
* Fix ffmpeg build failure due to LOG_H defined by ffmpeg headers.
* Fix reading PLS playlists with more than 9 entries.
* Fix configure script: libiconv is required to build moc.
* Fix the A command for '..' directory (Debian Bug#416102)
* Fix displaying the playlist panel when the width of the terminal is
an odd number.
2.4.1 [2006-02-12]
* Added Command 'P' and a configuration option PlaylistFullPaths to turn
on/off displaying full paths for files in the playlist.
* Fixed choosing endianess when playing float samples (musepack or
wave and other libsndfile formats).
* Fixed a crash when going to '../' with the search entry.
* Added MP4 to the list of supported by FFmpeg extensions.
* Fixed clearing playlist from the command line (crash on mocp -c -a -p
file.mp3).
* Fixed handling mixer errors (crash in some situations).
* Fix searching with '/' (search began with the current item, not the
whole list).
* Correct support librcc: tags ID3v1/v1.1 will be recoded in UTF-8
instead of the local encoding. (Alexey Gladkov)
* Fixed handling invalid time in tags cache.
* Fixed handling error when time information for a file could not be
read.
* MusicDir and FastDirX are parsed before they are used, this handles
not "clean" directories in the config file (like /bin/ - with slash
at the end).
* When interface is killed by SIGTERM or SIGHUP the playlist is saved
and the terminal mode is restored.
* Setting volume in jack using an exponential function instead of
linear. (x37v.alex)
* Draw bottom lines for side menus that don't touch the botom of the
main menu.
* Reload directory content after running a custom command to see changes
made in the filesystem by this command.
* Added missing exec_command# keys in the example keymap file.
2.4.0 [2006-02-12]
* Layout of the main window can be changed using Layout[123] options.
Switching between layouts is done using the 'l' key and now TAB is
used to switch between the playlist and the directory menu. For
example, you can configure the layout to see both the playlist and a
directory content.
* Support for WMA, RealAudio, MP4 and AAC file using FFmpeg.
* UTF-8 support.
* Selecting themes at runtime - T command (this does not change the
config file).
* Executing external commands, like 'cp %f /mnt/usb_drive' where %f is
substituted with the path to the currently selected file.
* Tags are cached at the server side and read in a separate thread.
The interface is not locked until the tags are read. Size of the
cache can be adjusted using TagsCacheSize. The cache is saved at exit
and loaded at startup.
* Moving items up and down: u and j commands.
* Workaround for encoding of ID3v1 tags. New options: UseRCC - to use
librcc for ID3v1 reencoding (Initial patch by Alexey Gladkov),
ID3v1TagsEncoding - assumed encoding for ID3v1 tags.
* Added UseCursorSelection option (default: no) to display cursor on
the selected file. This is useful with braille displays.
* Added SetXtermTitle option (disable/enable setting xterm title).
* Added m4a and aac to the list of extensions supported by ffmpeg.
* Pressing n when nothing is played starts playing from the first item
on the playlist.
* Added FollowPlayedFile option: menu follows the currently played file
so that it is scrolled if the file is outside the visible part
(default to yes).
* Numbering items in the playlist. Can be turned off using
PlaylistNumbering.
* New themes: moca_theme (Nicola Vitale), red_theme (yyz), and
darkdot_theme (David Lazar).
* Added a command for adding a URL to the playlist using entry (CTRL-u).
* A and --append can add files from playlists.
* Interface show the playlist after startup if something from the
playlist is played (CanStartInPlaylist option).
* Commands: --append, --clear, --play work now as expected even if there
is no client running.
* Use full paths instead of just file names for displaying on the
playlist.
* Internet streams can be paused.
* Ogg plugin name was changed to vorbis.
* Added RPM SPEC file. (Fredrik Rambris)
* Redesign of the interface code. This is a big change in the code, but
not really visible to the user. It was necessary to maintain and
extend the interface in the future.
* MOC can now be compiled under OpenBSD. Thanks to Tilo Stritzky for
pointing out the issues.
* Striping leading and trailing white characters from URLs entered by
the user.
* Count speex time without scaning the whole file.
* -e is an alias for -a.
* Display the current time for Internet streams.
* MusicDir can be a playlist.
* Silent seeking can be configured using SilentSeekTime option.
* After adding a file to the playlist, the cursor is moved down.
* The help screen's position is kept when it's not displayed.
* Some operations like deleting items from the playlist should now be
faster.
* Fixed a possible deadlock while seeking. This fixes a hang on
FreeBSD 6.
* Fixed OSS support on some machones (like G3 iBook).
2.3.3 [2006-01-04]
* Workaround for backspace key on many terminals (like aterm).
* Fixed a memory leak when playing Internet streams. (rixx)
* Fixed a crash when an mpc file coudn't be read.
* Fixed a memory leak occuring with every played mp3 file.
* Fixed a memory leak when seeking in MPC file.
* Fixed compilation on OpenBSD. (Tilo Stritzky)
* Fixed parsing Icy metadata packages (possible segfault).
* Fixed resource leak when reading tags from invalid OGG file.
* Check if FileNamesIconv has valid format at startup like TagsIconv.
2.3.2 [2005-09-25]
* Optimized 24bit->16bit conversion. Helps playing mp3 on handheld
devices without FPU.
* Fixed a crash when using the playlist with ReadTags turnedoff.
* Fixed detecting taglib 1.4.
* Fixed mutex initialization in io objects (crash on some systems -
FreeBSD).
* Moved the man page to section 1.
* Fixed bahaviour when one or both OSS mixer channels are not available.
* Sort file names using the current locale settings. (breg)
* Fixed -p description.
* Fixed a memory leak when adding an item to a full entry's history.
* Slightly less CPU usage in the client due to elimination of useless
bitrate updates.
* Fixed a typo: owerwrite -> overwrite.
2.3.1 [2005-08-02]
* Fixed detecting MPEG stream by the content (Shoutcast fix).
* Fixed handling ALSA mixer events (crash in some situations).
* Fixed handling a mixer channel that has no playback volume.
* Fixed crash when the alsa mixer couldn't be opened.
* Fixed crash when nothing was decoded (appears sometimes when holding
the enter key on an mp3 file).
* Fixed a crash which shows up on FreeBSD 5.4 after playing a file.
Thanks to Joseph Dunn for help.
* Fixed includes for maximum and minimum values of intiger types (fix
compilation on some systems).
* Fixed the syntax (not a proper C code). Mostly taken from the FreeBSD
port.
* Show stream URL instead of nothing if the title is not available.
* Fixed yellow_red_theme theme.
* Fixed a hang after file open error.
* Fixed counting time after file open error.
* Fixed some gcc4 warnings.
2.3.0 [2005-07-09]
* Network streams (shoutcast, icecast, regular HTTP, FTP). You can load
an m3u file with a URL or use the 'o' command.
* JACK output (by Alex Norman).
* Added support for musepack (mpc).
* The search command filters out not matching elements from the menu and
allows to walk through the items like in the regular menu.
* Added support for speex format.
* Plugins: to drop dependencies from many exotic libraries, support for
file formats was moved to shared libraries. This should help making
MOC packages in future when more formats will be added.
* Sample rate conversion using libsamplerate and some sound conversions
like 16bit -> 24bit etc. With 24bit sound cards 24bit output is used
with mp3.
* Added support for PLS version 2 playlists.
* Added mono to stereo conversion.
* MOC now compiles using libtool.
* Error messages for precached files are not displayed while other file
is being played.
* Input buffer in a separated thread is used for reading files (new
options: InputBuffer and Prebuffering).
* New theme: Yellow/Red (by Morten Grunnet Buhl).
* Added -A command line option and ASCIILines config option that
disables usage of graphic characters to draw lines.
* Added commands to set volume from 10% to 90% in 10% steps, default
bindings are ALT-1 to ALT-9.
* Added commands to quickly go to a selected directories
(by Alex Norman).
* Added --next and --previous command line options (by Alex Norman).
* Added --info command line option that prints all information about the
currently played file. (Based on the code by Michael Banks)
* Two mixer channels can be set in the configuration file. They can be
switched at run time by pressing x.
* Documentation of some parts of the code in Doxygen format.
* Colors can be redefined in themes using 'colordef COLOR = R G B'
(works for terminal that can change the colors).
* Support for 24bit flac files (not tested).
* Added SeekTime option: how fast the seeking is. (Kamil Tarkowski)
* A list of sound drivers can be used instead of only one driver in the
configuration file. The first working driver will be used.
* MusicDir can be set to a playlist.
* Alsa mixer has always 0-100 range despite the actual device range.
* Added --toggle-pause command line option.
* Don't block the audio device when paused. Based on a patch
by hondza <[email protected]>
* Treat an option that is set in the config file more than once as an
error.
* Print descriptions for some errors in the config file.
* Better error messages in the Ogg plugin.
* Better detecting Ogg vorbis stream by content.
* Decreased the time to wait for the pcm to become ready to get samples
in alsa. This helps with underruns.
* Fixed protect attribute in themes.
* Added black_theme (by Arn).
* History for "go to a directory" and "enter URL" commands (using
arrows).
* CTRL-l like CTRL-r refreshes the screen.
* Separated iconv() conversion for file names and tags.
* Improved performance a bit when operating on big playlists.
* G command points to the currently played file - on the playlist if
it's there, and selects it in the menu.
* When going to a directory using the i command, TAB completes to the
matching part of ambiguous directories.
* Volume changes made by other programs are detected.
* Added --recursively command line option (make a playlist from the
content of a directory given at command line).
* Show bitrate in the right time - the value corresponds to what you
can hear, not the position that the decoder is at.
* Added description about creating a decoder plugin.
* Added introduction pages to Doxygen documentation.
* Documented decoder plugins API.
* Added --playit option (play files given on the command line without
modifing the playlist).
* Added UseRealtimePriority (default no) option: set realtime priority
for the output buffer thread.
* Titles in saved playlists are not converted by iconv().
* Fixed crash on some systems when a file is precached.
* Refuse to run if an ALSA mixer channel is wrong.
* Fixed adding items to the playlist when the server's playlist already
has added files.
* Don't try to use colors on black/white terminals.
* Fixed a memory leak in iconv_str() when iconv() is not available.
(breg)
2.2.2 [2005-05-16]
* Added an option to ignore CRC errors in mp3 files (set to yes by
default, like most players do). This fixes playing mp3 files that
have bad CRC checksums but are actually good.
* Fixed marking the currently played item when a new item on the
playlist appears.
* Fixed a crash when going back at the first item with Repeat turned
on (Debian Bug#307651).
* Fixed a crash when the time of a file can't be read.
* Fixed handling FLAC files with 8-bit samples.
* Added mp2, mp1, and mpga to the list of supported extensions by MAD:
this makes possible to play MPEG Layer I and II files.
* Fixed a race condition that crashes MOC when switching songs quickly.
* Fixed a small memory leak in FLAC.
* Ogg Vorbis is not required for compilation (a bug in the configure
script).
* Use a pipe to wake up another thread from select() instead of a
signal. Helps on NetBSD where pthread_kill() doesn't interrupt
select().
* Fixes for compiler warnings on 64-bit systems.
* Fixed a warning about wprintw() usage on some systems.
* Fixed setting compiler flags for vorbis.
2.2.1 [2005-04-16]
* Fixed missing titles of files without tags when added to the playlist.
* Fixed refreshing the screen after searching.
* Fixed recognizing AIFF file extension.
* Fixed compiler warnings on 64bit systems.
* Fixed detecting ncurses, now also works with curses.
* Fixed compilation errors on ioctl() use on some systems.
* Support for libossaudio (NetBSD).
* Fixed an compiler warning about EV_ERROR on NetBSD.
* Better checking for vorbis.
* Fixed --without-sndfile configure option.
* Fixed a rare deadlock.
2.2.0 [2005-02-26]
* Added support for FLAC audio format.
* Added support for various file formats like au, aiff, voc and more
using libsndfile. This also provides better support for wav files.
* Custom keymaps can be used.
* Synchronizing the playlist between clients (interface instances).
* Going to a directory by typing the path with file-name completion
(i command).
* Ability to use default (transparent) and grey color.
(Marcin Michałowski).
* Added a theme with transparent background (Marcin Michałowski).
* Added nightly_theme (Wim Speekenbrink).
* Added green_theme (Jacek Lehmann).
* Global theme directory.
* MOC should now work on big-endian processors.
* Added XTermTheme option to use a different theme when running on
XTerm.
* Fixed the 'next' command when AutoNext option is turned off.
* Displaying the total time of files on the playlist and in directories.
* Faster reading and saving playlists.
* Added --pause and --unpause command line parameters.
* Added AlsaMixer and AlsaDevice options.
* Added G command: go to a directory when the currently played file is.
* Added U command: go to '..'.
* Recognize if a file was modified and rereading tags and time if
necessary.
* Fast, silent seeking ('[' and ']' keys).
* The cursor is hidden when it's not needed.
* Changed the erroneous name of the time_left_frames to
time_total_frames in themes.
* Added '/' command working as an alias for g (Kamil Tarkowski).
* Added CTRL-n working like CTRL-g (Kamil Tarkowski).
* ? key working like h (Kamil Tarkowski).
* Playlist time displayed in format 000:00:00 (Kamil Tarkowski).
* True shuffle, not a random item from the playlist.
* Changing the icon name when changing the xterm title (Jacek Lehmann).
* Arrow keys and the delete key works in the entry field.
* Detecting other terminals beside xterm (Jacek Lehmann).
* Added b (back) command (Kamil Tarkowski).
* A bit faster getting files time.
* Added SavePlaylist option.
* Added a bar showing time of the current file.
* Repeat without AutoNext plays a song in loop.
* Added (empty|filled)_mixer_bar, (empty|filled)_time_bar to themes.
* Fixed setting sound parameters while playing OGG. This caused crashes
on big endian machines (Philippe De Muyter).
* Fixed crash on some file tags.
* Fixed crash when issuing some errors.
* Fixed the --help message.
* Fixed bad terminal state after exiting the client in rare cases.
* Fixed adding directories recursively when ReadTags is turned off.
* Fixed going to the root directory with the i command.
* Fixed getting time when nothing is played.
* iconv() (character set conversion) for file names.
* END and HOME keys working in the i command entry (go to a directory).
* Synchronizing adding/deleting items from the playlist with the
server's playlist.
* Faster operations on big playlists.
* Fixed saving playlist when more than one client wants to do this.
* Fixed recursive adding file to the playlist if some directory
can't be read.
* Fixed deleting items from the playlist.
* Fixed handling a playlist file as command a line argument.
* Fixed compilation with --disable-debug.
* Fixed --version information.
* Fixed sorting when using the A command.
* Position of time and format in menu is fixed.
* Searching for a theme in the user directory first.
* Fixed a memory leak when reading OGG tags.
* Few fixes when running MOC with file names or directories as
arguments.
* Fixed reading track numbers for mp3 files.
* Small fixes of ALSA behaviour when underrun occurs.
2.1.4 [2004-12-31]
* Fixed the 'next' command when AutoNext is turned off.
* Sorting the files before adding them to the playlist when using the
A command.
* Fixed a memory leak when reading tags of ogg files.
* Fixed reading track numbers of mp3 files.
* Detect other X terminals beside xterm.
* Fixed error messages for mp3 files.
* Fixed segfault when reading some tags.
2.1.3 [2004-11-15]
* Fixed compilation with header files not from Linux 2.4.
2.1.2 [2004-11-14]
* Fixed playing mp3 with UseMmap turned on.
* Fixed handling ALSA device open errors.
* Proper handling 8, 16, and 24 bit sound, raise error if using
anything else.
* Fixed a (almost :) deadlock when pressing stop when seeking.
2.1.1 [2004-11-13]
* Added missing example_theme.
2.1.0 [2004-11-11]
* Multiple clients. You can have moc interface on many
consoles/terminals.
* Searching the menu (CTRL-g) like M-s in Midnight Commander.
* Playlist load/save support (m3u files).
* The apperance can be customized using themes.
* Displaying file time and format in the menu.
* Precaching files and not closing the audio device when playing
the next file - no more gaps between two songs.
* ALSA support.
* Optional character set conversion using iconv().
* MOC remembers the playlist between runs.
* Option to hide file names extension.
* Use of mmap() can be turned off (usefull on NFS).
* Ability to use different config file/directory tan the default.
* Pressing CTRL-C interrupts long operations that blocks the interface
like reding tags for hundreds of files.
* Fixed seeking and counting time in VBR mp3 files.
* Fixes for systems where threads are not processes.
* Small fixes and cleanups.
2.0.1 [2004-10-21]
* Do not allow to add '..' to the playlist.
* Fixed seeking when not playing.
* Fixed segfault when using f after creating a playlist from the
command line.
* Fixed invoking MOC with relative path arguments
* Fixed displaying file title longer than the window.
* Fixed broken menu after resizing terminal when help screen is
displayed.
2.0.0 [2004-10-16]
* Split into client-server, you can detach the interface and leave
the server playing songs in the background (keys: q - background,
Q - quit).
* Output buffer with seperate thread.
* Using OSS directly - better stop and pause.
* Support xterm resizing.
* Using xterm title.
* Autonext option (X key).
* Faster reading directory contents.
* Displaying time left to the end of the songs.
* Fixed moving through symlinked directories.
* Renamed executable file to mocp due to conflict with QT meta object
compiler.
* Configurable mixer channel, OSS output device, and mixer device.
* ^r - refresh the screen, r - reread the directory.
* H command and ShowHiddenFiles - as the option says.
* Do not allow displaying bitrate too fast to read it.
* Fixed compilation with pthreads, better configure.
* Fixed problems when compiling with gcc 3.3
* Fixed displaying window title longer than the window.
* Space key working as pause.
* Fixed possible segfault in trenary expressions.
* Removed version checker.
* Fixed sorting directories ('../' was not always on top).
* Fixed escaping characters in config file, no need for '\\\\'.
* Stronger checking for parse errors in configuration file.
1.1.0 [2002-12-08]
* Support for WAV.
* Playlist without reading/writeing to file.
* Option in the config file to automaticaly change process priority at
startup. Helpful on slow computers.
* Recursivaly adding files from comamnd line and from the interface.
* Shuffle and repeat.
* Nice progress bar for longer operations.
* Fixed segfault when using the END key.
* Fixed segfault when playing OGG files.
* Workaround for kde and gnome terminals.
* Now MOC can be compiled on FreeBSD.
* Other fixes.
1.0.0
* First release intended to be stable and user-friendly :)
* Added man page.
* Added version checker (simple command to see if a new version of MOC
has been released).
* Fixed problem when compiling without ogg.
* Added redraw command.
* Other small fixes.
0.9.2
* Fixed -s option.
* Added 'f' command (switching between short and full file names).
* Added README file.
* Added support for config file.
* Added MusicDir option, 'm' command and '-m' switch.
* Added ability to turning off messages about broken streams.
* Fixed including dirent.h for various OS.
* Fixed and updated configure.
0.9.1
* Added mixer (using OSS).
* Added help screen.
* Fixed some tiny buffer overflows.
* Small fixes in code.
0.9.0
* First stable version.