Martchus
9dc458f572
WIP: Allow conversion of TagValue to any number
2017-06-26 23:44:14 +02:00
Martchus
c120b117c0
Fix tests
2017-06-19 13:54:23 +02:00
Martchus
99b177a9ff
Handle invalid language for MP4 track better
2017-06-17 00:32:38 +02:00
Martchus
f323061767
Apply MP4 track meta-data also when not writing chunk-by-chunk
2017-06-17 00:31:35 +02:00
Martchus
03383a18b9
Add GenericFileElement::copyPreferablyFromBuffer()
2017-06-17 00:29:49 +02:00
Martchus
6741e9ca0f
Set Matroska track meta-data when element not present
2017-06-14 22:46:33 +02:00
Martchus
9b0d74b6ad
Implement applying changed track meta-data for Mkv
2017-06-11 22:57:28 +02:00
Martchus
b4de493b56
Prevent warning about unused variable
2017-06-11 01:22:30 +02:00
Martchus
8d08314e3b
Introduce MatroskaTrackHeaderMaker
...
First step to implement applying changed track
meta-data for Matroska
2017-06-11 01:21:56 +02:00
Martchus
f7ce96f4f9
Add convenience method to find tracks by ID
2017-06-11 01:17:13 +02:00
Martchus
2beb4b02aa
Prevent some warnings
2017-06-10 21:47:07 +02:00
Martchus
2a808df3f5
Use argsToString() avoiding numberToString()
2017-06-08 01:26:34 +02:00
Martchus
646fc4d302
Fix TagValue::toInteger() from Latin1/UTF-8 str
2017-06-08 00:48:10 +02:00
Martchus
381d8db895
Fix check for removed tests in Mkv tests
2017-06-07 23:40:02 +02:00
Martchus
b03273da44
Allow setting track meta-data
...
Currently applying is only implemented for
MP4 tracks (only ID, name and language).
2017-06-06 23:26:20 +02:00
Martchus
4e59ed2742
Mind encoding in TagValue::toStandardGenreIndex()
2017-06-03 21:00:36 +02:00
Martchus
8ae3dd6f6f
Specify behaviour of Id3Genres::indexFromString() in error case
2017-06-03 21:00:36 +02:00
Martchus
e1d14ad61b
Allow conversion of DateTime in TagValue::toString()
2017-06-03 21:00:36 +02:00
Martchus
6c1a0b9126
Fix TagValue::toDateTime()
2017-06-03 21:00:36 +02:00
Martchus
6b705d5652
Mind encoding when converting TagValue to pos
2017-06-03 21:00:26 +02:00
Martchus
b76d35acfd
Mind encoding when converting TagValue to int
2017-06-03 21:00:26 +02:00
Martchus
39b63c84cb
TagValue equality: Actually ignore encoding if not relevant
2017-06-03 21:00:26 +02:00
Martchus
5e91661de3
Test TagValue
2017-06-03 21:00:26 +02:00
Martchus
b88672e32f
Fix compiling tests under 32-bit arch
2017-05-30 23:59:23 +02:00
Martchus
79845b96dc
Remove friend class from Id3v2Frame
2017-05-29 14:36:22 +02:00
Martchus
98fc83af6a
Make error skipping in EBML parser configurable
2017-05-29 14:33:28 +02:00
Martchus
0d39a70b5f
Improve making picture/comment frames
2017-05-29 14:05:15 +02:00
Martchus
d8d3fbd487
Enable code for parsing MP4 chunk-offsets from fragments
2017-05-29 00:58:44 +02:00
Martchus
4faef55906
Fix writing MP4 chunk-by-chunk
...
This also involves finally implementing
Mp4Track::makeTrack(). Mp4Track::makeSampleTable()
which would enable modifying stbl atom is still not
fully implemented yet, though.
2017-05-29 00:58:08 +02:00
Martchus
527fcb694e
Ensure MP4 ID strings only contain printable chars
...
Prevents tag editor from generating invalid XHTML
2017-05-29 00:57:42 +02:00
Martchus
58ddba4178
Ensure the track ID is unique
2017-05-29 00:57:05 +02:00
Martchus
f849c22bad
Test writing MP4 chunk-by-chunk
...
This feature was only implemented to play
around with MP4 a little bit and is not actually
used by the tag editor and hence was not tested
very well.
2017-05-29 00:56:26 +02:00
Martchus
966c0edc2e
Allow setting track ID
2017-05-27 02:59:47 +02:00
Martchus
4e9a28aee3
Test linked Matroska files (manually)
...
Editing linked Matroska files works. The linked
files are treated as individual files. When saving
segment linking is retained and the files aren't
otherwise broken.
2017-05-24 20:01:29 +02:00
Martchus
32f4c7641c
tests: Create cpp file for helper
2017-05-24 19:33:11 +02:00
Martchus
ae6bd9522c
tests: Do not check files converted via ffmpeg
2017-05-24 19:24:09 +02:00
Martchus
1f1fb4c302
tests: Check tag and index position
2017-05-23 00:52:56 +02:00
Martchus
9c3f596699
doc: Cross-reference methods for tag/index pos
2017-05-22 23:53:38 +02:00
Martchus
8f5f61c85e
Fix finding termination in ID3v2 description
...
This check is only to prevent writing bad frame
when given description contains termination
2017-05-21 00:09:09 +02:00
Martchus
cbc32890fa
Test conversion to ID3v2.4
2017-05-21 00:09:09 +02:00
Martchus
44de1e6b7a
tests: Move format specific flags from header
2017-05-20 23:37:33 +02:00
Martchus
e925e15533
Improve handling of Unicode and BOM in ID3v2
...
* Convert UTF-8 text fields automatically to UTF-16
when version is ID3v2.3 or below
-> so conversion from ID3v2.4 to ID3v2.3 or below
doesn't require manual conversion of possibly
UTF-8 encoded fields
* Don't use magic numbers for ID3v2 encoding byte
* Don't warn about UTF-16 Big Endian with BOM
2017-05-20 23:34:45 +02:00
Martchus
2ed7ea800d
Improve overall tests
...
* Move code for each format in an own file
* Use enum for test mode flags instead of magic
numbers
2017-05-20 21:19:55 +02:00
Martchus
8629a8fd32
tests: Validate Matroska attachment data
2017-05-20 19:58:00 +02:00
Martchus
ee15e08dd9
Test parsing and rewriting nested Mkv tags
2017-05-19 00:05:57 +02:00
Martchus
23e84886d4
Id3v2Frame: Write BOM explicitely
...
* Instead of leaving this up to the application
* So the BOM isn't missing anymore when using
CLI of Tag Editor
2017-05-18 02:27:08 +02:00
Martchus
8b9e800803
TagValue: Strip BOM from assigned text
...
* So everywhere else can be safely assumed that
text values never have a BOM
* Only exceptions are move constructor and move
assignment where the caller must ensure no BOM
is present
2017-05-18 02:27:08 +02:00
Martchus
909d21c076
Don't treat TXXX ID3v2 frames as text frames
2017-05-18 02:27:08 +02:00
Martchus
6ff8a587ba
Detect H.265 format in Matroska
2017-05-08 23:23:57 +02:00
Martchus
7747438d94
Test reading Matroska chapters
2017-05-07 21:47:03 +02:00