Module: TSparser
- Extended by:
- TSparser
- Included in:
- TSparser
- Defined in:
- lib/ts.rb,
lib/epg.rb,
lib/binary.rb,
lib/parsing.rb,
lib/tsparser.rb,
lib/psi_section_reader.rb,
lib/arib_string_decoder.rb,
lib/definition/arib_time.rb,
lib/definition/eit_event.rb,
lib/definition/descriptor.rb,
lib/definition/event_list.rb,
lib/definition/arib_string.rb,
lib/definition/arib_duration.rb,
lib/definition/descriptor_list.rb,
lib/definition/transport_packet.rb,
lib/definition/event_information_section.rb,
lib/definition/descriptor/content_descriptor.rb,
lib/definition/descriptor/unknown_descriptor.rb,
lib/definition/descriptor/component_descriptor.rb,
lib/definition/descriptor/event_group_descriptor.rb,
lib/definition/descriptor/short_event_descriptor.rb,
lib/definition/descriptor/data_content_descriptor.rb,
lib/definition/descriptor/extended_event_descriptor.rb,
lib/definition/descriptor/audio_component_descriptor.rb,
lib/definition/descriptor/digital_copy_control_descriptor.rb,
lib/definition/descriptor/ca_contract_information_descriptor.rb
Defined Under Namespace
Modules: AribStringDecoder, Parsing
Classes: AdaptationField, AribDuration, AribString, AribTime, AudioComponentDescriptor, Binary, CAContractInformationDescriptor, ComponentDescriptor, ContentDescriptor, DataContentDescriptor, Descriptor, DescriptorList, DigitalCopyControlDescriptor, EITEvent, EITEventList, EPG, EventGroupDescriptor, EventInformationSection, ExtendedEventDescriptor, PSISectionReader, ShortEventDescriptor, TS, TransportPacket, UnknownDescriptor
Constant Summary
collapse
- LIBRARY_ROOT_PATH =
File.expand_path(File.dirname(__FILE__))
- MAIN_FILES =
['/binary.rb',
'/parsing.rb',
'/ts.rb',
'/psi_section_reader.rb',
'/arib_string_decoder.rb',
'/epg.rb'
]
- DEFINITION_DESCRIPTOR_FILES =
['/short_event_descriptor.rb',
'/extended_event_descriptor.rb',
'/component_descriptor.rb',
'/content_descriptor.rb',
'/digital_copy_control_descriptor.rb',
'/audio_component_descriptor.rb',
'/data_content_descriptor.rb',
'/ca_contract_information_descriptor.rb',
'/event_group_descriptor.rb',
'/unknown_descriptor.rb'
]
- DEFINITION_FILES =
['/descriptor.rb',
'/descriptor_list.rb',
'/eit_event.rb',
'/event_information_section.rb',
'/event_list.rb',
'/transport_packet.rb',
'/arib_duration.rb',
'/arib_time.rb',
'/arib_string.rb'
]
Instance Method Summary
collapse
Instance Method Details
#open_ts(input) ⇒ Object
65
66
67
68
69
70
71
72
73
74
|
# File 'lib/tsparser.rb', line 65
def open_ts(input)
case input
when String
return TS.new(File.open(input, "rb"))
when IO
return TS.new(input)
else
raise "arugument should be TS file path(String) or IO"
end
end
|
#parse_epg(input) ⇒ Object
54
55
56
57
58
59
60
61
62
63
|
# File 'lib/tsparser.rb', line 54
def parse_epg(input)
epg = EPG.new
section_stream = PSISectionReader.new(0x12, open_ts(input))
while section_binary = section_stream.read
next unless EventInformationSection.section_length_enough?(section_binary)
eis = EventInformationSection.new(section_binary)
epg = epg + eis.to_epg
end
return epg
end
|